Postman Collection
Our Postman collection lets you explore and test the GoRoute API interactively. It includes all endpoints with pre-configured examples, making it easy to understand the API before writing code.
Quick Startโ
1. Import the Collectionโ
Or import manually:
- Open Postman
- Click Import โ Link
- Enter:
https://app.goroute.ai/peppol-api/openapi.json - Click Import
2. Configure Environmentโ
Create a new environment with the following variables:
| Variable | Value |
|---|---|
base_url | https://app.goroute.ai/peppol-api |
api_key | your-api-key-here |
3. Set Up Authenticationโ
The collection uses a pre-request script to automatically add the API key header:
pm.request.headers.add({
key: 'X-API-Key',
value: pm.environment.get('api_key')
});
Collection Structureโ
GoRoute Peppol API/
โโโ ๐ Authentication
โ โโโ Get API Key Info
โโโ ๐ Documents
โ โโโ Send Invoice
โ โโโ Send Credit Note
โ โโโ Validate Document
โ โโโ Get Transaction Status
โ โโโ Download Document
โโโ ๐ฅ Participants
โ โโโ Register Participant
โ โโโ List Participants
โ โโโ Lookup Participant
โโโ ๐ Webhooks
โ โโโ Create Webhook
โ โโโ List Webhooks
โ โโโ Delete Webhook
โโโ โค๏ธ Health
โโโ Health Check
Example Requestsโ
Send an Invoiceโ
POST {{base_url}}/documents/send
X-API-Key: {{api_key}}
Content-Type: application/xml
<?xml version="1.0" encoding="UTF-8"?>
<Invoice xmlns="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2"
xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
<cbc:CustomizationID>urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0</cbc:CustomizationID>
<cbc:ProfileID>urn:fdc:peppol.eu:2017:poacc:billing:01:1.0</cbc:ProfileID>
<cbc:ID>INV-2026-001</cbc:ID>
<!-- ... rest of invoice -->
</Invoice>
Response:
{
"transaction_id": "txn_abc123def456",
"status": "accepted",
"message": "Document queued for delivery"
}
Lookup a Participantโ
GET {{base_url}}/participants/lookup?identifier=0088:1234567890123
X-API-Key: {{api_key}}
Response:
{
"participant_id": "0088:1234567890123",
"registered": true,
"document_types": [
"urn:oasis:names:specification:ubl:schema:xsd:Invoice-2",
"urn:oasis:names:specification:ubl:schema:xsd:CreditNote-2"
],
"endpoint_url": "https://ap.example.com/as4"
}
Validate Documentโ
POST {{base_url}}/documents/validate
X-API-Key: {{api_key}}
Content-Type: application/xml
<!-- Your UBL document here -->
Response (Valid):
{
"valid": true,
"errors": [],
"warnings": [
{
"rule": "PEPPOL-EN16931-R040",
"message": "Allowance reason code SHOULD be provided",
"location": "/Invoice/cac:AllowanceCharge[1]"
}
]
}
Response (Invalid):
{
"valid": false,
"errors": [
{
"rule": "BR-16",
"message": "An Invoice shall have at least one Invoice line",
"location": "/Invoice",
"severity": "error"
}
]
}
Using Collection Variablesโ
The collection supports dynamic variables for testing:
| Variable | Description | Example |
|---|---|---|
{{$timestamp}} | Current Unix timestamp | 1706284800 |
{{$randomUUID}} | Random UUID | a1b2c3d4-e5f6-... |
{{$isoTimestamp}} | ISO 8601 date | 2026-01-26T10:30:00Z |
Example with Variablesโ
POST {{base_url}}/documents/send
Content-Type: application/json
{
"document_id": "INV-{{$timestamp}}",
"correlation_id": "{{$randomUUID}}",
"issued_date": "{{$isoTimestamp}}"
}
Testing Workflowsโ
Complete Send โ Track โ Verify Flowโ
- Send Document - POST to
/documents/send - Save Transaction ID - Store
transaction_idfrom response - Poll Status - GET
/transactions/{transaction_id} - Verify Delivery - Check for
status: delivered
// Test script to save transaction ID
if (pm.response.code === 202) {
const response = pm.response.json();
pm.environment.set('last_transaction_id', response.transaction_id);
}
Webhook Testingโ
Use Postman's mock servers or services like webhook.site to test webhook delivery:
- Create a webhook.site URL
- Register it as a webhook endpoint
- Send a document
- Watch the webhook arrive in real-time
Common Issuesโ
401 Unauthorizedโ
Problem: API key is missing or invalid
Solution:
- Check that
api_keyenvironment variable is set - Verify the key hasn't expired
- Ensure no extra whitespace in the key
400 Bad Requestโ
Problem: Invalid request format
Solution:
- Validate XML/JSON syntax
- Check Content-Type header matches body format
- Use the validation endpoint first
404 Not Foundโ
Problem: Resource doesn't exist
Solution:
- Check participant identifier format
- Verify transaction ID is correct
- Ensure the resource was created in the same environment
Download Linksโ
- ๐ฅ Postman Collection (JSON)
- ๐ฅ Environment Template
- ๐ฅ OpenAPI Spec
Video Tutorialโ
Coming soon: Step-by-step video walkthrough of the Postman collection