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.
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
# 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'