Pulling customer data from any REST API with Custom Data Connectors
Updated June 14, 2026
Overview
Custom Data Connectors let you pull customer data from any REST API — not just supported CRMs. Multiple connectors can be active simultaneously; their data appears alongside CRM and warehouse data in the agent's context.
Adding a connector
Click Add Connector in the Custom Data Connectors section on the Integrations page. Each connector requires:
- Name — a label that identifies this data source (e.g. "Wallet Service")
- Endpoint URL — the REST API URL, optionally containing template variables
- Auth Type — how to authenticate with the API
- Field Mappings — optionally specify which fields to extract
URL template variables
The endpoint URL can contain substitution placeholders replaced with the current customer's data before each request:
{user_id}— the customer ID from the conversation{email}— the customer's email address{customer_name}— the customer's display name
Auth types
- None — no authentication (public endpoints)
- API Key Header — sends a custom header (e.g.
X-API-Key) with your key - Bearer Token — sends an
Authorization: Bearer …header - Basic Auth — sends HTTP Basic authentication with username + password
Credentials are encrypted with AES-256-GCM before being stored.
Field mappings
By default, all top-level string, number, and boolean fields are automatically mapped. To extract specific or nested values, add explicit mappings with an Alias (label shown to the agent) and a JSON Path (dot-notation, e.g. data.wallet.balance).
Testing a connector
Click Test on any connector row. Inquiru sends a request using __test__ as the customer ID and reports whether the endpoint is reachable. A 404 response also counts as reachable (customer not found is not a connectivity error).
How connectors are used in conversations
On the first message of a conversation, all active connectors are called in parallel. Data is injected as separate ## Custom Data: {name} sections in the agent's system prompt. Results are cached on the conversation so subsequent messages reuse the same data. Connectors that return an error are silently skipped and never block the AI response.
