Spindl · OpenAPI Overlay 1.0.0

API Evangelist enhancements for the Spindl Ads (Embed) API

5 actions 5 updates update extends openapi/spindl-ads-api-openapi.yml
Derived by API Evangelist Built from the contracts Spindl publishes. Spindl did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-agent-notex-apievangelist-enrichedx-api-evangelist-categoryx-authenticationx-error-catalogx-conventionsx-data-modelx-components

Targets 5

$.info
$.paths['/render/{publisher_id}'].get
$.paths['/external/track'].post
$.paths['/serve'].get
$.components.schemas.Error

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
x-generated: '2026-08-13'
x-method: generated
info:
  title: API Evangelist enhancements for the Spindl Ads (Embed) API
  version: 1.0.0
extends: openapi/spindl-ads-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-enriched: true
    x-api-evangelist-category: onchain-advertising
    x-authentication: authentication/spindl-authentication.yml
    x-error-catalog: errors/spindl-problem-types.yml
    x-conventions: conventions/spindl-conventions.yml
    x-data-model: data-model/spindl-data-model.yml
    x-components: components/spindl-components.yml
- target: $.paths['/render/{publisher_id}'].get
  update:
    x-agent-note: >-
      Read-only. Requires publisher_id, placement_id, address, limit and
      country — limit and country are REQUIRED, which is unusual for a read.
      An empty items[] is a normal "no ad available" result, not an error.
- target: $.paths['/external/track'].post
  update:
    x-agent-note: >-
      Write with no idempotency key. impression_id is server-issued by
      fetchRecommendations; never synthesize one. Post exactly once per unit
      actually rendered on screen.
- target: $.paths['/serve'].get
  update:
    x-agent-note: >-
      Unauthenticated by design — intended as an iframe src in a browser. Do
      not attach the publisher API token to this call.
- target: $.components.schemas.Error
  update:
    x-agent-note: >-
      `code` is a gRPC status code, not an HTTP status. 16 = UNAUTHENTICATED,
      5 = NOT_FOUND. Observed live 2026-08-13.

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/spindl-ads-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.