Google PageSpeed · OpenAPI Overlay 1.0.0

API Evangelist enhancements for Google PageSpeed Analysis API

6 actions 6 updates documentation extends openapi/google-pagespeed-analysis-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Google PageSpeed's API. It is a proposal applied on top of the contract, not a document Google PageSpeed publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

descriptionx-apievangelist-enrichedx-discovery-documentx-discovery-revisionx-error-formatx-agent-notesx-timeout-secondsx-timeout-note

Targets 6

$.info
$.servers
$.paths['/runPagespeed'].get
$.paths['/runPagespeed'].get.responses['400']
$.paths['/runPagespeed'].get.responses['429']
$.components.schemas.LoadingExperience

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for Google PageSpeed Analysis API
  version: 1.0.0
x-generated: '2026-08-13'
x-method: generated
x-source: >-
  Derived from live probes of https://www.googleapis.com/pagespeedonline/v5/runPagespeed
  (2026-08-13), the Google Discovery document revision 20260811, and
  https://developers.google.com/speed/docs/insights/v5/get-started
extends: openapi/google-pagespeed-analysis-api-openapi.yml
actions:
  - target: $.info
    update:
      x-apievangelist-enriched: '2026-08-13'
      x-discovery-document: https://pagespeedonline.googleapis.com/$discovery/rest?version=v5
      x-discovery-revision: '20260811'
      x-error-format: google-rpc
      x-agent-notes: >-
        Single read-only operation. No write surface, no pagination, no idempotency key,
        no events. Errors use the Google API (google.rpc) envelope, not RFC 9457.
  - target: $.servers
    update:
      - url: https://pagespeedonline.googleapis.com/pagespeedonline/v5
        description: >-
          Service-specific host published in the Discovery document (rootUrl
          https://pagespeedonline.googleapis.com/, method path
          pagespeedonline/v5/runPagespeed). Equivalent to the www.googleapis.com alias
          already declared.
  - target: $.paths['/runPagespeed'].get
    update:
      x-timeout-seconds: 120
      x-timeout-note: >-
        Google's release notes record the maximum API request timeout being raised to
        120 seconds; a PageSpeed call runs a real Lighthouse audit and is slow by design.
      x-deprecation-notice: >-
        Google states it plans to discontinue including real-world Chrome User Experience
        Report field data (loadingExperience / originLoadingExperience) in this API and
        recommends the CrUX API or CrUX History API instead.
  - target: $.paths['/runPagespeed'].get.responses['400']
    update:
      description: >-
        INVALID_ARGUMENT. Google API error envelope. Observed reason API_KEY_INVALID for
        a malformed or unrecognised key.
  - target: $.paths['/runPagespeed'].get.responses['429']
    update:
      description: >-
        RESOURCE_EXHAUSTED. Project or anonymous quota exceeded; google.rpc.ErrorInfo
        reason RATE_LIMIT_EXCEEDED, quota_metric pagespeedonline.googleapis.com/default,
        quota_limit defaultPerDayPerProject. No Retry-After or RateLimit-* header is sent.
  - target: $.components.schemas.LoadingExperience
    update:
      x-deprecation-planned: true
      x-deprecation-note: >-
        Chrome User Experience Report field data is slated for removal from this API per
        Google's get-started documentation. Migrate to the CrUX API.