{"components":{"headers":{"X-API-Version":{"description":"API version date (e.g. 2026-04-10)","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Maximum requests per window","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Remaining requests in current window","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Seconds until rate limit window resets","schema":{"type":"integer"}}},"parameters":{"IdempotencyKey":{"description":"Unique key to prevent duplicate POST requests","in":"header","name":"Idempotency-Key","schema":{"type":"string"}},"order":{"in":"query","name":"order","schema":{"default":"desc","enum":["asc","desc"],"type":"string"}},"page":{"in":"query","name":"page","schema":{"default":1,"type":"integer"}},"per_page":{"in":"query","name":"per_page","schema":{"default":50,"maximum":200,"type":"integer"}},"search":{"description":"Free-text search across relevant fields","in":"query","name":"search","schema":{"type":"string"}},"since":{"description":"Filter: created on or after this date","in":"query","name":"since","schema":{"format":"date","type":"string"}},"sort":{"description":"Column to sort by","in":"query","name":"sort","schema":{"type":"string"}},"status":{"description":"Filter by status","in":"query","name":"status","schema":{"type":"string"}},"until":{"description":"Filter: created on or before this date","in":"query","name":"until","schema":{"format":"date","type":"string"}}},"schemas":{"ErrorResponse":{"properties":{"error":{"properties":{"code":{"type":"string"},"message":{"type":"string"}},"type":"object"}},"type":"object"},"PaginatedResponse":{"properties":{"data":{"type":"array"},"meta":{"properties":{"page":{"type":"integer"},"per_page":{"type":"integer"},"total":{"type":"integer"},"total_pages":{"type":"integer"}},"type":"object"}},"type":"object"}},"securitySchemes":{"ApiKeyAuth":{"description":"API key with `tlr_live_` prefix. Generate from Settings → API Keys.","in":"header","name":"X-API-Key","type":"apiKey"}}},"info":{"contact":{"email":"support@talero.dk","url":"https://talero.dk"},"description":"REST API for integrating with Talero accounting software. Manage invoices, customers, products, expenses, suppliers, accounts, transactions, and more.","title":"Talero Public API","version":"2026-04-10"},"openapi":"3.1.0","paths":{"/accounts":{"get":{"summary":"List accounts","tags":["Accounts"]},"post":{"summary":"Create account","tags":["Accounts"]}},"/accounts/{id}":{"put":{"summary":"Update account","tags":["Accounts"]}},"/customers":{"get":{"summary":"List customers","tags":["Customers"]},"post":{"summary":"Create customer","tags":["Customers"]}},"/customers/lookup":{"get":{"summary":"Lookup customer by CVR/email/phone","tags":["Customers"]}},"/customers/{id}":{"delete":{"summary":"Delete customer","tags":["Customers"]},"get":{"summary":"Get customer","tags":["Customers"]},"put":{"summary":"Update customer","tags":["Customers"]}},"/expenses":{"get":{"summary":"List expenses","tags":["Expenses"]},"post":{"summary":"Create expense","tags":["Expenses"]}},"/expenses/{id}":{"delete":{"summary":"Delete expense","tags":["Expenses"]},"get":{"summary":"Get expense","tags":["Expenses"]},"put":{"summary":"Update expense","tags":["Expenses"]}},"/exports/saft":{"get":{"summary":"Export SAF-T XML","tags":["Exports"]}},"/invoices":{"get":{"parameters":[{"$ref":"#/components/parameters/page"},{"$ref":"#/components/parameters/per_page"},{"$ref":"#/components/parameters/sort"},{"$ref":"#/components/parameters/order"},{"$ref":"#/components/parameters/status"},{"$ref":"#/components/parameters/since"},{"$ref":"#/components/parameters/until"},{"$ref":"#/components/parameters/search"}],"summary":"List invoices","tags":["Invoices"]},"post":{"parameters":[{"$ref":"#/components/parameters/IdempotencyKey"}],"summary":"Create invoice","tags":["Invoices"]}},"/invoices/{id}":{"delete":{"summary":"Delete invoice (draft only)","tags":["Invoices"]},"get":{"summary":"Get invoice","tags":["Invoices"]},"put":{"summary":"Update invoice (draft only)","tags":["Invoices"]}},"/invoices/{id}/status":{"put":{"summary":"Update invoice status","tags":["Invoices"]}},"/openapi.json":{"get":{"security":[],"summary":"OpenAPI specification","tags":["Meta"]}},"/products":{"get":{"summary":"List products","tags":["Products"]},"post":{"summary":"Create product","tags":["Products"]}},"/products/{id}":{"delete":{"summary":"Delete product","tags":["Products"]},"get":{"summary":"Get product","tags":["Products"]},"put":{"summary":"Update product","tags":["Products"]}},"/reports/balance":{"get":{"summary":"Balance sheet report","tags":["Reports"]}},"/reports/profit-loss":{"get":{"summary":"Profit & loss report","tags":["Reports"]}},"/suppliers":{"get":{"summary":"List suppliers","tags":["Suppliers"]},"post":{"summary":"Create supplier","tags":["Suppliers"]}},"/suppliers/{id}":{"delete":{"summary":"Delete supplier","tags":["Suppliers"]},"get":{"summary":"Get supplier","tags":["Suppliers"]},"put":{"summary":"Update supplier","tags":["Suppliers"]}},"/transactions":{"get":{"summary":"List transactions","tags":["Transactions"]},"post":{"summary":"Create transaction","tags":["Transactions"]}},"/webhooks":{"get":{"summary":"List webhook subscriptions","tags":["Webhooks"]},"post":{"summary":"Create webhook","tags":["Webhooks"]}},"/webhooks/{id}":{"delete":{"summary":"Delete webhook","tags":["Webhooks"]}}},"security":[{"ApiKeyAuth":[]}],"servers":[{"description":"Production API v1","url":"/api/v1"}]}