RudderStack · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for RudderStack HTTP HTTP API

8 actions 8 updates phrasing extends openapi/rudderstack-http-api-api-openapi.yml
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-apievangelist-phrasing

Targets 8

$.info
$.paths['/v1/identify'].post
$.paths['/v1/track'].post
$.paths['/v1/page'].post
$.paths['/v1/screen'].post
$.paths['/v1/group'].post
$.paths['/v1/alias'].post
$.paths['/v1/batch'].post

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for RudderStack HTTP HTTP API
  version: 1.0.0
extends: openapi/rudderstack-http-api-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-phrasing:
      method: generated
      generated: '2026-09-26'
      generator: build-phrasing.py
      label: Generated by API Evangelist
      operations: 7
- target: $.paths['/v1/identify'].post
  update:
    x-apievangelist-phrasing:
      intent: Identify a user and record their traits
      effect: write
      questions:
      - How do I tie a visitor to a known user ID in RudderStack?
      - Can I record traits for an anonymous visitor before they sign up?
      - What call links a user's later actions to who they are?
      instructions:
      - text: Identify user {userId} so their actions are tied to that profile.
        slots:
          userId: requestBody.userId
      - text: Identify anonymous visitor {anonymousId} with the traits I give you.
        slots:
          anonymousId: requestBody.anonymousId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/track'].post
  update:
    x-apievangelist-phrasing:
      intent: Track a user action as an event
      effect: write
      questions:
      - How can I send a custom event like 'Order Completed' with its properties?
      - Can I track an action for a user who hasn't logged in yet?
      - What do I send to record something a user did in my app?
      instructions:
      - text: Track event {event} for user {userId}.
        slots:
          event: requestBody.event
          userId: requestBody.userId
      - text: Send a {event} event for anonymous visitor {anonymousId} with properties {properties}.
        slots:
          event: requestBody.event
          anonymousId: requestBody.anonymousId
          properties: requestBody.properties
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/page'].post
  update:
    x-apievangelist-phrasing:
      intent: Record a website page view
      effect: write
      questions:
      - How do I record a page view on my website from the server?
      - Can I include the page name and URL details when logging a web page view?
      instructions:
      - text: Record a view of web page {name} by user {userId}.
        slots:
          name: requestBody.name
          userId: requestBody.userId
      - text: Log a website page view for anonymous visitor {anonymousId}.
        slots:
          anonymousId: requestBody.anonymousId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/screen'].post
  update:
    x-apievangelist-phrasing:
      intent: Record a mobile app screen view
      effect: write
      questions:
      - How do I record which mobile app screen a user just opened?
      - Is there a mobile equivalent of a page view for app screens?
      instructions:
      - text: Record that user {userId} viewed the {name} screen in the mobile app.
        slots:
          userId: requestBody.userId
          name: requestBody.name
      - text: Log a mobile screen view of {name} for anonymous visitor {anonymousId}.
        slots:
          name: requestBody.name
          anonymousId: requestBody.anonymousId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/group'].post
  update:
    x-apievangelist-phrasing:
      intent: Link a user to a company or account group
      effect: write
      questions:
      - How do I associate a user with the company or organization they belong to?
      - Can I store traits about a company, like its name or employee count?
      instructions:
      - text: Add user {userId} to group {groupId}.
        slots:
          userId: requestBody.userId
          groupId: requestBody.groupId
      - text: Link user {userId} to account {groupId} with group traits {traits}.
        slots:
          userId: requestBody.userId
          groupId: requestBody.groupId
          traits: requestBody.traits
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/alias'].post
  update:
    x-apievangelist-phrasing:
      intent: Merge a user's previous identity into a new one
      effect: write
      questions:
      - How do I merge two identities of the same user after they change IDs?
      - Can I connect a user's old ID to their new user ID so history carries over?
      instructions:
      - text: Alias previous ID {previousId} to user {userId}.
        slots:
          previousId: requestBody.previousId
          userId: requestBody.userId
      - text: Merge the identity {previousId} into user {userId}.
        slots:
          previousId: requestBody.previousId
          userId: requestBody.userId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/v1/batch'].post
  update:
    x-apievangelist-phrasing:
      intent: Send many tracking events in one request
      effect: write
      questions:
      - Can I send identify, track, page and group events together in a single request?
      - How do I cut down on HTTP calls when sending lots of customer events?
      instructions:
      - text: 'Send these events together in one batch: {batch}.'
        slots:
          batch: requestBody.batch
      - text: Upload the queued mixed event list {batch} to RudderStack in a single call.
        slots:
          batch: requestBody.batch
      method: generated
      generated: '2026-09-26'

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-http-api-api-phrasing-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.