Skip to main content

API Reference

Breadcrumb API (0.1.0)

Download OpenAPI specification:Download

This is the API for Breadcrumb

sources

Manage data sources like database connectors, spreadsheets, and smart connectors

List database connectors

Returns a list of all database connectors owned by the authenticated user.

Authorizations:
APIKeyHeader

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Create a database connector

Creates a new database connector for PostgreSQL or Redshift databases.

The connector will be tested during creation to ensure the credentials are valid.
Once created, the connector can be used as a data source for spaces and conversations.
Authorizations:
APIKeyHeader
Request Body schema: application/json
required
database_type
required
string (Database Type)

Type of database (postgres or redshift)

host
required
string (Host)

Database host

port
required
integer (Port)

Database port

database
required
string (Database)

Database name

username
required
string (Username)

Database username

password
required
string (Password)

Database password

Source Name (string) or Source Name (null) (Source Name)

Optional name for the source

Responses

Request samples

Content type
application/json
{
  • "database_type": "postgres",
  • "host": "db.example.com",
  • "port": 5432,
  • "database": "analytics",
  • "username": "analyst",
  • "password": "secret123",
  • "source_name": "Production Analytics DB"
}

Response samples

Content type
application/json
{
  • "source_id": "src_123",
  • "database_type": "postgres",
  • "host": "db.example.com",
  • "port": 5432,
  • "database": "analytics",
  • "username": "analyst",
  • "source_name": "Production Analytics DB",
  • "status": "READY"
}

spaces

Manage spaces, which are filtered views of data sources shared with customers

Create a new space

Creates a new space from a data source with optional filters.

A space is a filtered view of a data source that can be shared with customers.
The space will be created with read-only access for the specified customer.
Authorizations:
APIKeyHeader
Request Body schema: application/json
required
source_id
required
string (Source Id)

ID of the data source to create space from

name
required
string (Name)

Display name for the space

customer_id
required
string (Customer Id)

ID of the customer to share this space with

Filters (object) or Filters (null) (Filters)

Optional filters to apply to the data source. Keys are column names.

Responses

Request samples

Content type
application/json
{
  • "source_id": "src_123",
  • "name": "Active Users Dashboard",
  • "customer_id": "cust_456",
  • "filters": {
    }
}

Response samples

Content type
application/json
{
  • "space_id": "space_789",
  • "source_id": "src_123",
  • "name": "Active Users Dashboard",
  • "partner_id": "partner_123",
  • "customer_id": "cust_456",
  • "filters": {
    }
}

List partner spaces

Lists all spaces owned by the authenticated partner.

Only includes spaces that have been shared with customers.
Returns the spaces along with their filter configurations.
Authorizations:
APIKeyHeader

Responses

Response samples

Content type
application/json
[
  • {
    }
]

embed

Endpoints for embedded authentication and user management

Generate embed token

Generates a JWT token for embedded authentication.

The token can be used to authenticate users in embedded contexts, such as
iframe integrations. If a user with the provided email doesn't exist,
a new user account will be created.
Authorizations:
APIKeyHeader
Request Body schema: application/json
required
Customer Id (string) or Customer Id (null) (Customer Id)

Existing customer ID to associate with the user

email
required
string (Email)

Email address of the user to generate token for

name
required
string (Name)

Full name of the user

Space Id (string) or Space Id (null) (Space Id)

ID of the embedded space the user is given access to

Responses

Request samples

Content type
application/json
{
  • "customer_id": "string",
  • "email": "string",
  • "name": "string",
  • "space_id": "string"
}

Response samples

Content type
application/json
{
  • "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}

conversations

AI-powered chat interface for data analysis. Enables natural language interactions with your data sources, generates visualizations, and provides analytical insights. Each conversation maintains context and can perform multi-step analysis tasks.

Send Message

Authorizations:
APIKeyHeader
path Parameters
conversation_id
required
string (Conversation Id)
Request Body schema: application/json
required
text
required
string (Text)

Responses

Request samples

Content type
application/json
{
  • "text": "string"
}

Response samples

Content type
application/json
{
  • "text": "string",
  • "role": "user",
  • "visualization": "string"
}

Get Messages

Authorizations:
APIKeyHeader
path Parameters
conversation_id
required
string (Conversation Id)
query Parameters
limit
integer (Limit)
Default: 100
Next Token (string) or Next Token (null) (Next Token)

Responses

Response samples

Content type
application/json
{
  • "messages": [
    ],
  • "next_token": "string"
}

Get Conversation

Authorizations:
APIKeyHeader
path Parameters
conversation_id
required
string (Conversation Id)

Responses

Response samples

Content type
application/json
{
  • "conversation_id": "string",
  • "data_sources": [
    ]
}

Delete Conversation

Authorizations:
APIKeyHeader
path Parameters
conversation_id
required
string (Conversation Id)

Responses

Response samples

Content type
application/json
{
  • "detail": [
    ]
}