unopost

x402 API

Skicka ett brev från kod, betala i USDC

Appar och AI-agenter kan skicka ett brev till vilken adress som helst i Australien och betala per brev i USDC via x402. Inget konto, ingen API-nyckel, inget abonnemang: bara en plånbok och en HTTP-klient.

10 USDC per brev med vanlig post20 USDC per brev med Express Post

Ett pris för upp till 20 sidor ovikt, inklusive GST. Betalas i USDC på Base, gasavgiften står vi för.

SnabbstartOpenAPI-specifikation

Varför skicka brev via x402?

Samma brev som på webbplatsen, betalt över HTTP.

  • Inget konto, ingen API-nyckel Inget att registrera sig för. Din kod skapar ett brev, får ett pris och betalar med en signerad USDC-betalning.
  • Ett fast pris per brev 20 USDC med Express Post, ovikt i ett B4-kuvert, eller 10 USDC med vanlig post, vikt så att det går ner i brevlådan, täcker utskrift, kuvert, porto och spårning för upp till 12 sidor vikt eller 20 ovikt, därefter 0.30 USDC per sida. Inklusive GST, och gasavgiften står vi för.
  • Samma brev som på webbplatsen Utskrivet som det laddades upp på 80 g/m² A4, spårbart, och postat samma arbetsdag om det betalas senast kl. 14.30 Melbournetid.
  • Återbetalas om det inte kan postas Om vi inte kan posta brevet återbetalar vi hela beloppet till den betalande plånboken, i USDC. Ett brev som vi avbryter återbetalas på samma sätt.

Vem det är till för

  • AI-agenter En agent som hanterar en depositionstvist, ett försäkringsärende eller ett klagomål till kommunen kan skicka brevet själv och betala från sin egen plånbok.
  • Appar och skript Program för fastighetsförvaltning, juridik och fakturering som skickar brev, utan inlösenavtal eller månadsabonnemang.

Snabbstart

  1. Skapa ett brev
  2. Ladda upp dokumentet
  3. Hämta ett brev
  4. Betala och posta
  5. Följ brevet

Fem anrop tar ett brev från din kod till posten. Det finns inget konto och ingen nyckel: betalningen är allt vi behöver.

send-letter.sh
# 1. Create the letter
curl -X POST https://unopost.com.au/api/x402 \
  -H "Content-Type: application/json" \
  -d '{
  "fileName": "notice.pdf",
  "recipient": {
    "name": "Ruth Mitchell",
    "line1": "7 High Street",
    "suburb": "Echuca",
    "postcode": "3564"
  },
  "sender": {
    "name": "Sam Nguyen",
    "company": "Nguyen Property",
    "line1": "14 Carnarvon Street",
    "suburb": "Broome",
    "postcode": "6725"
  },
  "service": "express",
  "signature": true
}'

# 2. Upload the document to the uploadUrl you got back
curl -X PUT "$UPLOAD_URL" \
  -H "Content-Type: application/pdf" \
  --data-binary @notice.pdf

# 3. Poll until the status is ready_to_send, and check the price
curl https://unopost.com.au/api/x402/$JOB_ID

# 4. Ask to send it: the 402 says what to pay
curl -i -X POST https://unopost.com.au/api/x402/$JOB_ID/send

# 5. Sign the payment with an x402 client, and send it again
curl -i -X POST https://unopost.com.au/api/x402/$JOB_ID/send \
  -H "PAYMENT-SIGNATURE: $PAYMENT_SIGNATURE"

Ändpunkter

Ändpunkterna är relativa till https://unopost.com.au. Anrop och svar är JSON; fel är {"error": "..."}. Fullständig referens: OpenAPI-specifikationen.

Bas-URL
https://unopost.com.au

Skapa ett brev

POST/api/x402

Skicka filnamnet, mottagarens adress och din returadress med POST. Du får ett jobId, en signerad uploadUrl och URL:er för att kontrollera och betala brevet.

Anropets innehåll

