Kentik SiteService API

The SiteService API from Kentik — 4 operation(s) for siteservice.

Operations 10

GET /site/v202509/site_markets List all site markets. #
POST /site/v202509/site_markets Configure a new site market. #
GET /site/v202509/site_markets/{id} Retrieve configuration of a site market. #
DELETE /site/v202509/site_markets/{id} Delete configuration of a site market. #
PUT /site/v202509/site_markets/{id} Updates configuration of a site market. #
GET /site/v202509/sites List all sites. #
POST /site/v202509/sites Configure a new site. #
GET /site/v202509/sites/{id} Retrieve configuration of a site. #
DELETE /site/v202509/sites/{id} Delete configuration of a site. #
PUT /site/v202509/sites/{id} Updates configuration of a site. #

Specifications

Other Resources

🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-synthetics.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-cloud-export.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-alerting.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-mitigation.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-alert-policy.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-device.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-user.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-site.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-label.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-as-group.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-notification-channel.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-capacity-plan.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-bgp-monitoring.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-mkp.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-kmi.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-cost.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-custom-dimension.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-flow-tag.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-ai-advisor.proto
🔗
Protobuf
https://raw.githubusercontent.com/api-evangelist/kentik/refs/heads/main/grpc/kentik-audit.proto

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/kentik-siteservice-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

kentik-siteservice-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AI Advisor AiAdvisorDataService Site Service API
  description: '# Overview

    Provides programmatic access to AI Advisor.'
  version: v202511
  contact:
    name: Kentik API Engineering
    url: https://github.com/kentik/api-schema-public
