REST API — Dokumentation
Integrera 1invoice.online med dina egna system. API:et följer REST-konventioner och returnerar JSON. Stabilt under /api/v1 — vi bumpar version vid breaking changes.
Snabbstart
- Logga in och gå till Inställningar → REST API
- Klicka "Skapa nyckel", namnge den och kopiera värdet (det visas bara en gång)
- Lägg till nyckeln som
Authorization: Bearer 1iv_...-header i dina anrop
Auth
Alla endpoints kräver Bearer-token i Authorization-headern. Nycklar är knutna till den organisation där de skapades — du kan bara läsa data för din egen org.
Authorization: Bearer 1iv_<din nyckel>
Felresponser
401 Unauthorized— header saknas eller nyckel är ogiltig/indragen500 Internal Server Error— databasfel; försök igen eller kontakta oss
Discovery
GET /api/v1
Returnerar en lista av tillgängliga endpoints. Inga credentials behövs.
Medlemmar
GET /api/v1/members?limit=50&offset=0&status=active
Returnerar medlemmar för din organisation. Paginerat.
limit— antal per sida (default 50, max 200)offset— startposition (default 0)status— filter påactive,inactive,pending
Offerter
GET /api/v1/quotes?status=accepted
Returnerar offerter med status, total, public_token och signeringsinformation.
Fakturor
GET /api/v1/invoices?status=paid
Returnerar fakturor med betalstatus och förfallodatum.
Webhooks
Registrera en URL under Inställningar → Webhooks. När en händelse inträffar POST:ar vi dit JSON med dessa headers:
X-1Invoice-Event— event-namn (t.ex.invoice.paid)X-1Invoice-Signature— HMAC-SHA256 av rå body med din secret (hex)User-Agent: 1invoice-webhooks/1
Tillgängliga events
invoice.created,invoice.sent,invoice.paidquote.created,quote.sent,quote.accepted,quote.rejected
Rate limits
Mjuk gräns: 60 anrop/minut per nyckel. Vid överbelastning får du 429 Too Many Requests. Behöver du mer? Skriv till oss — vi kan höja på begäran.
Versioning
Vi använder URL-versioning. /api/v1 är stabilt. Breaking changes går i /api/v2 med minst 6 månaders parallell drift.
Status & ändringslogg
Se roadmap för aktuell status. Vi annonserar API-ändringar med minst 30 dagars varsel via webhooks och dashboard-banner.
Frågor om integrationer?
Kontakta oss så hjälper vi dig igång — första integrationen brukar ta under en timme.