API Reference
The Resplendent Data API gives you programmatic access to your data. Use it to export information, integrate with other systems, or build custom workflows.
Authentication
Section titled “Authentication”All API requests need an API credential. Create one from your account settings:
- Go to Company → API Credentials
- Click New Credential
- Copy the ID and Key (the key is shown only once)
Include your credentials in the Authorization header using HTTP Basic authentication. Use the credential ID as the username and the Key as the password:
Authorization: Basic base64(YOUR_CREDENTIAL_ID:YOUR_CREDENTIAL_KEY)Base URL
Section titled “Base URL”https://app.resplendentdata.com/api/v1Export Data
Section titled “Export Data”Retrieve data from tables and modified datasets. This endpoint returns JSON with support for pagination.
Endpoint
Section titled “Endpoint”GET /export-data/{data_stream_type}/{data_stream_id}Path Parameters
Section titled “Path Parameters”| Parameter | Type | Description |
|---|---|---|
data_stream_type | string | Either table (raw dataset) or modifier (filtered/transformed dataset) |
data_stream_id | string | UUID of the table or modifier you want to export |
Query Parameters
Section titled “Query Parameters”| Parameter | Type | Default | Description |
|---|---|---|---|
page | integer | 1 | Page number to retrieve (minimum: 1) |
page_size | integer | 1000 | Number of records per page (minimum: 1) |
Response
Section titled “Response”Returns an array of JSON objects. Each object represents one row with column names as keys:
[ { "id": 1, "company_name": "Acme Corp", "revenue": 50000, "created_at": "2024-01-15" }, { "id": 2, "company_name": "TechStart Inc", "revenue": 125000, "created_at": "2024-02-20" }]Example Request
Section titled “Example Request”Export page 2 of a table with 500 records per page:
curl -X GET "https://app.resplendentdata.com/api/v1/export-data/table/a1b2c3d4-5678-90ab-cdef-example12345?page=2&page_size=500" \ -u "YOUR_CREDENTIAL_ID:YOUR_CREDENTIAL_KEY"Export from a modified dataset:
curl -X GET "https://app.resplendentdata.com/api/v1/export-data/modifier/b2c3d4e5-6789-01bc-defa-example23456?page=1&page_size=2000" \ -u "YOUR_CREDENTIAL_ID:YOUR_CREDENTIAL_KEY"Rate Limits
Section titled “Rate Limits”The export endpoint has rate limiting to keep the service stable:
- 45 requests per 30 seconds per customer account
- Exceeding this returns a
429 Too Many Requestserror - The response includes how many seconds to wait before retrying
Caching
Section titled “Caching”Results are cached for 15 minutes to improve performance. If you request the same data within this window, you get the cached version immediately without hitting the database.
Error Responses
Section titled “Error Responses”| Status | Code | Meaning |
|---|---|---|
| 400 | page must be at least 1 | Invalid page parameter |
| 400 | pageSize must be at least 1 | Invalid page_size parameter |
| 401 | Unauthorized | Missing or invalid API key |
| 404 | Table not found | The table UUID does not exist or you do not have access |
| 404 | Data modifier not found | The modifier UUID does not exist or you do not have access |
| 429 | Rate limit exceeded | Too many requests, retry after the specified time |
Finding Table and Modifier UUIDs
Section titled “Finding Table and Modifier UUIDs”Tables:
- Go to Data Settings → Datasets
- Click on a table name
- Copy the UUID from the browser URL or table details
Modifiers:
- Go to Data Settings → Modified Datasets
- Click on a modifier name
- Copy the UUID from the browser URL or modifier details
Data Types
Section titled “Data Types”The API converts database types to JSON-compatible formats:
| Database Type | JSON Output | Example |
|---|---|---|
| Integer | Number | 42 |
| Decimal/Float | Number | 123.45 |
| String/Text | String | "Hello" |
| Boolean | Boolean | true or false |
| Date | ISO 8601 string | "2024-01-15" |
| DateTime | ISO 8601 string | "2024-01-15T14:30:00" |
| Null values | null | null |
Pagination Tips
Section titled “Pagination Tips”- Start with
page=1and increment until you receive an empty array - Page sizes above 10,000 may time out; stick to 1,000–5,000 for reliability
- The API reads up to 10 million rows per request internally
- Cache is keyed by the stream ID, not by page parameters
Common Use Cases
Section titled “Common Use Cases”Exporting a dataset:
import requests
credential_id = "YOUR_CREDENTIAL_ID"credential_key = "YOUR_CREDENTIAL_KEY"table_id = "YOUR_TABLE_UUID"page = 1all_data = []
while True: response = requests.get( f"https://app.resplendentdata.com/api/v1/export-data/table/{table_id}?page={page}&page_size=5000", auth=(credential_id, credential_key) ) data = response.json() if not data: break all_data.extend(data) page += 1
# all_data now contains every row from the table