fileNamestring · obligatorisk
Filnamnet med filändelse: .pdf, .doc, .docx, .jpg, .jpeg eller .png.
recipientAddress · obligatorisk
Adressen som brevet ska skickas till.
senderAddress · obligatorisk
Din returadress, som trycks på kuvertet så att obeställbar post kommer tillbaka till dig.
servicestring · valfri
"express" för Express Post (standard) eller "regular" för vanlig post.
duplexboolean · valfri
Skriv ut dubbelsidigt. Standard är false. Försäkringar på heder och samvete (statutory declarations) skrivs alltid ut enkelsidigt.
monoboolean · valfri
Skriv ut i svartvitt. Standard är false: ett dokument som innehåller färg skrivs ut i färg.
stapleboolean · valfri
Häfta sidorna en gång i övre vänstra hörnet. Endast för dokument på upp till 12 sidor; ett längre avvisas när priset beräknas. Standard är false.
foldboolean · valfri
Endast Express Post: vik brevet i ett C5-kuvert i stället för att skicka det ovikt i ett B4-kuvert, utan extra kostnad. Ignoreras för dokument på mer än 20 sidor, som skickas ovikt. Brev med vanlig post viks alltid.
signatureboolean · valfri
Signatur vid leverans, 6 USDC extra, med båda tjänsterna. Med regular går brevet som Rekommenderad post.

Adress

Mottagaren måste finnas i Australien. Returadressen kan ligga var som helst: ange dess land, så blir postnumret valfritt. Varje rad får vara högst 40 tecken.

namestring · valfri
Personens fullständiga namn.
companystring · valfri
Ett företag eller en organisation.
line1string · obligatorisk
Gatuadressen, eller en PO Box som "PO Box 123".
line2string · valfri
En andra adressrad.
suburbstring · obligatorisk
Förorten eller orten.
statestring · valfri
Utelämna den i Australien: postnumret avgör den. Om den anges, något av ACT, NSW, NT, QLD, SA, TAS, VIC eller WA, i enlighet med postnumret.
postcodestring · obligatorisk
Fyra siffror.
countrystring · valfri
Endast returadressen. Utelämna det för Australien.
Anrop
curl -X POST https://unopost.com.au/api/x402 \
  -H "Content-Type: application/json" \
  -d '{
  "fileName": "notice.pdf",
  "recipient": {
    "name": "Ruth Mitchell",
    "line1": "7 High Street",
    "suburb": "Echuca",
    "postcode": "3564"
  },
  "sender": {
    "name": "Sam Nguyen",
    "company": "Nguyen Property",
    "line1": "14 Carnarvon Street",
    "suburb": "Broome",
    "postcode": "6725"
  },
  "service": "express",
  "signature": true
}'
Svar 200
{
  "jobId": "019d7a7f-a183-752d-9b3b-11511179033b",
  "uploadUrl": "https://unopost.com.au/uploads/019d7a7f-a183-752d-9b3b-11511179033b/notice.pdf?Expires=...&Signature=...&Key-Pair-Id=...",
  "statusUrl": "/api/x402/019d7a7f-a183-752d-9b3b-11511179033b",
  "sendUrl": "/api/x402/019d7a7f-a183-752d-9b3b-11511179033b/send",
  "status": "awaiting_upload"
}

Ladda upp dokumentet

PUTuploadUrl

Skicka filens råa byte med PUT till uploadUrl inom 15 minuter. Högst 50 MB och 80 sidor. Uppläggningen på A4 börjar så fort uppladdningen är klar; det finns inget mer att anropa.

Anrop
curl -X PUT "$UPLOAD_URL" \
  -H "Content-Type: application/pdf" \
  --data-binary @notice.pdf

Hämta ett brev

GET/api/x402/{jobId}

Vänta på priset

Fråga med några sekunders mellanrum tills status är ready_to_send. Svaret innehåller då sidantalet, priset i payment, sendUrl och en previewUrl till den utskriftsfärdiga PDF-filen, att kontrollera före betalning.

fold följer nu tjänsten, true för vanlig post och false för Express Post, och duplex kan vara false: försäkringar på heder och samvete skrivs ut enkelsidigt. Ett brev med vanlig post på mer än 12 sidor avvisas när det prissätts.

Följ brevet

Fortsätt fråga, mer sällan, tills brevet är posted och sedan delivered. Inga mejl skickas; varje uppdatering syns i statusen.

