REST API

Website lists in.
VAT data out.

Use the same create, check, pay, and download workflow as the MCP tools. The first 20 results are free to preview.

Base URLhttps://website2vat.com

Quick start

Create your first lookup

The simplest integration keeps the anonymous cookie returned by the create request, then sends it when polling or downloading the job.

curl -c website2vat.cookies -X POST https://website2vat.com/api/jobs \
  -F "text=stripe.com
canva.com" \
  -F "name=Customer websites" 

The response is a job object. Save its id, then poll GET /api/jobs/{id} using the same cookie.

Reference

Endpoints

POST /api/jobs

Create a VAT lookup

Send pasted domains, an uploaded list, or both as multipart form data. Returns a job ID and starts the free preview.

curl -c website2vat.cookies -X POST https://website2vat.com/api/jobs \
  -F "text=stripe.com
canva.com" \
  -F "name=Customer websites"
POST /api/jobs/{id}

Check results

Poll with the same cookie or bearer token. Stop when the status is complete, preview_ready, preview_locked, or error.

curl -b website2vat.cookies https://website2vat.com/api/jobs/JOB_ID
POST /api/jobs/{id}/checkout

Create hosted checkout

Returns a Stripe-hosted payment URL. Stripe Checkout is available.

curl -b website2vat.cookies -X POST https://website2vat.com/api/jobs/JOB_ID/checkout
POST /api/jobs/{id}/x402

Pay with x402

Request an x402 challenge and retry with a signed payment. The current asset is USDC on Base on eip155:8453.

curl -i -b website2vat.cookies -X POST https://website2vat.com/api/jobs/JOB_ID/x402
GET /api/jobs/{id}/download

Download the CSV

Downloads all results once canDownload is true. Returns 402 while payment is still required.

curl -b website2vat.cookies -o results.csv https://website2vat.com/api/jobs/JOB_ID/download

Authentication

Keep one identity per lookup

Jobs are private to the client that created them. Scripts can use a cookie jar. Server integrations can register anonymous OAuth client credentials and send the resulting 24-hour bearer token on every request.

curl -X POST https://website2vat.com/oauth/register \
  -H "Content-Type: application/json" -d "{}"

curl -X POST https://website2vat.com/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=CLIENT_ID&client_secret=CLIENT_SECRET" 

See the authentication notes for the complete token flow.

Good to know

Limits and formats

  • Up to 10,000 unique domains per lookup.
  • TXT, CSV, TSV, XLSX, and Apple Numbers uploads up to 2 MB.
  • Jobs and uploaded lists are deleted after 14 days.
  • Responses are JSON; completed exports are CSV.