Skip to content

Discovery Order Guide

Use a discovery order when you want OpenProspect to find new qualified companies for an existing search profile.

Request Model

POST /api/v1/orders

Field Required Description
order_type Yes Must be DISCOVERY
title Yes Your label for the order
profile_id Yes Search profile returned by profile creation
briefing_quantity Yes Desired number of qualified companies
features Yes Briefing features to deliver
output_language No Defaults to en
companies No Forbidden for discovery orders

Do not send profile_name, ideal_customer_profile, seller_offering, target_countries, or other profile fields to POST /api/v1/orders.

Create Request

curl -sS -X POST "https://api.openprospect.io/api/v1/orders" \
  -H "Authorization: Bearer ${OPENPROSPECT_API_KEY}" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: discovery-order-dach-saas-001" \
  -d '{
    "order_type": "DISCOVERY",
    "title": "DACH SaaS discovery",
    "profile_id": "'"${OPENPROSPECT_PROFILE_ID}"'",
    "briefing_quantity": 50,
    "features": ["COMPANY_DATA", "CONTACTS", "ANALYSIS"],
    "output_language": "en"
  }'

Expected 202 Accepted response:

{
  "order_id": "4f767705-03a2-4e91-a3e8-1ec3f9dea865",
  "order_type": "DISCOVERY",
  "status": "RECEIVED",
  "briefing_quantity": 50,
  "estimated_cost": null,
  "message": "Order received. Awaiting admin review."
}

Lifecycle

Status Meaning What to do
RECEIVED The order is awaiting review Poll again
ACCEPTED The order is approved Poll again
IN_PROGRESS Fulfillment is running Poll again
COMPLETED Results are ready Fetch results
REJECTED The order was not approved Check the message
FAILED Fulfillment failed Contact support with order_id
CANCELLED The order was cancelled Stop polling

Results

Call GET /api/v1/orders/{order_id}/results only after the order is COMPLETED. Discovery results contain system-discovered companies that passed the profile qualification rules.

If results are not ready, the API returns ORDER_RESULTS_NOT_READY; continue polling GET /api/v1/orders/{order_id}.

Errors

Status Cause Resolution
409 Reused Idempotency-Key with a different order body Use a new key
422 Missing profile_id or briefing_quantity, or included companies Correct the body
404 profile_id or order_id is not visible to your organization Verify the ID and API key
404 ORDER_RESULTS_NOT_READY before COMPLETED Poll order status