Google Display & Video 360 · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Google Display & Video 360 API

3 actions 3 updates update extends openapi/google-display-video-360-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Google Display & Video 360's API. It is a proposal applied on top of the contract, not a document Google Display & Video 360 publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-profilex-contract-originx-discovery-documentx-error-formatx-idempotencyx-rate-limit-headersx-event-surfacex-deprecation-policy

Targets 3

$.info
$.components.schemas
$.paths.*.*.responses

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the Google Display & Video 360 API
  version: 1.0.0
x-generated: '2026-08-13'
x-method: generated
x-source: >-
  Enhancements derived from Google's published documentation that are absent from the
  machine-readable contract: the error catalog at
  https://developers.google.com/display-video/api/guides/concepts/general/errors-warnings,
  the quota page at https://developers.google.com/display-video/api/limits, and the
  deprecation policy at https://developers.google.com/display-video/api/deprecations.
x-rationale: >-
  Google's Discovery Document declares success responses only — no operation in the generated
  OpenAPI carries a single 4xx or 5xx. Google DOES document those errors, in prose, on a separate
  page. This overlay projects that documented error contract onto every operation without
  mutating the generated spec, so a consumer applying the overlay gets a spec that describes
  failure as well as success. It adds nothing Google has not published.
extends: openapi/google-display-video-360-api-openapi.yml
actions:
  - target: $.info
    update:
      x-apievangelist-profile: https://apis.io/provider/google-display-video-360/
      x-contract-origin: google-api-discovery-document
      x-discovery-document: https://displayvideo.googleapis.com/$discovery/rest?version=v4
      x-error-format: google-rpc-status
      x-idempotency: none
      x-rate-limit-headers: none
      x-event-surface: none
      x-deprecation-policy: https://developers.google.com/display-video/api/deprecations
      x-changelog: https://developers.google.com/display-video/api/release-notes
      x-quotas: https://developers.google.com/display-video/api/limits
  - target: $.components.schemas
    update:
      GoogleRpcErrorEnvelope:
        type: object
        description: >-
          Standard Display & Video 360 API error envelope. Documented at
          https://developers.google.com/display-video/api/guides/concepts/general/errors-warnings
          but absent from the Discovery Document.
        properties:
          error:
            type: object
            properties:
              code:
                type: integer
                description: HTTP status code.
              message:
                type: string
                description: Human-readable detail. Not contractual — do not branch on its wording.
              status:
                type: string
                description: google.rpc.Code enum name. This is the machine-readable field to branch on.
                enum:
                  - INVALID_ARGUMENT
                  - UNAUTHENTICATED
                  - PERMISSION_DENIED
                  - NOT_FOUND
                  - ABORTED
                  - RESOURCE_EXHAUSTED
                  - INTERNAL
                  - DEADLINE_EXCEEDED
  - target: $.paths.*.*.responses
    description: >-
      Add the documented error responses to every operation. Every code below is published by
      Google on the errors-and-warnings page as applying to this API generally.
    update:
      '400':
        description: INVALID_ARGUMENT — the request is malformed or a field value is rejected. Not retryable unchanged.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'
      '401':
        description: UNAUTHENTICATED — no valid OAuth 2.0 credential was supplied.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'
      '403':
        description: >-
          PERMISSION_DENIED — the authenticated Google Account lacks a Display & Video 360 user
          profile with sufficient permission on the addressed partner or advertiser.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'
      '404':
        description: NOT_FOUND — the resource does not exist, or the id belongs to another type or an unreachable parent.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'
      '409':
        description: ABORTED — a concurrent modification conflicted with this request. Retry after a short wait.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'
      '429':
        description: >-
          RESOURCE_EXHAUSTED — a per-minute quota was exceeded (1500 total / 700 write per
          project; 300 total / 150 write per advertiser). No rate-limit headers are returned and
          quota increases cannot be requested. Failed requests still consume quota.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'
      '500':
        description: INTERNAL — server-side failure. Retry with backoff.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'
      '504':
        description: DEADLINE_EXCEEDED — the request exceeded the server deadline. Retry with backoff.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleRpcErrorEnvelope'