x402 API

Orehook Ad Pack, paid per call.

One HTTP request. You pay 0.05 USDC on Base with the x402 exact scheme. You get a 1024×1024 advertising still, five hooks, a CTA and overlay text. There is no account and no API key. The payment goes to the Orehook operating wallet.

Endpoint

POST https://orehook.com/v1/ad-pack

  • Price: 0.05 USDC (50000 atomic units)
  • Network: Base mainnet, CAIP-2 eip155:8453
  • Asset: native USDC 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913
  • Scheme: x402 v2 exact (EIP-3009)
  • payTo: 0x75E30be7B9562713b3fba574c5a3724269119A9d
  • Facilitator: PayAI, https://facilitator.payai.network

A request without a payment returns HTTP 402 and a PAYMENT-REQUIRED header. Retry the same body with a PAYMENT-SIGNATURE header. Health and price: GET https://orehook.com/health. Discovery documents: GET https://orehook.com/openapi.json and GET https://orehook.com/.well-known/x402.

Request body

{
  "product_name": "Vaeln Flask",
  "description": "An insulated bottle that keeps water cold through a long desk day.",
  "platform": "meta",
  "tone": "dry and direct"
}

platform is meta, tiktok or x. tone and reference_url are optional. The reference URL is textual context only; the model is text-to-image, not image-to-image.

Example

First call, to read the payment challenge:

curl -sS -D - -o /tmp/ad-pack-402.json \
  -H 'content-type: application/json' \
  -d '{"product_name":"Vaeln Flask","description":"An insulated bottle that keeps water cold through a long desk day.","platform":"meta","tone":"dry and direct"}' \
  https://orehook.com/v1/ad-pack

Then sign an EIP-3009 TransferWithAuthorization for 0.05 USDC to the payTo address, put the x402 v2 payload in PAYMENT-SIGNATURE (base64 JSON), and POST the same body again. A TypeScript client can do that with @x402/fetch or @x402/axios and an exact EVM scheme pointed at Base.

On success the JSON includes image_base64, image_mime, hooks (five strings), cta, overlay, seed and platform. The settlement hash is in the PAYMENT-RESPONSE header and in payment.transaction.

Limits and licence

  • This is a product of Orehook (prompts, format and policy), not a resale of raw model access.
  • FLUX.1 [schnell] is Apache 2.0. Llama 3.1 has a separate Meta licence. Do not use the output to clone a real person, to depict minors, or for harassment, non-consensual intimate imagery, or deceptive medical or financial claims.
  • Capacity on the current plan is about 100 packs per day. Past that the endpoint returns 503 until the daily allotment resets.
  • If generation fails after settlement, we refund the 0.05 USDC manually to the payer. Keep the transaction hash.
  • Listing in the Coinbase Bazaar needs a settlement through the CDP facilitator. This endpoint charges through PayAI today.