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.
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
Fem anrop tar ett brev från din kod till posten. Det finns inget konto och ingen nyckel: betalningen är allt vi behöver.
# 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.
https://unopost.com.auSkapa 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
regulargå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,VICellerWA, i enlighet med postnumret. postcodestring · obligatorisk- Fyra siffror.
countrystring · valfri- Endast returadressen. Utelämna det för Australien.
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
}'{
"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.
curl -X PUT "$UPLOAD_URL" \
-H "Content-Type: application/pdf" \
--data-binary @notice.pdfHä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.
curl https://unopost.com.au/api/x402/$JOB_ID{
"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"
}{
"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.
curl -i -X POST https://unopost.com.au/api/x402/$JOB_ID/sendHTTP/2 402
payment-required: eyJ4NDAyVmVyc2lvbiI6Mi...
{
"error": "payment required"
}{
"x402Version": 2,
"accepts": [
{
"scheme": "exact",
"network": "eip155:8453",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"amount": "20000000",
"payTo": "0x1111111111111111111111111111111111111111",
"maxTimeoutSeconds": 300,
"extra": {
"name": "USD Coin",
"version": "2"
}
}
]
}curl -i -X POST https://unopost.com.au/api/x402/$JOB_ID/send \
-H "PAYMENT-SIGNATURE: $PAYMENT_SIGNATURE"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.
errorsäger varför. 404- Det finns inget brev med det
jobId. 409job not ready to send: vänta påready_to_sendoch 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
| Artikel | Pris |
|---|---|
| Vanlig post, vikt så att det går ner i brevlådan: upp till 12 sidor | 10 USDC |
| Rekommenderad post, vanlig post med signatur vid leverans: upp till 12 sidor | 16 USDC |
| Express Post, ovikt i ett B4-kuvert: 20 sidor ingår, sedan 0.30 USDC för varje extra sida | 20 USDC |
| Express Post med signatur vid leverans: 20 sidor ingår, sedan 0.30 USDC för varje extra sida | 26 USDC |
| Spårning, färgutskrift, dubbelsidig eller svartvit utskrift samt häftning | Gratis |
| 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.