RudderStack · OpenAPI Overlay 1.0.0

RudderStack Internal API — API Evangelist enhancements

5 actions 5 updates update
Generated by API Evangelist Written by API Evangelist tooling for RudderStack's API. It is a proposal applied on top of the contract, not a document RudderStack publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-detailx-stabilityx-public-referencex-warningx-base-url-policyx-credential-placementx-idempotentx-idempotency-key-header

Targets 5

$.info
$.servers
$.components.securitySchemes.writeKeyAuth
$.paths.*.post
$.paths.*.post.responses.429

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: RudderStack Internal API — API Evangelist enhancements
  version: 1.0.0
x-provenance:
  generated: '2026-08-13'
  method: generated
  source: >-
    Enhancements derived from the rudder-server source surface and the artifacts in
    this repo (authentication/, conventions/, errors/, rate-limits/). Extends
    openapi/rudderstack-internal-api-api-openapi.yml without mutating it.
  extends: openapi/rudderstack-internal-api-api-openapi.yml
actions:
  - target: $.info
    description: >-
      Flag the stability status of this surface. These are INTERNAL data-plane routes
      used by RudderStack's own Reverse ETL, Audiences and Replay features; they are
      not part of the documented public API reference at
      https://www.rudderstack.com/docs/api/ and carry no compatibility promise.
    update:
      x-stability: internal
      x-public-reference: false
      x-warning: >-
        These operations (/internal/v1/extract, /internal/v1/retl,
        /internal/v1/audiencelist, /internal/v1/replay, /internal/v1/batch) are not
        documented on the RudderStack API reference. They are reachable on the data
        plane but should not be treated as a supported integration surface.
      x-base-url-policy: >-
        Served from the workspace data plane URL, same host as the public /v1/*
        tracking endpoints.
  - target: $.servers
    description: Replace the relative "/v1" server with an explicit templated data-plane server.
    update:
      - url: 'https://{dataPlaneUrl}'
        description: Workspace data plane host, as assigned in the RudderStack dashboard.
        variables:
          dataPlaneUrl:
            default: hosted.rudderlabs.com
            description: Workspace-specific data plane hostname.
  - target: $.components.securitySchemes.writeKeyAuth
    description: Document credential placement.
    update:
      x-credential-placement: HTTP Basic, source write key as username, empty password.
      x-detail: authentication/rudderstack-authentication.yml
  - target: $.paths.*.post
    description: Record non-idempotency, consistent with the public tracking operations.
    update:
      x-idempotent: false
      x-idempotency-key-header: null
      x-detail: conventions/rudderstack-conventions.yml
  - target: $.paths.*.post.responses.429
    description: State the rate-limit signalling reality.
    update:
      x-rate-limit-headers: none
      x-retry-after: not sent
      x-client-guidance: Exponential backoff; the 429 is the entire signal.
      x-detail: rate-limits/rudderstack-rate-limits.yml

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/rudderstack-internal-api-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.