Skip to main content
You will create a workspace for one client, import a list of LinkedIn URLs for it, wait for the job, and read the paths. You need an organization key with the default scopes. Set it once:
1

Create a workspace

The answer is 201. data.id is the workspace id. From now on you can name the workspace by that id or by client-1234. 409 means the externalId is taken.
2

Import LinkedIn URLs

Send the list as linkedin_urls, and name the workspace in X-Clustr-Tenant. The Idempotency-Key makes a retry safe.
Each URL is a profile in /in/name form. The answer carries data.job_id, which you use in the next step, and data.stats.
  • 400 means the list is longer than one job can take. Send it in several requests.
  • 422 with code ORG_LIMIT_EXCEEDED means your contract limit is used up. See Usage and limits.
More on sizes and scheduling in Bulk jobs.
3

Wait for the job

Poll Get Job Status until status is COMPLETED.
A FAILED job carries failure_reason. To see which URLs did not make it, call List Job Items with GET /api/public/jobs/{id}/items.Prefer a push? Set an organization webhook once and wait for job.completed.
4

Read the paths

Search the workspace’s opportunities with Search Opportunities.
Raise page while has_more is true. Add job_id=$JOB_ID to see only what this job found. Other filters, such as domains, narrow the list.

What next