REST API for your SME software
Over 600 open REST endpoints according to the OpenAPI 3 standard, searchable via Swagger. Write your own integrations, connect Zapier or n8n, or display live key figures on your company website. Included in every plan.
600+ open REST endpoints
Full access to your business data via more than 600 clean REST endpoints, from accounting and invoices to postal mail.
Open standard, fully documented
Everything according to the OpenAPI 3 standard, searchable in Swagger, with ready-made SDKs for Python, TypeScript, and Swift.
Included in every plan
Developer access is included in every plan, at no extra cost. You create API keys yourself in the settings.
What do you need an API for?
Your company website should show up-to-date key figures. A business partner's tool wants to pull the data automatically. Or you want to build your own WordPress plugin. Whenever data needs to flow between Printerless and another system, you need an interface.
That is exactly what the API is for. Over 600 open endpoints give you access to your own business data, from accounting and invoices to postal mail. You decide what is shared for each key.
All endpoints documented and searchable
Each of the over 600 endpoints is described in the Swagger interface and can be tried directly. You choose the right service, see all fields and examples, and test the call in the browser.

What an API call looks like
With your API key, you get a token and then call any endpoint using a normal HTTP request. Here using letters as an example, once with curl and once in Python.
curl# 1. Token holen (client_id + Schlüssel aus den Einstellungen, API-Schlüssel)
TOKEN=$(curl -s -X POST \
https://auth.printerless.ch/realms/members/protocol/openid-connect/token \
-d grant_type=client_credentials \
-d client_id=$CLIENT_ID \
-d client_secret=$CLIENT_SECRET | jq -r .access_token)
# 2. API-Call mit Bearer-Token (Beispiel: Briefe abrufen)
curl -s https://api.printerless.ch/v2/letters/letter/ \
-H "Authorization: Bearer $TOKEN"Pythonimport requests
# 1. Token holen
token = requests.post(
"https://auth.printerless.ch/realms/members/protocol/openid-connect/token",
data={
"grant_type": "client_credentials",
"client_id": CLIENT_ID,
"client_secret": CLIENT_SECRET,
},
).json()["access_token"]
# 2. Briefe abrufen
letters = requests.get(
"https://api.printerless.ch/v2/letters/letter/",
headers={"Authorization": f"Bearer {token}"},
).json()
print(letters["items"])Export OpenAPI specification
The OpenAPI specification is available at api.printerless.ch/openapi/ and is the machine-readable basis of the Swagger interface. Access requires authentication. If you do not attach a valid token, the interface responds with 401.
JavaScript// OpenAPI-Spezifikation exportieren (Authentifizierung erforderlich)
const token = await fetch(
"https://auth.printerless.ch/realms/members/protocol/openid-connect/token",
{
method: "POST",
headers: { "Content-Type": "application/x-www-form-urlencoded" },
body: new URLSearchParams({
grant_type: "client_credentials",
client_id: CLIENT_ID,
client_secret: CLIENT_SECRET,
}),
},
).then(r => r.json()).then(d => d.access_token)
const openapi = await fetch("https://api.printerless.ch/openapi/", {
headers: { Authorization: `Bearer ${token}` },
}).then(r => r.json())
console.log(openapi) // vollständige OpenAPI-3-SpezifikationGenerate TypeScript client
From the OpenAPI specification, you generate a ready-made TypeScript client using the public openapi-generator-cli. The tool runs independently via npx, without installation and without any dependency on Printerless. The same approach is also available for Python and many other languages. You only swap the generator name, for example python instead of typescript-axios.
Bash# 1. OpenAPI-Spezifikation mit Token herunterladen
curl -s https://api.printerless.ch/openapi/ \
-H "Authorization: Bearer $TOKEN" > openapi.json
# 2. TypeScript-Client generieren (öffentliches Tool, keine Abhängigkeit zu Printerless)
npx @openapitools/openapi-generator-cli generate \
-i openapi.json \
-g typescript-axios \
-o ./printerless-clientOver 600 endpoints, clearly separated
Accounting, invoices, postal mail, contacts, and documents: each area has its own clearly documented interface. More than 600 endpoints in total.
One login for everything
All services share a central login based on the OAuth2 and OpenID Connect standard. You get a token, then it works for every service.
Fine-grained permissions per key
Each API key gets only the permissions you give it. Permissions are finely granular, from read-only to full management, per area.
Ready-made SDKs for developers
Ready-made SDKs are available for Python, TypeScript, and Swift, so developers can get started in hours instead of weeks. Each service is clearly described according to the OpenAPI 3 standard.
Zapier, n8n & more
Connect Printerless with Zapier or n8n without any programming, or build live dashboards. Accounting, invoices, and postal mail flow automatically to wherever you need them.
EU hosting, your data belongs to you
The entire platform runs on EU servers in compliance with GDPR and the Swiss FADP. Your business data stays where you control it, accessible via your own logins.
Complete API documentation
You can find all endpoints with fields, examples, and the option to try them directly in the browser in the searchable Swagger interface.
Go to Swagger documentationFrequently Asked Questions
Connect your company to everything
Try Printerless free for 14 days and create your first API key in just a few minutes.
Try for free