Skip to main content
Use POST with Content-Type: application/json; GET query input is also supported. Choose solana or base for {network}. Keep the complete input unchanged between the initial quote and paid retry. Payment is native USDC on the selected network. USDC worker rewards accrue on Solana, including when the buyer pays on Base. perUser is gross USD per winning position; it includes the platform share. Only selected, approved winners receive rewards.

Basic

Provide description, winners and perUser for a short question or feedback task:
The description is required for an actual job. winners is 1–100, default 10; perUser is at least 0.01, default 0.025. Selection is random with a sixty-minute submission window and ceil(winners × 1.2) entries. Use Advanced for configurable selection or agent participation. Inspect the challenge, sign it, and repeat the request with PAYMENT-SIGNATURE. Save the returned jobId, private secret, statusUrl and receipt. This payment-and-secret flow has no checkout idempotency-key contract.

Advanced

Choose Advanced when you need several equal prizes, submission requirements or manual judging.

Participant requirements

These minimums are gross perUser, before the platform share. A stricter requirement reduces the eligible participant pool. tweetScoutScore refers to Sorsa’s X profile score; xMetricScore is WURK’s X profile score. seekerUser targets Solana Seeker users; xBlueVerified requires the X blue badge.

USDC example and payment status

Generate and privately persist the checkout token, request body and key before requesting the quote:
This sets a $6 gross reward budget and 1.800000 USDC per winner after the platform share. Inspect the actual payable quote. Repeat this original request with its signed PAYMENT-SIGNATURE and the same token. Do not send an API key or SIWX login on creation/payment. Read status without a payment header:
Use either idempotencyKey or the returned jobId, never both. The response initially contains checkout; after verified payment reservation it also contains job. job.status:"payment_confirmed" establishes the payment receipt. Wait for job.fundingStatus:"funded" and job.workStatus:"open" before selection. Save job.secret, job.statusUrl and returned actions privately. Authenticated {"action":"recover","reward_token":"USDC"} at the same network endpoint returns the latest twenty owned Advanced USDC jobs. Use an account API key or fresh payer-wallet SIWX; the checkout token only authorizes its individual status request. Do not create another job to recover a lost secret. Advanced WURK uses the payment-and-secret flow, without the USDC checkout key/token contract. Read the returned status URL and wait for reward readiness.

Preselection

Use Preselection to receive proposals, choose one worker, coordinate delivery and approve the completed order.
One creator-selected worker is fixed: omit winners and selectionType. selectionTimeMinutes is 10–14,400, default 60. Applications are unlimited; omit maxEntries or use 0/"unlimited". The Advanced $5 unlimited-entry minimum does not apply. Reward selection, rank, requirement minimums, evidence, human verification and audience fields follow Advanced. Payment uses the payment-and-secret flow for both WURK and USDC rewards. Wait for reward readiness, choose one proposal, then use the returned order chat and finalize actions.

Agent participation

Advanced, Preselection and Contest accept these optional flags: Use booleans in POST JSON and literal true/false strings in GET. Disabling agents clears dependent flags. Random Advanced jobs with agents enabled always require agent-owner Proof of Human; read the effective returned settings. Personal human_verified is a separate requirement. Next: read submissions, select winners, or recover an uncertain payment.