Authentication
Create and use API keys to authenticate requests.
Dashboard Statistics
Query chat volume, revenue, conversion rates, and leaderboards.
Conversations
List conversations, fetch details, and inspect associated customer events.
Smart Tags
Aggregate smart tag counts across conversations.
Authentication
Creating an API Key
1
Navigate to API Keys
Go to Settings > Personal API Keys in the Remark dashboard.
2
Create a key
Click Create API Key, give it a name and optional expiry date.
3
Copy the token
Copy the token immediately — it is only shown once. Token format:
rmrk_u_ followed by a secure hash.Using the API Key
All requests go to the GraphQL endpoint:Authorization header:
Example Request
Dashboard Statistics
The main analytics entry point. All stats are nested undervendorById > conversationAggregateStatistics and support filtering by date range and optionally by channel.
Permission required: VIEW_CONVERSIONS (for revenue/conversion fields)
All-in-One Dashboard Query
Fetches the most commonly used KPIs in a single request:Variables
Example Response
Field Reference
Field Reference
Period-over-Period Comparison
Use GraphQL aliases to fetch current and previous periods in one request:Smart Tag Aggregation
Count how often each smart tag was applied to conversations in a time range. Useful for tracking trending topics, common customer issues, or product interest over time.Permission required: VIEW_CONVERSATIONS
Count Tags in a Period
Example Response
List Available Smart Tags
Conversation Listing
Paginated list of conversations with filtering and sorting. Uses cursor-based pagination.Permission required: VIEW_CONVERSATIONS
Variables
Filter Options
Sort Options
For exports, backfills, and other long pagination jobs, explicitly sort by
created. The default sort is lastMessageDate, which can change when an
older conversation receives a new message and may make cursor pagination less
stable over time.Recommended Variables
Pagination
Use cursor-based pagination to iterate through results:Conversation Detail
Fetch a single conversation with its full message history.Permission required: VIEW_CONVERSATIONS
Conversation Customer Events
UsecustomerEvent to fetch the browsing and shopping events associated with a
conversation’s session. This is the right place to look for product views,
category page views, searches, and cart activity that happened around a chat.
Permission required: VIEW_CONVERSATIONS
Event Types
Session & Order Data
Look up browsing sessions and conversion/order details for a customer.Permission required: VIEW_CONVERSIONS
Key Fields
Permissions Reference
Your API key inherits the permissions of the user who created it. Different data requires different permissions:
An admin or vendor owner will have all permissions for their vendor.
Rate Limits & Best Practices
- Rate limiting: Rate limits may be enforced to prevent abuse and maintain quality of service
- Request only what you need: GraphQL lets you select specific fields — smaller queries are faster
- Use pagination: Always paginate conversation and session lists rather than fetching everything at once
- Cache where appropriate: Dashboard statistics don’t change in real time; polling every few minutes is sufficient
- Time ranges: Always provide
start/endfor dashboard stats queries — omitting them returns lifetime data which is slower - Timezone: Pass your local IANA timezone (e.g.
America/New_York) for time series and histogram queries to get correctly bucketed data