API Reference
Start a prospecting job
Starts a bounded public prospecting job for an account group through the integrations API.
/v1/accounts/{accountGroupId}/prospectingCredit consumption
Each imported prospect costs 1 credit, or 2 credits when searchEmails is enabled. Insufficient credits return 402 INSUFFICIENT_CREDITS.
Result limits
maxResults is capped by plan: Tester 100, Starter 1,000, Scale and Enterprise 2,000. url_upload ignores maxResults and imports according to the supplied URL list.
Source requirements
linkedin_search requires searchUrl, sales_navigator requires savedSearchId or leadListId, post_commenters requires postUrl, and url_upload requires 1-1000 LinkedIn profile URLs.
Asynchronous job
Prospecting jobs run asynchronously and may take several minutes depending on the search size. Use the job status endpoint to poll for completion.
Integration notes
Required API permission
prospecting:write.
Prerequisites
integration_api_key, account_group_access, valid_prospecting_request.
Idempotency
send a stable Idempotency-Key header when retrying this request.
Parameters
accountGroupIdPathType: string
Account group ID that scopes the request.
Required
Request body
Required
Optional
Content types
application/json
Responses
Existing completed prospecting job replayed for the same request
Schema: ProspectingJobStartSuccessResponse
Job created
Schema: ProspectingJobStartSuccessResponse
Request validation failed
Schema: ValidationErrorResponse
Invalid or missing API key
Schema: ErrorResponse
Missing required permission
Schema: ErrorResponse
Conflict — resource is in a state that prevents this operation
Schema: ErrorResponse
Rate limit exceeded
Schema: ErrorResponse
Internal server error
Schema: ErrorResponse
Upstream service error
Schema: ErrorResponse
Response examples
200 Example JSONProspectingJobStartSuccessResponse
{
"success": true,
"data": {
"jobId": "507f1f77bcf86cd799439011",
"status": "queued",
"createdAt": "2026-04-28T15:30:00.000Z"
},
"error": null,
"traceId": "507f1f77bcf86cd799439011"
}202 Example JSONProspectingJobStartSuccessResponse
{
"success": true,
"data": {
"jobId": "507f1f77bcf86cd799439011",
"status": "queued",
"createdAt": "2026-04-28T15:30:00.000Z"
},
"error": null,
"traceId": "507f1f77bcf86cd799439011"
}400 Example JSONValidationErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "VALIDATION_ERROR",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}401 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}403 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}409 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}429 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}500 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}502 Example JSONErrorResponse
{
"success": false,
"data": null,
"error": {
"code": "string",
"message": "Thanks for the context. I can send over details this afternoon.",
"details": "string"
},
"traceId": "507f1f77bcf86cd799439011"
}