Skip to content

API reference

Common response structure, shared types, and error codes for all endpoints.

Every endpoint returns a consistent JSON structure. This page documents the shared envelope, types, and error codes that apply across all endpoints.

Response envelope

Every response uses a consistent JSON envelope with five top-level fields:

Response

FieldTypeDescription
successbooleantrue if the request was processed successfully
dataobject | nullThe endpoint-specific result payload (null on error or when no data is returned)
errorobject
Show child attributes
FieldTypeDescription
codestringMachine-readable error code (e.g. API_KEY_MISSING, API_KEY_MALFORMED, VALIDATION_ERROR, PAGINATION_LIMIT_EXCEEDED)
messagestringHuman-readable error description
detailsobjectAdditional context (only present on some errors)

null when success is true.

quotasobject
Show child attributes
FieldTypeDescription
creditsConsumednumberCredits used for this request after pricing resolution
workspaceobject
Show child attributes
FieldTypeDescription
idstringYour workspace identifier
hasUnlimitedCreditsbooleanWhether workspace credits are unlimited
allowDailyOvercostbooleanWhether the workspace may exceed its daily cap (Enterprise only)
creditsobject
Show child attributes
FieldTypeDescription
totalnumberTotal credits in your plan
usednumberCredits consumed so far
leftnumberRemaining credits
dailyLimitobject
Show child attributes
FieldTypeDescription
limitnumberMaximum requests per day
usednumberRequests made today
leftnumberRemaining requests today
nextResetstring | nullWhen the daily window resets (ISO 8601)

null when no daily limit is configured.

minuteRateLimitobject
Show child attributes
FieldTypeDescription
limitnumberMaximum requests per minute
usednumberRequests made in the current minute
leftnumberRemaining requests in the current minute
nextResetstring | nullWhen the minute window resets (ISO 8601)
keyobject
Show child attributes
FieldTypeDescription
idstringAPI key identifier
dailyLimitobject
Show child attributes
FieldTypeDescription
limitnumberMaximum requests per day
usednumberRequests made today
leftnumberRemaining requests today
nextResetstring | nullWhen the daily window resets (ISO 8601)

null when no daily limit is configured.

minuteRateLimitobject
Show child attributes
FieldTypeDescription
limitnumberMaximum requests per minute
usednumberRequests made in the current minute
leftnumberRemaining requests in the current minute
nextResetstring | nullWhen the minute window resets (ISO 8601)

The key field is null when the request is made from the dashboard (no API key).

When authentication or quota context is unavailable (e.g. invalid API key), quotas may be omitted.

metadataobject
Show child attributes
FieldTypeDescription
requestIdstringUnique identifier for this request (useful for support inquiries)
executionTimeMsnumberTotal execution time in milliseconds
updatedAtstringLast upstream update timestamp (ISO 8601). Present only when available.

Shared types

Some types are reused across multiple endpoints. They are documented here once to avoid repetition -- individual endpoint pages reference them by name.

DateRange

FieldTypeDescription
startstring | nullStart date (ISO 8601)
endstring | nullEnd date (ISO 8601, null if current)

Error codes

StatusDescription
400Invalid JSON body
401Missing, malformed, invalid, or expired API key
402No credits left, purchase more to continue. The free /check endpoints return NO_CREDITS
403Workspace disabled (WORKSPACE_DISABLED) or API key lacks permission
404Data not found
422V2 schema/validation error, INVALID_LINKEDIN_URL, disposable email domain, or missing webhook URL on async endpoints
422PAGINATION_LIMIT_EXCEEDED on search endpoints when company-search page exceeds 50, or perPage exceeds 100 on people or company search. Details: { "field": "page", "max": 50 } or { "field": "perPage", "max": 100 }
429Rate limit exceeded , wait and retry after nextReset
451Data Subject Blocked , the profile has been removed per GDPR/CCPA data subject request
5xxTemporary upstream or platform issue , retry with backoff

WORKSPACE_DISABLED is 403 for both dashboard and API-key authentication. INVALID_LINKEDIN_URL and VALIDATION_ERROR return 422.