unopost

x402 API

Verstuur een brief vanuit code, betaal in USDC

Apps en AI-agents kunnen een brief naar elk adres in Australië versturen en per brief betalen in USDC via x402. Geen account, API-sleutel of abonnement: alleen een wallet en een HTTP-client.

10 USDC per brief met gewone post20 USDC per brief met Express Post

Eén prijs voor maximaal 20 pagina's ongevouwen, inclusief GST. Betaald in USDC op Base, gas voor onze rekening.

SnelstartOpenAPI-specificatie

Waarom brieven versturen via x402?

Dezelfde brief als via de website, betaald via HTTP.

  • Geen account of API-sleutel U hoeft zich nergens voor aan te melden. Uw code maakt een brief aan, krijgt een prijs en betaalt met een ondertekende USDC-betaling.
  • Een vaste prijs per brief 20 USDC met Express Post, ongevouwen in een B4-envelop, of 10 USDC met gewone post, gevouwen zodat het in de brievenbus past: dat dekt printen, de envelop, verzendkosten en track & trace voor maximaal 12 pagina's gevouwen of 20 ongevouwen, daarna 0.30 USDC per pagina. Inclusief GST, en het gas betalen wij.
  • Dezelfde brief als via de website Geprint zoals geüpload op A4 van 80 g/m², met track & trace, en dezelfde werkdag verstuurd als er vóór 14:30 uur Melbourne-tijd is betaald.
  • Geld terug als versturen niet lukt Als wij de brief niet kunnen versturen, betalen wij het volledige bedrag in USDC terug aan de wallet die heeft betaald. Een brief die wij annuleren, wordt op dezelfde manier terugbetaald.

Voor wie het is

  • AI-agents Een agent die een geschil over een borg, een verzekeringsclaim of een klacht bij de gemeente afhandelt, kan de brief zelf versturen en uit zijn eigen wallet betalen.
  • Apps en scripts Software voor vastgoedbeheer, juridisch werk en facturering die brieven verstuurt, zonder merchant-account of maandabonnement.

Snelstart

  1. Een brief aanmaken
  2. Het document uploaden
  3. Een brief ophalen
  4. Betalen en versturen
  5. De brief volgen

Vijf verzoeken brengen een brief van uw code naar de post. Er is geen account of sleutel: de betaling is alles wat wij nodig hebben.

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"

Endpoints

Endpoints zijn relatief ten opzichte van https://unopost.com.au. Verzoeken en antwoorden zijn JSON; fouten hebben de vorm {"error": "..."}. Volledige referentie: de OpenAPI-specificatie.

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

Een brief aanmaken

POST/api/x402

Stuur met POST de bestandsnaam, het adres van de ontvanger en uw retouradres. U krijgt een jobId, een ondertekende uploadUrl en URL's om de brief te controleren en te betalen.

Request body

fileNamestring · verplicht
De bestandsnaam met extensie: .pdf, .doc, .docx, .jpg, .jpeg of .png.
recipientAddress · verplicht
Het adres waar de brief naartoe gaat.
senderAddress · verplicht
Uw retouradres, dat op de envelop wordt geprint zodat onbestelbare post bij u terugkomt.
servicestring · optioneel
"express" voor Express Post (de standaardwaarde) of "regular" voor gewone post.
duplexboolean · optioneel
Dubbelzijdig printen. Standaard false. Statutory declarations (wettelijke verklaringen) worden altijd enkelzijdig geprint.
monoboolean · optioneel
In zwart-wit printen. Standaard false: een document waarin kleur voorkomt, wordt in kleur geprint.
stapleboolean · optioneel
De pagina's één keer linksboven nieten. Alleen voor documenten tot 12 pagina's; een langer document wordt bij het berekenen van de prijs geweigerd. Standaard false.
foldboolean · optioneel
Alleen Express Post: de brief in een C5-envelop vouwen in plaats van hem ongevouwen in een B4-envelop te versturen, zonder meerkosten. Wordt genegeerd bij documenten van meer dan 20 pagina's; die gaan ongevouwen. Brieven met gewone post worden altijd gevouwen.
signatureboolean · optioneel
Handtekening bij ontvangst, 6 USDC extra, bij beide diensten. Bij regular gaat de brief met Aangetekende post.

Adres