Anrop
curl https://unopost.com.au/api/x402/$JOB_ID
Svar 200 · ready_to_send
{
  "jobId": "019d7a7f-a183-752d-9b3b-11511179033b",
  "service": "express",
  "duplex": false,
  "mono": false,
  "fold": false,
  "signature": true,
  "recipient": {
    "name": "Ruth Mitchell",
    "line1": "7 High Street",
    "suburb": "Echuca",
    "postcode": "3564"
  },
  "sender": {
    "name": "Sam Nguyen",
    "company": "Nguyen Property",
    "line1": "14 Carnarvon Street",
    "suburb": "Broome",
    "postcode": "6725"
  },
  "pageCount": 3,
  "status": "ready_to_send",
  "previewUrl": "/preview/019d7a7f-a183-752d-9b3b-11511179033b/notice.pdf?Expires=...&Signature=...&Key-Pair-Id=...",
  "payment": {
    "scheme": "exact",
    "network": "eip155:8453",
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "amountAtomic": "20000000",
    "amountDisplay": "20 USDC",
    "payTo": "0x1111111111111111111111111111111111111111",
    "expiresAt": "2026-09-25T02:15:00Z"
  },
  "sendUrl": "/api/x402/019d7a7f-a183-752d-9b3b-11511179033b/send"
}
Svar 200 · posted
{
  "jobId": "019d7a7f-a183-752d-9b3b-11511179033b",
  "service": "express",
  "duplex": false,
  "mono": false,
  "fold": false,
  "signature": true,
  "recipient": {
    "name": "Ruth Mitchell",
    "line1": "7 High Street",
    "suburb": "Echuca",
    "postcode": "3564"
  },
  "sender": {
    "name": "Sam Nguyen",
    "company": "Nguyen Property",
    "line1": "14 Carnarvon Street",
    "suburb": "Broome",
    "postcode": "6725"
  },
  "pageCount": 3,
  "status": "posted",
  "providerReference": "LTR-8F3A21C9"
}

Betala och posta

POST/api/x402/{jobId}/send

Skicka POST till sendUrl utan betalning. Svaret är 402 Payment Required, med betalningskraven base64-kodade i headern PAYMENT-REQUIRED.

Signera betalningen så som x402-protokollet beskriver (eller låt ett x402-klientbibliotek göra det) och skicka anropet igen med nyttolasten i en PAYMENT-SIGNATURE-header. Vi verifierar och reglerar betalningen, och brevet går till utskrift. Headern PAYMENT-RESPONSE innehåller regleringen.

Fick du 409 med job not ready to send strax efter ready_to_send? Vänta en stund och försök igen. Ett nytt anrop efter betalning returnerar statusen utan att debitera två gånger.

Anrop
curl -i -X POST https://unopost.com.au/api/x402/$JOB_ID/send
Svar 402
HTTP/2 402
payment-required: eyJ4NDAyVmVyc2lvbiI6Mi...

{
  "error": "payment required"
}
PAYMENT-REQUIRED-headern, base64-avkodad
{
  "x402Version": 2,
  "accepts": [
    {
      "scheme": "exact",
      "network": "eip155:8453",
      "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "amount": "20000000",
      "payTo": "0x1111111111111111111111111111111111111111",
      "maxTimeoutSeconds": 300,
      "extra": {
        "name": "USD Coin",
        "version": "2"
      }
    }
  ]
}
Anrop
curl -i -X POST https://unopost.com.au/api/x402/$JOB_ID/send \
  -H "PAYMENT-SIGNATURE: $PAYMENT_SIGNATURE"
Svar 202
HTTP/2 202
payment-response: eyJzdWNjZXNzIjp0cnVlLC...

{
  "jobId": "019d7a7f-a183-752d-9b3b-11511179033b",
  "status": "sending"
}

Statusar

awaiting_upload
Väntar på filen.
processing
Dokumentet läggs upp på A4 och prissätts.
ready_to_send
Prissatt och väntar på betalning. Offerten gäller i 7 dagar.
sending
Betalt och köat för utskrift.
retrying
Utskriften stötte på ett problem; vi försöker igen automatiskt.
posted
Utskrivet och inlämnat hos Australia Post.
delivered
Levererat av Australia Post. Dokumentet raderades när brevet skickades.
failed
Inte postat; orsaken står i error, till exempel en offert som gick ut obetald. Ett betalt brev som inte kan postas återbetalas i sin helhet.
refunded
Betalningen har gått tillbaka till plånboken som betalade.

