Morning Consult · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Morning Consult API

13 actions 13 updates update extends openapi/morning-consult-openapi-original.yml
Derived by API Evangelist Built from the contracts Morning Consult publishes. Morning Consult did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-rate-limit-bucketx-apievangelist-rate-limitx-apievangelist-sunsetx-apievangelist-replacementx-apievangelist-asyncx-apievangelist-poll-operationx-apievangelist-result-formatx-apievangelist-provider

Targets 12

$.info
$.servers
$.components.securitySchemes.JWT
$.paths['/responses'].post
$.paths['/scores'].post
$.paths['/responses/bulk'].post
$.paths['/scores/bulk'].post
$.paths['/ai/resolve'].post
$.paths['/auth/token'].post
$.paths['/surveys/syndicated/timeseries'].post
$.paths['/surveys/syndicated/scores'].post
$.paths['/surveys/syndicated/timeseries/batch'].post

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for the Morning Consult API
  version: 1.0.0
extends: openapi/morning-consult-openapi-original.yml
x-generated: '2026-08-01'
x-method: generated
x-source: >-
  Derived from the verbatim spec at https://api.morningconsult.com/openapi.yaml plus the
  published documentation at https://api.morningconsult.com/docs/. Captures API
  Evangelist annotations without mutating the harvested original.
actions:
- target: $.info
  update:
    x-apievangelist-provider: morning-consult
    x-apievangelist-artifacts:
      authentication: authentication/morning-consult-authentication.yml
      conventions: conventions/morning-consult-conventions.yml
      errors: errors/morning-consult-problem-types.yml
      lifecycle: lifecycle/morning-consult-lifecycle.yml
      rate_limits: rate-limits/morning-consult-rate-limits.yml
      data_model: data-model/morning-consult-data-model.yml
      conformance: conformance/morning-consult-conformance.yml
      examples: examples/morning-consult-examples.yml
      skills: skills/_index.yml
    x-apievangelist-notes: >-
      HTTP 429 is documented in the published error table and enforced with
      X-Rate-Limit-* headers, but is not declared as a response on any operation in the
      original spec. No Sunset/Deprecation response headers are declared even though a
      dated deprecation policy exists (sunset 2026-10-01).
- target: $.info
  update:
    x-apievangelist-docs: https://api.morningconsult.com/docs/
    x-apievangelist-support: api-support@morningconsult.com
- target: $.servers
  update:
  - url: https://api.morningconsult.com/v1
    description: Version 1 API
    x-apievangelist-spec-url: https://api.morningconsult.com/openapi.yaml
- target: $.components.securitySchemes.JWT
  update:
    x-apievangelist-token-lifetime-seconds: 3600
    x-apievangelist-obtained-from: POST /auth/token
- target: $.paths['/responses'].post
  update:
    x-apievangelist-rate-limit-bucket: Data
    x-apievangelist-rate-limit: 200/minute
- target: $.paths['/scores'].post
  update:
    x-apievangelist-rate-limit-bucket: Data
    x-apievangelist-rate-limit: 200/minute
- target: $.paths['/responses/bulk'].post
  update:
    x-apievangelist-rate-limit-bucket: Data Bridge
    x-apievangelist-rate-limit: 100/day
    x-apievangelist-async: submit-then-poll
    x-apievangelist-poll-operation: getResponsesBulkStatus
    x-apievangelist-result-format: parquet
- target: $.paths['/scores/bulk'].post
  update:
    x-apievangelist-rate-limit-bucket: Data Bridge
    x-apievangelist-async: submit-then-poll
    x-apievangelist-poll-operation: getScoresBulkStatus
    x-apievangelist-result-format: parquet
- target: $.paths['/ai/resolve'].post
  update:
    x-apievangelist-rate-limit-bucket: AI
    x-apievangelist-rate-limit: 20 per 5-minute window
    x-apievangelist-latency: typically ~10s, up to ~20s for complex queries
- target: $.paths['/auth/token'].post
  update:
    x-apievangelist-rate-limit-bucket: Auth
    x-apievangelist-rate-limit: 20/minute per username (1/second); refresh 30/minute
- target: $.paths['/surveys/syndicated/timeseries'].post
  update:
    x-apievangelist-sunset: '2026-10-01'
    x-apievangelist-replacement: postResponses
- target: $.paths['/surveys/syndicated/scores'].post
  update:
    x-apievangelist-sunset: '2026-10-01'
    x-apievangelist-replacement: postScores
- target: $.paths['/surveys/syndicated/timeseries/batch'].post
  update:
    x-apievangelist-sunset: '2026-10-01'
    x-apievangelist-replacement: postResponsesBulk

Work with this as data

Every overlay 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 openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • 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 overlay
curl "https://apis.io/api/v1/overlays/morning-consult-api-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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