De ontvanger moet in Australië zijn. Het retouradres mag overal zijn: geef het land op, en de postcode wordt optioneel. Elke regel mag maximaal 40 tekens lang zijn.

namestring · optioneel
De volledige naam van de persoon.
companystring · optioneel
Een bedrijf of organisatie.
line1string · verplicht
Het straatadres, of een PO Box zoals "PO Box 123".
line2string · optioneel
Een tweede adresregel.
suburbstring · verplicht
De wijk (suburb) of plaats.
statestring · optioneel
Laat dit veld weg in Australië: de postcode bepaalt de deelstaat. Indien opgegeven, een van ACT, NSW, NT, QLD, SA, TAS, VIC of WA, passend bij de postcode.
postcodestring · verplicht
Vier cijfers.
countrystring · optioneel
Alleen voor het retouradres. Laat dit veld weg voor Australië.
Verzoek
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
}'
Antwoord 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"
}

Het document uploaden

PUTuploadUrl

Stuur de ruwe bytes van het bestand binnen 15 minuten met PUT naar uploadUrl. Maximaal 50 MB en 80 pagina's. De opmaak op A4 begint zodra de upload binnen is; u hoeft verder niets aan te roepen.

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

Een brief ophalen

GET/api/x402/{jobId}

Op de prijs wachten

Poll om de paar seconden totdat status gelijk is aan ready_to_send. Het antwoord bevat dan het aantal pagina's, de prijs in payment, de sendUrl en een previewUrl voor de drukklare pdf, om te controleren voordat u betaalt.

fold volgt nu de dienst, true voor gewone post en false voor Express Post, en duplex kan false zijn: statutory declarations worden enkelzijdig geprint. Een brief met gewone post van meer dan 12 pagina's wordt afgewezen wanneer de prijs wordt bepaald.

De brief volgen

Blijf pollen, minder vaak, totdat de brief posted is en daarna delivered. Er worden geen e-mails gestuurd; elke update verschijnt in de status.

Verzoek
curl https://unopost.com.au/api/x402/$JOB_ID
Antwoord 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"
}
Antwoord 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"
}

Betalen en versturen

POST/api/x402/{jobId}/send

Stuur een POST naar sendUrl zonder betaling. Het antwoord is 402 Payment Required, met de betalingsvereisten base64-gecodeerd in de PAYMENT-REQUIRED-header.

Onderteken de betaling zoals het x402-protocol beschrijft (of laat een x402-clientbibliotheek dat doen) en stuur het verzoek opnieuw met de payload in een PAYMENT-SIGNATURE-header. Wij verifiëren de betaling en wikkelen haar af, en de brief wordt geprint. De PAYMENT-RESPONSE-header bevat de afwikkeling.

Krijgt u kort na ready_to_send een 409 met job not ready to send? Wacht even en probeer het opnieuw. Opnieuw aanroepen na betaling geeft de status terug zonder twee keer af te schrijven.

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

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

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

Statussen

awaiting_upload
Wacht op het bestand.
processing
Het document wordt op A4 opgemaakt en geprijsd.
ready_to_send
Geprijsd; wacht op betaling. De prijsopgave is 7 dagen geldig.
sending
Betaald, en in de wachtrij om te worden geprint.
retrying
Er was een probleem bij het printen; wij proberen het automatisch opnieuw.
posted
Geprint en afgegeven bij Australia Post.
delivered
Bezorgd door Australia Post. Het document is bij verzending verwijderd.
failed
Niet verstuurd; de reden staat in error, bijvoorbeeld een prijsopgave die onbetaald is verlopen. Een betaalde brief die niet kan worden verstuurd, wordt volledig terugbetaald.
refunded
De betaling is teruggegaan naar de wallet die heeft betaald.

Fouten

400
Ongeldig verzoek: bijvoorbeeld een ontbrekend veld, een niet-ondersteund bestandstype, een adresregel van meer dan 40 tekens, een postcode buiten de deelstaat, handtekening bij ontvangst bij gewone post, of een brief met gewone post van meer dan 12 pagina's.
402
Betaling is vereist, of de betaling kon niet worden geverifieerd of afgewikkeld. error zegt waarom.
404
Er is geen brief met die jobId.
409
job not ready to send: wacht op ready_to_send en probeer het opnieuw. quote expired: maak de brief opnieuw aan.