Fel

400
Ogiltigt anrop: till exempel ett saknat fält, en filtyp som inte stöds, en adressrad på över 40 tecken, ett postnummer utanför delstaten, signatur vid leverans med vanlig post, eller ett brev med vanlig post på mer än 12 sidor.
402
Betalning krävs, eller så kunde betalningen inte verifieras eller regleras. error säger varför.
404
Det finns inget brev med det jobId.
409
job not ready to send: vänta på ready_to_send och försök igen. quote expired: skapa brevet på nytt.

Vanliga frågor

Vad är x402?

Ett öppet protokoll för betalning över HTTP. Servern svarar 402 Payment Required med ett pris; klienten signerar en betalning i stablecoin och skickar anropet igen. Inget konto, inget kort, ingen faktura.

Vad behöver jag?

En plånbok på Base med tillräckligt med USDC, och en HTTP-klient. Ingen ETH behövs för gas: betalningen är ett signerat godkännande av en USDC-överföring, och vi står för nätverksavgiften.

Vad kostar ett brev?

20 USDC med Express Post för upp till 20 sidor, därefter 0.30 USDC per sida, eller 10 USDC med vanlig post för ett brev på upp till 12 sidor, inklusive GST. Signatur vid leverans kostar 6 USDC extra med båda tjänsterna; vanlig post med signatur är Rekommenderad post, 16 USDC. Spårning, dubbelsidig och svartvit utskrift, häftning upp till 12 sidor samt vikning av ett Express Post-brev i ett DL-fönsterkuvert är gratis. Statussvaret visar det exakta priset innan du betalar.

Kan jag kontrollera brevet innan jag betalar?

Ja. När det är klart att skickas är previewUrl den utskriftsfärdiga PDF-filen, upplagd på A4 exakt som den kommer att skrivas ut. Inget debiteras förrän du betalar.

När postas det, och hur lång tid tar det att komma fram?

Brev som betalas senast kl. 14.30 Melbournetid en arbetsdag postas samma dag; senare brev nästa arbetsdag. Express Post kommer oftast fram nästa arbetsdag inom Express Post-nätet, vanlig post på 3 till 7 arbetsdagar.

Vad händer om brevet inte kan postas?

Statusen ändras till failed och vi återbetalar hela beloppet i USDC till den betalande plånboken, oavsett om brevet misslyckades eller om vi avbröt det. För allt annat, mejla support@unopost.com.au med jobId.

Vad händer med mitt dokument?

Det krypteras under överföringen och raderas permanent, tillsammans med den utskriftsfärdiga kopian, när brevet har lämnats in hos Australia Post. Om ett brev inte betalas eller inte kan postas raderas det efter 14 dagar.

Vart kan breven skickas?

Till alla adresser i Australien, även PO Box-adresser, i alla delstater och territorier. API:et skickar inte utomlands.

Vem ansvarar för det en agent skickar?

Det gör du. Varje brev som betalas från din plånbok är ditt, även ett som en agent har skrivit och skickat på dina instruktioner, och du måste ha rätt att skicka innehållet. Våra användarvillkor anger vad som inte får skickas med posten: utgivande för att vara någon annan, trakasserier, bedrägerier, oombedd massreklam och allt som bryter mot ett domstolsbeslut. Vi avbryter brev som bryter mot de reglerna och återbetalar dem i sin helhet. Om du skickar för någon annans räkning ansvarar du för deras dokument som om det vore ditt eget.

Priser

ArtikelPris
Vanlig post, vikt så att det går ner i brevlådan: upp till 12 sidor10 USDC
Rekommenderad post, vanlig post med signatur vid leverans: upp till 12 sidor16 USDC
Express Post, ovikt i ett B4-kuvert: 20 sidor ingår, sedan 0.30 USDC för varje extra sida20 USDC
Express Post med signatur vid leverans: 20 sidor ingår, sedan 0.30 USDC för varje extra sida26 USDC
Spårning, färgutskrift, dubbelsidig eller svartvit utskrift samt häftningGratis
Nätverksavgift (gas)Ingår

Priserna anges i USDC på Base. Priset fastställs när dokumentet har lagts upp på A4; offerter gäller i 7 dagar.

Priserna kan ändras. För användning av tjänsten gäller våra användarvillkor och vår integritetspolicy.