Enlyst API Documentation
Integrate Enlyst's data enrichment capabilities into your applications with our REST API.
Authentication
All API requests require authentication using an API key. You need a paid subscription to access the API.
API Key Authentication
Include your API key in the Authorization header of every request:
Authorization: Bearer enlyst_your_api_key_hereBase URL
https://enlyst.app/apiProjects API
Manage your data enrichment projects
GET
/api/projectsRetrieve all your projects.
Response Fields
| Field | Type | Description |
|---|---|---|
| success | boolean | Whether the request was successful |
| projects | array | Array of project objects |
| projects[].id | string | Unique project identifier Example: proj_abc123 |
| projects[].name | string | Project name Example: My CRM Data |
| projects[].createdAt | string | ISO timestamp of project creation Example: 2024-01-15T10:30:00Z |
| projects[].rowCount | number | Total number of rows in the project Example: 1500 |
curl -X GET "https://enlyst.app/api/projects" \
-H "Authorization: Bearer enlyst_your_api_key_here"Example Response
{
"success": true,
"projects": [
{
"id": "proj_abc123",
"name": "My CRM Data",
"createdAt": "2024-01-15T10:30:00Z",
"rowCount": 1500
}
]
}Data Management
Upload, manage, and download your project data
POST
/api/projects/upload-csvUpload a CSV file to a project.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| file | file | Required | CSV file to upload (multipart/form-data) |
| projectId | form | Required | ID of the project to upload data to Example: proj_abc123 |
curl -X POST "https://enlyst.app/api/projects/upload-csv" \
-H "Authorization: Bearer enlyst_your_api_key_here" \
-F "file=@your_data.csv" \
-F "projectId=proj_abc123"Data Enrichment
Enrich your data with AI-powered insights
POST
/api/projects/{project_id}/enrichEnrich a single row of data using the bulk enrichment endpoint with startRow and maxRows parameters.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| project_id | path | Required | Project ID containing the row to enrich Example: proj_abc123 |
| startRow | number | Required | Row number (1-based) to start enrichment from Example: 5 |
| maxRows | number | Required | Number of rows to process (use 1 for single row) Example: 1 |
| includeStatuses | array | Optional | Array of statuses to include for enrichment Example: ["stopped", "failed", null, "", "pending"] |
| excludeErrors | boolean | Optional | Whether to exclude rows with ERROR: prefix Example: true |
curl -X POST "https://enlyst.app/api/projects/proj_abc123/enrich" \
-H "Authorization: Bearer enlyst_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"startRow": 5,
"maxRows": 1,
"includeStatuses": ["stopped", "failed", null, "", "pending"],
"excludeErrors": true
}'Response Formats
Standard response formats for all API endpoints
Success Response
{
"success": true,
"data": {
// Response data here
}
}Error Response
{
"success": false,
"error": "Error message",
"code": "ERROR_CODE"
}HTTP Status Codes
200
Success400
Bad Request401
Unauthorized403
Forbidden404
Not Found500
Internal Server ErrorRate Limits & Credits
API usage limits and credit consumption
Rate Limits
API requests are rate limited to prevent abuse:
- 100 requests per minute per API key
- 1000 requests per hour per API key
- Rate limit headers are included in responses
Credit Usage
Enrichment operations consume credits based on your plan:
- Single row enrichment: 1 credit per row (only if email is found)
- Batch enrichment: 1 credit per row processed (only if email is found)
- Failed enrichments do not consume credits
- Incomplete enrichments (no email found) do not consume credits
Webhooks
Configure webhooks to receive notifications when enrichment operations complete:
- Set your webhook URL in your account settings
- Receive POST requests when batch enrichment completes
- Webhook payload includes project statistics and completion details
- Webhooks are sent with your API key in the Authorization header
Webhook Payload Example
{
"event": "enrichment.completed",
"timestamp": "2024-01-20T10:30:00.000Z",
"data": {
"projectId": "proj_abc123",
"projectName": "My Project",
"stats": {
"total": 100,
"completed": 85,
"incomplete": 10,
"failed": 5,
"pending": 0,
"active": 0
},
"completedAt": "2024-01-20T10:30:00.000Z"
}
}Getting Started
Ready to integrate Enlyst into your application?
Need help? Our team is here to assist you with integration questions and technical support.