
Configuring RD Station Conversas as a Source
In the Sources tab, click on the “Add source” button located on the top right of your screen. Then, select the RD Station Conversas option from the list of connectors. Click Next and you’ll be prompted to add your access.1. Add account access
You’ll need to provide authentication so Nekt can access your RD Station Conversas data. The API uses a JWT sent in theAuthorization: Bearer header.
The following configurations are available:
- Access token: Token used for authentication. Required. You can get it at Apps & Integrations > API > RD Station Conversas (developers.rdstation.com).
- Private key (JWK) for decryption: JWK (JSON Web Key) of the private key as a JSON string, used to decrypt conversation history. Optional. Generate it at Apps & Integrations > API > Generate Key (available on Professional accounts). See Conversas v2 encryption. Without it, the messages_history stream is skipped and its table is not updated; every other stream syncs normally.
-
Initial sync date: Start of the period fetched by messages_history and reports. It affects only those two streams — every other stream is always synced in full, because the API offers no date filter for them. When left empty, both streams fall back to the last 30 days. Choose an old date with care: conversation history is fetched one request per contact against a strict API rate limit, so the further back this goes, the longer the sync takes. Use
YYYY-MM-DD. - Requests per minute: Maximum requests per minute sent to RD Station Conversas. Optional, defaults to 30. The API does not publish its rate limit, so the default is deliberately conservative. Lower it if runs still hit rate limits; raise it to sync faster.
Some streams depend on the RD Station Conversas plan contracted by the account. When a resource is not enabled, that stream is skipped with a message in the run log and its table is left untouched — the rest of the extraction completes normally. See Availability per plan below.
2. Select streams
Choose which data streams you want to sync. For faster extractions, select only the streams that are relevant to your analysis. You can select entire groups of streams or pick specific ones.Tip: The stream can be found more easily by typing its name.
The messages_history stream is a child of contacts: it fetches conversation history per contact. Selecting messages_history will sync history for every contact. Ensure Initial sync date is set if you use this stream. This stream is available only on the Advanced plan — see planos RD Station Conversas.
3. Configure data streams
Customize how you want your data to appear in your catalog. Select the desired layer where the data will be placed, a folder to organize it inside the layer, a name for each table (which will effectively contain the fetched data) and the type of sync.- Layer: choose between the existing layers on your catalog. This is where you will find your new extracted tables as the extraction runs successfully.
- Folder: a folder can be created inside the selected layer to group all tables being created from this new data source.
- Table name: we suggest a name, but feel free to customize it. You have the option to add a prefix to all tables at once and make this process faster!
- Sync Type: all streams in this connector are full table; select the option that best fits how you want to refresh the data.
4. Configure data source
Describe your data source for easy identification within your organization, not exceeding 140 characters. To define your Trigger, consider how often you want data to be extracted from this source. This decision usually depends on how frequently you need the new table data updated (every day, once a week, or only at specific times). Optionally, you can define some additional settings:- Configure Delta Log Retention and determine for how long we should store old states of this table as it gets updated. Read more about this resource here.
- Determine when to execute an Additional Full Sync. This will complement the incremental data extractions, ensuring that your data is completely synchronized with your source every once in a while.
5. Check your new source
You can view your new source on the Sources page. If needed, manually trigger the source extraction by clicking on the arrow button. Once executed, your data will appear in your Catalog.Availability per plan
RD Station Conversas gates some resources by contracted plan, and the API also disables individual resources per account. When a stream is not available, it is skipped with an explanation in the run log and its table is left untouched — the rest of the extraction completes normally, so a partial plan never costs you the streams you do have access to.
Reading data through the API is not metered or charged: RD Station bills WhatsApp messages exchanged, and this connector only reads.
Streams and Fields
Below you’ll find all available data streams from RD Station Conversas and their corresponding fields. API reference: developers.rdstation.com.Contacts
Contacts
List contacts (GET /v2/customers). Base stream for conversation data; messages_history is a child of this stream.
Address (object):
Job (object):
Custom Fields
Custom Fields
List custom fields (GET /v2/custom-fields). Variables that can be used in message templates.
Employees
Employees
List employees (GET /v2/employees).
Flows
Flows
List flows (GET /v2/flows).
Messages History
Messages History
List message history per contact (GET /v2/messages/history). Child stream of Contacts — one partition per contact, so a full sync issues at least one request per contact. Set Initial sync date in the source configuration to bound the period.
Reports
Reports
Attendance report (GET /v4/reports). Uses the Conversas v4 API base. Despite the name, each record is a single attendance — one customer interaction — not a report definition.
The endpoint requires a period and rejects any range wider than three months, so the connector splits the interval between your Initial sync date and today into consecutive 89-day windows and fetches each one. A longer history simply means more windows. If no start date is configured — or the configured date is in the future — the connector falls back to fetching the last 30 days.
TME / TMA (objects):
Company, employee and customer (objects):
Templates
Templates
List message templates (GET /v2/template/all).
Wallets
Wallets
List wallets (GET /v2/wallets). The endpoint returns an array of wallet names, so each record carries a single field.
WhatsApp Official Integrations
WhatsApp Official Integrations
List official WhatsApp integrations (GET /v2/whatsapp/integrations/official).
Workflows
Workflows
List workflows (GET /v2/workflows).
Data Model
The following diagram illustrates the main relationships. Contacts is the core entity; messages_history is partitioned by contact (child stream). Other streams are independent configuration or metadata entities.Implementation Notes
Message history and encryption
- The messages_history stream returns responses encrypted with JWE (RSA-OAEP-256), so the Private key (JWK) is what makes them readable. Without a key, or with one that cannot decrypt the payload, the stream is skipped rather than storing the encrypted blob — an unreadable value written as data makes a broken configuration look like a successful sync.
- Initial sync date bounds the period. It is sent together with an end date because the API requires the pair and otherwise falls back to the last 30 days.
Child stream behavior
- messages_history is a child of contacts. The tap first syncs all contacts, then requests message history for each contact — so the number of requests grows with the size of your contact base, not with the number of messages.
Reports stream behavior
- The
/v4/reportsendpoint rejects date ranges wider than 90 days, so the connector slices the requested period (from Initial sync date to today) into consecutive 89-day windows. If no start date is configured, or the configured date is in the future, it falls back to a 30-day lookback window. - The API’s documentation is ambiguous about where the records live in the payload (
reportsvsdocs), so the connector accepts both keys and logs which one actually arrived.
Pagination and page size
- The contacts and messages_history endpoints are fetched at 100 records per page — the documented ceiling on the history endpoint — instead of the API’s default of 15, which is what kept large syncs bound by the connector’s own request pacing.
- The reports endpoint rejects page sizes of 50 or more, so it is fetched at 49 records per page.
Rate limiting
- RD Station Conversas does not publish a rate limit, and its 429 responses carry no wait hint. The connector therefore paces itself, at 30 requests per minute by default, and honors
Retry-Afterwhen the API sends one. - If a sync is slower than you need, raise Requests per minute gradually. If runs report rate limiting, lower it.
Unavailable resources
- A stream the account cannot read is skipped with an explanation in the run log; the run continues and every other stream is synced. Its table is left as it was rather than being emptied.
Skills for agents
Download RD Station Conversas skills file
RD Station Conversas connector documentation as plain markdown, for use in AI agent contexts.