Skip to main content
POST
Extract search from prompt

First time? Set up Authentication

Learn how to authenticate your API requests with your API key.
Turn a job description into the filters and qualificationCriterias used by qualified search and by talent-pool estimation. This endpoint stops at extraction: it does not return profiles. The interpretation is the same as qualified search by prompt. The filters are written for the gate engine, which is the mode qualified search always runs in. See Search modes. Post data as-is to POST /v1/search/talents/estimation. Post it to POST /v1/search/talents/qualified as well: if qualificationCriterias is empty, add at least one criterion first, because qualified search requires one. POST /v1/search/talents also accepts data as-is and ignores qualificationCriterias. That call runs a paid search: it charges 1 API credit per profile returned, and nbToFetch defaults to 10. The same prompt can yield slightly different filters, so store data if you need a stable search.

Request body

string
required
Job description or natural-language brief, for example "Data engineer in Paris with 5+ years of experience who knows Spark and has managed a team". From 1 to 4,000 characters after leading and trailing whitespace is trimmed. If the prompt cannot be turned into any usable filter, the request returns prompt_interpretation_failed.
The body must be a JSON object with prompt only. Any other field, such as nbToFetch, is rejected with 400 validation_error.

Limits

Response

Successful responses carry two headers: Error responses do not send these headers.
boolean
Whether the request completed without errors.
object
Present when success is true.
object
Error details, present when success is false.

Credits

A successful call consumes 1 API credit. The response sends X-Api-Credits-Used: 1 and X-Api-Credits-Remaining. Billing labels the debit “API search inputs extraction”.
  1. If the balance is 0, the route returns 402 insufficient_api_credits and does not extract. available is 0 and required is 1.
  2. Otherwise 1 credit is reserved before the prompt is read.
  3. If the prompt yields no usable filter, or the call fails at any step, the reservation is cancelled and no credit is consumed.
  4. On success, the reserved credit is consumed.
See Credits.

Errors

Response examples

Request
Response headers
Response
Returned when the body does not match the schema. Here nbToFetch is not accepted by this route.
Request
Response
An empty prompt returns the same envelope with this issue:
Returned when the prompt asks for LinkedIn connections and the workspace has no connected LinkedIn account. No credit is consumed.
Response
Returned when the API key is missing or invalid, or when an OAuth access token has expired.
Request
Response (missing key)
Response (invalid key)
Response (expired OAuth token)
Returned when the balance is 0. Nothing is extracted. Top up your credits and retry.
Response
Returned by authentication when the workspace must subscribe or upgrade its plan. Search routes, including this one, do not require a subscription today.
Response
Returned when the prompt could not be turned into any usable filter. Rephrase it with concrete criteria such as a job title, a location, or a skill. No credit is consumed.
Request
Response
Returned when a location in the prompt cannot be resolved. Remove that location or rephrase it. Retrying the same value will not succeed. No credit is consumed.
Response
Returned when an API-key request window is exceeded. A per-IP limit on failed authentication returns the same code with the message Too many requests, please try again later and no details. See Rate limits.
Response
Returned when the extraction fails unexpectedly. No credit is consumed. Retry, and include debugTrackingCode if you contact support.
Response