Skip to main content
RD Station Conversas is RD Station’s conversation and messaging platform for managing customer interactions across channels (WhatsApp, Instagram, email, and others). The connector extracts contacts, message history, flows, templates, and related data from the Conversas API so you can centralize conversation data in your Lakehouse.

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 the Authorization: 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.
Once you’re done, click Next.
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.
Select the streams and click Next.

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.
Once you are done configuring, click Next.

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.
Once you are ready, click Next to finalize the setup.

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.
For you to be able to see it on your Catalog, you need at least one successful source run.

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.
List contacts (GET /v2/customers). Base stream for conversation data; messages_history is a child of this stream.Address (object):Job (object):
List custom fields (GET /v2/custom-fields). Variables that can be used in message templates.
List employees (GET /v2/employees).
List flows (GET /v2/flows).
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.
This stream needs two things from your RD Station Conversas account: the Advanced plan, which grants access to the conversation history API, and a Professional account, which is what allows the encryption key to be generated. See planos e preços.The responses are encrypted (JWE, RSA-OAEP-256), so the Private key (JWK) must be configured. Without it — or with a key that cannot decrypt the payload — the stream is skipped, its table is left untouched, and a message explaining why appears in the run log. Every other stream still syncs.
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):
List message templates (GET /v2/template/all).
List wallets (GET /v2/wallets). The endpoint returns an array of wallet names, so each record carries a single field.
List official WhatsApp integrations (GET /v2/whatsapp/integrations/official).
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/reports endpoint 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 (reports vs docs), 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-After when 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.