Google Cloud CDN BackendServices API

Manage CDN-enabled backend services

OpenAPI Specification

google-cloud-cdn-backendservices-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Google Cloud CDN BackendServices API
  description: Manages Cloud CDN resources including backend services with CDN enabled, URL maps, and cache invalidation through the Compute Engine API.
  version: 1.0.0
  contact:
    name: Google Cloud
    url: https://cloud.google.com/cdn
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://compute.googleapis.com/compute/v1
  description: Google Compute Engine API v1 (Cloud CDN is managed via Compute Engine)
security:
- oauth2:
  - https://www.googleapis.com/auth/compute
tags:
- name: BackendServices
  description: Manage CDN-enabled backend services
paths:
  /projects/{project}/global/backendServices:
    get:
      operationId: listBackendServices
      summary: Google Cloud CDN List Backend Services
      description: Retrieves the list of backend service resources available to the project.
      tags:
      - BackendServices
      parameters:
      - name: project
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/BackendService'
                  nextPageToken:
                    type: string
    post:
      operationId: insertBackendService
      summary: Google Cloud CDN Create Backend Service
      description: Creates a backend service resource with CDN configuration.
      tags:
      - BackendServices
      parameters:
      - name: project
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BackendService'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Operation'
  /projects/{project}/global/backendServices/{backendService}:
    get:
      operationId: getBackendService
      summary: Google Cloud CDN Get Backend Service
      description: Returns the specified backend service resource.
      tags:
      - BackendServices
      parameters:
      - name: project
        in: path
        required: true
        schema:
          type: string
      - name: backendService
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackendService'
    patch:
      operationId: patchBackendService
      summary: Google Cloud CDN Update Backend Service
      description: Patches the specified backend service resource with the data included in the request.
      tags:
      - BackendServices
      parameters:
      - name: project
        in: path
        required: true
        schema:
          type: string
      - name: backendService
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BackendService'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Operation'
    delete:
      operationId: deleteBackendService
      summary: Google Cloud CDN Delete Backend Service
      description: Deletes the specified backend service.
      tags:
      - BackendServices
      parameters:
      - name: project
        in: path
        required: true
        schema:
          type: string
      - name: backendService
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Operation'
components:
  schemas:
    BackendService:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        description:
          type: string
        selfLink:
          type: string
        protocol:
          type: string
          enum:
          - HTTP
          - HTTPS
          - HTTP2
          - TCP
          - SSL
        enableCDN:
          type: boolean
        cdnPolicy:
          type: object
          properties:
            cacheMode:
              type: string
              enum:
              - USE_ORIGIN_HEADERS
              - FORCE_CACHE_ALL
              - CACHE_ALL_STATIC
            defaultTtl:
              type: integer
            maxTtl:
              type: integer
            clientTtl:
              type: integer
            negativeCaching:
              type: boolean
            signedUrlCacheMaxAgeSec:
              type: string
        backends:
          type: array
          items:
            type: object
            properties:
              group:
                type: string
              balancingMode:
                type: string
              capacityScaler:
                type: number
        healthChecks:
          type: array
          items:
            type: string
        creationTimestamp:
          type: string
          format: date-time
    Operation:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
        operationType:
          type: string
        status:
          type: string
        targetLink:
          type: string
        progress:
          type: integer
        insertTime:
          type: string
          format: date-time
  securitySchemes:
    oauth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: https://accounts.google.com/o/oauth2/auth
          tokenUrl: https://oauth2.googleapis.com/token
          scopes:
            https://www.googleapis.com/auth/compute: Full access to Compute Engine
            https://www.googleapis.com/auth/cloud-platform: Full access to Google Cloud Platform