--- title: "Capacity Plan APIs" slug: "capacity-plan-apis" description: "Access Kentik’s Capacity Plan APIs for read-only visibility into network data. Programmatically track interface health, utilization, and runout dates." updated: 2026-02-20T15:23:05Z published: 2026-02-20T15:23:05Z canonical: "kb.kentik.com/capacity-plan-apis" --- > ## Documentation Index > Fetch the complete documentation index at: https://kb.kentik.com/llms.txt > Use this file to discover all available pages before exploring further. # Capacity Plan APIs This article covers how to get started with the Capacity Plan APIs. > [!NOTE] > **Notes:** > > - The [**API Tester**](https://portal.kentik.com/v4/core/api-tester) in the v4 Portal enables you to securely call the methods of these APIs using your organization's Kentik data. > - For information about capacity planning in Kentik, start with [**Capacity Planning**](/v1/docs/capacity-planning). > - Protobuf and OpenAPI specifications for Kentik’s v6 APIs are available in our [**api-schema-public**](https://github.com/kentik/api-schema-public) repository. ## Capacity Plan Usage The Capacity Plan API provides read-only access to configured capacity plans. ## Capacity Plan RPCs The tables below provide a quick reference to key information about each Remote Procedure Call in these APIs. Use the links in the tables to see schemas for the request and/or response body (if any). > [!NOTE] > **Note:** To test methods using your own Kentik data, use the portal's [**API Tester**](https://portal.kentik.com/v4/core/api-tester). ### ListCapacityPlans **API: CapacityPlanService** | REST Method | REST Endpoint | Description | | --- | --- | --- | | GET | /capacity_plan/v202212 /capacity_plan | Returns list of capacity plans. | | \| **Request body**: None **Parameters**: None \| **Response body**: [v202212ListCapacityPlansResponse](/v1/docs/capacity-plan-apis#listcapacityplansresponse) \| \| --- \| --- \| | | **Request body**: None **Parameters**: None | **Response body**: [v202212ListCapacityPlansResponse](/v1/docs/capacity-plan-apis#listcapacityplansresponse) | ### ListCapacitySummaries **API: CapacityPlanService** | REST Method | REST Endpoint | Description | | --- | --- | --- | | GET | /capacity_plan/v202212 /capacity_plan/summary | Returns list of capacity summaries. | | \| **Request body:** None **Parameters:** None \| **Response body:** [v202212ListCapacitySummariesResponse](/v1/docs/capacity-plan-apis#listcapacitysummariesresponse) \| \| --- \| --- \| | | **Request body:** None **Parameters:** None | **Response body:** [v202212ListCapacitySummariesResponse](/v1/docs/capacity-plan-apis#listcapacitysummariesresponse) | ### GetCapacityPlan **API: CapacityPlanService** | REST Method | REST Endpoint | Description | | --- | --- | --- | | GET | /capacity_plan/v202212 /capacity_plan/{id} | Returns capacity plan specified by ID. | | \| **Request body:** None \| **Response body:** [v202212GetCapacityPlanResponse](/v1/docs/capacity-plan-apis#getcapacityplanresponse) \| \| --- \| --- \| **Parameters:** \| Name \| Description \| Required \| Type \| \| --- \| --- \| --- \| --- \| \| id \| ID of the requested capacity plan \| true \| string \| | | **Request body:** None | **Response body:** [v202212GetCapacityPlanResponse](/v1/docs/capacity-plan-apis#getcapacityplanresponse) | | Name | Description | Required | Type | | id | ID of the requested capacity plan | true | string | ### GetCapacitySummary **API: CapacityPlanService** | REST Method | REST Endpoint | Description | | --- | --- | --- | | GET | /capacity_plan/v202212 /capacity_plan/{id}/summary | Returns capacity plan summary specified by ID. | | \| **Request body:** None \| **Response body:** [v202212GetCapacitySummaryResponse](/v1/docs/capacity-plan-apis#getcapacitysummaryresponse) \| \| --- \| --- \| **Parameters:** \| Name \| Description \| Required \| Type \| \| --- \| --- \| --- \| --- \| \| id \| ID of the requested capacity plan summary \| true \| string \| | | **Request body:** None | **Response body:** [v202212GetCapacitySummaryResponse](/v1/docs/capacity-plan-apis#getcapacitysummaryresponse) | | Name | Description | Required | Type | | id | ID of the requested capacity plan summary | true | string | ## Capacity Plan Schemas This API uses the following schemas. #### InterfaceDetail | **Schema:** CapacityPlanInterfaceDetail | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| deviceName \| type: string description: Device name readOnly: true \| \| intfName \| type: string description: Interface name readOnly: true \| \| intfDescription \| type: string description: Interface description readOnly: true \| \| intfCapacity \| type: string description: Interface capacity readOnly: true \| \| networkBoundary \| type: string description: Network boundary readOnly: true \| \| connType \| type: string description: Connectivity type readOnly: true \| \| provider \| type: string description: Provider readOnly: true \| \| utilStatus \| type: string description: Utilization status readOnly: true \| \| utilOutMbps \| type: string description: Utilization out mbps readOnly: true \| \| utilOutPct \| type: string description: Utilization out percentage readOnly: true \| \| utilInMbps \| type: string description: Utilization in mbps readOnly: true \| \| utilInPct \| type: string description: Utilization in percentage readOnly: true \| \| runoutStatus \| type: string description: Runout status readOnly: true \| \| runoutInDate \| type: string description: Runout in date readOnly: true \| \| runoutInVariation \| type: string description: Runout in variation readOnly: true \| \| runoutOutDate \| type: string description: Runout out date readOnly: true \| \| runoutOutVariation \| type: string description: Runout out variation readOnly: true \| | | Name | Value | | deviceName | type: string description: Device name readOnly: true | | intfName | type: string description: Interface name readOnly: true | | intfDescription | type: string description: Interface description readOnly: true | | intfCapacity | type: string description: Interface capacity readOnly: true | | networkBoundary | type: string description: Network boundary readOnly: true | | connType | type: string description: Connectivity type readOnly: true | | provider | type: string description: Provider readOnly: true | | utilStatus | type: string description: Utilization status readOnly: true | | utilOutMbps | type: string description: Utilization out mbps readOnly: true | | utilOutPct | type: string description: Utilization out percentage readOnly: true | | utilInMbps | type: string description: Utilization in mbps readOnly: true | | utilInPct | type: string description: Utilization in percentage readOnly: true | | runoutStatus | type: string description: Runout status readOnly: true | | runoutInDate | type: string description: Runout in date readOnly: true | | runoutInVariation | type: string description: Runout in variation readOnly: true | | runoutOutDate | type: string description: Runout out date readOnly: true | | runoutOutVariation | type: string description: Runout out variation readOnly: true | #### InterfacesDetail | **Schema:** CapacitySummaryInterfacesDetail | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| totalCount \| type: integer format: int64 description: Total number of interfaces readOnly: true \| \| totalCapacityBps \| type: string format: uint64 description: Total capacity in bps readOnly: true \| \| healthy \| $ref: [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) [StatusDetail](/v1/docs/capacity-plan-apis#statusdetail) \| \| warning \| $ref: [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) [StatusDetail](/v1/docs/capacity-plan-apis#statusdetail) \| \| critical \| $ref: [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) [StatusDetail](/v1/docs/capacity-plan-apis#statusdetail) \| | | Name | Value | | totalCount | type: integer format: int64 description: Total number of interfaces readOnly: true | | totalCapacityBps | type: string format: uint64 description: Total capacity in bps readOnly: true | | healthy | $ref: [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) [StatusDetail](/v1/docs/capacity-plan-apis#statusdetail) | | warning | $ref: [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) [StatusDetail](/v1/docs/capacity-plan-apis#statusdetail) | | critical | $ref: [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) [StatusDetail](/v1/docs/capacity-plan-apis#statusdetail) | #### RunoutConfig | **Schema:** ConfigRunoutConfig | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| strategy \| type: string description: Strategy for runout readOnly: true \| \| warnQty \| type: integer format: int64 description: Warning quantity for runout readOnly: true \| \| critQty \| type: integer format: int64 description: Critical quantity for runout readOnly: true \| | | Name | Value | | strategy | type: string description: Strategy for runout readOnly: true | | warnQty | type: integer format: int64 description: Warning quantity for runout readOnly: true | | critQty | type: integer format: int64 description: Critical quantity for runout readOnly: true | #### UtilConfig | **Schema:** ConfigUtilConfig | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| aggregate \| type: string description: Aggregate for utilization readOnly: true \| \| warnPct \| type: integer format: int64 description: Warning percentage for utilization readOnly: true \| \| critPct \| type: integer format: int64 description: Critical percentage for utilization readOnly: true \| | | Name | Value | | aggregate | type: string description: Aggregate for utilization readOnly: true | | warnPct | type: integer format: int64 description: Warning percentage for utilization readOnly: true | | critPct | type: integer format: int64 description: Critical percentage for utilization readOnly: true | #### StatusDetail | **Schema:** InterfacesDetailStatusDetail | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| bps \| type: string format: uint64 description: Bandwidth in bps readOnly: true \| \| count \| type: integer format: int64 description: Number of interfaces readOnly: true \| | | Name | Value | | bps | type: string format: uint64 description: Bandwidth in bps readOnly: true | | count | type: integer format: int64 description: Number of interfaces readOnly: true | #### RunoutStatus | **Schema:** SummaryStatusRunoutStatus | **Type:** object | | --- | --- | | **Properties:** \| Name \| Value \| \| --- \| --- \| \| status \| type: string description: Status of runout readOnly: true \| \| earliestDate \| type: string format: uint64 description: Earliest runout date readOnly: true \| | | Name | Value | | status | type: string description: Status of runout readOnly: true | | earliestDate | type: string format: uint64 description: Earliest runout date readOnly: true | #### UtilStatus | **Schema:** SummaryStatusUtilStatus | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| status \| type: string description: Status of utilization readOnly: true \| \| highestPct \| type: integer format: int64 description: Highest utilization percentage readOnly: true \| | | Name | Value | | status | type: string description: Status of utilization readOnly: true | | highestPct | type: integer format: int64 description: Highest utilization percentage readOnly: true | #### protobufAny | **Schema:** protobufAny | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| typeUrl \| type: string \| \| value \| type: string format: byte \| | | Name | Value | | typeUrl | type: string | | value | type: string format: byte | #### rpcStatus | **Schema:** rpcStatus | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| code \| type: integer format: int32 \| \| message \| type: string \| \| details \| type: array items: $ref: [protobufAny](/v1/docs/capacity-plan-apis#protobufany) \| | | Name | Value | | code | type: integer format: int32 | | message | type: string | | details | type: array items: $ref: [protobufAny](/v1/docs/capacity-plan-apis#protobufany) | #### CapacityPlan | **Schema:** v202212CapacityPlan | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| id \| type: string description: ID of capacity plan readOnly: true \| \| name \| type: string description: Name of capacity plan readOnly: true \| \| description \| type: string description: Description of capacity plan readOnly: true \| \| status \| type: string description: Status of capacity plan readOnly: true \| \| interfaces \| type: array items: $ref: [CapacityPlan](/v1/docs/capacity-plan-apis#capacityplan) [InterfaceDetail](/v1/docs/capacity-plan-apis#interfacedetail) description: List of interfaces readOnly: true \| \| config \| $ref: [v202212Config](/v1/docs/capacity-plan-apis#config) \| \| summaryStatus \| $ref: [v202212SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) \| | | Name | Value | | id | type: string description: ID of capacity plan readOnly: true | | name | type: string description: Name of capacity plan readOnly: true | | description | type: string description: Description of capacity plan readOnly: true | | status | type: string description: Status of capacity plan readOnly: true | | interfaces | type: array items: $ref: [CapacityPlan](/v1/docs/capacity-plan-apis#capacityplan) [InterfaceDetail](/v1/docs/capacity-plan-apis#interfacedetail) description: List of interfaces readOnly: true | | config | $ref: [v202212Config](/v1/docs/capacity-plan-apis#config) | | summaryStatus | $ref: [v202212SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) | #### CapacitySummary | **Schema:** v202212CapacitySummary | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| id \| type: string description: ID of capacity plan readOnly: true \| \| name \| type: string description: Name of capacity plan readOnly: true \| \| description \| type: string description: Description of capacity plan readOnly: true \| \| status \| type: string description: Status of capacity plan readOnly: true \| \| interfaces \| $ref: [CapacitySummary](/v1/docs/capacity-plan-apis#capacitysummary) [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) \| \| config \| $ref: [v202212Config](/v1/docs/capacity-plan-apis#config) \| \| summaryStatus \| $ref: [v202212SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) \| | | Name | Value | | id | type: string description: ID of capacity plan readOnly: true | | name | type: string description: Name of capacity plan readOnly: true | | description | type: string description: Description of capacity plan readOnly: true | | status | type: string description: Status of capacity plan readOnly: true | | interfaces | $ref: [CapacitySummary](/v1/docs/capacity-plan-apis#capacitysummary) [InterfacesDetail](/v1/docs/capacity-plan-apis#interfacesdetail) | | config | $ref: [v202212Config](/v1/docs/capacity-plan-apis#config) | | summaryStatus | $ref: [v202212SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) | #### Config | **Schema:** v202212Config | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| runout \| $ref: [ConfigRunoutConfig](/v1/docs/capacity-plan-apis#runoutconfig) \| \| utilization \| $ref: [ConfigUtilConfig](/v1/docs/capacity-plan-apis#utilconfig) \| | | Name | Value | | runout | $ref: [ConfigRunoutConfig](/v1/docs/capacity-plan-apis#runoutconfig) | | utilization | $ref: [ConfigUtilConfig](/v1/docs/capacity-plan-apis#utilconfig) | #### GetCapacityPlanResponse | **Schema:** v202212GetCapacityPlanResponse | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| capacity \| $ref: [v202212CapacityPlan](/v1/docs/capacity-plan-apis#capacityplan) \| | | Name | Value | | capacity | $ref: [v202212CapacityPlan](/v1/docs/capacity-plan-apis#capacityplan) | #### GetCapacitySummaryResponse | **Schema:** v202212GetCapacitySummaryResponse | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| capacity \| $ref: [v202212CapacitySummary](/v1/docs/capacity-plan-apis#capacitysummary) \| | | Name | Value | | capacity | $ref: [v202212CapacitySummary](/v1/docs/capacity-plan-apis#capacitysummary) | #### ListCapacityPlansResponse | **Schema:** v202212ListCapacityPlansResponse | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| capacity \| type: array items: $ref: [v202212CapacityPlan](/v1/docs/capacity-plan-apis#capacityplan) description: List of capacity plans \| \| invalidCount \| type: integer format: int64 description: Number of invalid entries encountered while collecting data \| | | Name | Value | | capacity | type: array items: $ref: [v202212CapacityPlan](/v1/docs/capacity-plan-apis#capacityplan) description: List of capacity plans | | invalidCount | type: integer format: int64 description: Number of invalid entries encountered while collecting data | #### ListCapacitySummariesResponse | **Schema:** v202212ListCapacitySummariesResponse | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| capacity \| type: array items: $ref: [v202212CapacitySummary](/v1/docs/capacity-plan-apis#capacitysummary) description: List of capacity plan summaries \| \| invalidCount \| type: integer format: int64 description: Number of invalid entries encountered while collecting data \| | | Name | Value | | capacity | type: array items: $ref: [v202212CapacitySummary](/v1/docs/capacity-plan-apis#capacitysummary) description: List of capacity plan summaries | | invalidCount | type: integer format: int64 description: Number of invalid entries encountered while collecting data | #### SummaryStatus | **Schema:** v202212SummaryStatus | **Type:** object | | --- | --- | | **Properties**: \| Name \| Value \| \| --- \| --- \| \| runout \| $ref:[SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) [RunoutStatus](/v1/docs/capacity-plan-apis#runoutstatus) \| \| utilization \| $ref:[SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) [RunoutStatus](/v1/docs/capacity-plan-apis#runoutstatus) \| | | Name | Value | | runout | $ref:[SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) [RunoutStatus](/v1/docs/capacity-plan-apis#runoutstatus) | | utilization | $ref:[SummaryStatus](/v1/docs/capacity-plan-apis#summarystatus) [RunoutStatus](/v1/docs/capacity-plan-apis#runoutstatus) |