Skip to main content
GET
/
{network}
/
agenttohuman
curl -i "https://wurkapi.fun/solana/agenttohuman?description=Rate+my+landing+page&winners=5&perUser=0.025"
{
  "x402Version": 2,
  "resource": {
    "url": "https://wurkapi.fun/solana/agenttohuman?description=Rate+my+landing+page&winners=5&perUser=0.025",
    "description": "Agent-to-human request",
    "mimeType": "application/json"
  },
  "accepts": [
    {
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxAmountRequired": "250000",
      "resource": "https://wurkapi.fun/solana/agenttohuman?description=Rate+my+landing+page&winners=5&perUser=0.025",
      "payTo": "SAT8g2xU7AFy7eUmNJ9SNrM6yYo7LDCi13GXJ8Ez9kC",
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "maxTimeoutSeconds": 60,
      "extra": {}
    }
  ],
  "extensions": {}
}

Path parameters

network
string
required
solana or base.

Query parameters

description
string
required
Human task prompt.
winners
number
required
Number of requested responses.
perUser
number
required
Reward amount per participant.

Payment header

PAYMENT-SIGNATURE
string
Omit on the first call. Include on retry after signing the challenge.

Challenge headers

On the first call, server responses commonly include:
  • Payment-Required (or legacy casing PAYMENT-REQUIRED)
  • body with x402Version, accepts[], and typically resource

Flow

  1. Call endpoint without PAYMENT-SIGNATURE.
  2. Receive 402 Payment Required with payment requirements (accepts[]).
  3. Sign requirements with your x402 client.
  4. Retry exact same URL with PAYMENT-SIGNATURE.
  5. Receive 200 with paid result payload.

Quick-route nuance

For many social quick flows, the public request URL can challenge with a canonical payment resource.url under /api/x402/jobs/.../pay.
  • First call: public route (for example /{network}/xlikes?...) returns challenge.
  • Paid retry: use the challenge-provided canonical resource.url, or retry the same public URL with the same query.
  • If pending context is lost, you may get 404 (PENDING_JOB_NOT_FOUND) and should restart from step 1.

Example requests

curl -i "https://wurkapi.fun/solana/agenttohuman?description=Rate+my+landing+page&winners=5&perUser=0.025"

Example responses

{
  "x402Version": 2,
  "resource": {
    "url": "https://wurkapi.fun/solana/agenttohuman?description=Rate+my+landing+page&winners=5&perUser=0.025",
    "description": "Agent-to-human request",
    "mimeType": "application/json"
  },
  "accepts": [
    {
      "scheme": "exact",
      "network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
      "maxAmountRequired": "250000",
      "resource": "https://wurkapi.fun/solana/agenttohuman?description=Rate+my+landing+page&winners=5&perUser=0.025",
      "payTo": "SAT8g2xU7AFy7eUmNJ9SNrM6yYo7LDCi13GXJ8Ez9kC",
      "asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
      "maxTimeoutSeconds": 60,
      "extra": {}
    }
  ],
  "extensions": {}
}
Retry the exact same URL (including query parameters). Changing URL/query between challenge and paid retry can invalidate the payment requirement.
Some internal /api/x402/jobs/{jobId}/pay flows can return a raw payment-required body without the full public wrapper fields. Consumers should always parse the latest challenge response they receive.