Skip to main content
This guide walks through a buyer stating demand and a seller reading their opportunities, with one key for each company. Create each key in Settings → API keys.
1

Confirm your key works

Response
2

State demand

Create a request with requests:write. Every write to requests, opportunities and introductions needs an Idempotency-Key. Generate a fresh UUID per intent and reuse it exactly if you retry. Give either endsAt or durationMonths. One of the two is required.
Response (201)
3

Read the request back

The response has the same shape as the create call. status moves to matched once the GPU Outlet team offers your request to a seller. From then on, the request cannot be edited. See Statuses and request_not_editable.
4

See the opportunity on a seller key

A key that belongs to a seller company reads its opportunities with opportunities:read. The buyer is not named. A seller sees only the anonymous demand until they accept and reveal in the dashboard.
Response
Accepting and revealing the buyer happens in the dashboard. The reveal commits the seller’s company to the success fee, so a person makes that call there. Over the API, a seller key can only decline. See the seller workflow.
5

Read introductions after a reveal

Once a seller accepts in the dashboard, both companies see the introduction. The buyer key reads it with side=buyer:
Response
The buyer sees the seller’s legal name and country, not the seller’s contacts. The seller side of the same introduction sees the buyer’s legal name, country and contacts. For what each side does next, see the buyer and seller workflows.

Buyer workflow

Keep a request up to date, close it, confirm readiness.

Seller workflow

Poll opportunities, decline, confirm readiness.

Pagination

How meta.nextCursor works on list endpoints.

Errors

Every error code, including request_invalid and its problems.