servers:
- url: https://grpc.api.kentik.com
  description: Base URL declared by the provider in apis.yml (roadmap#122).
security:
- email: []
  token: []
tags:
- name: SiteService
paths:
  /site/v202509/site_markets:
    get:
      summary: List all site markets.
      description: Returns list of configured site markets.
      operationId: ListSiteMarkets
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509ListSiteMarketsResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - SiteService
    post:
      summary: Configure a new site market.
      description: Create configuration for a new site market. Returns the newly created configuration.
      operationId: CreateSiteMarket
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509CreateSiteMarketResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v202509CreateSiteMarketRequest'
        required: true
      tags:
      - SiteService
  /site/v202509/site_markets/{id}:
    get:
      summary: Retrieve configuration of a site market.
      description: Returns configuration of a site market specified by ID.
      operationId: GetSiteMarket
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509GetSiteMarketResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: ID of the requested site market
        in: path
        required: true
        schema:
          type: string
      tags:
      - SiteService
    delete:
      summary: Delete configuration of a site market.
      description: Deletes configuration of a site market with specific ID.
      operationId: DeleteSiteMarket
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509DeleteSiteMarketResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: ID of the site market to be deleted
        in: path
        required: true
        schema:
          type: string
      tags:
      - SiteService
    put:
      summary: Updates configuration of a site market.
      description: Replaces configuration of a site market with attributes in the request. Returns the updated configuration.
      operationId: UpdateSiteMarket
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509UpdateSiteMarketResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: System generated unique identifier
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SiteServiceUpdateSiteMarketBody'
        required: true
      tags:
      - SiteService
  /site/v202509/sites:
    get:
      summary: List all sites.
      description: Returns list of configured sites.
      operationId: ListSites
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509ListSitesResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      tags:
      - SiteService
    post:
      summary: Configure a new site.
      description: Create configuration for a new site. Returns the newly created configuration.
      operationId: CreateSite
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509CreateSiteResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/v202509CreateSiteRequest'
        required: true
      tags:
      - SiteService
  /site/v202509/sites/{id}:
    get:
      summary: Retrieve configuration of a site.
      description: Returns configuration of a site specified by ID.
      operationId: GetSite
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509GetSiteResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: ID of the requested site
        in: path
        required: true
        schema:
          type: string
      tags:
      - SiteService
    delete:
      summary: Delete configuration of a site.
      description: Deletes configuration of a site with specific ID.
      operationId: DeleteSite
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509DeleteSiteResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: ID of the site to be deleted
        in: path
        required: true
        schema:
          type: string
      tags:
      - SiteService
    put:
      summary: Updates configuration of a site.
      description: Replaces configuration of a site with attributes in the request. Returns the updated configuration.
      operationId: UpdateSite
      responses:
        '200':
          description: A successful response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/v202509UpdateSiteResponse'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/rpcStatus'
      parameters:
      - name: id
        description: System generated unique identifier
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SiteServiceUpdateSiteBody'
        required: true
      tags:
      - SiteService
components:
  schemas:
    v202509Layer:
      type: object
      properties:
        name:
          type: string
          description: Name of the network layer
        deviceIds:
          type: array
          items:
            type: string
          description: IDs of devices that are deemed to be part of the network layer
      title: Layer
    v202509Site:
      type: object
      properties:
        id:
          type: string
          description: System generated unique identifier
          readOnly: true
        title:
          type: string
          description: User selected title/name
        lat:
          type: number
          format: double
          description: Latitude (signed decimal degrees)
        lon:
          type: number
          format: double
          description: Longitude (signed decimal degrees)
        postalAddress:
          $ref: '#/components/schemas/v202509PostalAddress'
        type:
          $ref: '#/components/schemas/v202509SiteType'
        addressClassification:
          $ref: '#/components/schemas/v202509SiteIpAddressClassification'
        architecture:
          type: array
          items:
            $ref: '#/components/schemas/v202509LayerSet'
          description: Logical network topology/architecture
        siteMarket:
          $ref: '#/components/schemas/v202509SiteMarket'
        peeringdbSiteMapping:
          type: array
          items:
            $ref: '#/components/schemas/v202509PeeringDBSiteMapping'
          description: List of PeeringDB site mappings associated with this site
      title: Site
      required:
      - title
      - type
    v202509CreateSiteMarketRequest:
      type: object
      properties:
        siteMarket:
          $ref: '#/components/schemas/v202509SiteMarket'
      title: CreateSiteMarketRequest
      required:
      - siteMarket
    v202509DeleteSiteResponse:
      type: object
      title: DeleteSiteResponse
    SiteServiceUpdateSiteBody:
      type: object
      properties:
        site:
          type: object
          properties:
            title:
              type: string
              description: User selected title/name
            lat:
              type: number
              format: double
              description: Latitude (signed decimal degrees)
            lon:
              type: number
              format: double
              description: Longitude (signed decimal degrees)
            postalAddress:
              $ref: '#/components/schemas/v202509PostalAddress'
            type:
              $ref: '#/components/schemas/v202509SiteType'
            addressClassification:
              $ref: '#/components/schemas/v202509SiteIpAddressClassification'
            architecture:
              type: array
              items:
                $ref: '#/components/schemas/v202509LayerSet'
              description: Logical network topology/architecture
            siteMarket:
              $ref: '#/components/schemas/v202509SiteMarket'
            peeringdbSiteMapping:
              type: array
              items:
                $ref: '#/components/schemas/v202509PeeringDBSiteMapping'
              description: List of PeeringDB site mappings associated with this site
          title: Site
      title: UpdateSiteRequest
      required:
      - title
      - type
      - site
    v202509SiteIpAddressClassification:
      type: object
      properties:
        infrastructureNetworks:
          type: array
          items:
            type: string
          description: List of IP address prefixes (in standard CIDR notation) used in infrastructure networks
        userAccessNetworks:
          type: array
          items:
            type: string
          description: List of IP address prefixes (in standard CIDR notation) used in access networks
        otherNetworks:
          type: array
          items:
            type: string
          description: List of IP address prefixes (in standard CIDR notation) used in other networks
      title: SiteIpAddressClassification
    v202509CreateSiteResponse:
      type: object
      properties:
        site:
          $ref: '#/components/schemas/v202509Site'
      title: CreateSiteResponse
    v202509DeleteSiteMarketResponse:
      type: object
      title: DeleteSiteMarketResponse
    v202509PostalAddress:
      type: object
      properties:
        address:
          type: string
          description: Street address
        city:
          type: string
          description: City (full name)
        region:
          type: string
          description: Geographical region
        postalCode:
          type: string
          description: Country specific postal code
        country:
          type: string
          description: Country (full name or country code)
      title: PostalAddress
      required:
      - address
      - city
      - country
    v202509UpdateSiteMarketResponse:
      type: object
      properties:
        siteMarket:
          $ref: '#/components/schemas/v202509SiteMarket'
      title: UpdateSiteMarketResponse
    SiteServiceUpdateSiteMarketBody:
      type: object
      properties:
        siteMarket:
          type: object
          properties:
            name:
              type: string
              description: User selected unique name
            description:
              type: string
              description: Free-form description
            numberOfSites:
              type: integer
              format: int64
              description: Number of sites in this market
              readOnly: true
            cdate:
              type: string
              format: date-time
              description: Creation timestamp (UTC)
              readOnly: true
            edate:
              type: string
              format: date-time
              description: Last modification timestamp (UTC)
              readOnly: true
          title: SiteMarket
      title: UpdateSiteMarketRequest
      required:
      - name
      - siteMarket
    v202509UpdateSiteResponse:
      type: object
      properties:
        site:
          $ref: '#/components/schemas/v202509Site'
      title: UpdateSiteResponse
    v202509SiteType:
      type: string
      enum:
      - SITE_TYPE_UNSPECIFIED
      - SITE_TYPE_DATA_CENTER
      - SITE_TYPE_CLOUD
      - SITE_TYPE_BRANCH
      - SITE_TYPE_CONNECTIVITY
      - SITE_TYPE_CUSTOMER
      - SITE_TYPE_OTHER
      default: SITE_TYPE_UNSPECIFIED
      description: "- SITE_TYPE_UNSPECIFIED: Invalid value.\n - SITE_TYPE_DATA_CENTER: Data center site type.\n - SITE_TYPE_CLOUD: Cloud site type.\n - SITE_TYPE_BRANCH: Branch office site type.\n - SITE_TYPE_CONNECTIVITY: Connectivity/PoP site type.\n - SITE_TYPE_CUSTOMER: Customer/partner site type.\n - SITE_TYPE_OTHER: Other site type."
      title: SiteType
    v202509CreateSiteRequest:
      type: object
      properties:
        site:
          $ref: '#/components/schemas/v202509Site'
      title: CreateSiteRequest
      required:
      - site
    v202509SiteMarket:
      type: object
      properties:
        id:
          type: string
          description: System generated unique identifier
          readOnly: true
        name:
          type: string
          description: User selected unique name
        description:
          type: string
          description: Free-form description
        numberOfSites:
          type: integer
          format: int64
          description: Number of sites in this market
          readOnly: true
        cdate:
          type: string
          format: date-time
          description: Creation timestamp (UTC)
          readOnly: true
        edate:
          type: string
          format: date-time
          description: Last modification timestamp (UTC)
          readOnly: true
      title: SiteMarket
      required:
      - name
    rpcStatus:
      type: object
      properties:
        code:
          type: integer
          format: int32
        message:
          type: string
        details:
          type: array
          items:
            $ref: '#/components/schemas/protobufAny'
    v202509CreateSiteMarketResponse:
      type: object
      properties:
        siteMarket:
          $ref: '#/components/schemas/v202509SiteMarket'
      title: CreateSiteMarketResponse
    protobufAny:
      type: object
      properties:
        '@type':
          type: string
      additionalProperties: {}
    v202509ListSiteMarketsResponse:
      type: object
      properties:
        siteMarkets:
          type: array
          items:
            $ref: '#/components/schemas/v202509SiteMarket'
          description: List of configurations of requested site markets
        invalidCount:
          type: integer
          format: int64
          description: Number of invalid entries encountered while collecting data
      title: ListSiteMarketsResponse
    v202509GetSiteResponse:
      type: object
      properties:
        site:
          $ref: '#/components/schemas/v202509Site'
      title: GetSiteResponse
    v202509PeeringDBSiteMapping:
      type: object
      properties:
        id:
          type: string
          description: Peering DB id
        siteId:
          type: string
          description: Peering DB site id
        peeringdbFacId:
          type: string
          description: Peering DB facility id
        edate:
          type: string
          format: date-time
          description: Last modification timestamp (UTC)
          readOnly: true
        cdate:
          type: string
          format: date-time
          description: Creation timestamp (UTC)
          readOnly: true
        companyId:
          type: string
          description: Company ID
      required:
      - id
      - siteId
      - peeringdbFacId
    v202509LayerSet:
      type: object
      properties:
        layers:
          type: array
          items:
            $ref: '#/components/schemas/v202509Layer'
          description: List of parallel network layers
      title: LayerSet
    v202509GetSiteMarketResponse:
      type: object
      properties:
        siteMarket:
          $ref: '#/components/schemas/v202509SiteMarket'
      title: GetSiteMarketResponse
    v202509ListSitesResponse:
      type: object
      properties:
        sites:
          type: array
          items:
            $ref: '#/components/schemas/v202509Site'
          description: List of configurations of requested sites
        invalidCount:
          type: integer
          format: int64
          description: Number of invalid entries encountered while collecting data
      title: ListSitesResponse
  securitySchemes:
    email:
      type: apiKey
      name: X-CH-Auth-Email
      in: header
    token:
      type: apiKey
      name: X-CH-Auth-API-Token
      in: header
externalDocs:
  description: General information about Kentik APIs
  url: https://kb.kentik.com/v0/Ab09.htm#Ab09-APIs_Overview