Veelgestelde vragen

Wat is x402?

Een open protocol om via HTTP te betalen. De server antwoordt met 402 Payment Required en een prijs; de client ondertekent een betaling in stablecoin en stuurt het verzoek opnieuw. Geen account, kaart of factuur.

Wat heb ik nodig?

Een wallet op Base met voldoende USDC, en een HTTP-client. Er is geen ETH nodig voor gas: de betaling is een ondertekende autorisatie voor een USDC-overdracht, en wij betalen de netwerkkosten.

Hoeveel kost een brief?

20 USDC met Express Post voor maximaal 20 pagina's, daarna 0.30 USDC per pagina, of 10 USDC met gewone post voor een brief van maximaal 12 pagina's, inclusief GST. Handtekening bij ontvangst kost bij beide diensten 6 USDC extra; gewone post met handtekening is Aangetekende post, 16 USDC. Track & trace, dubbelzijdig en zwart-wit printen, nieten tot 12 pagina's, en het vouwen van een Express Post-brief in een DL-vensterenvelop zijn gratis. Het statusantwoord toont de exacte prijs voordat u betaalt.

Kan ik de brief controleren voordat ik betaal?

Ja. Zodra de brief klaar is om te worden verstuurd, is previewUrl de drukklare pdf, op A4 opgemaakt precies zoals hij wordt geprint. Er wordt niets in rekening gebracht totdat u betaalt.

Wanneer wordt de brief verstuurd, en hoe lang duurt de bezorging?

Brieven die op een werkdag vóór 14:30 uur Melbourne-tijd zijn betaald, worden dezelfde dag verstuurd; latere de volgende werkdag. Express Post komt binnen het Express Post-netwerk meestal de volgende werkdag aan, gewone post binnen 3 tot 7 werkdagen.

Wat als de brief niet kan worden verstuurd?

De status verandert in failed en wij betalen het volledige bedrag in USDC terug aan de wallet die heeft betaald, of de brief nu is mislukt of door ons is geannuleerd. Voor al het andere kunt u support@unopost.com.au mailen met de jobId.

Wat gebeurt er met mijn document?

Het is versleuteld tijdens verzending en wordt, samen met de drukklare kopie, definitief verwijderd zodra de brief bij Australia Post is afgegeven. Als er niet voor een brief is betaald of als hij niet kan worden verstuurd, wordt het document na 14 dagen verwijderd.

Waar kunnen brieven naartoe?

Naar elk adres in Australië, ook PO Boxes, in alle deelstaten en territoria. De API verstuurt niet naar het buitenland.

Wie is verantwoordelijk voor wat een agent verstuurt?

U. Elke brief die uit uw wallet is betaald, is van u, ook een brief die een agent in uw opdracht heeft geschreven en verstuurd, en u moet het recht hebben om de inhoud te versturen. In onze voorwaarden staat wat niet met de post mag: zich voordoen als een ander, intimidatie, oplichting, ongevraagde reclame in bulk, en alles wat in strijd is met een rechterlijk bevel. Brieven die deze regels overtreden, annuleren wij en betalen wij volledig terug. Verstuurt u namens iemand anders, dan bent u verantwoordelijk voor diens document alsof het uw eigen document was.

Prijzen

OnderdeelPrijs
Gewone post, gevouwen zodat het in de brievenbus past: maximaal 12 pagina's10 USDC
Aangetekende post, gewone post met handtekening bij ontvangst: maximaal 12 pagina's16 USDC
Express Post, ongevouwen in een B4-envelop: 20 pagina's inbegrepen, daarna 0.30 USDC per extra pagina20 USDC
Express Post met handtekening bij ontvangst: 20 pagina's inbegrepen, daarna 0.30 USDC per extra pagina26 USDC
Track & trace, kleur, dubbelzijdig of zwart-wit printen, en nietenGratis
Netwerkkosten (gas)Voor onze rekening

Prijzen zijn in USDC op Base. De prijs wordt vastgesteld zodra uw document op A4 is opgemaakt; prijsopgaven zijn 7 dagen geldig.

Prijzen kunnen wijzigen. Op het gebruik van deze dienst zijn onze Voorwaarden en ons Privacybeleid van toepassing.