{"openapi": "3.1.0", "info": {"title": "Centara API", "version": "1.0.1", "description": ""}, "paths": {"/api/document/eDocument/ping": {"post": {"operationId": "document_api_edocument_ping", "summary": "Ping endpoint", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"title": "Response", "type": "string"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "tags": ["eDocument"], "security": [{"BasicAuth": []}]}}, "/api/document/eDocument": {"post": {"operationId": "document_api_edocument_create_envelope", "summary": "Creates a new eDocument", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/GenericResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Creates a new eDocument.\nThis endpoint is used by customers to send eDocuments to PEPPOL or other customers", "tags": ["eDocument"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/eDocumentInbound"}}}, "required": true}, "security": [{"BasicAuth": []}]}, "get": {"operationId": "document_api_edocument_get_envelopes", "summary": "Gets all pending eDocuments", "parameters": [{"in": "query", "name": "gln", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Gln"}, "required": false}, {"in": "query", "name": "ean", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ean"}, "required": false}, {"in": "query", "name": "customer_number", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Number"}, "required": false}, {"in": "query", "name": "status", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Status"}, "required": false}, {"in": "query", "name": "limit", "schema": {"default": 1000, "minimum": 1, "title": "Limit", "type": "integer"}, "required": false}, {"in": "query", "name": "offset", "schema": {"default": 0, "minimum": 0, "title": "Offset", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedeDocumentResponseItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Retrieve envelopes based on provided parametrs.", "tags": ["eDocument"], "security": [{"BasicAuth": []}, {"MutualTLSAuth": []}]}}, "/api/document/eDocument/allowed_identifiers": {"get": {"operationId": "document_api_edocument_get_allowed_identifiers", "summary": "Gets all allowed identifiers", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"type": "string"}, "title": "Response", "type": "array"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "tags": ["eDocument"], "security": [{"BasicAuth": []}, {"MutualTLSAuth": []}]}}, "/api/document/eDocument/{uuid}": {"get": {"operationId": "document_api_edocument_get_document", "summary": "Gets a specific eDocument for download", "parameters": [{"in": "path", "name": "uuid", "schema": {"title": "Uuid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/FileResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "tags": ["eDocument"], "security": [{"BasicAuth": []}, {"MutualTLSAuth": []}]}}, "/api/document/eDocument/{uuid}/acknowledge": {"patch": {"operationId": "document_api_edocument_acknowledge_document", "summary": "Acknowledges a specific eDocument", "parameters": [{"in": "path", "name": "uuid", "schema": {"title": "Uuid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/GenericResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Acknowledges a specific eDocument", "tags": ["eDocument"], "security": [{"BasicAuth": []}, {"MutualTLSAuth": []}]}}, "/api/document/eDocument/{uuid}/unprocessable": {"patch": {"operationId": "document_api_edocument_mark_document_as_unprocessable", "summary": "Marks eDocument as unprocessable", "parameters": [{"in": "path", "name": "uuid", "schema": {"title": "Uuid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/GenericResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Marks a specific eDocument as unprocessable", "tags": ["eDocument"], "security": [{"BasicAuth": []}, {"MutualTLSAuth": []}]}}, "/api/document/eDocument/{uuid}/status": {"get": {"operationId": "document_api_edocument_get_document_status", "summary": "Gets the status of a specific eDocument", "parameters": [{"in": "path", "name": "uuid", "schema": {"title": "Uuid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/StatusResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets the status of a specific eDocument", "tags": ["eDocument"], "security": [{"BasicAuth": []}]}}, "/api/document/Power/": {"post": {"operationId": "document_api_power_post_inbound_document", "summary": "Post Inbound Document", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"anyOf": [{"type": "string"}, {"items": {"$ref": "#/components/schemas/DocumentResponse"}, "type": "array"}], "title": "Response"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorResponse"}}}}, "401": {"description": "Unauthorized", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorResponse"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ErrorResponse"}}}}}, "description": "Post inbound document that we get from BC", "tags": ["Power"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/DocumentInbound"}}}, "required": true}, "security": [{"ApiKey": []}]}}, "/api/document/Power/document_by_table": {"get": {"operationId": "document_api_power_get_document_by_table", "summary": "Get Document By Table", "parameters": [{"in": "query", "name": "table_id", "schema": {"title": "Table Id", "type": "string"}, "required": true}, {"in": "query", "name": "no", "schema": {"title": "No", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK"}}, "tags": ["Power"], "security": [{"ApiKey": []}]}}, "/api/document/Power/document_by_uuid": {"get": {"operationId": "document_api_power_get_document_by_uuid", "summary": "Get Document By Uuid", "parameters": [{"in": "query", "name": "uuid", "schema": {"title": "Uuid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK"}}, "tags": ["Power"], "security": [{"ApiKey": []}]}}, "/api/envelopes/": {"get": {"operationId": "document_api_envelope_detail_list_envelopes", "summary": "List envelopes", "parameters": [{"in": "query", "name": "direction", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Direction"}, "required": false}, {"in": "query", "name": "status", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Status"}, "required": false}, {"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}, {"in": "query", "name": "end_service", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "End Service"}, "required": false}, {"in": "query", "name": "peppol_document_type", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Peppol Document Type"}, "required": false}, {"in": "query", "name": "search", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Search"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedEnvelopeListItem"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Paginated list of envelopes with filtering and free-text search.\n\n**Filters**\n- `direction` \u2014 `sent` | `received` | `internal` | omit for all\n- `status` \u2014 simplified public status: 0=Hidden, 1=Pending, 2=In Progress, 3=Intervention Required / Pending Retrieval, 4=Delivered / Received\n- `date_from` / `date_to` \u2014 ISO 8601 date range on `created_at`\n- `end_service` \u2014 0=PEPPOL, 1=Island.is, 4=X.400, 5=SFTP, 6=Customs\n- `peppol_document_type` \u2014 1=Invoice, 2=DespatchAdvice, 3=Order, 4=CreditNote, 5=OrderResponse, 6=CustomsDecl\n- `search` \u2014 matches sender/receiver name, document number, invoice number\n\nRequires the `envelopes:read` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/envelopes/{envelope_id}": {"get": {"operationId": "document_api_envelope_detail_get_envelope_detail", "summary": "Get envelope detail", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EnvelopeDetail"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns core metadata for a single envelope.\n\nRequires the ``envelopes:read`` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/envelopes/{envelope_id}/events": {"get": {"operationId": "document_api_envelope_detail_get_envelope_events", "summary": "Get envelope event log", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/EnvelopeEventItem"}, "title": "Response", "type": "array"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns the ordered processing history for the envelope \u2014 each event represents a step taken (received, validated, sent, error, etc.).\n\nRequires the ``envelopes:read`` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/envelopes/{envelope_id}/pipeline": {"get": {"operationId": "document_api_envelope_detail_get_envelope_pipeline", "summary": "Get pipeline orchestration executions", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/PipelineExecutionDetail"}, "title": "Response", "type": "array"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns all pipeline execution records for the envelope, including individual stage executions. Ordered newest-first.\n\nRequires the ``envelopes:read`` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/envelopes/{envelope_id}/documents": {"get": {"operationId": "document_api_envelope_detail_get_envelope_documents", "summary": "Get attached documents", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/EnvelopeDocumentItem"}, "title": "Response", "type": "array"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns all non-deleted Document records attached to the envelope \u2014 original uploads, converted formats, PDF renderings, etc.\n\nRequires the ``envelopes:read`` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/envelopes/{envelope_id}/documents/{document_id}/download": {"get": {"operationId": "document_api_envelope_detail_download_envelope_document", "summary": "Download a document file", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}, {"in": "path", "name": "document_id", "schema": {"format": "uuid", "title": "Document Id", "type": "string"}, "required": true}], "responses": {"403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns the raw file bytes for a single Document record with appropriate `Content-Type` and `Content-Disposition: attachment` headers, so the browser triggers a file save dialog.\n\nOnly non-deleted documents that belong to the given envelope are accessible.\n\nRequires the ``envelopes:read`` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/envelopes/{envelope_id}/related": {"get": {"operationId": "document_api_envelope_detail_get_envelope_related", "summary": "Get related domain documents", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/RelatedDocuments"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns the domain objects linked to this envelope: invoice, order, despatch advice, etc. Fields are null when no document of that type is associated.\n\nRequires the ``envelopes:read`` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/envelopes/{envelope_id}/edi/reimport": {"post": {"operationId": "document_api_envelope_detail_reimport_envelope_message", "summary": "Reimport the originating EDI message", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ReimportResult"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "422": {"description": "Unprocessable Content", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Reimports the EDI transport message that created this envelope, re-parsing the EDI content and regenerating the associated business objects (invoice, order, etc.) while keeping the existing envelope record.\n\nThe inbound message linked to the envelope is used as the import source. If multiple messages are linked, the first inbound message is preferred.\n\nReturns `success: false` with an `error` description if the import service encounters a parse or validation error (rather than raising an HTTP error), matching the behaviour of the Django admin Import Message action.\n\nRequires the ``envelopes:read`` scope.", "tags": ["Envelopes"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/eDelivery/invoice": {"post": {"operationId": "invoicing_api_send_invoice", "summary": "Create Invoice from JSON", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/responseItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "409": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DuplicateExceptionError"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Creates a Invoice from JSON messages.\n    The Invoice will be by default validated against PEPPOL BIS 3.0 schema format, regardless\n    if the invoice is going to delivered in other formats such as BASDA, EDIFact etc.\n    The message that get's created will be sent async to the specified endpoint.\n    \n    To force resend an existing invoice, include the 'X-Force-Resend: true' header.", "tags": ["eDelivery"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/InvoiceEnvelope"}}}, "required": true}, "security": [{"MutualTLSAuthAsync": []}, {"CentaraAPIKeyHeaderAsync": []}, {"UserJWTBearerAuthAsync": []}]}}, "/api/eDelivery/credit_memo": {"post": {"operationId": "invoicing_api_correct_with_credit", "summary": "Correct With Credit", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/responseItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "409": {"description": "Conflict", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DuplicateExceptionError"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "tags": ["eDelivery"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/InvoiceEnvelope"}}}, "required": true}, "security": [{"MutualTLSAuthAsync": []}, {"CentaraAPIKeyHeaderAsync": []}, {"UserJWTBearerAuthAsync": []}]}}, "/api/eDelivery/status": {"get": {"operationId": "invoicing_api_list_envelope_statuses", "summary": "List envelope statuses", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/EnvelopeStatusItem"}, "title": "Response", "type": "array"}}}}}, "description": "Returns all possible envelope status codes and their labels.", "tags": ["eDelivery"], "security": [{"MutualTLSAuthAsync": []}, {"CentaraAPIKeyHeaderAsync": []}, {"UserJWTBearerAuthAsync": []}]}}, "/api/eDelivery/invoices": {"get": {"operationId": "invoicing_api_list_invoices", "summary": "List invoice envelopes", "parameters": [{"in": "query", "name": "direction", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Direction"}, "required": false}, {"in": "query", "name": "status", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Status"}, "required": false}, {"in": "query", "name": "search", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Search"}, "required": false}, {"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedInvoiceListItem"}}}}}, "description": "Paginated list of invoice envelopes for the authenticated customer or partner. Each item includes the envelope_id (use it to fetch XML/PDF or check delivery status) and the linked invoice metadata where available.\n\nFilter by `direction=sent|received`, `status` (simplified status code: 0=Hidden, 1=Pending, 2=In Progress, 3=Intervention Required / Pending Retrieval, 4=Delivered / Received), free-text `search`, or date range (`date_from` / `date_to`, ISO 8601 date).\n\nRequires the `invoices:read` scope.", "tags": ["eDelivery"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/eDelivery/invoices/{invoice_id}": {"get": {"operationId": "invoicing_api_get_invoice_by_id", "summary": "Get invoice by ID", "parameters": [{"in": "path", "name": "invoice_id", "schema": {"format": "uuid", "title": "Invoice Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/InvoiceListItem"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Fetch a single invoice by its invoice_id. Returns the same fields as the list endpoint, including `envelope_id` which can be used to navigate to the envelope detail page or fetch XML/PDF.\n\nRequires the `invoices:read` scope.", "tags": ["eDelivery"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/eDelivery/envelope/{envelope_id}": {"get": {"operationId": "invoicing_api_get_invoice", "summary": "Get envelope from ID", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}, {"in": "query", "name": "include_attachments", "schema": {"default": true, "title": "Include Attachments", "type": "boolean"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/InvoiceEnvelope"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets an envelope from the specified envelope_id.", "tags": ["eDelivery"], "security": [{"MutualTLSAuth": []}, {"CentaraAPIKeyHeader": []}, {"UserJWTBearerAuth": []}]}}, "/api/eDelivery/envelope/{envelope_id}/attachments/{attachment_id}": {"get": {"operationId": "invoicing_api_get_invoice_attachment", "summary": "Get invoice attachment content", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}, {"in": "path", "name": "attachment_id", "schema": {"title": "Attachment Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/AttachmentOut"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Fetch the base64-encoded content of a single attachment. Use the attachment IDs returned by GET envelope/{id}?include_attachments=false. Access is scoped to the same envelope the attachment belongs to.", "tags": ["eDelivery"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/eDelivery/envelope/{envelope_id}/xml": {"get": {"operationId": "invoicing_api_get_invoice_xml", "summary": "Get envelope XML file from ID", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/FileResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets an envelope XML file from the specified envelope_id.", "tags": ["eDelivery"], "security": [{"MutualTLSAuth": []}, {"CentaraAPIKeyHeader": []}, {"UserJWTBearerAuth": []}]}}, "/api/eDelivery/envelope/{envelope_id}/pdf": {"get": {"operationId": "invoicing_api_get_invoice_pdf", "summary": "Get envelope PDF file from ID", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}, {"in": "query", "name": "language_code", "schema": {"default": "en", "title": "Language Code", "type": "string"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/FileResponse"}}}}, "202": {"description": "Accepted", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets an envelope PDF file from the specified envelope_id. \n    If the PDF is not yet generated, it will schedule generation and return a status code 202.\n    Language code (\"en\", \"is\", \"pl\", \"se\", \"sr\"). Defaults to 'en'", "tags": ["eDelivery"], "security": [{"MutualTLSAuth": []}, {"CentaraAPIKeyHeader": []}, {"UserJWTBearerAuth": []}]}}, "/api/eDelivery/envelope/status/{envelope_id}": {"get": {"operationId": "invoicing_api_get_invoice_status", "summary": "Get envelope status", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/responseItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets the status of an Invoice from the specified envelope_id.", "tags": ["eDelivery"], "security": [{"MutualTLSAuth": []}, {"CentaraAPIKeyHeader": []}, {"UserJWTBearerAuth": []}]}}, "/api/partner/participant/{identifier}": {"get": {"operationId": "partner_api_participant_get_participant", "summary": "Get Participant", "parameters": [{"in": "path", "name": "identifier", "schema": {"title": "Identifier", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Participant"}}}}}, "description": "Get participant details by identifier.\n\nThe identifier format is <prefix>:<identifier>.\n\nAuthentication is optional. When authenticated, the `is_my_customer` field\nwill indicate if the identifier belongs to the requesting partner.", "tags": ["Partner Participant"], "security": [{"OptionalMutualTLSAuthAsync": []}]}}, "/api/partner/envelope/{envelope_id}": {"get": {"operationId": "partner_api_envelope_get_envelope", "summary": "Get envelope or submission status", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EnvelopeSchema"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Get the status of an envelope or submission by ID.\n    \n    This endpoint returns:\n    - Full envelope details with events if an envelope exists (either directly or associated with a submission)\n    - Submission status if only a submission exists without an associated envelope\n    \n    The ID can be either:\n    - An envelope_id (UUID) to retrieve envelope details\n    - A submission_id (UUID) to retrieve submission or its associated envelope details\n    ", "tags": ["Partner Envelope"], "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/{customer_number}": {"get": {"operationId": "partner_api_customer_get_customer_by_number", "summary": "Get Customer By Number", "parameters": [{"in": "path", "name": "customer_number", "schema": {"title": "Customer Number", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerSchema"}}}}}, "description": "Get a specific customer by customer number.\nOnly returns the customer if it belongs to the authenticated partner.", "tags": ["Partner Customers"], "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/": {"get": {"operationId": "partner_api_customer_get_customers", "summary": "Get Customers", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/CustomerSchema"}, "title": "Response", "type": "array"}}}}}, "description": "Get a paginated list of all customers belonging to the authenticated partner.", "tags": ["Partner Customers"], "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/template/": {"get": {"operationId": "partner_api_customer_get_default_template", "summary": "Get Default Template", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/TemplateSchema"}}}}}, "tags": ["Partner Customers"], "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer": {"post": {"operationId": "partner_api_customer_create_customer", "summary": "Create Customer", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerSchema"}}}}}, "tags": ["Partner Customers"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerSchema"}}}, "required": true}, "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/{customer_number}/identifier": {"get": {"operationId": "partner_api_customer_get_customer_identifiers", "summary": "Get Customer Identifiers", "parameters": [{"in": "path", "name": "customer_number", "schema": {"title": "Customer Number", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/Participant"}, "title": "Response", "type": "array"}}}}}, "description": "Gets a list of Customer Identifiers for a customer.\n:param request:\n:param customer_number:\n:return:", "tags": ["Partner Customers"], "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/{customer_number}/identifier/": {"post": {"operationId": "partner_api_customer_create_participant_profile", "summary": "Create Participant Profile", "parameters": [{"in": "path", "name": "customer_number", "schema": {"title": "Customer Number", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Participant"}}}}}, "description": "Create a participant profile.", "tags": ["Partner Customers"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/Participant"}}}, "required": true}, "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/{customer_number}/identifier/{identifier}": {"delete": {"operationId": "partner_api_customer_delete_participant_identifier", "summary": "Delete Participant Identifier", "parameters": [{"in": "path", "name": "customer_number", "schema": {"title": "Customer Number", "type": "string"}, "required": true}, {"in": "path", "name": "identifier", "schema": {"title": "Identifier", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Participant"}}}}}, "tags": ["Partner Customers"], "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/{customer_number}/identifier/{identifier}/force_registration": {"put": {"operationId": "partner_api_customer_force_registration_identifier", "summary": "Force Registration Identifier", "parameters": [{"in": "path", "name": "identifier", "schema": {"title": "Identifier", "type": "string"}, "required": true}, {"in": "path", "name": "customer_number", "schema": {"title": "Customer Number", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Participant"}}}}}, "description": "Force a try in the SMP to register a participant. To be used if on_network = True but active=False", "tags": ["Partner Customers"], "security": [{"MutualTLSAuth": []}]}}, "/api/partner/customer/{customer_number}/identifier/{identifier}/unregister": {"put": {"operationId": "partner_api_customer_unregister_identifier", "summary": "Unregister Identifier", "parameters": [{"in": "path", "name": "identifier", "schema": {"title": "Identifier", "type": "string"}, "required": true}, {"in": "path", "name": "customer_number", "schema": {"title": "Customer Number", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Participant"}}}}}, "description": "Unregister a participant identifier from the SMP network without deleting it from the database.\n\nThis allows customers to stop receiving invoices on the Peppol network for this identifier,\nwhile still being able to send invoices using it. The identifier remains in the system\nand can be re-registered later using the force_registration endpoint.", "tags": ["Partner Customers"], "security": [{"MutualTLSAuth": []}]}}, "/api/as4/receive": {"post": {"operationId": "as4_api_receive_receive_as4", "summary": "PEPPOL AS4 inbound message receiver", "parameters": [], "responses": {"200": {"description": "OK"}}, "description": "Receives raw AS4 MIME multipart/related messages from PEPPOL Access Points. Authentication via WS-Security (sender cert validated against PEPPOL PKI). Returns an AS4 NonRepudiation Receipt signed with our AP certificate.", "tags": ["AS4"]}}, "/api/eOrder/order": {"post": {"operationId": "eorder_api_send_order", "summary": "Create Order from JSON", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/responseItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Creates an Order from JSON messages.\n    The Order will be validated against PEPPOL BIS 3.0 Order schema format.\n    The message that gets created will be sent async to the specified endpoint.", "tags": ["eOrder"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/OrderEnvelope"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/retann": {"post": {"operationId": "eorder_api_create_retann", "summary": "Create Return Announcement from JSON", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/RetannResponseItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Creates a Return Announcement from JSON.\n    The RETANN will be stored and can later be exported to EDIFACT and sent via X.400.", "tags": ["eOrder"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/RetannEnvelope"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/envelope/{envelope_id}": {"get": {"operationId": "eorder_api_get_order", "summary": "Get envelope from ID", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/OrderEnvelope"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets an order envelope from the specified envelope_id.", "tags": ["eOrder"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/envelope/{envelope_id}/xml": {"get": {"operationId": "eorder_api_get_order_xml", "summary": "Get envelope XML file from ID", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/FileResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets an order envelope XML file from the specified envelope_id.", "tags": ["eOrder"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/envelope/{envelope_id}/pdf": {"get": {"operationId": "eorder_api_get_order_pdf", "summary": "Get envelope PDF file from ID", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}, {"in": "query", "name": "language_code", "schema": {"default": "en", "title": "Language Code", "type": "string"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/FileResponse"}}}}, "202": {"description": "Accepted", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets an order envelope PDF file from the specified envelope_id.\n    If the PDF is not yet generated, it will schedule generation and return a status code 202.\n    Language code (\"en\", \"is\", \"pl\", \"se\", \"sr\"). Defaults to 'en'", "tags": ["eOrder"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/envelope/status/{envelope_id}": {"get": {"operationId": "eorder_api_get_order_status", "summary": "Get envelope status", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/responseItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets the status of an Order from the specified envelope_id.", "tags": ["eOrder"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/order/{order_id}/skot": {"get": {"operationId": "eorder_api_get_order_skot", "summary": "Get Order in SKOT fixed-width format", "parameters": [{"in": "path", "name": "order_id", "schema": {"title": "Order Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/FileResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns the SKOT fixed-width EDI format of the given order.\n    The content is base64-encoded and returned as documentType 'skot'.", "tags": ["eOrder"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/despatch-advice/": {"post": {"operationId": "eorder_api_despatch_advice_create_despatch_advice", "summary": "Create despatch advice", "parameters": [], "responses": {"201": {"description": "Created", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DespatchAdviceCreateOut"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Creates a new outbound despatch advice (DESADV) that can later be sent via X.400.\n\n    Provide the UNB envelope identifiers (`unb_sender`, `unb_receiver`) separately from the NAD\n    party identifiers, as these are distinct in the EDIFACT envelope:\n\n    - `unb_sender` / `unb_receiver`: GLNs used in the UNB interchange header (U1/U2 lines)\n    - `despatch_supplier_identifier` / `delivery_customer_identifier`: GLNs in NAD segments\n\n    After creation, use `POST despatch-advice/{id}/send-x400` to send the message.\n    ", "tags": ["eOrder", "Despatch Advice"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/DespatchAdviceCreateIn"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/despatch-advice/{despatch_advice_id}/send-x400": {"post": {"operationId": "eorder_api_despatch_advice_send_desadv_to_x400", "summary": "Send despatch advice via X.400", "parameters": [{"in": "path", "name": "despatch_advice_id", "schema": {"title": "Despatch Advice Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendOrderToX400Response"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Converts a despatch advice to Icelandic EDIFACT format and sends it via X.400.\n\n    This endpoint:\n    1. Looks up the EDI partner by `short_code` or `routing_code` (if provided)\n    2. Converts the despatch advice to Icelandic EDIFACT DESADV format (UNOA:1 / DESADV:2:901:UN)\n    3. Creates or updates an envelope for the despatch advice\n    4. Creates an EDIFACT document\n    5. Sends via X.400 transport\n\n    The UNB sender/receiver are taken from the `unb_sender` / `unb_receiver` fields stored\n    on the despatch advice model (set when creating via API or parsed from inbound EDI).\n\n    **Routing:**\n    - If `short_code` is provided, looks up EDI partner by shortcode only (case-insensitive)\n    - If `routing_code` is provided, looks up by shortcode or X.400 address\n    - If neither is provided, routing discovery will be used\n    ", "tags": ["eOrder", "Despatch Advice"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendToX400Request"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/despatch-advice/{despatch_advice_id}": {"get": {"operationId": "eorder_api_despatch_advice_get_despatch_advice_by_id", "summary": "Get despatch advice by ID", "parameters": [{"in": "path", "name": "despatch_advice_id", "schema": {"title": "Despatch Advice Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DespatchAdviceDetail"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets a despatch advice by its unique identifier (UUID) including all line items.", "tags": ["eOrder", "Despatch Advice"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/despatch-advice/{despatch_advice_id}/edi": {"get": {"operationId": "eorder_api_despatch_advice_download_despatch_advice_edi", "summary": "Download despatch advice as EDIFACT", "parameters": [{"in": "path", "name": "despatch_advice_id", "schema": {"title": "Despatch Advice Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK"}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Generates and returns the Icelandic EDIFACT DESADV content for a despatch advice.", "tags": ["eOrder", "Despatch Advice"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/eOrder/despatch-advice/by-number/{despatch_advice_number}": {"get": {"operationId": "eorder_api_despatch_advice_get_despatch_advice_by_number", "summary": "Get despatch advices by document number with consolidated lines", "parameters": [{"in": "path", "name": "despatch_advice_number", "schema": {"title": "Despatch Advice Number", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DespatchAdviceWithLines"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Gets all despatch advices matching the specified document number with all consolidated line items from all matching despatch advices. This allows verification that all lines from the warehouse are received.", "tags": ["eOrder", "Despatch Advice"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/v1/island/documents": {"post": {"operationId": "document_api_island_v1_send_document_to_island", "summary": "Send document to Island.is", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendDocumentResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ValidationErrorResponse"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ConfigurationErrorResponse"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/IslandApiErrorResponse"}}}}}, "description": "Send a document to Island.is digital mailbox.\n\nThis endpoint allows sending PDF documents to Icelandic citizens through the Island.is\ndigital mailbox service. Documents are validated and processed asynchronously.", "tags": ["Island.is v1 API"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendDocumentRequest"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}]}}, "/api/v1/island/documents/withdraw": {"post": {"operationId": "document_api_island_v1_withdraw_document", "summary": "Withdraw a document from Island.is", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/WithdrawDocumentResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ValidationErrorResponse"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ConfigurationErrorResponse"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ValidationErrorResponse"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/IslandApiErrorResponse"}}}}}, "description": "Withdraw a document from Island.is digital mailbox.\n\nThis endpoint allows withdrawing a previously sent document from Island.is.\nOnly documents that have been successfully delivered (status=DONE) can be withdrawn.\nThe recipient will be notified that the document has been withdrawn.", "tags": ["Island.is v1 API"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/WithdrawDocumentRequest"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}]}}, "/api/v1/island/categories": {"get": {"operationId": "document_api_island_v1_get_categories", "summary": "Get available Island.is document categories", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CategoriesResponse"}}}}}, "description": "Get list of available Island.is document categories.\n\nThis endpoint returns all available document categories that can be used\nwhen sending documents to Island.is. The list is synced from Island.is and cached.", "tags": ["Island.is v1 API"], "security": [{"CentaraAPIKeyHeader": []}]}}, "/api/v1/island/document-types": {"get": {"operationId": "document_api_island_v1_get_document_types", "summary": "Get available Island.is document types", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DocumentTypesResponse"}}}}}, "description": "Get list of available Island.is document types.\n\nThis endpoint returns all available document types and their Island.is mappings.\nThe list is cached for performance.", "tags": ["Island.is v1 API"], "security": [{"CentaraAPIKeyHeader": []}]}}, "/api/reporting/billing-data/": {"post": {"operationId": "reporting_api_get_billing_data", "summary": "Get Billing Data", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BillingReportResponse"}}}}}, "description": "Get billing report data for the specified period and filters", "tags": ["reporting"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/BillingReportRequest"}}}, "required": true}}}, "/api/reporting/reports/": {"get": {"operationId": "reporting_api_list_reports", "summary": "List Reports", "parameters": [{"in": "query", "name": "limit", "schema": {"default": 10, "title": "Limit", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK"}}, "description": "List recent reports", "tags": ["reporting"]}}, "/api/x400/edi-partners": {"get": {"operationId": "eorder_api_x400_list_edi_partners", "summary": "List EDI Partners", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EDIPartnersListOut"}}}}}, "description": "Lists all active EDI partners with their X.400 addresses.\n\n    This endpoint helps discover available EDI partners before sending an order.", "tags": ["eOrder X.400"], "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/x400/orders/{order_id}/send-x400": {"post": {"operationId": "eorder_api_x400_send_order_to_x400", "summary": "Send Order via X.400", "parameters": [{"in": "path", "name": "order_id", "schema": {"title": "Order Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendOrderToX400Response"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Generates EDIFACT content from an order and sends it via X.400 transport.\n\n    This endpoint:\n    1. Looks up the EDI partner by short_code or routing_code (if provided)\n    2. Converts the order to EDIFACT format\n    3. Creates or updates an envelope for the order\n    4. Creates an EDIFACT document\n    5. Sends via X.400 transport\n\n    **Note:** Only EDIFACT format is supported for X.400 sending. Fixed-width format is not compatible with X.400.\n\n    **Routing:**\n    - If `short_code` is provided, looks up EDI partner by shortcode only (case-insensitive, e.g., `CCEP`, `@SAMKAUP`)\n    - If `routing_code` is provided instead, looks up by:\n      - Shortcode (case-insensitive, e.g., `@CCEP`, `SAMKAUP`)\n      - Full X.400 address (e.g., `/C=IS/O=Samkaup/OU=EDI/`)\n    - If neither is provided, the system will use routing discovery to find the appropriate EDI partner\n    - Routing discovery is skipped if an EDI partner is already set on the envelope\n    ", "tags": ["eOrder X.400"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendToX400Request"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/x400/retann/{retann_id}/send-x400": {"post": {"operationId": "eorder_api_x400_send_retann_to_x400", "summary": "Send Return Announcement via X.400", "parameters": [{"in": "path", "name": "retann_id", "schema": {"title": "Retann Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendOrderToX400Response"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Generates EDIFACT content from a return announcement and sends it via X.400 transport.\n\n    This endpoint:\n    1. Looks up the EDI partner by short_code or routing_code (if provided)\n    2. Converts the RETANN to EDIFACT format\n    3. Creates or updates an envelope for the RETANN\n    4. Creates an EDIFACT document\n    5. Sends via X.400 transport\n\n    **Note:** Only EDIFACT format is supported for X.400 sending.\n\n    **Routing:**\n    - If `short_code` is provided, looks up EDI partner by shortcode only\n    - If `routing_code` is provided, looks up by shortcode or X.400 address\n    - If neither is provided, routing discovery will be used\n    ", "tags": ["eOrder X.400"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendToX400Request"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/x400/invoices/{envelope_id}/send-x400": {"post": {"operationId": "eorder_api_x400_send_invoice_to_x400", "summary": "Send Invoice or Credit Memo via X.400", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendOrderToX400Response"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "500": {"description": "Internal Server Error", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Generates EDIFACT content from an invoice or credit memo and sends it via X.400 transport.\n\n    This endpoint:\n    1. Looks up the envelope and its primary invoice\n    2. Looks up the EDI partner by short_code or routing_code (if provided)\n    3. Converts the invoice to EDIFACT format\n    4. Creates an EDIFACT document on the envelope\n    5. Sends via X.400 transport\n\n    **Note:** Only EDIFACT format is supported for X.400 sending.\n\n    **Supported document types:**\n    - Commercial invoices (type 380)\n    - Credit notes / credit memos (types 81, 83, 381)\n\n    **Routing:**\n    - If `short_code` is provided, looks up EDI partner by shortcode only\n    - If `routing_code` is provided, looks up by shortcode or X.400 address\n    - If neither is provided, routing discovery will be used\n    ", "tags": ["eOrder X.400"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/SendToX400Request"}}}, "required": true}, "security": [{"CentaraAPIKeyHeader": []}, {"MutualTLSAuth": []}]}}, "/api/customers/": {"get": {"operationId": "customer_api_management_list_customers", "summary": "List customers", "parameters": [{"in": "query", "name": "q", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Q"}, "required": false}, {"in": "query", "name": "partner", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Partner"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/CustomerListItem"}, "title": "Response", "type": "array"}}}}}, "description": "Paginated list of customers the authenticated user has access to. Superusers see all customers; partner admins see their partner's customers; regular users see only their own linked customers. Supports text search (?q=) and partner filter (?partner=<UUID>).", "tags": ["Customers Management"], "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}}, "/api/customers/partners/": {"get": {"operationId": "customer_api_management_list_partners", "summary": "List partners", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/PartnerListItem"}, "title": "Response", "type": "array"}}}}}, "description": "Paginated list of partners. Superusers and tokens with partner:read_all scope see all partners; others see only their own partner.", "tags": ["Customers Management"], "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}}, "/api/customers/{pk}/auth-settings/": {"get": {"operationId": "customer_api_settings_get_auth_settings", "summary": "Get customer authentication settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerAuthSettingsOut"}}}}}, "tags": ["Customer Settings"], "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}, "patch": {"operationId": "customer_api_settings_update_auth_settings", "summary": "Update customer authentication settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerAuthSettingsOut"}}}}}, "tags": ["Customer Settings"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerAuthSettingsIn"}}}, "required": true}, "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}}, "/api/customers/{pk}/token-security/": {"get": {"operationId": "customer_api_settings_get_token_security", "summary": "Get customer token security settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerTokenSecurityOut"}}}}}, "tags": ["Customer Settings"], "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}, "patch": {"operationId": "customer_api_settings_update_token_security", "summary": "Update customer token security settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerTokenSecurityOut"}}}}}, "tags": ["Customer Settings"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerTokenSecurityIn"}}}, "required": true}, "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}}, "/api/customers/{pk}/document-settings/": {"get": {"operationId": "customer_api_settings_get_document_settings", "summary": "Get customer document processing settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerDocumentSettingsOut"}}}}}, "tags": ["Customer Settings"], "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}, "patch": {"operationId": "customer_api_settings_update_document_settings", "summary": "Update customer document processing settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerDocumentSettingsOut"}}}}}, "tags": ["Customer Settings"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerDocumentSettingsIn"}}}, "required": true}, "security": [{"UserJWTBearerAuth": []}, {"UserSessionAuth": []}]}}, "/api/customers/{pk}/general/": {"get": {"operationId": "customer_api_resources_get_general", "summary": "Get customer general information", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerGeneralOut"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "patch": {"operationId": "customer_api_resources_update_general", "summary": "Update customer general information", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerGeneralOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerGeneralIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/bc-integration/": {"get": {"operationId": "customer_api_resources_get_bc_integration", "summary": "Get Business Central integration settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerBCIntegrationOut"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "patch": {"operationId": "customer_api_resources_update_bc_integration", "summary": "Update Business Central integration settings", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerBCIntegrationOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerBCIntegrationIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/blocked-edi-sources/": {"get": {"operationId": "customer_api_resources_list_blocked_edi_sources", "summary": "List blocked EDI sources for a customer", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/BlockedEDISourceOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "post": {"operationId": "customer_api_resources_create_blocked_edi_source", "summary": "Block an EDI source for a customer", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BlockedEDISourceOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/BlockedEDISourceIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/blocked-edi-sources/{source_id}/": {"delete": {"operationId": "customer_api_resources_delete_blocked_edi_source", "summary": "Remove a blocked EDI source", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "source_id", "schema": {"title": "Source Id", "type": "integer"}, "required": true}], "responses": {"204": {"description": "No Content"}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/email-addresses/": {"get": {"operationId": "customer_api_resources_list_email_addresses", "summary": "List OCR invoice email addresses for a customer", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/InboundEmailAddressOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "post": {"operationId": "customer_api_resources_create_email_address", "summary": "Add an OCR invoice email address", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/InboundEmailAddressOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/InboundEmailAddressCreateIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/email-addresses/{email_id}/": {"patch": {"operationId": "customer_api_resources_update_email_address", "summary": "Update an OCR invoice email address", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "email_id", "schema": {"title": "Email Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/InboundEmailAddressOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/InboundEmailAddressPatchIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}, "delete": {"operationId": "customer_api_resources_delete_email_address", "summary": "Delete an OCR invoice email address", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "email_id", "schema": {"title": "Email Id", "type": "integer"}, "required": true}], "responses": {"204": {"description": "No Content"}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/identifiers/": {"get": {"operationId": "customer_api_resources_list_identifiers", "summary": "List customer identifiers", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/CustomerIdentifierOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "post": {"operationId": "customer_api_resources_create_identifier", "summary": "Add a customer identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerIdentifierOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerIdentifierCreateIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/identifiers/{uid}/": {"get": {"operationId": "customer_api_resources_get_identifier", "summary": "Get a customer identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "uid", "schema": {"format": "uuid", "title": "Uid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerIdentifierOut"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "patch": {"operationId": "customer_api_resources_update_identifier", "summary": "Update a customer identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "uid", "schema": {"format": "uuid", "title": "Uid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerIdentifierOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CustomerIdentifierPatchIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}, "delete": {"operationId": "customer_api_resources_delete_identifier", "summary": "Delete a customer identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "uid", "schema": {"format": "uuid", "title": "Uid", "type": "string"}, "required": true}], "responses": {"204": {"description": "No Content"}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/identifiers/{uid}/business-card/": {"get": {"operationId": "customer_api_resources_get_business_card", "summary": "Preview business card data for a PEPPOL identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "uid", "schema": {"format": "uuid", "title": "Uid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BusinessCardPreviewOut"}}}}}, "description": "Returns the business card data that would be pushed to the PEPPOL Directory. Includes all active identifiers for the customer. Requires customer_identifiers:read scope.", "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "delete": {"operationId": "customer_api_resources_delete_business_card", "summary": "Delete business card from PEPPOL Directory", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "uid", "schema": {"format": "uuid", "title": "Uid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BusinessCardResultOut"}}}}}, "description": "Removes the business card for this identifier from the PEPPOL Directory. A 404 from the directory (already absent) is treated as success. Requires customer_identifiers:write scope.", "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/identifiers/{uid}/business-card/status/": {"get": {"operationId": "customer_api_resources_get_business_card_status", "summary": "Check if business card is published in PEPPOL Directory", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "uid", "schema": {"format": "uuid", "title": "Uid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BusinessCardStatusOut"}}}}}, "description": "Queries the PEPPOL Directory to check whether this identifier's business card is currently published. Requires customer_identifiers:read scope.", "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/identifiers/{uid}/business-card/push/": {"post": {"operationId": "customer_api_resources_push_business_card", "summary": "Push business card to PEPPOL Directory", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "uid", "schema": {"format": "uuid", "title": "Uid", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BusinessCardResultOut"}}}}}, "description": "Uploads (creates or updates) the business card for this identifier to the PEPPOL Directory. The identifier must already be registered in SMP (exists_in_smp=True). Requires customer_identifiers:write scope.", "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/parties/": {"get": {"operationId": "customer_api_resources_list_parties", "summary": "List parties related to this customer (via LLM rules)", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/PartyOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/parties/{party_id}/": {"get": {"operationId": "customer_api_resources_get_party", "summary": "Get a related party with its identifiers", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "party_id", "schema": {"title": "Party Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PartyOut"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/parties/{party_id}/identifiers/": {"get": {"operationId": "customer_api_resources_list_party_identifiers", "summary": "List identifiers for a related party", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "party_id", "schema": {"title": "Party Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/PartyIdentifierOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "post": {"operationId": "customer_api_resources_create_party_identifier", "summary": "Add an identifier to a related party", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "party_id", "schema": {"title": "Party Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PartyIdentifierOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/PartyIdentifierCreateIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/parties/{party_id}/identifiers/{identifier_id}/": {"patch": {"operationId": "customer_api_resources_update_party_identifier", "summary": "Update a party identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "party_id", "schema": {"title": "Party Id", "type": "integer"}, "required": true}, {"in": "path", "name": "identifier_id", "schema": {"title": "Identifier Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PartyIdentifierOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/PartyIdentifierPatchIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}, "delete": {"operationId": "customer_api_resources_delete_party_identifier", "summary": "Delete a party identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "party_id", "schema": {"title": "Party Id", "type": "integer"}, "required": true}, {"in": "path", "name": "identifier_id", "schema": {"title": "Identifier Id", "type": "integer"}, "required": true}], "responses": {"204": {"description": "No Content"}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/available-groups/": {"get": {"operationId": "customer_api_resources_list_available_groups", "summary": "List groups available for inviting users to this customer", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/AvailableGroupOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/invite/": {"post": {"operationId": "customer_api_resources_invite_user", "summary": "Invite a user to this customer", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/InviteUserOut"}}}}}, "description": "Creates or finds the user by email, links them to the customer, assigns the requested groups, and sends an invitation email. group_ids must be from the customer's available groups (superusers may use any group). Requires customer_user:write or customer_user:partner_rw scope.", "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/InviteUserIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/ebc-credentials/": {"get": {"operationId": "customer_api_resources_list_ebc_credentials", "summary": "List EBC credentials for a customer", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/EBCCredentialOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "post": {"operationId": "customer_api_resources_create_ebc_credential", "summary": "Create an EBC credential", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"201": {"description": "Created", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EBCCredentialWithSecretOut"}}}}}, "description": "Creates a new EBC credential. The `client_secret` is returned once \u2014 store it immediately. It cannot be retrieved again.", "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/EBCCredentialCreateIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/ebc-credentials/{cred_id}/": {"patch": {"operationId": "customer_api_resources_update_ebc_credential", "summary": "Update an EBC credential (label / expiry / active flag)", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "cred_id", "schema": {"format": "uuid", "title": "Cred Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EBCCredentialOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/EBCCredentialPatchIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}, "delete": {"operationId": "customer_api_resources_delete_ebc_credential", "summary": "Delete an EBC credential", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "cred_id", "schema": {"format": "uuid", "title": "Cred Id", "type": "string"}, "required": true}], "responses": {"204": {"description": "No Content"}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/ebc-credentials/{cred_id}/deactivate/": {"post": {"operationId": "customer_api_resources_deactivate_ebc_credential", "summary": "Deactivate an EBC credential", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "cred_id", "schema": {"format": "uuid", "title": "Cred Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EBCCredentialOut"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/ebc-credentials/{cred_id}/rotate/": {"post": {"operationId": "customer_api_resources_rotate_ebc_credential", "summary": "Rotate an EBC credential", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "cred_id", "schema": {"format": "uuid", "title": "Cred Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/EBCCredentialWithSecretOut"}}}}}, "description": "Generates a new `client_id` and `client_secret` for the credential. The new `client_secret` is returned once \u2014 store it immediately. The old secret is immediately invalidated.", "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/peppol-identifiers/": {"get": {"operationId": "customer_api_resources_list_peppol_identifiers", "summary": "List PEPPOL Directory business card identifiers", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/PeppolIdentifierOut"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}, "post": {"operationId": "customer_api_resources_create_peppol_identifier", "summary": "Add a PEPPOL Directory business card identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}], "responses": {"201": {"description": "Created", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PeppolIdentifierOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/PeppolIdentifierCreateIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/{pk}/peppol-identifiers/{identifier_id}/": {"patch": {"operationId": "customer_api_resources_update_peppol_identifier", "summary": "Update a PEPPOL Directory business card identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "identifier_id", "schema": {"title": "Identifier Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PeppolIdentifierOut"}}}}}, "tags": ["Customer Resources"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/PeppolIdentifierPatchIn"}}}, "required": true}, "security": [{"UserJWTBearerAuthAsync": []}]}, "delete": {"operationId": "customer_api_resources_delete_peppol_identifier", "summary": "Delete a PEPPOL Directory business card identifier", "parameters": [{"in": "path", "name": "pk", "schema": {"title": "Pk", "type": "integer"}, "required": true}, {"in": "path", "name": "identifier_id", "schema": {"title": "Identifier Id", "type": "integer"}, "required": true}], "responses": {"204": {"description": "No Content"}}, "tags": ["Customer Resources"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/customers/certificates/": {"get": {"operationId": "customer_api_certificates_list_certificates", "summary": "List certificates", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/CertificateInfo"}, "title": "Response", "type": "array"}}}}}, "tags": ["Customer Certificates"], "security": [{"UserJWTBearerAuth": []}]}, "post": {"operationId": "customer_api_certificates_create_certificate", "summary": "Create / issue a new certificate", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CertificateInfo"}}}}}, "tags": ["Customer Certificates"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/CreateCertificateRequest"}}}, "required": true}, "security": [{"UserJWTBearerAuth": []}]}}, "/api/customers/certificates/{pk}/": {"get": {"operationId": "customer_api_certificates_certificate_info", "summary": "Certificate info", "parameters": [{"in": "path", "name": "pk", "schema": {"format": "uuid", "title": "Pk", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/CertificateInfo"}}}}}, "tags": ["Customer Certificates"], "security": [{"UserJWTBearerAuth": []}]}, "delete": {"operationId": "customer_api_certificates_revoke_certificate", "summary": "Revoke a certificate", "parameters": [{"in": "path", "name": "pk", "schema": {"format": "uuid", "title": "Pk", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK"}}, "tags": ["Customer Certificates"], "security": [{"UserJWTBearerAuth": []}]}}, "/api/customers/certificates/{pk}/download/": {"get": {"operationId": "customer_api_certificates_download_certificate", "summary": "Download certificate as PKCS12", "parameters": [{"in": "path", "name": "pk", "schema": {"format": "uuid", "title": "Pk", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK"}}, "tags": ["Customer Certificates"], "security": [{"UserJWTBearerAuth": []}]}}, "/api/auth/v2/microsoft/authorize": {"get": {"operationId": "authentication_api_token_microsoft_authorize", "summary": "Microsoft Authorize", "parameters": [{"in": "query", "name": "frontend_redirect_uri", "schema": {"title": "Frontend Redirect Uri", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MicrosoftAuthorizeResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Return the Microsoft authorization URL.\n\nThe frontend should redirect the user to ``authorization_url``.\nAfter the user authenticates, Microsoft will redirect back to the\nbackend callback, which will redirect to ``frontend_redirect_uri``\nwith a ``?temp_code=`` parameter.\n\nArgs:\n    frontend_redirect_uri: Where to redirect after successful login\n        (e.g. ``https://app.example.com/auth/callback``).", "tags": ["Auth v2 \u2014 JWT Login"]}}, "/api/auth/v2/microsoft/callback": {"get": {"operationId": "authentication_api_token_microsoft_callback", "summary": "Microsoft Callback", "parameters": [{"in": "query", "name": "code", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Code"}, "required": false}, {"in": "query", "name": "state", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "State"}, "required": false}, {"in": "query", "name": "error", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Error"}, "required": false}], "responses": {"302": {"description": "Found"}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Microsoft OAuth2 callback \u2014 exchanges code for tokens and redirects to frontend.\n\nMicrosoft redirects here after the user authenticates. The backend exchanges\nthe code for Microsoft tokens, resolves the user, then redirects to the\nfrontend ``?temp_code=`` (60s single-use code the frontend exchanges for JWTs).", "tags": ["Auth v2 \u2014 JWT Login"]}}, "/api/auth/v2/token/exchange": {"post": {"operationId": "authentication_api_token_exchange_temp_code", "summary": "Exchange Temp Code", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/TokenResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Exchange a one-time temp_code (from Microsoft callback) for JWT tokens.\n\nThe temp_code is valid for 60 seconds and can only be used once.", "tags": ["Auth v2 \u2014 JWT Login"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/ExchangeTempCodeRequest"}}}, "required": true}}}, "/api/auth/v2/token/refresh": {"post": {"operationId": "authentication_api_token_refresh_token", "summary": "Refresh Token", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/TokenResponse"}}}}, "401": {"description": "Unauthorized", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Rotate a refresh token and issue a new access + refresh token pair.\n\nThe provided refresh token is revoked; a fresh pair is returned.", "tags": ["Auth v2 \u2014 JWT Login"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/RefreshTokenRequest"}}}, "required": true}}}, "/api/auth/v2/audkenni/app/start": {"post": {"operationId": "authentication_api_token_audkenni_app_start", "summary": "Audkenni App Start", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/AudkenniStartResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Start an Audkenni App authentication session (national ID / kennitala).\n\nLaunches a background Celery task that polls Audkenni while the user\napproves on their phone. Poll ``/audkenni/poll/{session_id}`` for status.\n\nArgs:\n    national_id: 10-digit Icelandic national ID (kennitala).\n    customer_slug: Resolves the display name shown in the Audkenni app message.\n    partner_slug: Alternative to customer_slug.", "tags": ["Auth v2 \u2014 JWT Login"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/AudkenniAppStartRequest"}}}, "required": true}}}, "/api/auth/v2/audkenni/mobile/start": {"post": {"operationId": "authentication_api_token_audkenni_mobile_start", "summary": "Audkenni Mobile Start", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/AudkenniStartResponse"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Start an Audkenni Mobile authentication session (SIM-based).\n\nLaunches a background Celery task that polls Audkenni while the user\napproves on their SIM. Poll ``/audkenni/poll/{session_id}`` for status.\n\nArgs:\n    mobile_number: 7-digit Icelandic mobile number.\n    customer_slug: Resolves the display name shown in the Audkenni app message.\n    partner_slug: Alternative to customer_slug.", "tags": ["Auth v2 \u2014 JWT Login"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/AudkenniMobileStartRequest"}}}, "required": true}}}, "/api/auth/v2/audkenni/poll/{session_id}": {"get": {"operationId": "authentication_api_token_audkenni_poll", "summary": "Audkenni Poll", "parameters": [{"in": "path", "name": "session_id", "schema": {"title": "Session Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/AudkenniPollResponse"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Poll an Audkenni authentication session for completion.\n\nCall this every 3\u20135 seconds after ``/app/start`` or ``/mobile/start``.\n\nStatuses:\n- ``pending``   \u2014 user has not approved yet; keep polling.\n- ``completed`` \u2014 a ``temp_code`` is included; exchange it via ``POST /token/exchange``.\n- ``failed``    \u2014 authentication failed; ``error`` and ``error_code`` explain why.\n\nThe cache entry is deleted after a ``completed`` response so the\ntemp_code cannot be retrieved twice.", "tags": ["Auth v2 \u2014 JWT Login"]}}, "/api/auth/v2/magic/request": {"post": {"operationId": "authentication_api_token_magic_link_request", "summary": "Magic Link Request", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Request a magic login link via email.\n\nSends a one-time link to the user's inbox. The link is valid for 15 minutes.\nTo prevent user enumeration the response is identical whether or not the\nemail matches an account.\n\nRate-limited to one email per address per 5 minutes.\n\nArgs:\n    email: The user's email address.\n    frontend_redirect_uri: Where to redirect after the link is clicked\n        (e.g. ``https://app.example.com/auth/callback``). The frontend\n        will receive ``?temp_code=`` and must exchange it via\n        ``POST /token/exchange``.\n    customer_slug: Optional \u2014 personalises the email subject/body.\n    partner_slug: Optional \u2014 alternative to customer_slug.", "tags": ["Auth v2 \u2014 JWT Login"], "requestBody": {"content": {"application/json": {"schema": {"$ref": "#/components/schemas/MagicLinkRequestSchema"}}}, "required": true}}}, "/api/auth/v2/magic/verify": {"get": {"operationId": "authentication_api_token_magic_link_verify", "summary": "Magic Link Verify", "parameters": [{"in": "query", "name": "token", "schema": {"title": "Token", "type": "string"}, "required": true}], "responses": {"302": {"description": "Found"}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Verify a magic link token and redirect to the frontend with a temp_code.\n\nCalled when the user clicks the link in their email. Validates the token,\nissues a 60-second ``temp_code``, and redirects to the ``frontend_redirect_uri``\nthat was provided when the link was requested.\n\nThe frontend must exchange the ``temp_code`` via ``POST /token/exchange``\nto receive the actual JWT access + refresh tokens.", "tags": ["Auth v2 \u2014 JWT Login"]}}, "/api/me/": {"get": {"operationId": "authentication_api_me_get_me", "summary": "Current user context", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/MeOut"}}}}}, "description": "Returns identity, partner branding, and permissions for the authenticated user. Call this once after obtaining an access token to bootstrap the frontend.", "tags": ["Me"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/users/": {"get": {"operationId": "authentication_api_users_list_users", "summary": "List users", "parameters": [{"in": "query", "name": "customer", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Customer"}, "required": false}, {"in": "query", "name": "q", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Q"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedUserListItem"}}}}}, "description": "Paginated list of users. Superusers see all; partner admins (customer_user:partner_ra/rw) see all under their partner; regular users (customer_user:read) see only their customer's users. Each item includes `can_hijack` and `can_deactivate` flags for UI control.", "tags": ["Users"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/users/{user_id}": {"get": {"operationId": "authentication_api_users_get_user", "summary": "User detail", "parameters": [{"in": "path", "name": "user_id", "schema": {"title": "User Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/UserDetailOut"}}}}}, "description": "Full detail for a single user: identity, language, connected social accounts (Icelandic eID, Microsoft, \u2026), explicit permissions, Django groups, and whether the caller can hijack or deactivate this user.", "tags": ["Users"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/users/{user_id}/reset-password": {"post": {"operationId": "authentication_api_users_reset_user_password", "summary": "Reset user password", "parameters": [{"in": "path", "name": "user_id", "schema": {"title": "User Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasswordResetOut"}}}}}, "description": "Generates and sets a new random password for the target user. Returns the new plaintext password \u2014 share it with the user via a secure channel. Requires superuser, customer_user:partner_rw within the same partner, or customer_user:write for users in the same customer. customer_user:hijack alone is NOT sufficient.", "tags": ["Users"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/users/{user_id}/deactivate": {"post": {"operationId": "authentication_api_users_deactivate_user", "summary": "Deactivate user", "parameters": [{"in": "path", "name": "user_id", "schema": {"title": "User Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Sets is_active=False for the target user. Requires superuser, customer_user:partner_rw within the same partner, or customer_user:write for users in the same customer. customer_user:hijack alone is NOT sufficient. Cannot deactivate yourself.", "tags": ["Users"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/users/hijack/{user_id}": {"post": {"operationId": "authentication_api_hijack_start_hijack", "summary": "Start hijack session", "parameters": [{"in": "path", "name": "user_id", "schema": {"title": "User Id", "type": "integer"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/HijackOut"}}}}}, "description": "Impersonate another user. Issues a 1-hour JWT for the target user with `hijack_session_id` embedded for full auditability. Store your original token client-side and restore it after release. Cannot be called from within an existing hijack session.", "tags": ["Users", "Users"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/users/hijack": {"delete": {"operationId": "authentication_api_hijack_release_hijack", "summary": "Release hijack session", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"additionalProperties": true, "title": "Response", "type": "object"}}}}}, "description": "Release the current hijack session. Call this with the hijack token; the session is marked released for audit purposes. Restore your original token client-side \u2014 no further server action needed.", "tags": ["Users", "Users"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/registry/": {"get": {"operationId": "company_registry_api_list_businesses", "summary": "Search company registry", "parameters": [{"in": "query", "name": "query", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Query"}, "required": false}, {"in": "query", "name": "address", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Address"}, "required": false}, {"in": "query", "name": "postal_code", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Postal Code"}, "required": false}, {"in": "query", "name": "chairman", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Chairman"}, "required": false}, {"in": "query", "name": "include_deregistered", "schema": {"default": false, "title": "Include Deregistered", "type": "boolean"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedBusinessListItem"}}}}, "400": {"description": "Bad Request", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Paginated search of the Icelandic company registry. Filter by name or kennitala (`query`), `address`, `postal_code`, `chairman` kennitala, or set `include_deregistered=true` to include deregistered companies (excluded by default).", "tags": ["Company Registry"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/registry/{kennitala}": {"get": {"operationId": "company_registry_api_get_business", "summary": "Get business details", "parameters": [{"in": "path", "name": "kennitala", "schema": {"title": "Kennitala", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/BusinessDetail"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Full details for a single business by kennitala.", "tags": ["Company Registry"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/registry/{kennitala}/vat": {"get": {"operationId": "company_registry_api_get_business_vat", "summary": "Get VAT numbers", "parameters": [{"in": "path", "name": "kennitala", "schema": {"title": "Kennitala", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/VATNumberOut"}, "title": "Response", "type": "array"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "All VAT registration numbers for the business. Active registrations have `closed=null`.", "tags": ["Company Registry"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/registry/{kennitala}/classifications": {"get": {"operationId": "company_registry_api_get_business_classifications", "summary": "Get business classifications", "parameters": [{"in": "path", "name": "kennitala", "schema": {"title": "Kennitala", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/ClassificationOut"}, "title": "Response", "type": "array"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "\u00cdSAT (Icelandic business classification) codes assigned to the business.", "tags": ["Company Registry"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/dashboard/stats": {"get": {"operationId": "mono_api_dashboard_get_dashboard_stats", "summary": "Dashboard statistics", "parameters": [], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DashboardStats"}}}}}, "description": "Summary stats for the current and previous 7-day periods: sent, received, errors, and email-sent envelope counts. Scoped to the customer_ids in the JWT; superusers see all.", "tags": ["Dashboard"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/dashboard/trend": {"get": {"operationId": "mono_api_dashboard_get_dashboard_trend", "summary": "Dashboard trend data", "parameters": [{"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/TrendPoint"}, "title": "Response", "type": "array"}}}}}, "description": "Daily sent and received envelope counts. Defaults to the past 60 days. Pass `date_from` and/or `date_to` (ISO 8601 date) to customise the range. Scoped to the customer_ids in the JWT; superusers see all.", "tags": ["Dashboard"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/transport/messages/": {"get": {"operationId": "transport_api_messages_list_transport_messages", "summary": "List transport messages", "parameters": [{"in": "query", "name": "envelope_id", "schema": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Envelope Id"}, "required": false}, {"in": "query", "name": "direction", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Direction"}, "required": false}, {"in": "query", "name": "status", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Status"}, "required": false}, {"in": "query", "name": "message_type", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Message Type"}, "required": false}, {"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}, {"in": "query", "name": "import_failed", "schema": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Import Failed"}, "required": false}, {"in": "query", "name": "search", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Search"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedTransportMessageListItem"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Paginated list of EDI transport messages with filtering.\n\n**Filters**\n- `envelope_id` \u2014 restrict to messages linked to a specific envelope\n- `direction` \u2014 0=INBOUND, 1=OUTBOUND, 2=PASSTHROUGH\n- `status` \u2014 pending | processing | processed | failed | confirmed\n- `message_type` \u2014 order | ordrsp | invoice | customs | cuscar | cusres | retann | desadv | unknown\n- `date_from` / `date_to` \u2014 ISO 8601 date range on `created_at`\n- `import_failed` \u2014 filter to failed imports only\n- `search` \u2014 matches routing_code, remote_message_id, nad_su_gln, nad_by_gln\n\n**Access**\n- Customer: messages from their owned mailboxes or SFTP servers\n- Partner: messages from all their customers' mailboxes/SFTP servers\n- Superuser: all messages\n\nRequires the ``transport:read`` scope.", "tags": ["Transport Messages"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/transport/messages/{message_id}": {"get": {"operationId": "transport_api_messages_get_transport_message", "summary": "Get transport message detail", "parameters": [{"in": "path", "name": "message_id", "schema": {"format": "uuid", "title": "Message Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/TransportMessageDetail"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns full detail for a single EDI transport message, including header and EDI content.\n\nRequires the ``transport:read`` scope.", "tags": ["Transport Messages"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/transport/messages/{message_id}/events": {"get": {"operationId": "transport_api_messages_get_transport_message_events", "summary": "Get transport message event log", "parameters": [{"in": "path", "name": "message_id", "schema": {"format": "uuid", "title": "Message Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/TransportMessageEventItem"}, "title": "Response", "type": "array"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns the ordered processing history for a transport message \u2014 each event represents a step taken (received, parsed, transmitted, error, etc.).\n\nRequires the ``transport:read`` scope.", "tags": ["Transport Messages"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/transport/messages/by-envelope/{envelope_id}": {"get": {"operationId": "transport_api_messages_get_messages_by_envelope", "summary": "Get transport messages linked to an envelope", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"items": {"$ref": "#/components/schemas/TransportMessageListItem"}, "title": "Response", "type": "array"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns all EDI transport messages (X.400 or SFTP) linked to a specific envelope \u2014 inbound messages that created it, or outbound messages sent from it.\n\nAccepts either the ``transport:read`` or ``envelopes:read`` scope:\n- ``transport:read`` \u2014 access controlled by mailbox/SFTP ownership\n- ``envelopes:read`` \u2014 access controlled by envelope sender/receiver customer match\n\nReturns 404 if the envelope does not exist or is not accessible.", "tags": ["Transport Messages"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/orders/": {"get": {"operationId": "eorder_api_orders_list_orders", "summary": "List orders", "parameters": [{"in": "query", "name": "direction", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Direction"}, "required": false}, {"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}, {"in": "query", "name": "search", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Search"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedOrderListItem"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Paginated list of orders. Only orders with an associated envelope are returned.\n\n**Filters**\n- `direction` \u2014 `0`=Inbound, `1`=Outbound; omit for all\n- `date_from` / `date_to` \u2014 ISO 8601 date range on `issue_date`\n- `search` \u2014 matches order number, buyer name, seller name\n\nRequires the `orders:read` scope.", "tags": ["Orders"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/orders/{envelope_id}": {"get": {"operationId": "eorder_api_orders_get_order_detail", "summary": "Get order detail", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/OrderDetail"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns full order metadata including line items, related DESADVs, related invoices, and per-line fulfillment status.\n\nRequires the `orders:read` scope.", "tags": ["Orders"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/despatch-advice/": {"get": {"operationId": "eorder_api_desadv_jwt_list_despatch_advices", "summary": "List despatch advices", "parameters": [{"in": "query", "name": "direction", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Direction"}, "required": false}, {"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}, {"in": "query", "name": "search", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Search"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedDespatchAdviceListItem"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Paginated list of despatch advices. Only records with an associated envelope are returned.\n\n**Filters**\n- `direction` \u2014 `0`=Inbound, `1`=Outbound; omit for all\n- `date_from` / `date_to` \u2014 ISO 8601 date range on `issue_date`\n- `search` \u2014 matches despatch advice number, supplier name, delivery name\n\nRequires the `orders:read` scope.", "tags": ["Despatch Advice"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/despatch-advice/{envelope_id}": {"get": {"operationId": "eorder_api_desadv_jwt_get_despatch_advice_detail", "summary": "Get despatch advice detail", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/DespatchAdviceDetail"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns full despatch advice metadata including all line items.\n\nRequires the `orders:read` scope.", "tags": ["Despatch Advice"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/return-orders/": {"get": {"operationId": "eorder_api_return_orders_list_return_orders", "summary": "List return orders", "parameters": [{"in": "query", "name": "direction", "schema": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Direction"}, "required": false}, {"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}, {"in": "query", "name": "search", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Search"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedReturnAnnouncementListItem"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Paginated list of return announcements (RETANN). Only records with an associated envelope are returned.\n\n**Filters**\n- `direction` \u2014 `0`=Inbound, `1`=Outbound; omit for all\n- `date_from` / `date_to` \u2014 ISO 8601 date range on `issue_date`\n- `search` \u2014 matches document number, buyer name, seller name\n\nRequires the `orders:read` scope.", "tags": ["Return Orders"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/return-orders/{envelope_id}": {"get": {"operationId": "eorder_api_return_orders_get_return_order_detail", "summary": "Get return order detail", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ReturnAnnouncementDetail"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns full return announcement metadata including all line items.\n\nRequires the `orders:read` scope.", "tags": ["Return Orders"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/remittance-advice/": {"get": {"operationId": "remittance_api_remittance_list_remittance_advices", "summary": "List remittance advices", "parameters": [{"in": "query", "name": "date_from", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date From"}, "required": false}, {"in": "query", "name": "date_to", "schema": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date To"}, "required": false}, {"in": "query", "name": "search", "schema": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Search"}, "required": false}, {"in": "query", "name": "page", "schema": {"minimum": 1, "title": "Page", "type": "integer"}, "required": false}, {"in": "query", "name": "page_size", "schema": {"minimum": 1, "title": "Page Size", "type": "integer"}, "required": false}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PagedRemittanceListItem"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Paginated list of remittance advices. Only advices with an associated envelope are returned.\n\n**Filters**\n- `date_from` / `date_to` \u2014 ISO 8601 date range on `issue_date`\n- `search` \u2014 matches document number, payer name, payer company ID, seller name, or seller company ID\n\nRequires the `remittance:read` scope.", "tags": ["Remittance Advice"], "security": [{"UserJWTBearerAuthAsync": []}]}}, "/api/remittance-advice/{envelope_id}": {"get": {"operationId": "remittance_api_remittance_get_remittance_detail", "summary": "Get remittance advice detail", "parameters": [{"in": "path", "name": "envelope_id", "schema": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "required": true}], "responses": {"200": {"description": "OK", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/RemittanceDetail"}}}}, "403": {"description": "Forbidden", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}, "404": {"description": "Not Found", "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}}}}, "description": "Returns full remittance advice metadata including all lines.\n\nRequires the `remittance:read` scope.", "tags": ["Remittance Advice"], "security": [{"UserJWTBearerAuthAsync": []}]}}}, "components": {"schemas": {"Error": {"properties": {"message": {"title": "Message", "type": "string"}}, "required": ["message"], "title": "Error", "type": "object"}, "GenericResponse": {"properties": {"envelope_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Envelope Id"}, "uuid": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Uuid"}, "message": {"title": "Message", "type": "string"}, "status": {"title": "Status", "type": "string"}, "timestamp": {"format": "date-time", "title": "Timestamp", "type": "string"}}, "required": ["message", "status", "timestamp"], "title": "GenericResponse", "type": "object"}, "Standard": {"enum": ["PEPPOL", "BII", "NESUBL", "EHF"], "title": "Standard", "type": "string"}, "eDocumentInbound": {"properties": {"sender": {"title": "Sender", "type": "string"}, "receiver": {"title": "Receiver", "type": "string"}, "standard": {"$ref": "#/components/schemas/Standard"}, "transactionType": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": "Unknown", "title": "Transactiontype"}, "identifier": {"title": "Identifier", "type": "string"}, "xml": {"title": "Xml", "type": "string"}, "email": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Email"}}, "required": ["sender", "receiver", "standard", "identifier", "xml"], "title": "eDocumentInbound", "type": "object"}, "Input": {"properties": {"page": {"minimum": 1, "title": "Page", "type": "integer"}, "page_size": {"minimum": 1, "title": "Page Size", "type": "integer"}}, "title": "Input", "type": "object"}, "PagedeDocumentResponseItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/eDocumentResponseItem"}, "title": "Items", "type": "array"}, "count": {"title": "Count", "type": "integer"}}, "required": ["items", "count"], "title": "PagedeDocumentResponseItem", "type": "object"}, "eDocumentResponseItem": {"properties": {"uuid": {"title": "Uuid", "type": "string"}, "sender": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender"}, "receiver": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Receiver"}, "standard": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Standard"}, "transactionType": {"title": "Transactiontype", "type": "string"}, "documentType": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Documenttype"}, "subType": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Subtype"}}, "required": ["uuid", "transactionType"], "title": "eDocumentResponseItem", "type": "object"}, "FileResponse": {"properties": {"file": {"title": "File", "type": "string"}, "guid": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Guid"}, "documentType": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Documenttype"}, "subType": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Subtype"}, "isOcrGenerated": {"default": false, "title": "Isocrgenerated", "type": "boolean"}}, "required": ["file"], "title": "FileResponse", "type": "object"}, "StatusResponse": {"properties": {"status": {"title": "Status", "type": "integer"}, "message": {"title": "Message", "type": "string"}, "timestamp": {"format": "date-time", "title": "Timestamp", "type": "string"}}, "required": ["status", "message", "timestamp"], "title": "StatusResponse", "type": "object"}, "DocumentResponse": {"properties": {"envelope_id": {"anyOf": [{"type": "string"}, {"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Envelope Id"}, "document_id": {"anyOf": [{"type": "string"}, {"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Document Id"}, "status": {"title": "Status", "type": "string"}}, "required": ["status"], "title": "DocumentResponse", "type": "object"}, "ErrorResponse": {"properties": {"error": {"title": "Error", "type": "string"}, "errorCode": {"$ref": "#/components/schemas/ErrorResponseEnum"}}, "required": ["error", "errorCode"], "title": "ErrorResponse", "type": "object"}, "ErrorResponseEnum": {"enum": ["DOCUMENT_EMPTY", "DOCUMENT_NO_RECEIVERS", "DOCUMENT_INVALID_RECEIVER"], "title": "ErrorResponseEnum", "type": "string"}, "Document": {"properties": {"file": {"title": "File", "type": "string"}, "main": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": true, "title": "Main"}}, "required": ["file"], "title": "Document", "type": "object"}, "DocumentInbound": {"properties": {"documentNumber": {"title": "Documentnumber", "type": "string"}, "documentType": {"title": "Documenttype", "type": "string"}, "sender": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender"}, "receivers": {"items": {"$ref": "#/components/schemas/DocumentReceivers"}, "title": "Receivers", "type": "array"}, "subType": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Subtype"}, "document": {"$ref": "#/components/schemas/Document"}, "postingDate": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Postingdate"}, "properties": {"anyOf": [{"items": {"additionalProperties": true, "type": "object"}, "type": "array"}, {"type": "null"}], "title": "Properties"}}, "required": ["documentNumber", "documentType", "receivers", "document"], "title": "DocumentInbound", "type": "object"}, "DocumentReceivers": {"properties": {"number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Number"}, "gln": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Gln"}, "Email": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Email"}, "type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Type"}, "use_gln": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": false, "title": "Use Gln"}}, "title": "DocumentReceivers", "type": "object"}, "EnvelopeListItem": {"properties": {"envelope_id": {"description": "Envelope identifier", "format": "uuid", "title": "Envelope Id", "type": "string"}, "status": {"description": "Simplified public status code", "title": "Status", "type": "integer"}, "status_label": {"title": "Status Label", "type": "string"}, "direction": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "\"sent\" | \"received\" | \"internal\"", "title": "Direction"}, "source": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Origin label (PEPPOL, EDI, etc.)", "title": "Source"}, "end_service": {"title": "End Service", "type": "integer"}, "end_service_label": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "End Service Label"}, "peppol_document_type": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Peppol Document Type"}, "peppol_document_type_label": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Peppol Document Type Label"}, "sender_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender Name"}, "sender_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Sender identifier (GLN/VAT/PEPPOL ID)", "title": "Sender Number"}, "receiver_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Receiver Name"}, "receiver_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Receiver identifier (GLN/VAT/PEPPOL ID)", "title": "Receiver Number"}, "sender_document_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Sender's own document reference", "title": "Sender Document Number"}, "invoice_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Invoice Id"}, "invoice_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Invoice Number"}, "issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Issue Date"}, "due_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Due Date"}, "payable_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Payable Amount"}, "currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Currency Code"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "status", "status_label", "end_service", "created_at", "updated_at"], "title": "EnvelopeListItem", "type": "object"}, "PagedEnvelopeListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/EnvelopeListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedEnvelopeListItem", "type": "object"}, "EnvelopeDetail": {"properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "status": {"title": "Status", "type": "integer"}, "status_label": {"title": "Status Label", "type": "string"}, "direction": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Direction"}, "origin": {"title": "Origin", "type": "integer"}, "origin_label": {"title": "Origin Label", "type": "string"}, "end_service": {"title": "End Service", "type": "integer"}, "end_service_label": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "End Service Label"}, "peppol_document_type": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Peppol Document Type"}, "peppol_document_type_label": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Peppol Document Type Label"}, "sender": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender"}, "sender_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender Name"}, "receiver": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Receiver"}, "receiver_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Receiver Name"}, "sender_document_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender Document Number"}, "document_source_system_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Document Source System Number"}, "is_internal": {"title": "Is Internal", "type": "boolean"}, "is_passthrough": {"title": "Is Passthrough", "type": "boolean"}, "import_failed": {"title": "Import Failed", "type": "boolean"}, "party_association_failed": {"title": "Party Association Failed", "type": "boolean"}, "sent_to_peppol": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Sent To Peppol"}, "end_service_send_date": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "End Service Send Date"}, "source_system_date": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Source System Date"}, "has_transport_messages": {"description": "True when one or more EDI transport messages are linked to this envelope", "title": "Has Transport Messages", "type": "boolean"}, "has_pipeline": {"description": "True when at least one pipeline execution exists for this envelope", "title": "Has Pipeline", "type": "boolean"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "status", "status_label", "origin", "origin_label", "end_service", "is_internal", "is_passthrough", "import_failed", "party_association_failed", "has_transport_messages", "has_pipeline", "created_at", "updated_at"], "title": "EnvelopeDetail", "type": "object"}, "EnvelopeEventItem": {"properties": {"id": {"title": "Id", "type": "integer"}, "event": {"title": "Event", "type": "integer"}, "event_label": {"title": "Event Label", "type": "string"}, "json_message": {"anyOf": [{}, {"type": "null"}], "title": "Json Message"}, "retry_event": {"title": "Retry Event", "type": "boolean"}, "username": {"title": "Username", "type": "string"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}}, "required": ["id", "event", "event_label", "retry_event", "username", "created_at"], "title": "EnvelopeEventItem", "type": "object"}, "PipelineExecutionDetail": {"properties": {"execution_id": {"format": "uuid", "title": "Execution Id", "type": "string"}, "status": {"title": "Status", "type": "string"}, "pipeline_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Pipeline Id"}, "pipeline_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Pipeline Name"}, "started_at": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Started At"}, "completed_at": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Completed At"}, "duration_ms": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Duration Ms"}, "completed_stages": {"items": {"type": "string"}, "title": "Completed Stages", "type": "array"}, "active_stages": {"items": {"type": "string"}, "title": "Active Stages", "type": "array"}, "pending_stages": {"items": {"type": "string"}, "title": "Pending Stages", "type": "array"}, "error_message": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Error Message"}, "stages": {"items": {"$ref": "#/components/schemas/StageExecutionItem"}, "title": "Stages", "type": "array"}}, "required": ["execution_id", "status", "completed_stages", "active_stages", "pending_stages", "stages"], "title": "PipelineExecutionDetail", "type": "object"}, "StageExecutionItem": {"properties": {"stage_execution_id": {"format": "uuid", "title": "Stage Execution Id", "type": "string"}, "stage_name": {"title": "Stage Name", "type": "string"}, "status": {"title": "Status", "type": "string"}, "attempt_number": {"title": "Attempt Number", "type": "integer"}, "started_at": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Started At"}, "completed_at": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Completed At"}, "duration_ms": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Duration Ms"}, "error_message": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Error Message"}}, "required": ["stage_execution_id", "stage_name", "status", "attempt_number"], "title": "StageExecutionItem", "type": "object"}, "EnvelopeDocumentItem": {"properties": {"document_id": {"format": "uuid", "title": "Document Id", "type": "string"}, "document_type": {"title": "Document Type", "type": "integer"}, "document_type_label": {"title": "Document Type Label", "type": "string"}, "is_edoc": {"title": "Is Edoc", "type": "boolean"}, "is_latest": {"title": "Is Latest", "type": "boolean"}, "is_valid": {"title": "Is Valid", "type": "boolean"}, "is_pdf": {"title": "Is Pdf", "type": "boolean"}, "is_deleted": {"title": "Is Deleted", "type": "boolean"}, "is_original_document": {"title": "Is Original Document", "type": "boolean"}, "file_format": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "File Format"}, "file_format_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "File Format Type"}, "file_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "File Name"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}}, "required": ["document_id", "document_type", "document_type_label", "is_edoc", "is_latest", "is_valid", "is_pdf", "is_deleted", "is_original_document", "created_at"], "title": "EnvelopeDocumentItem", "type": "object"}, "DespatchAdviceRef": {"properties": {"despatch_advice_id": {"format": "uuid", "title": "Despatch Advice Id", "type": "string"}, "despatch_advice_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Advice Number"}, "issue_date": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Issue Date"}}, "required": ["despatch_advice_id"], "title": "DespatchAdviceRef", "type": "object"}, "InvoiceRef": {"properties": {"invoice_id": {"format": "uuid", "title": "Invoice Id", "type": "string"}, "invoice_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Invoice Number"}, "type_label": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Type Label"}, "issue_date": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Issue Date"}, "due_date": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Due Date"}, "payable_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Payable Amount"}, "currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Currency Code"}}, "required": ["invoice_id"], "title": "InvoiceRef", "type": "object"}, "OrderRef": {"properties": {"order_id": {"format": "uuid", "title": "Order Id", "type": "string"}, "order_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Order Number"}, "issue_date": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Issue Date"}, "direction": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Direction"}, "document_currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Document Currency Code"}}, "required": ["order_id"], "title": "OrderRef", "type": "object"}, "RelatedDocuments": {"properties": {"invoice": {"anyOf": [{"$ref": "#/components/schemas/InvoiceRef"}, {"type": "null"}]}, "order": {"anyOf": [{"$ref": "#/components/schemas/OrderRef"}, {"type": "null"}]}, "despatch_advice": {"anyOf": [{"$ref": "#/components/schemas/DespatchAdviceRef"}, {"type": "null"}]}}, "title": "RelatedDocuments", "type": "object"}, "ReimportResult": {"properties": {"success": {"title": "Success", "type": "boolean"}, "message_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Message Id"}, "message_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Message Type"}, "error": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Error"}}, "required": ["success"], "title": "ReimportResult", "type": "object"}, "responseItem": {"properties": {"envelope_id": {"description": "The unique identifier for the envelope", "examples": ["40cefada-67bd-47be-8432-19e1c682ce03"], "format": "uuid", "title": "Envelope Id", "type": "string"}, "order_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "The unique identifier for the order", "examples": ["8a7b6c5d-4e3f-2a1b-0c9d-8e7f6a5b4c3d"], "title": "Order Id"}, "order_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The order number/reference", "examples": ["ORD-2024-001"], "title": "Order Number"}, "chain_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "The unique identifier for the chain, the chain can be used to group multiple events in the chain together", "examples": ["f394d7fb-a9db-4e62-a86d-bf26e27fc668"], "title": "Chain Id"}, "friendly_message": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "A friendly message that can be shown to the user", "examples": ["Order has been sent successfully"], "title": "Friendly Message"}, "validation_message": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The validation message that was returned from the validation service", "examples": ["The order is valid"], "title": "Validation Message"}, "passes_validation": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "description": "If the order passes validation", "examples": [true], "title": "Passes Validation"}, "status": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The status of the order", "examples": ["new"], "title": "Status"}, "created_at": {"description": "The date and time the order was created", "examples": ["2023-05-12T14:45:00Z"], "format": "date-time", "title": "Created At", "type": "string"}}, "required": ["envelope_id", "friendly_message", "validation_message", "passes_validation", "status", "created_at"], "title": "responseItem", "type": "object"}, "DuplicateExceptionError": {"properties": {"code": {"description": "Error code for the exception", "examples": ["duplicate_invoice"], "title": "Code", "type": "string"}, "message": {"description": "A human-readable message describing the error", "examples": ["Duplicate invoice detected."], "title": "Message", "type": "string"}, "details": {"anyOf": [{"additionalProperties": true, "type": "object"}, {"type": "null"}], "description": "Additional details about the error, if any", "title": "Details"}, "invoice_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The invoice number that caused the duplicate error", "examples": ["INV-12345"], "title": "Invoice Number"}, "envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "The unique identifier for the envelope that caused the duplicate error", "examples": ["40cefada-67bd-47be-8432-19e1c682ce03"], "title": "Envelope Id"}}, "required": ["code", "message"], "title": "DuplicateExceptionError", "type": "object"}, "AdditionalItemProperty": {"properties": {"name": {"pattern": ".*\\S.*", "title": "Name", "type": "string"}, "value": {"pattern": ".*\\S.*", "title": "Value", "type": "string"}}, "required": ["name", "value"], "title": "AdditionalItemProperty", "type": "object"}, "Address": {"properties": {"addressLine1": {"description": "First line of the address", "title": "Addressline1", "type": "string"}, "addressLine2": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Second line of the address", "title": "Addressline2"}, "addressLine3": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Third line of the address", "title": "Addressline3"}, "city": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "City of the address", "title": "City"}, "postalZone": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Postal zone of the address", "title": "Postalzone"}, "countryCode": {"description": "Country code of the address", "examples": ["IS", "DK"], "pattern": "^\\w{2}$", "title": "Countrycode", "type": "string"}}, "required": ["addressLine1", "countryCode"], "title": "Address", "type": "object"}, "AllowanceChargeReasonEnum": {"enum": [41, 42, 60, 62, 63, 64, 65, 66, 67, 68, 70, 71, 88, 95, 100, 102, 103, 104, 105], "title": "AllowanceChargeReasonEnum", "type": "integer"}, "AllowedMimeTypeEnum": {"description": "Allowed MIME types for invoice attachments.", "enum": ["text/csv", "application/pdf", "image/png", "image/jpeg", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "application/vnd.oasis.opendocument.spreadsheet"], "title": "AllowedMimeTypeEnum", "type": "string"}, "BaseUnitInfo": {"description": "Present when the line contains pack quantities translatable to individual base units.", "properties": {"pack_size": {"description": "Number of base units per pack", "title": "Pack Size", "type": "number"}, "base_unit_quantity": {"description": "Quantity in base units (original quantity \u00d7 pack size)", "title": "Base Unit Quantity", "type": "number"}, "base_unit_price": {"description": "Price per base unit", "title": "Base Unit Price", "type": "number"}, "base_unit_code": {"const": "C62", "default": "C62", "description": "Unit code for base units \u2014 always C62 (each/piece)", "title": "Base Unit Code", "type": "string"}}, "required": ["pack_size", "base_unit_quantity", "base_unit_price"], "title": "BaseUnitInfo", "type": "object"}, "BillingReference": {"description": "Schema for billing reference information related to an invoice.", "properties": {"preceding_invoice_number": {"description": "The identifier of the preceding invoice. This is required for credit notes and other documents that reference a previous invoice.", "examples": ["INV-2025-001", "F12345"], "pattern": ".*\\S.*", "title": "Preceding Invoice Number", "type": "string"}, "preceding_invoice_issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "description": "The issue date of the preceding invoice. Optional but recommended for better document tracking.", "examples": ["2025-01-15"], "title": "Preceding Invoice Issue Date"}}, "required": ["preceding_invoice_number"], "title": "BillingReference", "type": "object"}, "CardAccount": {"description": "A group of business terms providing information about card used for payment contemporaneous with invoice issuance.", "properties": {"primaryAccountNumber": {"description": "The Primary Account Number (PAN) of the card used for payment.In accordance with card payments security standards, an invoice should never include a full card primary account number.", "examples": ["1234", "123456"], "pattern": ".*\\S.*", "title": "Primaryaccountnumber", "type": "string"}, "networkId": {"description": "The network identifier of the card used for payment.", "examples": ["VISA", "MASTERCARD"], "pattern": ".*\\S.*", "title": "Networkid", "type": "string"}, "holderName": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The name of the card holder.", "examples": ["John Doe", "Jane Doe"], "title": "Holdername"}}, "required": ["primaryAccountNumber", "networkId", "holderName"], "title": "CardAccount", "type": "object"}, "CommodityClassification": {"properties": {"type": {"$ref": "#/components/schemas/CommodityClassificationEnum", "description": "Commodity classification type, this is required if you are providing commodity classification code", "maxLength": 3}, "code": {"description": "A code for classifying the item by its type or nature.", "pattern": ".*\\S.*", "title": "Code", "type": "string"}}, "required": ["type", "code"], "title": "CommodityClassification", "type": "object"}, "CommodityClassificationEnum": {"enum": ["AA", "AB", "AC", "AD", "AE", "AF", "AG", "AH", "AI", "AJ", "AK", "AL", "AM", "AN", "AO", "AP", "AQ", "AR", "AS", "AT", "AU", "AV", "AW", "AX", "AY", "AZ", "BA", "BB", "BC", "BD", "BE", "BF", "BG", "BH", "BI", "BJ", "BK", "BL", "BM", "BN", "BO", "BP", "BQ", "BR", "BS", "BT", "BU", "BV", "BW", "BX", "BY", "BZ", "CC", "CG", "CL", "CR", "CV", "DR", "DW", "EC", "EF", "EMD", "EN", "FS", "GB", "GMN", "GN", "GS", "HS", "IB", "IN", "IS", "IT", "IZ", "MA", "MF", "MN", "MP", "NB", "ON", "PD", "PL", "PO", "PV", "QS", "RC", "RN", "RU", "RY", "SA", "SG", "SK", "SN", "SRS", "SRT", "SRU", "SRV", "SRW", "SRX", "SRY", "SRZ", "SS", "SSA", "SSB", "SSC", "SSD", "SSE", "SSF", "SSG", "SSH", "SSI", "SSJ", "SSK", "SSL", "SSM", "SSN", "SSO", "SSP", "SSQ", "SSR", "SSS", "SST", "SSU", "SSV", "SSW", "SSX", "SSY", "SSZ", "ST", "STA", "STB", "STC", "STD", "STE", "STF", "STG", "STH", "STI", "STJ", "STK", "STL", "STM", "STN", "STO", "STP", "STQ", "STR", "STS", "STT", "STU", "STV", "STW", "STX", "STY", "STZ", "SUA", "SUB", "SUC", "SUD", "SUE", "SUF", "SUG", "SUH", "SUI", "SUJ", "SUK", "SUL", "SUM", "TG", "TSN", "TSO", "TSP", "TSQ", "TSR", "TSS", "TST", "TSU", "UA", "UP", "VN", "VP", "VS", "VX", "ZZZ"], "title": "CommodityClassificationEnum", "type": "string"}, "Contact": {"properties": {"name": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Name of the contact", "title": "Name"}, "phone_number": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Phone number of the contact", "title": "Phone Number"}, "email": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Email of the contact", "title": "Email"}}, "title": "Contact", "type": "object"}, "CurrencyEnum": {"enum": ["AED", "AFN", "ALL", "AMD", "ANG", "AOA", "ARS", "AUD", "AWG", "AZN", "BAM", "BBD", "BDT", "BGN", "BHD", "BIF", "BMD", "BND", "BOB", "BOV", "BRL", "BSD", "BTN", "BWP", "BYN", "BZD", "CAD", "CDF", "CHE", "CHF", "CHW", "CLF", "CLP", "CNY", "COP", "COU", "CRC", "CUC", "CUP", "CVE", "CZK", "DJF", "DKK", "DOP", "DZD", "EGP", "ERN", "ETB", "EUR", "FJD", "FKP", "GBP", "GEL", "GHS", "GIP", "GMD", "GNF", "GTQ", "GYD", "HKD", "HNL", "HRK", "HTG", "HUF", "IDR", "ILS", "INR", "IQD", "IRR", "ISK", "JMD", "JOD", "JPY", "KES", "KGS", "KHR", "KMF", "KPW", "KRW", "KWD", "KYD", "KZT", "LAK", "LBP", "LKR", "LRD", "LSL", "LYD", "MAD", "MDL", "MGA", "MKD", "MMK", "MNT", "MOP", "MRU", "MUR", "MVR", "MWK", "MXN", "MXV", "MYR", "MZN", "NAD", "NGN", "NIO", "NOK", "NPR", "NZD", "OMR", "PAB", "PEN", "PGK", "PHP", "PKR", "PLN", "PYG", "QAR", "RON", "RSD", "RUB", "RWF", "SAR", "SBD", "SCR", "SDG", "SEK", "SGD", "SHP", "SLE", "SOS", "SRD", "SSP", "STN", "SVC", "SYP", "SZL", "THB", "TJS", "TMT", "TND", "TOP", "TRY", "TTD", "TWD", "TZS", "UAH", "UGX", "USD", "USN", "UYI", "UYU", "UZS", "VEF", "VND", "VUV", "WST", "XAF", "XAG", "XAU", "XBA", "XBB", "XBC", "XBD", "XCD", "XDR", "XOF", "XPD", "XPF", "XPT", "XSU", "XTS", "XUA", "YER", "ZAR", "ZMW", "ZWL"], "title": "CurrencyEnum", "type": "string"}, "Delivery": {"properties": {"actualDeliveryDate": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Actualdeliverydate"}, "deliverylocation": {"anyOf": [{"$ref": "#/components/schemas/DeliveryLocation"}, {"type": "null"}]}}, "title": "Delivery", "type": "object"}, "DeliveryLocation": {"properties": {"name": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Name of the delivery location, this is often used to describe the name of the delivery location", "title": "Name"}, "locationIdentifier": {"anyOf": [{"$ref": "#/components/schemas/PartyIdentifier"}, {"type": "null"}], "description": "Location identifier, if you know the location identifer, you can specify it here. This is often used as internal identifier", "examples": [{"id": "123456789", "scheme": "9908"}]}, "address": {"anyOf": [{"$ref": "#/components/schemas/Address"}, {"type": "null"}], "description": "Address of the delivery location, this is often used to describe the address of the delivery location"}}, "title": "DeliveryLocation", "type": "object"}, "ElectronicAddressSchemeEnum": {"enum": ["0002", "0007", "0009", "0037", "0060", "0088", "0096", "0097", "0106", "0130", "0135", "0142", "0151", "0177", "0183", "0184", "0188", "0190", "0191", "0192", "0193", "0195", "0196", "0198", "0199", "0200", "0201", "0202", "0204", "0208", "0209", "0210", "0211", "0212", "0213", "0215", "0216", "0218", "0221", "0230", "0235", "9901", "9910", "9913", "9914", "9915", "9918", "9919", "9920", "9922", "9923", "9924", "9925", "9926", "9927", "9928", "9929", "9930", "9931", "9932", "9933", "9934", "9935", "9936", "9937", "9938", "9939", "9940", "9941", "9942", "9943", "9944", "9945", "9946", "9947", "9948", "9949", "9950", "9951", "9952", "9953", "9957", "9959"], "title": "ElectronicAddressSchemeEnum", "type": "string"}, "ISO6523Enum": {"description": "International Code Designator ISO 6523", "enum": ["0002", "0003", "0004", "0005", "0006", "0007", "0008", "0009", "0010", "0011", "0012", "0013", "0014", "0015", "0016", "0017", "0018", "0019", "0020", "0021", "0022", "0023", "0024", "0025", "0026", "0027", "0028", "0029", "0030", "0031", "0032", "0033", "0034", "0035", "0036", "0037", "0038", "0039", "0040", "0041", "0042", "0043", "0044", "0045", "0046", "0047", "0048", "0049", "0050", "0051", "0052", "0053", "0054", "0055", "0056", "0057", "0058", "0059", "0060", "0061", "0062", "0063", "0064", "0065", "0066", "0067", "0068", "0069", "0070", "0071", "0072", "0073", "0074", "0075", "0076", "0077", "0078", "0079", "0080", "0081", "0082", "0083", "0084", "0085", "0086", "0087", "0088", "0089", "0090", "0091", "0093", "0094", "0095", "0096", "0097", "0098", "0099", "0100", "0101", "0102", "0104", "0105", "0106", "0107", "0108", "0109", "0110", "0111", "0112", "0113", "0114", "0115", "0116", "0117", "0118", "0119", "0120", "0121", "0122", "0123", "0124", "0125", "0126", "0127", "0128", "0129", "0130", "0131", "0132", "0133", "0134", "0135", "0136", "0137", "0138", "0139", "0140", "0141", "0142", "0143", "0144", "0145", "0146", "0147", "0148", "0149", "0150", "0151", "0152", "0153", "0154", "0155", "0156", "0157", "0158", "0159", "0160", "0161", "0162", "0163", "0164", "0165", "0166", "0167", "0168", "0169", "0170", "0171", "0172", "0173", "0174", "0175", "0176", "0177", "0178", "0179", "0180", "0183", "0184", "0185", "0186", "0187", "0188", "0189", "0190", "0191", "0192", "0193", "0194", "0195", "0196", "0197", "0198", "0199", "0200", "0201", "0202", "0203", "0204", "0205", "0206", "0207", "0208", "0209", "0210", "0211", "0212", "0213", "0214", "0215", "0216", "0217", "0218", "0219", "0220", "0221", "0222", "0223", "0224", "0225", "0226", "0227", "0228", "0229", "0230"], "title": "ISO6523Enum", "type": "string"}, "IcelandicClaim": {"properties": {"bankNumber": {"description": "The bank number of the Icelandic claim. If shorter then 4 digits, it will be pre-padded with zeros", "examples": ["0308", "308"], "pattern": ".*\\S.*", "title": "Banknumber", "type": "string"}, "claimNumber": {"description": "The claim number of the Icelandic claim. If shorter then 6 digits, it will be pre-padded with zeros", "examples": ["123456", "123"], "pattern": ".*\\S.*", "title": "Claimnumber", "type": "string"}}, "required": ["bankNumber", "claimNumber"], "title": "IcelandicClaim", "type": "object"}, "Invoice": {"properties": {"type": {"anyOf": [{"$ref": "#/components/schemas/InvoiceTypeCode"}, {"type": "null"}], "default": 380, "description": "Type of the invoice, 380 is a commercial invoice and 381 is a credit note.", "examples": [380, 381]}, "invoiceNo": {"description": "Invoice number, this is often used to describe the invoice number.", "examples": ["123456", "123"], "pattern": ".*\\S.*", "title": "Invoiceno", "type": "string"}, "issueDate": {"description": "Issue date of the invoice, this is often used to describe the date the invoice was issued", "format": "date", "title": "Issuedate", "type": "string"}, "dueDate": {"description": "Due date of the invoice, this is often used to describe the date the invoice is due", "format": "date", "title": "Duedate", "type": "string"}, "finalDueDate": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "description": "Final due date of the invoice. This is mostly used in Iceland. If not given, the receiver is Icelandic and paymentMeans code is set to 9, this value will be set to the due date", "title": "Finalduedate"}, "currencyCode": {"allOf": [{"$ref": "#/components/schemas/CurrencyEnum"}], "default": "EUR", "description": "Currency code of the invoice, this is often used to describe the currency of the invoice. Will be defaulted to EUR", "examples": ["ISK", "EUR"]}, "invoicePeriod": {"anyOf": [{"$ref": "#/components/schemas/InvoicePeriod"}, {"type": "null"}], "description": "Invoice period for the invoice, this is often used to describe the period the invoice is related to. The value must be in the range of the InvoicePeriod"}, "paymentMeans": {"anyOf": [{"$ref": "#/components/schemas/PaymentMeans"}, {"type": "null"}], "default": {"type": "ZZZ"}, "description": "Payment means for the invoice, this is often used to describe the payment method"}, "accountingCost": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Accounting cost of the invoice, this is often set to account number in the senders system, since it can help the receiver making posting rules", "examples": ["123456", "123"], "title": "Accountingcost"}, "orderReference": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "An identifier of a referenced order, issued by the Buyer ( normally the PO number ). If neither orderReference nor salesOrder is given this element will be set to NA", "examples": ["123456", "123"], "title": "Orderreference"}, "salesOrder": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "An identifier of a referenced sales order, issued by the Seller.", "examples": ["123456", "123"], "title": "Salesorder"}, "supplier": {"$ref": "#/components/schemas/Party", "description": "The supplier of the invoice. Normally the sender of the document"}, "customer": {"$ref": "#/components/schemas/Party", "description": "The customer of the invoice."}, "payee": {"anyOf": [{"$ref": "#/components/schemas/Party"}, {"type": "null"}], "description": "Payee of the Invoice. This optional, and should only given"}, "paymentTerms": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Payment Terms, this is a text describing the payment terms", "title": "Paymentterms"}, "delivery": {"anyOf": [{"$ref": "#/components/schemas/Delivery"}, {"type": "null"}], "description": "Delivery information, this is often used to describe the delivery information"}, "prepaidAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Prepaid amount in the currency of the invoice. If given this will decrease the amount given in the payable amount", "title": "Prepaidamount"}, "lineExtensionAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Line extension amount in the currency of the invoice. You don't need to provide this value, but it's returned in the response", "title": "Lineextensionamount"}, "payableAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Payable amount in the currency of the invoice. This is used a check against the invoice line and prepaid amount", "title": "Payableamount"}, "taxTotal": {"anyOf": [{"$ref": "#/components/schemas/TaxTotal"}, {"type": "null"}], "description": "Tax summary with per-rate breakdown. Returned in GET responses; not required when creating an invoice."}, "buyerReference": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "An identifier assigned by the Buyer used for internal routing purposes. An invoice must have buyer reference or purchase order reference (BT-13).", "title": "Buyerreference"}, "projectReference": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "BT-11: The identification of the project the invoice refers to.", "title": "Projectreference"}, "originatorDocumentReference": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "A reference to an originator document, such as a tender or lot reference.", "title": "Originatordocumentreference"}, "invoiceLines": {"description": "Invoice lines for the invoice, this is often used to describe the items on the invoice", "items": {"$ref": "#/components/schemas/InvoiceLine"}, "minItems": 1, "title": "Invoicelines", "type": "array"}, "billing_references": {"anyOf": [{"items": {"$ref": "#/components/schemas/BillingReference"}, "type": "array"}, {"type": "null"}], "description": "References to preceding invoices, especially important for credit notes. Each reference must include at least a preceding invoice number.", "examples": [[{"preceding_invoice_issue_date": "2025-01-15", "preceding_invoice_number": "INV-2025-001"}]], "title": "Billing References"}, "useLineRounding": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": false, "description": "Controls how rounding is applied.", "examples": [true, false], "title": "Uselinerounding"}, "attachments": {"anyOf": [{"items": {"$ref": "#/components/schemas/InvoiceAttachment"}, "type": "array"}, {"type": "null"}], "description": "Attachments to be included with the invoice. Only specific file types are allowed: CSV, PDF, PNG, JPEG, XLSX, and ODS.", "title": "Attachments"}, "attachment_refs": {"anyOf": [{"items": {"$ref": "#/components/schemas/InvoiceAttachmentRef"}, "type": "array"}, {"type": "null"}], "description": "Attachment references (metadata only, no content). Populated when include_attachments=false. Fetch content via GET /eDelivery/envelope/{envelope_id}/attachments/{id}.", "title": "Attachment Refs"}, "comments": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Comments for the invoice, this is often used to describe additional information about the invoice", "title": "Comments"}}, "required": ["invoiceNo", "issueDate", "dueDate", "supplier", "customer", "invoiceLines"], "title": "Invoice", "type": "object"}, "InvoiceAttachment": {"description": "Schema for attachments that can be included with an invoice.", "properties": {"filename": {"description": "Name of the attachment file", "examples": ["invoice_details.pdf", "product_catalog.xlsx"], "pattern": ".*\\S.*", "title": "Filename", "type": "string"}, "content": {"description": "Base64 encoded content of the file", "examples": ["aWQsIG5hbWUKYXNkZmFzLCBsb2tp"], "pattern": ".*\\S.*", "title": "Content", "type": "string"}, "mime_type": {"$ref": "#/components/schemas/AllowedMimeTypeEnum", "description": "MIME type of the attachment. Must be one of the allowed types.", "examples": ["application/pdf", "image/png"]}, "size": {"anyOf": [{"type": "integer"}, {"type": "null"}], "description": "Size of the file in bytes", "examples": [125420, 983641], "title": "Size"}}, "required": ["filename", "content", "mime_type"], "title": "InvoiceAttachment", "type": "object"}, "InvoiceAttachmentRef": {"description": "Lightweight reference to an attachment \u2014 no content, just metadata and ID.\n\nUse the dedicated attachment endpoint to fetch the file content:\n  GET /eDelivery/envelope/{envelope_id}/attachments/{attachment_id}", "properties": {"id": {"description": "Attachment primary key", "title": "Id", "type": "integer"}, "filename": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Name of the attachment file", "title": "Filename"}, "mime_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "MIME type of the attachment", "title": "Mime Type"}, "size": {"anyOf": [{"type": "integer"}, {"type": "null"}], "description": "Size of the file in bytes", "title": "Size"}}, "required": ["id"], "title": "InvoiceAttachmentRef", "type": "object"}, "InvoiceEnvelope": {"properties": {"source": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Document origin (e.g. PEPPOL, Smart Capture, EDI, Email). Populated in GET responses only.", "title": "Source"}, "receiver": {"anyOf": [{"$ref": "#/components/schemas/PartyIdentifier"}, {"type": "null"}], "description": "The receiver of the invoice. If not given this value will be set to the customer identifier, resolved", "examples": [{"id": "123456789", "scheme": "0088"}, {"id": "123456789", "scheme": "0196"}]}, "emailAddress": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The email address of the receiver, this is used to send an e-mail to the receiver if we do not have it on file", "examples": ["example@example.com"], "title": "Emailaddress"}, "create_message": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": true, "description": "If the message should be created, defaults to True, else it's going to only create the Invoice but not try to send it. This is good while doing development", "title": "Create Message"}, "invoice": {"$ref": "#/components/schemas/Invoice", "description": "The invoice that is going to be sent", "examples": [{"accountingCost": "123456", "attachments": [{"content": "aWQsIG5hbWUKYXNkZmFzLCBsb2tp", "filename": "addod.csv", "mime_type": "text/csv", "size": 125420}], "currencyCode": "ISK", "customer": {"address": {"addressLine1": "Ofanleiti 2", "city": "Reykjavik", "countryCode": "IS", "postalZone": "102"}, "name": "Centara ehf", "nationalId": "4106230640"}, "delivery": {"actualDeliveryDate": "2025-02-20", "deliverylocation": {"address": {"addressLine1": "asdf123", "addressLine2": "sadfasfd", "city": "Cracow", "countryCode": "PL", "postalZone": "30611"}, "locationIdentifier": {"id": "123213", "scheme": "0088"}, "name": "warehouse123"}}, "dueDate": "2025-02-18", "finalDueDate": "2025-03-18", "invoiceLines": [{"additionalItemProperties": [{"name": "COLOR", "value": "BLUE"}], "itemNo": "C123455", "name": "My Item", "quantity": 1, "taxCategoryType": "E", "taxPercentage": 0, "unitCode": "C62", "unitPriceAmount": 250}], "invoiceNo": "SBR-123", "issueDate": "2025-02-18", "paymentTerms": "As agreed", "supplier": {"address": {"addressLine1": "Ofanleiti 2", "city": "Reykjavik", "countryCode": "IS", "postalZone": "102"}, "name": "Wise lausnir ehf", "nationalId": "6304070870"}, "type": 380}, {"accountingCost": "123456", "billing_references": [{"preceding_invoice_issue_date": "2025-01-15", "preceding_invoice_number": "INV-2025-001"}], "buyerReference": "string", "currencyCode": "ISK", "customer": {"address": {"addressLine1": "string", "addressLine2": "string", "city": "string", "countryCode": "IS", "postalZone": "string"}, "identifier": {"id": "123456789", "scheme": "0088"}, "name": "John Doe", "nationalId": "1234567890", "number": "123456", "vatIdentifier": "DK:123546"}, "delivery": {"actualDeliveryDate": "2025-02-19", "address": {"addressLine1": "string", "addressLine2": "string", "addressLine3": "string", "city": "string", "countryCode": "IS", "postalZone": "string"}, "locationIdentifier": "string", "partyName": "string"}, "dueDate": "2025-02-19", "finalDueDate": "2025-02-19", "invoiceLines": [{"additionalItemProperties": [{"name": "string", "value": "string"}], "buyersItemNo": "string", "commodityClassification": {"code": "string", "type": "AA"}, "description": "string", "discountPercent": 0, "discountReason": 95, "discountValue": 0, "invoicePeriod": {"endDate": "2025-02-19", "startDate": "2025-02-19"}, "itemNo": "123456", "name": "string", "orderLineReference": "string", "originCountryCode": "IS", "quantity": 0, "standardItemNo": {"no": "string", "scheme": "0160"}, "taxAmount": 0, "taxCategoryType": "E", "taxPercentage": 0, "unitCode": "C62", "unitDiscountPercent": 0, "unitDiscountValue": 0, "unitPriceAmount": 0}], "invoiceNo": "123456", "invoicePeriod": {"endDate": "2025-02-19", "startDate": "2025-02-19"}, "issueDate": "2025-02-19", "lineExtensionAmount": 0, "orderReference": "123456", "originatorDocumentReference": "string", "payableAmount": 0, "payee": {"address": {"addressLine1": "string", "addressLine2": "string", "addressLine3": "string", "city": "string", "countryCode": "IS", "postalZone": "string"}, "identifier": {"id": "123456789", "scheme": "0088"}, "name": "John Doe", "nationalId": "1234567890", "number": "123456", "vatIdentifier": "DK:123546"}, "paymentMeans": {"type": "ZZZ"}, "paymentTerms": "string", "prepaidAmount": 0, "projectReference": "string", "salesOrder": "123456", "supplier": {"address": {"addressLine1": "string", "addressLine2": "string", "addressLine3": "string", "city": "string", "countryCode": "IS", "postalZone": "string"}, "identifier": {"id": "123456789", "scheme": "0088"}, "name": "John Doe", "nationalId": "1234567890", "number": "123456", "vatIdentifier": "DK:123546"}, "type": 380}]}}, "required": ["invoice"], "title": "InvoiceEnvelope", "type": "object"}, "InvoiceLine": {"properties": {"itemNo": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Item number, this is often used to describe the item number", "examples": ["123456", "123"], "title": "Itemno"}, "name": {"description": "Name of the item, this is often used to describe the name of the item", "pattern": ".*\\S.*", "title": "Name", "type": "string"}, "description": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "A description for an item.The item description allows for describing the item and its features in more detail than the Item name.", "title": "Description"}, "quantity": {"description": "The quantity of items (goods or services) that is charged in the Invoice line, it's going to be rounded to 2 decimals", "title": "Quantity", "type": "number"}, "unitCode": {"anyOf": [{"maxLength": 3, "type": "string"}, {"type": "null"}], "default": "C62", "description": "Unit of measure code, if not provided, defaults to 'C62'", "title": "Unitcode"}, "unitPriceAmount": {"description": "Unit price amount in the currency of the invoice line, it's going to be rounded to 2 decimals", "title": "Unitpriceamount", "type": "number"}, "unitDiscountPercent": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Unit discount percentage applied to the unit price (Price element AllowanceCharge). This discount is applied before line quantity multiplication", "title": "Unitdiscountpercent"}, "unitDiscountValue": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Unit discount value applied to the unit price (Price element AllowanceCharge). This discount is applied before line quantity multiplication", "title": "Unitdiscountvalue"}, "discountPercent": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Discount percentage, if discount percentage is given, you can't give discount value", "title": "Discountpercent"}, "discountValue": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Discount value in the currency of the invoice line, if discount value is given, you can't give discount percentage. Discount amount is called allowance charge, and if it's negative it's going to be considered as a charge", "title": "Discountvalue"}, "discountReason": {"allOf": [{"$ref": "#/components/schemas/AllowanceChargeReasonEnum"}], "default": 95, "description": "Discount reason, if not provided, defaults to '95' ( Discount )"}, "orderLineReference": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Order line reference, this is often used to refer to the order line that this invoice line is related to", "title": "Orderlinereference"}, "taxCategoryType": {"allOf": [{"$ref": "#/components/schemas/TaxCategoryEnum", "maxLength": 3}], "default": "E", "description": "Tax category type, if not provided, defaults to 'E'. "}, "taxAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Tax amount in the currency of the invoice line, if given this will be used to validate that the tax amount is correct. If it does not match the invoice will fail. ", "title": "Taxamount"}, "taxPercentage": {"anyOf": [{"type": "number"}, {"type": "null"}], "default": 0, "description": "Tax Percentage in the currency of the invoice line. We will use this to calculate the VAT on the given line. Defaults to zero.", "title": "Taxpercentage"}, "invoicePeriod": {"anyOf": [{"$ref": "#/components/schemas/InvoicePeriod"}, {"type": "null"}], "description": "Invoice period for the invoice line, this is often used to describe the period the invoice line is related to. The value must be in the range of the Invoice InvoicePeriod"}, "buyersItemNo": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Buyers item number, this is often used to describe the item in a way that the buyer understands", "title": "Buyersitemno"}, "standardItemNo": {"anyOf": [{"$ref": "#/components/schemas/StandardItemNo"}, {"type": "null"}], "description": "Standard item number, this is often used to describe the item in a standardized way"}, "originCountryCode": {"anyOf": [{"pattern": "^\\w{2}$", "type": "string"}, {"type": "null"}], "description": "Country code of the origin of the item. Must comply with ISO 3166-1 alpha-2", "examples": ["IS", "DK"], "title": "Origincountrycode"}, "commodityClassification": {"anyOf": [{"$ref": "#/components/schemas/CommodityClassification"}, {"type": "null"}], "description": "Commodity classification code, standarized way of classifying goods"}, "additionalItemProperties": {"anyOf": [{"items": {"$ref": "#/components/schemas/AdditionalItemProperty"}, "type": "array"}, {"type": "null"}], "description": "Additional item properties, this is often used to describe additional information about the item, for example how to book it in the accounting system or license plate. In that case the key would be CARNO and the value would be the license plate", "title": "Additionalitemproperties"}, "base_unit_info": {"anyOf": [{"$ref": "#/components/schemas/BaseUnitInfo"}, {"type": "null"}], "description": "Base unit translation info. Present when the line contains pack quantities translatable to individual base units."}}, "required": ["name", "quantity", "unitPriceAmount"], "title": "InvoiceLine", "type": "object"}, "InvoicePeriod": {"properties": {"startDate": {"description": "If provided, this is the start date of the invoice period.", "format": "date", "title": "Startdate", "type": "string"}, "endDate": {"description": "If provided, this is the end date of the invoice period.", "format": "date", "title": "Enddate", "type": "string"}}, "required": ["startDate", "endDate"], "title": "InvoicePeriod", "type": "object"}, "InvoiceTypeCode": {"enum": [380, 381], "title": "InvoiceTypeCode", "type": "integer"}, "OnlinePaymentPortal": {"description": "A group of business terms providing information about an online payment portal.", "properties": {"uri": {"description": "The URI to the online payment portal where the customer can pay the invoice.", "examples": ["https://payment.example.com/invoice/INV-12345"], "pattern": ".*\\S.*", "title": "Uri", "type": "string"}, "description": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Description of the payment portal, shown to the customer.", "examples": ["Online Payment Portal", "Pay securely online"], "title": "Description"}}, "required": ["uri"], "title": "OnlinePaymentPortal", "type": "object"}, "Party": {"properties": {"identifier": {"anyOf": [{"$ref": "#/components/schemas/PartyIdentifier"}, {"type": "null"}], "description": "Party identifier", "examples": [{"id": "123456789", "scheme": "0088"}, {"id": "123456789", "scheme": "0196"}]}, "number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Party number/customer number", "examples": ["123456", "123"], "title": "Number"}, "name": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Party name", "examples": ["John Doe", "Jane Doe"], "title": "Name"}, "nationalId": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "National ID", "examples": ["1234567890", "123456-7890"], "title": "Nationalid"}, "vatIdentifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "VAT identifier", "examples": ["IS123456", "DK12345678"], "title": "Vatidentifier"}, "address": {"anyOf": [{"$ref": "#/components/schemas/Address"}, {"type": "null"}], "description": "Address of the party"}}, "title": "Party", "type": "object"}, "PartyIdentifier": {"properties": {"id": {"description": "Party identifier", "title": "Id", "type": "string"}, "scheme": {"allOf": [{"$ref": "#/components/schemas/ElectronicAddressSchemeEnum", "maxLength": 4}], "default": "0088", "description": "ISO 6523 code for the scheme of the party identifier, defaults to '0088'(GLN)"}}, "required": ["id"], "title": "PartyIdentifier", "type": "object"}, "PayeeFinancialAccount": {"description": "A group of business terms to specify credit transfer payments.", "properties": {"id": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "A unique identifier of the financial payment account, at a payment service provider, to which payment should be made. Such as IBAN or BBAN.", "examples": ["030866000001", "123123123"], "title": "Id"}, "name": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The name of the payment account, at a payment service provider, to which payment should be made.", "examples": ["Payment account", "Bank account"], "title": "Name"}, "financialInstitutionBranch": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The branch identifier of the financial institution where the payment account is located.", "examples": ["0308", "123"], "title": "Financialinstitutionbranch"}, "bankCode": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The bank code of the financial institution, such as '0308' for Landsbanki. Do not use together wiht id.", "examples": ["0308", "0310"], "title": "Bankcode"}, "accountTypeCode": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The type of the financial account, such as '26'. Do not use together wiht id.", "examples": ["26"], "title": "Accounttypecode"}, "accountNumberCode": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The account number of the financial account, such as '12345676543'. Do not use together wiht id.", "examples": ["123465", "123463"], "title": "Accountnumbercode"}}, "title": "PayeeFinancialAccount", "type": "object"}, "PaymentMandate": {"description": "A group of business terms to specify a direct debit mandate.", "properties": {"id": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "Unique identifier assigned by the Payee for referencing the direct debit mandate. Used in order to pre-notify the Buyer of a SEPA direct debit.", "examples": ["123456", "123"], "title": "Id"}, "payerFinancialAccount": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The financial account of the payer.", "examples": ["12345676543", "123123123"], "title": "Payerfinancialaccount"}}, "title": "PaymentMandate", "type": "object"}, "PaymentMeans": {"properties": {"type": {"anyOf": [{"$ref": "#/components/schemas/PaymentMeansEnum"}, {"type": "null"}], "default": "ZZZ", "description": "The type of payment means, this is often used to describe the payment method.\n        ", "examples": ["42", "57", "1", "68"]}, "paymentId": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The payment identifier, this is often used to describe the payment method.\n        ", "examples": ["123456", "123"], "title": "Paymentid"}, "payeeFinancialAccount": {"anyOf": [{"$ref": "#/components/schemas/PayeeFinancialAccount"}, {"type": "null"}], "description": "A group of business terms to specify credit transfer payments.\n        ", "examples": [{"financialInstitutionBranch": "0308", "id": "030866000001"}]}, "cardAccount": {"anyOf": [{"$ref": "#/components/schemas/CardAccount"}, {"type": "null"}], "description": "A group of business terms providing information about card used for payment contemporaneous with invoice issuance.\n        ", "examples": [{"networkId": "VISA", "primaryAccountNumber": "1234"}]}, "paymentMandate": {"anyOf": [{"$ref": "#/components/schemas/PaymentMandate"}, {"type": "null"}], "description": "A group of business terms to specify a direct debit mandate.\n        ", "examples": [{"id": "123456", "payerFinancialAccount": "12345676543"}]}, "onlinePaymentPortal": {"anyOf": [{"$ref": "#/components/schemas/OnlinePaymentPortal"}, {"type": "null"}], "description": "Online payment portal information. Only used when payment means type is 68 (Online banking).\n        This creates an AdditionalDocumentReference with ID='PAYMENT-PORTAL' in the generated PEPPOL XML.\n        ", "examples": [{"description": "Online Payment Portal", "uri": "https://payment.example.com/invoice/INV-12345"}]}, "sepaCreditTransfer": {"anyOf": [{"$ref": "#/components/schemas/SepaPayment"}, {"type": "null"}], "description": "A group of business terms to specify a SEPA credit transfer. the type will be ignored and set to 30\n        ", "examples": [{"ibanAccountNumber": "IE64BOFI90583812345678", "paymentIdentifier": "123456"}]}, "icelandicClaim": {"anyOf": [{"$ref": "#/components/schemas/IcelandicClaim"}, {"type": "null"}], "description": "Icelandic claim. If values are given, then the type will be ignored and set to 9\n        ", "examples": [{"accountNumber": 123456, "bankNumber": 1234}]}}, "title": "PaymentMeans", "type": "object"}, "PaymentMeansEnum": {"enum": ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37", "38", "39", "40", "41", "42", "43", "44", "45", "46", "47", "48", "49", "50", "51", "52", "53", "54", "55", "56", "57", "58", "59", "60", "61", "62", "63", "64", "65", "66", "67", "68", "70", "74", "75", "76", "77", "78", "91", "92", "93", "94", "95", "96", "97", "98", "ZZZ"], "title": "PaymentMeansEnum", "type": "string"}, "SepaPayment": {"properties": {"ibanAccountNumber": {"description": "The IBAN account number of the SEPA payment.", "examples": ["IE64BOFI90583812345678", "IS64BOFI90583812345678"], "pattern": ".*\\S.*", "title": "Ibanaccountnumber", "type": "string"}, "paymentIdentifier": {"anyOf": [{"pattern": ".*\\S.*", "type": "string"}, {"type": "null"}], "description": "The payment identifier of the SEPA payment. Recommended but not required.", "title": "Paymentidentifier"}}, "required": ["ibanAccountNumber"], "title": "SepaPayment", "type": "object"}, "StandardItemNo": {"properties": {"no": {"pattern": ".*\\S.*", "title": "No", "type": "string"}, "scheme": {"allOf": [{"$ref": "#/components/schemas/ISO6523Enum", "maxLength": 4}], "default": "0160", "description": "ISO 6523 code for the scheme of the standard item number, defaults to '0160' if not given"}}, "required": ["no"], "title": "StandardItemNo", "type": "object"}, "TaxCategoryEnum": {"enum": ["AE", "E", "S", "Z", "G", "O", "K", "L", "M", "B"], "title": "TaxCategoryEnum", "type": "string"}, "TaxSubtotal": {"description": "Tax breakdown for a single tax rate / category.", "properties": {"taxable_amount": {"description": "Amount subject to tax at this rate (tax-exclusive)", "title": "Taxable Amount", "type": "number"}, "tax_amount": {"description": "Tax amount at this rate", "title": "Tax Amount", "type": "number"}, "tax_percent": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Tax rate as a percentage, e.g. 24.0", "title": "Tax Percent"}, "tax_category_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "UNCL5305 tax category code (S=Standard, Z=Zero, E=Exempt, AE=Reverse charge, etc.)", "title": "Tax Category Code"}}, "required": ["taxable_amount", "tax_amount"], "title": "TaxSubtotal", "type": "object"}, "TaxTotal": {"description": "Invoice-level tax summary with optional per-rate breakdown.", "properties": {"tax_amount": {"description": "Total tax amount across all categories", "title": "Tax Amount", "type": "number"}, "tax_exclusive_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Total taxable amount before tax (sum of line extension amounts)", "title": "Tax Exclusive Amount"}, "tax_inclusive_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Total amount including tax", "title": "Tax Inclusive Amount"}, "subtotals": {"anyOf": [{"items": {"$ref": "#/components/schemas/TaxSubtotal"}, "type": "array"}, {"type": "null"}], "description": "Tax breakdown by rate/category", "title": "Subtotals"}}, "required": ["tax_amount"], "title": "TaxTotal", "type": "object"}, "EnvelopeStatusItem": {"properties": {"code": {"description": "Envelope status code", "examples": [0], "title": "Code", "type": "integer"}, "label": {"description": "Human-readable status label", "examples": ["New"], "title": "Label", "type": "string"}}, "required": ["code", "label"], "title": "EnvelopeStatusItem", "type": "object"}, "InvoiceListItem": {"properties": {"envelope_id": {"description": "Envelope identifier \u2014 use this to fetch XML/PDF or check delivery status", "format": "uuid", "title": "Envelope Id", "type": "string"}, "status": {"description": "Envelope status code", "title": "Status", "type": "integer"}, "status_label": {"description": "Human-readable status label", "title": "Status Label", "type": "string"}, "direction": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "\"sent\" | \"received\" | \"internal\" (same customer on both sides)", "title": "Direction"}, "sender_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender Name"}, "sender_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Sender identifier (GLN/VAT/PEPPOL ID)", "title": "Sender Number"}, "receiver_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Receiver Name"}, "receiver_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Receiver identifier (GLN/VAT/PEPPOL ID)", "title": "Receiver Number"}, "sender_document_number": {"description": "Sender's own document reference number", "title": "Sender Document Number", "type": "string"}, "delivery_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery location name", "title": "Delivery Name"}, "delivery_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery location identifier (GLN etc.)", "title": "Delivery Number"}, "source": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Document origin (PEPPOL, OCR, EDI, etc.)", "title": "Source"}, "document_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Document type label (e.g. Commercial Invoice, Credit Note)", "title": "Document Type"}, "invoice_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "Invoice primary key, if linked", "title": "Invoice Id"}, "invoice_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Invoice number from the document", "title": "Invoice Number"}, "issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Issue Date"}, "due_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Due Date"}, "payable_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Payable Amount"}, "currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Currency Code"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "status", "status_label", "sender_document_number", "created_at", "updated_at"], "title": "InvoiceListItem", "type": "object"}, "PagedInvoiceListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/InvoiceListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedInvoiceListItem", "type": "object"}, "AttachmentOut": {"properties": {"id": {"title": "Id", "type": "integer"}, "filename": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Filename"}, "mime_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Mime Type"}, "size": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Size"}, "content": {"title": "Content", "type": "string"}}, "required": ["id", "content"], "title": "AttachmentOut", "type": "object"}, "Participant": {"properties": {"identifier": {"description": "Participant identifier in the format <prefix>:<identifier>, needs to be of this format", "title": "Identifier", "type": "string"}, "is_centara_customer": {"default": false, "description": "True if this identifier exists in the Centara system.", "title": "Is Centara Customer", "type": "boolean"}, "is_my_customer": {"default": false, "description": "True if this identifier belongs to a customer of the authenticated partner making the request.", "title": "Is My Customer", "type": "boolean"}, "registered_in_smp": {"default": false, "description": "True if this identifier is registered in the Peppol SMP (by any access point). Based on live SMP lookup.", "title": "Registered In Smp", "type": "boolean"}, "registered_by_centara": {"default": false, "description": "True if this identifier is registered in SMP through Centara.", "title": "Registered By Centara", "type": "boolean"}, "access_point": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The access point (AP) that handles this identifier in SMP. Shows 'Centara' if registered by us, or the external AP name if registered elsewhere. None if not registered in SMP.", "title": "Access Point"}, "can_receive_internally": {"default": false, "description": "True if documents sent to this identifier will be routed internally through Centara (not via external Peppol network). It is due it is enforced by configuration or because it is our customer not registered in SMP.", "title": "Can Receive Internally", "type": "boolean"}, "template": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Template of the participant, if the participant is not found on any network this is false. This returns as None if this is not the partners customers", "title": "Template"}, "profiles": {"anyOf": [{"items": {"$ref": "#/components/schemas/ParticipantProfile"}, "type": "array"}, {"type": "null"}], "description": "List of participant profiles, if the participant is registered in the SML this is populated. On creation either template or participant list can be provided.", "title": "Profiles"}, "active": {"default": false, "description": "True if participant is active in our system OR registered in SMP by anyone.", "title": "Active", "type": "boolean"}, "on_network": {"default": false, "description": "True if registered in SMP through Centara.", "title": "On Network", "type": "boolean"}}, "required": ["identifier"], "title": "Participant", "type": "object"}, "ParticipantProfile": {"properties": {"processes": {"anyOf": [{"items": {"$ref": "#/components/schemas/Process"}, "type": "array"}, {"type": "null"}], "description": "List of processes", "title": "Processes"}, "documentIdentifier": {"description": "Document identifier, that describes the full document, for example urn:oasis:names:specification:ubl:schema:xsd:Invoice-2::Invoice##urn:cen.eu:en16931:2017#compliant#urn:fdc:peppol.eu:2017:poacc:billing:3.0::2.1", "title": "Documentidentifier", "type": "string"}, "documentType": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Document type, for example Invoice if the customization exists in the list from PEPPOL", "title": "Documenttype"}}, "required": ["documentIdentifier"], "title": "ParticipantProfile", "type": "object"}, "Process": {"properties": {"processId": {"description": "ProcessId for example urn:fdc:peppol.eu:2017:poacc:billing:01:1.0", "title": "Processid", "type": "string"}, "serviceEndpoints": {"anyOf": [{"items": {"$ref": "#/components/schemas/ServiceEndpoint"}, "type": "array"}, {"type": "null"}], "description": "List of service endpoints,", "title": "Serviceendpoints"}}, "required": ["processId"], "title": "Process", "type": "object"}, "ServiceEndpoint": {"properties": {"serviceEndpoint": {"description": "Service endpoint for example https://example.com/api/v1/documents", "title": "Serviceendpoint", "type": "string"}, "transport": {"description": "Describes the Transport for expeppol-transport-as4-v2_0", "title": "Transport", "type": "string"}, "endpointUrl": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Describe the endpoint url for example https://example.com/api/v1/documents", "title": "Endpointurl"}, "technicalContactEmail": {"description": "Describe the technical contact for example <EMAIL>", "title": "Technicalcontactemail", "type": "string"}, "technicalContactWebsite": {"description": "Describe the technical contact website for example https://example.com", "title": "Technicalcontactwebsite", "type": "string"}, "partner": {"description": "Describe the name of the Partner for example Wise Courier ( OU of the cert of the AP ). Not used on creation.", "title": "Partner", "type": "string"}}, "required": ["serviceEndpoint", "transport", "endpointUrl", "technicalContactEmail", "technicalContactWebsite", "partner"], "title": "ServiceEndpoint", "type": "object"}, "EnvelopeEventSchema": {"properties": {"performing_actor": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "User performing the action", "examples": ["System User"], "title": "Performing Actor"}, "user": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "User object in Centara that did the operation", "examples": ["user@centara.com"], "title": "User"}, "json": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "JSON message from the source system", "examples": ["{}"], "title": "Json"}, "ip": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "IP address of the performing actor", "examples": ["127.0.0.1"], "title": "Ip"}, "event": {"description": "Envelope event message", "examples": ["RECEIVED", "VALIDATED", "SENT_TO_PEPPOL"], "title": "Event", "type": "string"}, "timestamp": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "description": "Timestamp of the event", "examples": ["2023-01-01T00:00:00Z"], "title": "Timestamp"}, "retry": {"default": false, "description": "Whether the event will be retried ( not a final ) ", "examples": [false], "title": "Retry", "type": "boolean"}}, "required": ["performing_actor", "user", "json", "ip", "event", "timestamp"], "title": "EnvelopeEventSchema", "type": "object"}, "EnvelopePartySchema": {"properties": {"identifier": {"description": "Identifier of the party, like 0196:123456798", "examples": ["0196:123456798"], "title": "Identifier", "type": "string"}, "name": {"description": "Name of the party", "examples": ["Sending party"], "title": "Name", "type": "string"}}, "required": ["identifier", "name"], "title": "EnvelopePartySchema", "type": "object"}, "EnvelopeSchema": {"properties": {"id": {"description": "Envelope id or Submission id", "title": "Id", "type": "string"}, "receiver": {"$ref": "#/components/schemas/EnvelopePartySchema", "description": "Receiver of the envelope"}, "sender": {"$ref": "#/components/schemas/EnvelopePartySchema", "description": "Sender of the envelope"}, "status": {"$ref": "#/components/schemas/EnvelopeStatusSchema", "description": "Status of the envelope or submission. For envelopes: contains internal/outbound/inbound. For submissions: contains submission status."}, "events": {"anyOf": [{"items": {"$ref": "#/components/schemas/EnvelopeEventSchema"}, "type": "array"}, {"type": "null"}], "description": "List of events that happened to the envelope", "title": "Events"}, "sent_to": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Sent to Partner name", "examples": ["Partner Name"], "title": "Sent To"}, "sent_via": {"anyOf": [{"$ref": "#/components/schemas/IdentifierIntegrationModelEnum"}, {"type": "null"}], "description": "Sent via Integration", "examples": [3]}}, "required": ["id", "receiver", "sender", "status"], "title": "EnvelopeSchema", "type": "object"}, "EnvelopeStatusSchema": {"properties": {"internal": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Internal status of the Envelope, this is very verbose", "examples": ["NEW", "DONE", "ERROR"], "title": "Internal"}, "outbound": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Outbound status of the Envelope", "examples": ["HIDDEN", "PENDING", "IN_PROGRESS", "DELIVERED"], "title": "Outbound"}, "inbound": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Inbound status of the Envelope", "examples": ["HIDDEN", "PENDING", "IN_PROGRESS", "RECEIVED"], "title": "Inbound"}}, "title": "EnvelopeStatusSchema", "type": "object"}, "IdentifierIntegrationModelEnum": {"enum": [0, 1, 2, 3, 4, 5, 6], "title": "IdentifierIntegrationModelEnum", "type": "integer"}, "ContactSchema": {"properties": {"first_name": {"description": "First Name", "title": "First Name", "type": "string"}, "last_name": {"description": "Last name", "title": "Last Name", "type": "string"}, "email": {"description": "Email address", "title": "Email", "type": "string"}, "external_identifier": {"description": "External identifier", "title": "External Identifier", "type": "string"}, "signed_for_peppol": {"description": "Tells if the Customer has signed an agreement for PEPPOL registration", "title": "Signed For Peppol", "type": "boolean"}}, "required": ["first_name", "last_name", "email", "external_identifier", "signed_for_peppol"], "title": "ContactSchema", "type": "object"}, "CustomerSchema": {"properties": {"customer_number": {"description": "Customer Number", "examples": ["12345"], "title": "Customer Number", "type": "string"}, "name": {"description": "Customer name", "examples": ["Test Customer"], "title": "Name", "type": "string"}, "country_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Country code in ISO 3166-1 alpha-2 format (e.g., 'IS' for Iceland)", "examples": ["IS", "PL", "GB"], "title": "Country Code"}, "street_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": "", "description": "Street name", "examples": ["Main St"], "title": "Street Name"}, "postal_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": "", "description": "Postal number", "examples": ["12345"], "title": "Postal Number"}, "slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "default": "", "description": "Slug", "title": "Slug"}, "primary_contact": {"$ref": "#/components/schemas/ContactSchema", "description": "Primary Contact", "examples": [{"email": "asfa@test.pl", "external_identifier": "test", "first_name": "test", "last_name": "test", "signed_for_peppol": "True"}]}}, "required": ["customer_number", "name", "primary_contact"], "title": "CustomerSchema", "type": "object"}, "TemplateSchema": {"properties": {"name": {"description": "Name of the template", "title": "Name", "type": "string"}, "description": {"description": "Description of the template", "title": "Description", "type": "string"}, "is_default": {"description": "Is the template default", "title": "Is Default", "type": "boolean"}, "is_active": {"description": "Is the template active", "title": "Is Active", "type": "boolean"}}, "required": ["name", "description", "is_default", "is_active"], "title": "TemplateSchema", "type": "object"}, "DeliveryInfo": {"properties": {"partyName": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery party name", "title": "Partyname"}, "locationIdentifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery location identifier", "title": "Locationidentifier"}, "address": {"anyOf": [{"$ref": "#/components/schemas/Address"}, {"type": "null"}], "description": "Delivery address"}, "requestedDeliveryDate": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "description": "Requested delivery date", "title": "Requesteddeliverydate"}}, "title": "DeliveryInfo", "type": "object"}, "Order": {"properties": {"orderNo": {"description": "Order number", "examples": ["ORDER-2025-001", "P000071"], "title": "Orderno", "type": "string"}, "issueDate": {"description": "Order issue date", "examples": ["2025-01-15"], "format": "date", "title": "Issuedate", "type": "string"}, "issueTime": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Order issue time (HH:MM:SS)", "examples": ["14:30:00"], "title": "Issuetime"}, "currencyCode": {"allOf": [{"$ref": "#/components/schemas/CurrencyEnum"}], "default": "ISK", "description": "Currency code", "examples": ["ISK", "EUR", "USD"]}, "buyer": {"$ref": "#/components/schemas/Party", "description": "Buyer party (customer placing the order)"}, "seller": {"$ref": "#/components/schemas/Party", "description": "Seller party (supplier receiving the order)"}, "accountingCustomer": {"anyOf": [{"$ref": "#/components/schemas/Party"}, {"type": "null"}], "description": "Accounting customer party (invoice recipient if different from buyer)"}, "delivery": {"anyOf": [{"$ref": "#/components/schemas/DeliveryInfo"}, {"type": "null"}], "description": "Delivery information"}, "orderReference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Reference to previous order", "title": "Orderreference"}, "buyerReference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Buyer reference", "title": "Buyerreference"}, "note": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Order note/comment", "title": "Note"}, "taxTotalAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Total tax amount", "title": "Taxtotalamount"}, "lineExtensionAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Sum of line extension amounts", "title": "Lineextensionamount"}, "payableAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Total payable amount", "title": "Payableamount"}, "orderLines": {"description": "Order lines", "items": {"$ref": "#/components/schemas/OrderLine"}, "minItems": 1, "title": "Orderlines", "type": "array"}}, "required": ["orderNo", "issueDate", "buyer", "seller", "orderLines"], "title": "Order", "type": "object"}, "OrderEnvelope": {"properties": {"receiver": {"anyOf": [{"$ref": "#/components/schemas/PartyIdentifier"}, {"type": "null"}], "description": "The receiver of the order (supplier). If not given, will be resolved from seller information", "examples": [{"id": "123456789", "scheme": "0088"}, {"id": "5699000021655", "scheme": "0088"}]}, "emailAddress": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Email address for fallback delivery if PEPPOL delivery fails", "examples": ["supplier@example.com"], "title": "Emailaddress"}, "create_message": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": true, "description": "If True, creates and sends the order. If False, only creates the order without sending", "title": "Create Message"}, "u1_raw": {"anyOf": [{"maxLength": 200, "type": "string"}, {"type": "null"}], "description": "U1 sender identification. Can be either:\n- Just a GLN (e.g., '5699000021167') - will be auto-formatted to fixed-width\n- Full fixed-width format (e.g., 'U1    5699000021167                      14') - used as-is\n\nUsed for X.400 fixed-width format exports and EDIFACT UNB segment.", "examples": ["5699000021167", "U1    5699000021167                      14"], "title": "U1 Raw"}, "u2_raw": {"anyOf": [{"maxLength": 200, "type": "string"}, {"type": "null"}], "description": "U2 receiver identification. Can be either:\n- Just a GLN (e.g., '5699000031104') - will be auto-formatted to fixed-width\n- Full fixed-width format (e.g., 'U2    5699000031104                      14') - used as-is\n\nUsed for X.400 fixed-width format exports and EDIFACT UNB segment.", "examples": ["5699000031104", "U2    5699000031104                      14                       ORDER-001"], "title": "U2 Raw"}, "order": {"$ref": "#/components/schemas/Order", "description": "The order to be sent", "examples": [{"buyer": {"address": {"addressLine1": "\u00c1lfheimar 74", "city": "Reykjav\u00edk", "countryCode": "IS", "postalZone": "104"}, "identifier": {"id": "5699000137707", "scheme": "0088"}, "name": "Lyfjaval", "nationalId": "5807131140"}, "currencyCode": "ISK", "delivery": {"address": {"addressLine1": "Ur\u00f0arhvarf 8", "countryCode": "IS"}, "requestedDeliveryDate": "2025-01-28"}, "issueDate": "2025-01-28", "issueTime": "18:15:57", "orderLines": [{"buyersItemNo": "BUY-001", "lineNo": "10000", "name": "Bupropion Teva, t\u00f6flur 150 mg 30 stk", "quantity": 6, "sellersItemNo": "390660", "standardItemNo": "05012345678900", "standardItemSchemeId": "0160", "taxCategoryType": "S", "taxPercentage": 24, "unitCode": "EA", "unitPriceAmount": 0}], "orderNo": "P000071", "seller": {"address": {"addressLine1": "H\u00f6rgat\u00fani 2", "city": "Reykjav\u00edk", "countryCode": "IS", "postalZone": "104"}, "identifier": {"id": "5699000021655", "scheme": "0088"}, "name": "Distica hf", "nationalId": "6806044010"}}]}}, "required": ["order"], "title": "OrderEnvelope", "type": "object"}, "OrderLine": {"properties": {"lineNo": {"description": "Line number/identifier", "examples": ["1", "10000"], "title": "Lineno", "type": "string"}, "itemNo": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Item number", "examples": ["ITEM-001", "SKU123"], "title": "Itemno"}, "name": {"description": "Item name", "examples": ["Widget A", "Product B"], "title": "Name", "type": "string"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Item description", "title": "Description"}, "quantity": {"description": "Quantity ordered", "examples": [1, 10, 100.5], "title": "Quantity", "type": "number"}, "unitCode": {"default": "EA", "description": "Unit code (UN/CEFACT)", "examples": ["C62", "EA", "MTR"], "title": "Unitcode", "type": "string"}, "unitPriceAmount": {"description": "Unit price", "examples": [100, 250.5], "title": "Unitpriceamount", "type": "number"}, "lineExtensionAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Line extension amount (quantity * price)", "title": "Lineextensionamount"}, "taxCategoryType": {"allOf": [{"$ref": "#/components/schemas/TaxCategoryEnum"}], "default": "S", "description": "Tax category", "examples": ["S", "E"]}, "taxPercentage": {"description": "Tax percentage", "examples": [0, 24, 11], "title": "Taxpercentage", "type": "number"}, "buyersItemNo": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Buyer's item identification", "title": "Buyersitemno"}, "sellersItemNo": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Seller's item identification", "title": "Sellersitemno"}, "standardItemNo": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Standard item identification (e.g., GTIN, EAN)", "title": "Standarditemno"}, "standardItemSchemeId": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Scheme ID for standard item identification (e.g., '0160' for GTIN)", "title": "Standarditemschemeid"}}, "required": ["lineNo", "name", "quantity", "unitPriceAmount", "taxPercentage"], "title": "OrderLine", "type": "object"}, "RetannResponseItem": {"properties": {"envelope_id": {"description": "The envelope ID", "title": "Envelope Id", "type": "string"}, "retann_id": {"description": "The return announcement ID", "title": "Retann Id", "type": "string"}, "message": {"description": "Status message", "title": "Message", "type": "string"}, "status": {"description": "Status", "examples": ["success"], "title": "Status", "type": "string"}}, "required": ["envelope_id", "retann_id", "message", "status"], "title": "RetannResponseItem", "type": "object"}, "RetannDocument": {"properties": {"documentNo": {"description": "Return announcement number", "examples": ["IPS0000694"], "title": "Documentno", "type": "string"}, "documentDate": {"description": "Document date", "examples": ["2026-02-13"], "format": "date", "title": "Documentdate", "type": "string"}, "invoiceReference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Invoice reference", "title": "Invoicereference"}, "orderReference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Order reference", "title": "Orderreference"}, "deliveryReference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery reference", "title": "Deliveryreference"}, "reasonCode": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Overall reason code for the return", "examples": ["DEFAULT"], "title": "Reasoncode"}, "buyer": {"$ref": "#/components/schemas/RetannParty", "description": "Buyer party (returning goods)"}, "seller": {"$ref": "#/components/schemas/RetannParty", "description": "Seller party (receiving returned goods)"}, "lines": {"description": "Return announcement lines", "items": {"$ref": "#/components/schemas/RetannLine"}, "minItems": 1, "title": "Lines", "type": "array"}}, "required": ["documentNo", "documentDate", "buyer", "seller", "lines"], "title": "RetannDocument", "type": "object"}, "RetannEnvelope": {"properties": {"receiver": {"anyOf": [{"$ref": "#/components/schemas/RetannPartyIdentifier"}, {"type": "null"}], "description": "The receiver of the RETANN (seller). If not given, resolved from seller information."}, "retann": {"$ref": "#/components/schemas/RetannDocument", "description": "The return announcement document"}}, "required": ["retann"], "title": "RetannEnvelope", "type": "object"}, "RetannLine": {"properties": {"lineNo": {"description": "Line number", "examples": ["10000"], "title": "Lineno", "type": "string"}, "statusCode": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Status/condition code", "examples": ["01I"], "title": "Statuscode"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Line description", "title": "Description"}, "item": {"$ref": "#/components/schemas/RetannLineItem", "description": "Item details"}, "quantity": {"description": "Return quantity", "examples": [1, 5, 10.5], "title": "Quantity", "type": "number"}, "unitOfMeasure": {"default": "PCE", "description": "Unit of measure", "examples": ["STK", "PCE", "EA"], "title": "Unitofmeasure", "type": "string"}, "unitPrice": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Unit price", "title": "Unitprice"}, "lineAmount": {"anyOf": [{"type": "number"}, {"type": "null"}], "description": "Line amount", "title": "Lineamount"}, "reasonCode": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Reason code for the return", "title": "Reasoncode"}}, "required": ["lineNo", "item", "quantity"], "title": "RetannLine", "type": "object"}, "RetannLineItem": {"properties": {"itemNo": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Item number (buyer's item ID)", "examples": ["30129629"], "title": "Itemno"}, "name": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Item name", "examples": ["Gr\u00edms Plokkfiskur 1kg poki"], "title": "Name"}, "sellerItemId": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Seller's item identifier", "examples": ["415"], "title": "Selleritemid"}, "gtin": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "GTIN/EAN barcode", "examples": ["5694230000000"], "title": "Gtin"}}, "title": "RetannLineItem", "type": "object"}, "RetannParty": {"properties": {"identifier": {"$ref": "#/components/schemas/RetannPartyIdentifier", "description": "Party identifier"}, "name": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Party name", "examples": ["Samkaup"], "title": "Name"}}, "required": ["identifier"], "title": "RetannParty", "type": "object"}, "RetannPartyIdentifier": {"properties": {"id": {"description": "Party identifier (GLN or kennitala)", "examples": ["5699000023505"], "title": "Id", "type": "string"}, "scheme": {"default": "0088", "description": "ISO 6523 scheme (0088=GLN, 0196=IS:KT)", "examples": ["0088", "0196"], "title": "Scheme", "type": "string"}}, "required": ["id"], "title": "RetannPartyIdentifier", "type": "object"}, "DespatchAdviceCreateOut": {"description": "Response schema after creating a despatch advice.", "properties": {"despatch_advice_id": {"description": "UUID of the created despatch advice", "examples": ["40cefada-67bd-47be-8432-19e1c682ce03"], "format": "uuid", "title": "Despatch Advice Id", "type": "string"}, "despatch_advice_number": {"description": "Despatch advice document number", "examples": ["8617396"], "title": "Despatch Advice Number", "type": "string"}}, "required": ["despatch_advice_id", "despatch_advice_number"], "title": "DespatchAdviceCreateOut", "type": "object"}, "DespatchAdviceCreateIn": {"description": "Schema for creating a despatch advice.", "properties": {"despatch_advice_number": {"description": "Despatch advice document number", "examples": ["8617396"], "title": "Despatch Advice Number", "type": "string"}, "issue_date": {"description": "Issue date of the despatch advice", "examples": ["2026-03-09"], "format": "date", "title": "Issue Date", "type": "string"}, "message_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Message reference used in UNB/UNH envelope. Defaults to despatch_advice_number.", "examples": ["8617396"], "title": "Message Reference"}, "note": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Free-form note", "title": "Note"}, "unb_sender": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "UNB sender GLN (U1 line / UNB sender ID)", "examples": ["5699000023932"], "title": "Unb Sender"}, "unb_receiver": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "UNB receiver GLN (U2 line / UNB receiver ID)", "examples": ["4409861539"], "title": "Unb Receiver"}, "despatch_supplier_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Despatch supplier GLN/identifier (NAD SH/SU)", "examples": ["5699000138513"], "title": "Despatch Supplier Identifier"}, "despatch_supplier_name": {"description": "Despatch supplier name", "examples": ["Steindal ehf"], "title": "Despatch Supplier Name", "type": "string"}, "despatch_supplier_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Despatch supplier address", "examples": ["Ogurasi 1"], "title": "Despatch Supplier Address"}, "despatch_supplier_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Despatch supplier city", "examples": ["Gardabaer"], "title": "Despatch Supplier City"}, "despatch_supplier_postal_zone": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Despatch supplier postal code", "examples": ["210"], "title": "Despatch Supplier Postal Zone"}, "despatch_supplier_nad_qualifier": {"default": "SH", "description": "NAD qualifier for despatch supplier: SH=Shipper, SU=Supplier", "examples": ["SH"], "title": "Despatch Supplier Nad Qualifier", "type": "string"}, "delivery_customer_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery customer GLN/identifier (NAD BY/CN)", "examples": ["4409861539"], "title": "Delivery Customer Identifier"}, "delivery_customer_name": {"description": "Delivery customer name", "examples": ["Kaupas"], "title": "Delivery Customer Name", "type": "string"}, "delivery_customer_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery customer address", "title": "Delivery Customer Address"}, "delivery_customer_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery customer city", "title": "Delivery Customer City"}, "delivery_customer_postal_zone": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Delivery customer postal code", "title": "Delivery Customer Postal Zone"}, "delivery_customer_nad_qualifier": {"default": "BY", "description": "NAD qualifier for delivery customer: BY=Buyer, CN=Consignee", "examples": ["BY"], "title": "Delivery Customer Nad Qualifier", "type": "string"}, "order_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Buyer's order number reference", "title": "Order Reference"}, "lines": {"description": "Despatch advice line items", "items": {"$ref": "#/components/schemas/DespatchLineCreateIn"}, "title": "Lines", "type": "array"}}, "required": ["despatch_advice_number", "issue_date", "despatch_supplier_name", "delivery_customer_name", "lines"], "title": "DespatchAdviceCreateIn", "type": "object"}, "DespatchLineCreateIn": {"description": "Schema for creating a despatch advice line item.", "properties": {"line_id": {"description": "Line identifier (e.g. '1', '2')", "examples": ["1"], "title": "Line Id", "type": "string"}, "standard_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "EAN/GTIN barcode", "examples": ["8002270000201"], "title": "Standard Item Id"}, "sellers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Seller's item number", "examples": ["10051702"], "title": "Sellers Item Id"}, "buyers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Buyer's item number", "title": "Buyers Item Id"}, "item_name": {"description": "Item name/description", "examples": ["S.PELLEG.SODAVATN 500ML"], "title": "Item Name", "type": "string"}, "item_description": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Secondary description (e.g. unit type)", "examples": ["ltr."], "title": "Item Description"}, "despatched_quantity": {"anyOf": [{"type": "number"}, {"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$", "type": "string"}], "description": "Quantity being despatched", "examples": [576], "title": "Despatched Quantity"}, "despatched_quantity_unit": {"default": "PCE", "description": "UN/ECE unit code", "examples": ["PCE", "KGM"], "title": "Despatched Quantity Unit", "type": "string"}, "order_line_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Buyer's order line reference (RFF+XLL)", "examples": ["540"], "title": "Order Line Reference"}, "gross_weight": {"anyOf": [{"type": "number"}, {"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$", "type": "string"}, {"type": "null"}], "description": "Gross weight in KGM", "examples": [0.5], "title": "Gross Weight"}, "package_type": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Package type code (PCI segment)", "examples": ["17"], "title": "Package Type"}, "packages_count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "description": "Number of packages (QTY+59)", "examples": [24], "title": "Packages Count"}, "storage_condition": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Storage condition code (MEA+SO+TC+CEL segment), e.g. FRYSTIVARA=frozen goods", "examples": ["FRYSTIVARA"], "title": "Storage Condition"}, "temperature_class": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Temperature class code appended after storage condition", "examples": ["04"], "title": "Temperature Class"}}, "required": ["line_id", "item_name", "despatched_quantity"], "title": "DespatchLineCreateIn", "type": "object"}, "SendOrderToX400Response": {"description": "Response schema for X.400 send operation.", "properties": {"success": {"description": "Whether the send operation succeeded", "title": "Success", "type": "boolean"}, "message": {"description": "Human-readable status message", "examples": ["Successfully sent to X.400"], "title": "Message", "type": "string"}, "envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "The envelope ID created for this order", "examples": ["550e8400-e29b-41d4-a716-446655440000"], "title": "Envelope Id"}, "transport_message_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "The transport message ID", "examples": ["7c9e6679-7425-40de-944b-e07fc1f90ae7"], "title": "Transport Message Id"}, "edi_partner": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The EDI partner shortcode used for sending", "examples": ["SAMKAUP"], "title": "Edi Partner"}, "remote_message_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "The remote message ID returned by X.400", "examples": ["ORD123456"], "title": "Remote Message Id"}}, "required": ["success", "message"], "title": "SendOrderToX400Response", "type": "object"}, "SendToX400Request": {"description": "Request schema for sending a document via X.400.", "properties": {"short_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Optional EDI partner shortcode (e.g., 'CCEP', 'SAMKAUP', '@CCEP'). The system will look up the EDI partner by this shortcode.", "examples": ["CCEP", "@SAMKAUP"], "title": "Short Code"}, "routing_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Optional routing identifier to send to. Can be either:\n- EDI partner shortcode (e.g., '@CCEP', 'SAMKAUP')\n- Full X.400 address (e.g., '/C=IS/O=Samkaup/OU=EDI/')\n\nThe system will look up the EDI partner by this identifier. If not provided, routing discovery will be used.", "examples": ["@CCEP", "/C=IS/O=Samkaup/OU=EDI/"], "title": "Routing Code"}, "format": {"default": "edifact", "description": "EDI format to generate. Only 'edifact' is supported for X.400 sending.", "examples": ["edifact"], "title": "Format", "type": "string"}}, "title": "SendToX400Request", "type": "object"}, "DespatchAdviceDetail": {"properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "despatch_advice_id": {"format": "uuid", "title": "Despatch Advice Id", "type": "string"}, "direction": {"title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "despatch_advice_number": {"title": "Despatch Advice Number", "type": "string"}, "issue_date": {"format": "date", "title": "Issue Date", "type": "string"}, "note": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Note"}, "source_format": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Source Format"}, "order_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Order Reference"}, "sales_order_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sales Order Reference"}, "despatch_supplier_name": {"title": "Despatch Supplier Name", "type": "string"}, "despatch_supplier_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Supplier Identifier"}, "despatch_supplier_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Supplier Address"}, "despatch_supplier_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Supplier City"}, "despatch_supplier_postal_zone": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Supplier Postal Zone"}, "delivery_customer_name": {"title": "Delivery Customer Name", "type": "string"}, "delivery_customer_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Delivery Customer Identifier"}, "delivery_customer_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Delivery Customer Address"}, "delivery_customer_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Delivery Customer City"}, "delivery_customer_postal_zone": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Delivery Customer Postal Zone"}, "linked_order_envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "Envelope ID of the linked Order \u2014 use for /orders/{envelope_id}", "title": "Linked Order Envelope Id"}, "has_pdf": {"default": false, "title": "Has Pdf", "type": "boolean"}, "has_xml": {"default": false, "title": "Has Xml", "type": "boolean"}, "lines": {"default": [], "items": {"$ref": "#/components/schemas/DespatchLineItem"}, "title": "Lines", "type": "array"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "despatch_advice_id", "direction", "direction_label", "despatch_advice_number", "issue_date", "despatch_supplier_name", "delivery_customer_name", "created_at", "updated_at"], "title": "DespatchAdviceDetail", "type": "object"}, "DespatchLineItem": {"properties": {"line_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Line Id"}, "despatched_quantity": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Despatched Quantity"}, "despatched_quantity_unit": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatched Quantity Unit"}, "sellers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sellers Item Id"}, "standard_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Standard Item Id"}, "buyers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyers Item Id"}, "order_line_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Order Line Reference"}, "gross_weight": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Gross Weight"}, "storage_condition": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Storage Condition"}, "temperature_class": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Temperature Class"}}, "title": "DespatchLineItem", "type": "object"}, "DespatchAdviceListItem": {"description": "Returned by GET /despatch-advice/ \u2014 one item per envelope.", "properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "despatch_advice_id": {"format": "uuid", "title": "Despatch Advice Id", "type": "string"}, "direction": {"description": "0=Inbound, 1=Outbound", "title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "despatch_advice_number": {"title": "Despatch Advice Number", "type": "string"}, "issue_date": {"format": "date", "title": "Issue Date", "type": "string"}, "despatch_supplier_name": {"title": "Despatch Supplier Name", "type": "string"}, "despatch_supplier_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Supplier Identifier"}, "delivery_customer_name": {"title": "Delivery Customer Name", "type": "string"}, "delivery_customer_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Delivery Customer Identifier"}, "order_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Order Reference"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "despatch_advice_id", "direction", "direction_label", "despatch_advice_number", "issue_date", "despatch_supplier_name", "delivery_customer_name", "created_at", "updated_at"], "title": "DespatchAdviceListItem", "type": "object"}, "DespatchAdviceWithLines": {"description": "Schema for despatch advice with all consolidated line items.", "properties": {"despatch_advices": {"description": "List of all despatch advices with this number", "items": {"$ref": "#/components/schemas/DespatchAdviceListItem"}, "title": "Despatch Advices", "type": "array"}, "lines": {"description": "Consolidated list of all line items from all despatch advices with this number", "items": {"$ref": "#/components/schemas/DespatchLineItem"}, "title": "Lines", "type": "array"}}, "required": ["despatch_advices", "lines"], "title": "DespatchAdviceWithLines", "type": "object"}, "RecipientStatus": {"properties": {"documentId": {"title": "Documentid", "type": "string"}, "nationalId": {"title": "Nationalid", "type": "string"}, "status": {"title": "Status", "type": "string"}}, "required": ["documentId", "nationalId", "status"], "title": "RecipientStatus", "type": "object"}, "SendDocumentResponse": {"properties": {"success": {"title": "Success", "type": "boolean"}, "recipients": {"items": {"$ref": "#/components/schemas/RecipientStatus"}, "title": "Recipients", "type": "array"}, "estimatedDelivery": {"title": "Estimateddelivery", "type": "string"}, "message": {"title": "Message", "type": "string"}}, "required": ["success", "recipients", "estimatedDelivery", "message"], "title": "SendDocumentResponse", "type": "object"}, "ValidationErrorDetail": {"properties": {"field": {"title": "Field", "type": "string"}, "error": {"title": "Error", "type": "string"}, "value": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Value"}}, "required": ["field", "error"], "title": "ValidationErrorDetail", "type": "object"}, "ValidationErrorResponse": {"properties": {"success": {"title": "Success", "type": "boolean"}, "error": {"title": "Error", "type": "string"}, "message": {"title": "Message", "type": "string"}, "details": {"items": {"$ref": "#/components/schemas/ValidationErrorDetail"}, "title": "Details", "type": "array"}}, "required": ["success", "error", "message", "details"], "title": "ValidationErrorResponse", "type": "object"}, "ConfigurationErrorResponse": {"properties": {"success": {"title": "Success", "type": "boolean"}, "error": {"title": "Error", "type": "string"}, "message": {"title": "Message", "type": "string"}, "details": {"additionalProperties": true, "title": "Details", "type": "object"}}, "required": ["success", "error", "message", "details"], "title": "ConfigurationErrorResponse", "type": "object"}, "IslandApiErrorResponse": {"properties": {"success": {"title": "Success", "type": "boolean"}, "error": {"title": "Error", "type": "string"}, "message": {"title": "Message", "type": "string"}, "details": {"additionalProperties": true, "title": "Details", "type": "object"}}, "required": ["success", "error", "message", "details"], "title": "IslandApiErrorResponse", "type": "object"}, "DocumentFile": {"properties": {"file": {"title": "File", "type": "string"}, "main": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "default": false, "title": "Main"}}, "required": ["file"], "title": "DocumentFile", "type": "object"}, "Receiver": {"properties": {"nationalId": {"title": "Nationalid", "type": "string"}}, "required": ["nationalId"], "title": "Receiver", "type": "object"}, "SendDocumentRequest": {"properties": {"documentNumber": {"title": "Documentnumber", "type": "string"}, "documentType": {"title": "Documenttype", "type": "string"}, "sender": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sender"}, "receivers": {"items": {"$ref": "#/components/schemas/Receiver"}, "title": "Receivers", "type": "array"}, "documents": {"items": {"$ref": "#/components/schemas/DocumentFile"}, "title": "Documents", "type": "array"}, "documentDate": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Documentdate"}, "subject": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Subject"}, "category": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Category"}, "sendNotification": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Sendnotification"}, "businessAccount": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Businessaccount"}}, "required": ["documentNumber", "documentType", "receivers", "documents"], "title": "SendDocumentRequest", "type": "object"}, "WithdrawDocumentResponse": {"properties": {"success": {"title": "Success", "type": "boolean"}, "documentId": {"title": "Documentid", "type": "string"}, "status": {"title": "Status", "type": "string"}, "message": {"title": "Message", "type": "string"}}, "required": ["success", "documentId", "status", "message"], "title": "WithdrawDocumentResponse", "type": "object"}, "WithdrawDocumentRequest": {"properties": {"documentId": {"title": "Documentid", "type": "string"}, "reason": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Reason"}}, "required": ["documentId"], "title": "WithdrawDocumentRequest", "type": "object"}, "CategoriesResponse": {"properties": {"success": {"title": "Success", "type": "boolean"}, "categories": {"items": {"$ref": "#/components/schemas/CategoryItem"}, "title": "Categories", "type": "array"}, "lastUpdated": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Lastupdated"}}, "required": ["success", "categories"], "title": "CategoriesResponse", "type": "object"}, "CategoryItem": {"properties": {"id": {"title": "Id", "type": "string"}, "name": {"title": "Name", "type": "string"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Description"}}, "required": ["id", "name"], "title": "CategoryItem", "type": "object"}, "DocumentTypeItem": {"properties": {"id": {"title": "Id", "type": "string"}, "externalType": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Externaltype"}, "islandType": {"title": "Islandtype", "type": "string"}, "isDefault": {"title": "Isdefault", "type": "boolean"}}, "required": ["id", "islandType", "isDefault"], "title": "DocumentTypeItem", "type": "object"}, "DocumentTypesResponse": {"properties": {"success": {"title": "Success", "type": "boolean"}, "documentTypes": {"items": {"$ref": "#/components/schemas/DocumentTypeItem"}, "title": "Documenttypes", "type": "array"}, "lastUpdated": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Lastupdated"}}, "required": ["success", "documentTypes"], "title": "DocumentTypesResponse", "type": "object"}, "BillingReportResponse": {"properties": {"summary": {"$ref": "#/components/schemas/MessageSummary"}, "document_types": {"additionalProperties": true, "title": "Document Types", "type": "object"}, "status_breakdown": {"$ref": "#/components/schemas/StatusBreakdown"}, "daily_breakdown": {"additionalProperties": true, "title": "Daily Breakdown", "type": "object"}, "customer_breakdown": {"anyOf": [{"items": {}, "type": "array"}, {"type": "null"}], "title": "Customer Breakdown"}}, "required": ["summary", "document_types", "status_breakdown", "daily_breakdown"], "title": "BillingReportResponse", "type": "object"}, "MessageSummary": {"properties": {"messages_sent": {"title": "Messages Sent", "type": "integer"}, "messages_received": {"title": "Messages Received", "type": "integer"}, "total_messages": {"title": "Total Messages", "type": "integer"}, "period_start": {"title": "Period Start", "type": "string"}, "period_end": {"title": "Period End", "type": "string"}}, "required": ["messages_sent", "messages_received", "total_messages", "period_start", "period_end"], "title": "MessageSummary", "type": "object"}, "StatusBreakdown": {"properties": {"successful": {"title": "Successful", "type": "integer"}, "failed": {"title": "Failed", "type": "integer"}, "pending": {"title": "Pending", "type": "integer"}, "other": {"title": "Other", "type": "integer"}}, "required": ["successful", "failed", "pending", "other"], "title": "StatusBreakdown", "type": "object"}, "BillingReportRequest": {"properties": {"start_date": {"title": "Start Date", "type": "string"}, "end_date": {"title": "End Date", "type": "string"}, "partner_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Partner Id"}, "customer_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Customer Id"}}, "required": ["start_date", "end_date"], "title": "BillingReportRequest", "type": "object"}, "EDIPartnerOut": {"description": "EDI Partner response schema.", "properties": {"id": {"description": "EDI partner ID", "title": "Id", "type": "integer"}, "shortcode": {"description": "Partner shortcode", "examples": ["SAMKAUP"], "title": "Shortcode", "type": "string"}, "name": {"description": "Partner name", "examples": ["Samkaup"], "title": "Name", "type": "string"}, "x400_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "X.400 address for this partner", "examples": ["/C=IS/O=Samkaup/OU=EDI/"], "title": "X400 Address"}, "active": {"description": "Whether the partner is active", "title": "Active", "type": "boolean"}}, "required": ["id", "shortcode", "name", "x400_address", "active"], "title": "EDIPartnerOut", "type": "object"}, "EDIPartnersListOut": {"description": "List of EDI partners response schema.", "properties": {"edi_partners": {"description": "List of active EDI partners", "items": {"$ref": "#/components/schemas/EDIPartnerOut"}, "title": "Edi Partners", "type": "array"}}, "required": ["edi_partners"], "title": "EDIPartnersListOut", "type": "object"}, "CustomerListItem": {"properties": {"uid": {"title": "Uid", "type": "integer"}, "customer_number": {"title": "Customer Number", "type": "string"}, "name": {"title": "Name", "type": "string"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Description"}, "customer_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Slug"}, "country_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Country Code"}, "customer_type": {"title": "Customer Type", "type": "integer"}, "partner_uid": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Partner Uid"}, "partner_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Partner Name"}, "created_at": {"title": "Created At", "type": "string"}}, "required": ["uid", "customer_number", "name", "customer_type", "created_at"], "title": "CustomerListItem", "type": "object"}, "PartnerListItem": {"properties": {"uid": {"title": "Uid", "type": "integer"}, "partner_number": {"title": "Partner Number", "type": "string"}, "name": {"title": "Name", "type": "string"}, "partner_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Partner Slug"}}, "required": ["uid", "partner_number", "name"], "title": "PartnerListItem", "type": "object"}, "CustomerAuthSettingsOut": {"properties": {"allow_password": {"title": "Allow Password", "type": "boolean"}, "allow_azure_sso": {"title": "Allow Azure Sso", "type": "boolean"}, "allow_mobile_eid": {"title": "Allow Mobile Eid", "type": "boolean"}, "allow_national_id_eid": {"title": "Allow National Id Eid", "type": "boolean"}}, "required": ["allow_password", "allow_azure_sso", "allow_mobile_eid", "allow_national_id_eid"], "title": "CustomerAuthSettingsOut", "type": "object"}, "CustomerAuthSettingsIn": {"properties": {"allow_password": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Allow Password"}, "allow_azure_sso": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Allow Azure Sso"}, "allow_mobile_eid": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Allow Mobile Eid"}, "allow_national_id_eid": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Allow National Id Eid"}}, "title": "CustomerAuthSettingsIn", "type": "object"}, "CustomerTokenSecurityOut": {"properties": {"requires_token_for_cached_documents": {"title": "Requires Token For Cached Documents", "type": "boolean"}, "cache_document_expiry_minutes": {"title": "Cache Document Expiry Minutes", "type": "integer"}}, "required": ["requires_token_for_cached_documents", "cache_document_expiry_minutes"], "title": "CustomerTokenSecurityOut", "type": "object"}, "CustomerTokenSecurityIn": {"properties": {"requires_token_for_cached_documents": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Requires Token For Cached Documents"}, "cache_document_expiry_minutes": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Cache Document Expiry Minutes"}}, "title": "CustomerTokenSecurityIn", "type": "object"}, "CustomerDocumentSettingsOut": {"properties": {"auto_convert_peppol": {"title": "Auto Convert Peppol", "type": "boolean"}, "stylesheet_first": {"title": "Stylesheet First", "type": "boolean"}, "ocr_include_peppol_stylesheet": {"title": "Ocr Include Peppol Stylesheet", "type": "boolean"}, "require_llm_processing": {"title": "Require Llm Processing", "type": "boolean"}, "prefers_base_unit_of_measure": {"title": "Prefers Base Unit Of Measure", "type": "boolean"}}, "required": ["auto_convert_peppol", "stylesheet_first", "ocr_include_peppol_stylesheet", "require_llm_processing", "prefers_base_unit_of_measure"], "title": "CustomerDocumentSettingsOut", "type": "object"}, "CustomerDocumentSettingsIn": {"properties": {"auto_convert_peppol": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Auto Convert Peppol"}, "stylesheet_first": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Stylesheet First"}, "ocr_include_peppol_stylesheet": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Ocr Include Peppol Stylesheet"}, "require_llm_processing": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Require Llm Processing"}, "prefers_base_unit_of_measure": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Prefers Base Unit Of Measure"}}, "title": "CustomerDocumentSettingsIn", "type": "object"}, "CustomerGeneralOut": {"properties": {"uid": {"title": "Uid", "type": "integer"}, "name": {"title": "Name", "type": "string"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Description"}, "country_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Country Code"}, "address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Address"}, "postal_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Postal Number"}, "language_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Language Code"}, "customer_number": {"title": "Customer Number", "type": "string"}, "customer_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Slug"}}, "required": ["uid", "name", "customer_number"], "title": "CustomerGeneralOut", "type": "object"}, "CustomerGeneralIn": {"properties": {"name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Name"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Description"}, "country_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Country Code"}, "address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Address"}, "postal_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Postal Number"}, "language_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Language Code"}, "customer_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Slug"}}, "title": "CustomerGeneralIn", "type": "object"}, "CustomerBCIntegrationOut": {"properties": {"bc_tenant_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Tenant Id"}, "bc_environment": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Environment"}, "bc_company_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Company Id"}, "bc_accept_language": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Accept Language"}, "has_bc_config": {"title": "Has Bc Config", "type": "boolean"}}, "required": ["has_bc_config"], "title": "CustomerBCIntegrationOut", "type": "object"}, "CustomerBCIntegrationIn": {"properties": {"bc_tenant_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Tenant Id"}, "bc_environment": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Environment"}, "bc_company_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Company Id"}, "bc_accept_language": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Accept Language"}}, "title": "CustomerBCIntegrationIn", "type": "object"}, "BlockedEDISourceOut": {"properties": {"id": {"title": "Id", "type": "integer"}, "party_id": {"title": "Party Id", "type": "integer"}, "party_name": {"title": "Party Name", "type": "string"}, "party_identifier": {"title": "Party Identifier", "type": "string"}, "origin": {"title": "Origin", "type": "integer"}, "origin_display": {"title": "Origin Display", "type": "string"}, "reason": {"title": "Reason", "type": "string"}, "created_by_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Created By Id"}}, "required": ["id", "party_id", "party_name", "party_identifier", "origin", "origin_display", "reason"], "title": "BlockedEDISourceOut", "type": "object"}, "BlockedEDISourceIn": {"properties": {"party_id": {"title": "Party Id", "type": "integer"}, "origin": {"title": "Origin", "type": "integer"}, "reason": {"default": "", "title": "Reason", "type": "string"}}, "required": ["party_id", "origin"], "title": "BlockedEDISourceIn", "type": "object"}, "InboundEmailAddressOut": {"properties": {"id": {"title": "Id", "type": "integer"}, "email_address_prefix": {"title": "Email Address Prefix", "type": "string"}, "full_email": {"title": "Full Email", "type": "string"}, "override_recipient": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Override Recipient"}, "is_active": {"title": "Is Active", "type": "boolean"}}, "required": ["id", "email_address_prefix", "full_email", "is_active"], "title": "InboundEmailAddressOut", "type": "object"}, "InboundEmailAddressCreateIn": {"properties": {"email_address_prefix": {"title": "Email Address Prefix", "type": "string"}, "override_recipient": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Override Recipient"}, "is_active": {"default": true, "title": "Is Active", "type": "boolean"}}, "required": ["email_address_prefix"], "title": "InboundEmailAddressCreateIn", "type": "object"}, "InboundEmailAddressPatchIn": {"properties": {"override_recipient": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Override Recipient"}, "is_active": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Active"}}, "title": "InboundEmailAddressPatchIn", "type": "object"}, "CustomerIdentifierOut": {"properties": {"uid": {"format": "uuid", "title": "Uid", "type": "string"}, "identifier_type": {"title": "Identifier Type", "type": "string"}, "identifier": {"title": "Identifier", "type": "string"}, "name_on_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Name On Identifier"}, "exists_in_smp": {"title": "Exists In Smp", "type": "boolean"}, "is_active": {"title": "Is Active", "type": "boolean"}, "integration_model": {"title": "Integration Model", "type": "integer"}, "email_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Email Address"}, "x400_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X400 Address"}, "bc_company_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Company Id"}, "bc_company_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Company Name"}, "force_internal_routing": {"title": "Force Internal Routing", "type": "boolean"}}, "required": ["uid", "identifier_type", "identifier", "exists_in_smp", "is_active", "integration_model", "force_internal_routing"], "title": "CustomerIdentifierOut", "type": "object"}, "CustomerIdentifierCreateIn": {"properties": {"identifier_type": {"title": "Identifier Type", "type": "string"}, "identifier": {"title": "Identifier", "type": "string"}, "name_on_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Name On Identifier"}, "integration_model": {"default": 0, "title": "Integration Model", "type": "integer"}, "email_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Email Address"}, "x400_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X400 Address"}}, "required": ["identifier_type", "identifier"], "title": "CustomerIdentifierCreateIn", "type": "object"}, "CustomerIdentifierPatchIn": {"properties": {"name_on_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Name On Identifier"}, "is_active": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Active"}, "integration_model": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Integration Model"}, "email_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Email Address"}, "x400_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "X400 Address"}, "bc_company_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Company Id"}, "bc_company_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Bc Company Name"}, "force_internal_routing": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Force Internal Routing"}}, "title": "CustomerIdentifierPatchIn", "type": "object"}, "BusinessCardIdentifierOut": {"properties": {"scheme": {"title": "Scheme", "type": "string"}, "value": {"title": "Value", "type": "string"}}, "required": ["scheme", "value"], "title": "BusinessCardIdentifierOut", "type": "object"}, "BusinessCardPreviewOut": {"properties": {"participant_id": {"title": "Participant Id", "type": "string"}, "participant_scheme": {"title": "Participant Scheme", "type": "string"}, "entity_name": {"title": "Entity Name", "type": "string"}, "country_code": {"title": "Country Code", "type": "string"}, "geographical_information": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Geographical Information"}, "registration_date": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Registration Date"}, "identifiers": {"items": {"$ref": "#/components/schemas/BusinessCardIdentifierOut"}, "title": "Identifiers", "type": "array"}}, "required": ["participant_id", "participant_scheme", "entity_name", "country_code", "identifiers"], "title": "BusinessCardPreviewOut", "type": "object"}, "BusinessCardResultOut": {"properties": {"success": {"title": "Success", "type": "boolean"}, "message": {"title": "Message", "type": "string"}, "identifier": {"title": "Identifier", "type": "string"}}, "required": ["success", "message", "identifier"], "title": "BusinessCardResultOut", "type": "object"}, "BusinessCardStatusOut": {"properties": {"published": {"title": "Published", "type": "boolean"}, "identifier": {"title": "Identifier", "type": "string"}, "message": {"title": "Message", "type": "string"}}, "required": ["published", "identifier", "message"], "title": "BusinessCardStatusOut", "type": "object"}, "PartyOut": {"properties": {"id": {"title": "Id", "type": "integer"}, "party_name": {"title": "Party Name", "type": "string"}, "party_identifier": {"title": "Party Identifier", "type": "string"}, "country_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Country Code"}, "default_delivery_method": {"title": "Default Delivery Method", "type": "string"}}, "required": ["id", "party_name", "party_identifier", "default_delivery_method"], "title": "PartyOut", "type": "object"}, "PartyIdentifierOut": {"properties": {"id": {"title": "Id", "type": "integer"}, "identifier_scheme": {"title": "Identifier Scheme", "type": "string"}, "identifier_value": {"title": "Identifier Value", "type": "string"}, "location_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Location Name"}, "is_primary": {"title": "Is Primary", "type": "boolean"}, "delivery_method": {"title": "Delivery Method", "type": "string"}}, "required": ["id", "identifier_scheme", "identifier_value", "is_primary", "delivery_method"], "title": "PartyIdentifierOut", "type": "object"}, "PartyIdentifierCreateIn": {"properties": {"identifier_scheme": {"title": "Identifier Scheme", "type": "string"}, "identifier_value": {"title": "Identifier Value", "type": "string"}, "location_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Location Name"}, "is_primary": {"default": false, "title": "Is Primary", "type": "boolean"}, "delivery_method": {"default": "INHERIT", "title": "Delivery Method", "type": "string"}}, "required": ["identifier_scheme", "identifier_value"], "title": "PartyIdentifierCreateIn", "type": "object"}, "PartyIdentifierPatchIn": {"properties": {"location_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Location Name"}, "is_primary": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Primary"}, "delivery_method": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Delivery Method"}}, "title": "PartyIdentifierPatchIn", "type": "object"}, "AvailableGroupOut": {"properties": {"group_id": {"title": "Group Id", "type": "integer"}, "group_name": {"title": "Group Name", "type": "string"}, "display_name": {"title": "Display Name", "type": "string"}, "source": {"title": "Source", "type": "string"}}, "required": ["group_id", "group_name", "display_name", "source"], "title": "AvailableGroupOut", "type": "object"}, "InviteUserOut": {"properties": {"user_id": {"title": "User Id", "type": "integer"}, "email": {"title": "Email", "type": "string"}, "user_was_created": {"title": "User Was Created", "type": "boolean"}, "groups_assigned": {"items": {"type": "string"}, "title": "Groups Assigned", "type": "array"}}, "required": ["user_id", "email", "user_was_created", "groups_assigned"], "title": "InviteUserOut", "type": "object"}, "InviteUserIn": {"properties": {"name": {"title": "Name", "type": "string"}, "email": {"title": "Email", "type": "string"}, "national_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "National Id"}, "group_ids": {"default": [], "items": {"type": "integer"}, "title": "Group Ids", "type": "array"}}, "required": ["name", "email"], "title": "InviteUserIn", "type": "object"}, "EBCCredentialOut": {"properties": {"id": {"format": "uuid", "title": "Id", "type": "string"}, "client_id": {"format": "uuid", "title": "Client Id", "type": "string"}, "label": {"title": "Label", "type": "string"}, "is_active": {"title": "Is Active", "type": "boolean"}, "expires_at": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Expires At"}, "created_at": {"title": "Created At", "type": "string"}}, "required": ["id", "client_id", "label", "is_active", "created_at"], "title": "EBCCredentialOut", "type": "object"}, "EBCCredentialWithSecretOut": {"properties": {"id": {"format": "uuid", "title": "Id", "type": "string"}, "client_id": {"format": "uuid", "title": "Client Id", "type": "string"}, "label": {"title": "Label", "type": "string"}, "is_active": {"title": "Is Active", "type": "boolean"}, "expires_at": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Expires At"}, "created_at": {"title": "Created At", "type": "string"}, "client_secret": {"title": "Client Secret", "type": "string"}}, "required": ["id", "client_id", "label", "is_active", "created_at", "client_secret"], "title": "EBCCredentialWithSecretOut", "type": "object"}, "EBCCredentialCreateIn": {"properties": {"label": {"default": "", "title": "Label", "type": "string"}, "expires_at": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Expires At"}}, "title": "EBCCredentialCreateIn", "type": "object"}, "EBCCredentialPatchIn": {"properties": {"label": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Label"}, "expires_at": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Expires At"}, "is_active": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Active"}}, "title": "EBCCredentialPatchIn", "type": "object"}, "PeppolIdentifierOut": {"properties": {"id": {"title": "Id", "type": "integer"}, "scheme": {"title": "Scheme", "type": "string"}, "value": {"title": "Value", "type": "string"}, "is_active": {"title": "Is Active", "type": "boolean"}}, "required": ["id", "scheme", "value", "is_active"], "title": "PeppolIdentifierOut", "type": "object"}, "PeppolIdentifierCreateIn": {"properties": {"scheme": {"title": "Scheme", "type": "string"}, "value": {"title": "Value", "type": "string"}, "is_active": {"default": true, "title": "Is Active", "type": "boolean"}}, "required": ["scheme", "value"], "title": "PeppolIdentifierCreateIn", "type": "object"}, "PeppolIdentifierPatchIn": {"properties": {"scheme": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Scheme"}, "value": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Value"}, "is_active": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Active"}}, "title": "PeppolIdentifierPatchIn", "type": "object"}, "CertificateInfo": {"properties": {"pk": {"format": "uuid", "title": "Pk", "type": "string"}, "common_name": {"title": "Common Name", "type": "string"}, "expires_at": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Expires At"}, "cloudflare_certificate_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Cloudflare Certificate Id"}, "has_pem": {"title": "Has Pem", "type": "boolean"}, "customer_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Number"}}, "required": ["pk", "common_name", "has_pem"], "title": "CertificateInfo", "type": "object"}, "CreateCertificateRequest": {"properties": {"customer_id": {"title": "Customer Id", "type": "integer"}}, "required": ["customer_id"], "title": "CreateCertificateRequest", "type": "object"}, "MicrosoftAuthorizeResponse": {"properties": {"authorization_url": {"title": "Authorization Url", "type": "string"}}, "required": ["authorization_url"], "title": "MicrosoftAuthorizeResponse", "type": "object"}, "TokenResponse": {"properties": {"access_token": {"title": "Access Token", "type": "string"}, "token_type": {"default": "Bearer", "title": "Token Type", "type": "string"}, "expires_in": {"title": "Expires In", "type": "integer"}, "refresh_token": {"title": "Refresh Token", "type": "string"}}, "required": ["access_token", "expires_in", "refresh_token"], "title": "TokenResponse", "type": "object"}, "ExchangeTempCodeRequest": {"properties": {"temp_code": {"title": "Temp Code", "type": "string"}}, "required": ["temp_code"], "title": "ExchangeTempCodeRequest", "type": "object"}, "RefreshTokenRequest": {"properties": {"refresh_token": {"title": "Refresh Token", "type": "string"}}, "required": ["refresh_token"], "title": "RefreshTokenRequest", "type": "object"}, "AudkenniStartResponse": {"properties": {"session_id": {"title": "Session Id", "type": "string"}}, "required": ["session_id"], "title": "AudkenniStartResponse", "type": "object"}, "AudkenniAppStartRequest": {"properties": {"national_id": {"maxLength": 10, "minLength": 10, "title": "National Id", "type": "string"}, "customer_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Slug"}, "partner_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Partner Slug"}}, "required": ["national_id"], "title": "AudkenniAppStartRequest", "type": "object"}, "AudkenniMobileStartRequest": {"properties": {"mobile_number": {"maxLength": 7, "minLength": 7, "title": "Mobile Number", "type": "string"}, "customer_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Slug"}, "partner_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Partner Slug"}}, "required": ["mobile_number"], "title": "AudkenniMobileStartRequest", "type": "object"}, "AudkenniPollResponse": {"properties": {"status": {"title": "Status", "type": "string"}, "temp_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Temp Code"}, "error": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Error"}, "error_code": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Error Code"}}, "required": ["status"], "title": "AudkenniPollResponse", "type": "object"}, "MagicLinkRequestSchema": {"properties": {"email": {"title": "Email", "type": "string"}, "frontend_redirect_uri": {"title": "Frontend Redirect Uri", "type": "string"}, "customer_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Slug"}, "partner_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Partner Slug"}}, "required": ["email", "frontend_redirect_uri"], "title": "MagicLinkRequestSchema", "type": "object"}, "MeOut": {"properties": {"email": {"title": "Email", "type": "string"}, "first_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "First Name"}, "last_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Last Name"}, "language": {"title": "Language", "type": "string"}, "is_master_user": {"title": "Is Master User", "type": "boolean"}, "partner": {"$ref": "#/components/schemas/PartnerOut"}, "permissions": {"$ref": "#/components/schemas/PermissionsOut"}}, "required": ["email", "language", "is_master_user", "partner", "permissions"], "title": "MeOut", "type": "object"}, "PartnerOut": {"properties": {"name": {"title": "Name", "type": "string"}, "partner_slug": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Partner Slug"}, "is_full_whitelabel": {"title": "Is Full Whitelabel", "type": "boolean"}, "whitelabel_base_url": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Whitelabel Base Url"}, "language_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Language Code"}, "number_format_locale": {"title": "Number Format Locale", "type": "string"}, "theme": {"anyOf": [{"$ref": "#/components/schemas/ThemeOut"}, {"type": "null"}]}}, "required": ["name", "is_full_whitelabel", "number_format_locale"], "title": "PartnerOut", "type": "object"}, "PermissionsOut": {"description": "Coarse-grained permission summary for frontend navigation.\nThe backend always enforces fine-grained permissions per request;\nthis is purely to drive UI visibility.", "properties": {"is_staff": {"title": "Is Staff", "type": "boolean"}, "is_superuser": {"title": "Is Superuser", "type": "boolean"}, "can_view_all_customers": {"title": "Can View All Customers", "type": "boolean"}, "can_view_all_partner_customers": {"title": "Can View All Partner Customers", "type": "boolean"}, "can_view_customer": {"title": "Can View Customer", "type": "boolean"}}, "required": ["is_staff", "is_superuser", "can_view_all_customers", "can_view_all_partner_customers", "can_view_customer"], "title": "PermissionsOut", "type": "object"}, "ThemeOut": {"properties": {"logo": {"title": "Logo", "type": "string"}, "background_type": {"title": "Background Type", "type": "string"}, "background_gradient_start": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Background Gradient Start"}, "background_gradient_end": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Background Gradient End"}, "background_gradient_angle": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Background Gradient Angle"}, "background_image_url": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Background Image Url"}, "background_solid_color": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Background Solid Color"}, "primary_color": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Primary Color"}, "secondary_color": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Secondary Color"}}, "required": ["logo", "background_type"], "title": "ThemeOut", "type": "object"}, "PagedUserListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/UserListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedUserListItem", "type": "object"}, "UserListItem": {"properties": {"uid": {"title": "Uid", "type": "integer"}, "email": {"title": "Email", "type": "string"}, "first_name": {"title": "First Name", "type": "string"}, "last_name": {"title": "Last Name", "type": "string"}, "is_active": {"title": "Is Active", "type": "boolean"}, "customer_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Customer Id"}, "customer_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Name"}, "partner_id": {"title": "Partner Id", "type": "integer"}, "date_joined": {"title": "Date Joined", "type": "string"}, "language": {"title": "Language", "type": "string"}, "parent_user_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Parent User Id"}, "can_hijack": {"default": false, "title": "Can Hijack", "type": "boolean"}, "can_deactivate": {"default": false, "title": "Can Deactivate", "type": "boolean"}}, "required": ["uid", "email", "first_name", "last_name", "is_active", "partner_id", "date_joined", "language"], "title": "UserListItem", "type": "object"}, "SocialAccountOut": {"properties": {"provider": {"title": "Provider", "type": "string"}, "uid": {"title": "Uid", "type": "string"}}, "required": ["provider", "uid"], "title": "SocialAccountOut", "type": "object"}, "UserDetailOut": {"properties": {"uid": {"title": "Uid", "type": "integer"}, "email": {"title": "Email", "type": "string"}, "first_name": {"title": "First Name", "type": "string"}, "last_name": {"title": "Last Name", "type": "string"}, "is_active": {"title": "Is Active", "type": "boolean"}, "language": {"title": "Language", "type": "string"}, "date_joined": {"title": "Date Joined", "type": "string"}, "customer_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Customer Id"}, "partner_id": {"title": "Partner Id", "type": "integer"}, "parent_user_id": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Parent User Id"}, "social_accounts": {"items": {"$ref": "#/components/schemas/SocialAccountOut"}, "title": "Social Accounts", "type": "array"}, "permissions": {"items": {"$ref": "#/components/schemas/UserPermissionOut"}, "title": "Permissions", "type": "array"}, "groups": {"items": {"$ref": "#/components/schemas/UserGroupOut"}, "title": "Groups", "type": "array"}, "can_hijack": {"title": "Can Hijack", "type": "boolean"}, "can_deactivate": {"title": "Can Deactivate", "type": "boolean"}}, "required": ["uid", "email", "first_name", "last_name", "is_active", "language", "date_joined", "partner_id", "social_accounts", "permissions", "groups", "can_hijack", "can_deactivate"], "title": "UserDetailOut", "type": "object"}, "UserGroupOut": {"properties": {"id": {"title": "Id", "type": "integer"}, "name": {"title": "Name", "type": "string"}}, "required": ["id", "name"], "title": "UserGroupOut", "type": "object"}, "UserPermissionOut": {"properties": {"codename": {"title": "Codename", "type": "string"}, "name": {"title": "Name", "type": "string"}}, "required": ["codename", "name"], "title": "UserPermissionOut", "type": "object"}, "PasswordResetOut": {"properties": {"new_password": {"title": "New Password", "type": "string"}}, "required": ["new_password"], "title": "PasswordResetOut", "type": "object"}, "HijackOut": {"properties": {"access_token": {"title": "Access Token", "type": "string"}, "hijack_session_id": {"title": "Hijack Session Id", "type": "string"}, "hijacked_user_id": {"title": "Hijacked User Id", "type": "integer"}, "hijacked_email": {"title": "Hijacked Email", "type": "string"}}, "required": ["access_token", "hijack_session_id", "hijacked_user_id", "hijacked_email"], "title": "HijackOut", "type": "object"}, "BusinessListItem": {"properties": {"kennitala": {"description": "Icelandic company/individual ID (10 digits)", "examples": ["5005101350"], "title": "Kennitala", "type": "string"}, "full_name": {"description": "Full registered name", "examples": ["D\u00e6mi ehf."], "title": "Full Name", "type": "string"}, "short_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Short / trading name", "title": "Short Name"}, "is_company": {"description": "True if company, False if individual", "title": "Is Company", "type": "boolean"}, "business_type_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Business type code", "examples": ["ehf"], "title": "Business Type Code"}, "business_type_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Business type name (English)", "examples": ["Private Limited Company"], "title": "Business Type Name"}, "address_street": {"anyOf": [{"type": "string"}, {"type": "null"}], "examples": ["Laugavegur 1"], "title": "Address Street"}, "address_postal_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "examples": ["101"], "title": "Address Postal Code"}, "address_municipality": {"anyOf": [{"type": "string"}, {"type": "null"}], "examples": ["Reykjav\u00edk"], "title": "Address Municipality"}, "deregistered": {"examples": [false], "title": "Deregistered", "type": "boolean"}, "date_established": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date Established"}, "registered_at": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Registered At"}, "deregistered_at": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Deregistered At"}}, "required": ["kennitala", "full_name", "is_company", "deregistered"], "title": "BusinessListItem", "type": "object"}, "PagedBusinessListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/BusinessListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedBusinessListItem", "type": "object"}, "AddressOut": {"properties": {"street": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Street"}, "postal_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Postal Code"}, "municipality": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Municipality"}, "country": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Country"}}, "title": "AddressOut", "type": "object"}, "BusinessDetail": {"properties": {"kennitala": {"title": "Kennitala", "type": "string"}, "full_name": {"title": "Full Name", "type": "string"}, "short_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Short Name"}, "alt_foreign_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Alt Foreign Name"}, "is_company": {"title": "Is Company", "type": "boolean"}, "business_type": {"anyOf": [{"$ref": "#/components/schemas/BusinessTypeOut"}, {"type": "null"}]}, "business_activity": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Business Activity"}, "chairman": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Chairman"}, "board_member": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Board Member"}, "legal_address": {"$ref": "#/components/schemas/AddressOut"}, "operational_address": {"$ref": "#/components/schemas/AddressOut"}, "intl_address": {"anyOf": [{"$ref": "#/components/schemas/AddressOut"}, {"type": "null"}]}, "currency": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Currency"}, "share_capital": {"anyOf": [{"pattern": "^(?!^[-+.]*$)[+-]?0*\\d*\\.?\\d*$", "type": "string"}, {"type": "null"}], "title": "Share Capital"}, "remarks": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Remarks"}, "banned": {"title": "Banned", "type": "boolean"}, "date_established": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date Established"}, "date_bankrupt": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Date Bankrupt"}, "registered_at": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Registered At"}, "deregistered": {"title": "Deregistered", "type": "boolean"}, "deregistered_at": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Deregistered At"}, "deregistration_reason": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Deregistration Reason"}, "parent_company": {"anyOf": [{"$ref": "#/components/schemas/ParentCompanyOut"}, {"type": "null"}]}, "registry_updated_at": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Registry Updated At"}}, "required": ["kennitala", "full_name", "is_company", "legal_address", "operational_address", "banned", "deregistered"], "title": "BusinessDetail", "type": "object"}, "BusinessTypeOut": {"properties": {"code": {"title": "Code", "type": "string"}, "name_is": {"title": "Name Is", "type": "string"}, "name_en": {"title": "Name En", "type": "string"}}, "required": ["code", "name_is", "name_en"], "title": "BusinessTypeOut", "type": "object"}, "ParentCompanyOut": {"properties": {"kennitala": {"title": "Kennitala", "type": "string"}, "full_name": {"title": "Full Name", "type": "string"}}, "required": ["kennitala", "full_name"], "title": "ParentCompanyOut", "type": "object"}, "VATNumberOut": {"properties": {"vsk_number": {"description": "VAT registration number", "title": "Vsk Number", "type": "string"}, "code": {"description": "VSK code", "title": "Code", "type": "string"}, "opened": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "description": "Date VAT registration opened", "title": "Opened"}, "closed": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "description": "Date VAT registration closed (null = active)", "title": "Closed"}, "is_active": {"description": "True when closed is null", "title": "Is Active", "type": "boolean"}}, "required": ["vsk_number", "code", "is_active"], "title": "VATNumberOut", "type": "object"}, "ClassificationOut": {"properties": {"code": {"description": "\u00cdSAT code", "title": "Code", "type": "string"}, "name_is": {"description": "Classification name (Icelandic)", "title": "Name Is", "type": "string"}, "name_en": {"description": "Classification name (English)", "title": "Name En", "type": "string"}}, "required": ["code", "name_is", "name_en"], "title": "ClassificationOut", "type": "object"}, "DashboardStats": {"properties": {"period_days": {"description": "Number of days each period covers", "examples": [7], "title": "Period Days", "type": "integer"}, "sent_count": {"description": "Envelopes sent in the current period", "title": "Sent Count", "type": "integer"}, "sent_previous": {"description": "Envelopes sent in the previous period", "title": "Sent Previous", "type": "integer"}, "received_count": {"description": "Envelopes received in the current period", "title": "Received Count", "type": "integer"}, "received_previous": {"description": "Envelopes received in the previous period", "title": "Received Previous", "type": "integer"}, "errors_count": {"description": "Errored envelopes in the current period", "title": "Errors Count", "type": "integer"}, "errors_previous": {"description": "Errored envelopes in the previous period", "title": "Errors Previous", "type": "integer"}, "email_sent_count": {"description": "Envelopes sent via email in the current period", "title": "Email Sent Count", "type": "integer"}, "email_sent_previous": {"description": "Envelopes sent via email in the previous period", "title": "Email Sent Previous", "type": "integer"}}, "required": ["period_days", "sent_count", "sent_previous", "received_count", "received_previous", "errors_count", "errors_previous", "email_sent_count", "email_sent_previous"], "title": "DashboardStats", "type": "object"}, "TrendPoint": {"properties": {"date": {"description": "ISO 8601 date", "examples": ["2024-01-01"], "title": "Date", "type": "string"}, "sent": {"description": "Envelopes sent on this day", "title": "Sent", "type": "integer"}, "received": {"description": "Envelopes received on this day", "title": "Received", "type": "integer"}}, "required": ["date", "sent", "received"], "title": "TrendPoint", "type": "object"}, "PagedTransportMessageListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/TransportMessageListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedTransportMessageListItem", "type": "object"}, "TransportMessageListItem": {"properties": {"message_id": {"format": "uuid", "title": "Message Id", "type": "string"}, "direction": {"description": "0=INBOUND, 1=OUTBOUND, 2=PASSTHROUGH", "title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "status": {"title": "Status", "type": "string"}, "message_type": {"title": "Message Type", "type": "string"}, "message_type_label": {"title": "Message Type Label", "type": "string"}, "routing_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Routing Code"}, "remote_message_id": {"title": "Remote Message Id", "type": "string"}, "transport_remote_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Transport Remote Id"}, "source_type": {"description": "\"mailbox\" | \"sftp\"", "title": "Source Type", "type": "string"}, "source_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Source Name"}, "envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Envelope Id"}, "nad_su_gln": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "NAD+SU supplier GLN", "title": "Nad Su Gln"}, "nad_by_gln": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "NAD+BY buyer GLN", "title": "Nad By Gln"}, "nad_dp_gln": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "NAD+DP delivery party GLN", "title": "Nad Dp Gln"}, "import_failed": {"title": "Import Failed", "type": "boolean"}, "confirmed_at": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Confirmed At"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["message_id", "direction", "direction_label", "status", "message_type", "message_type_label", "remote_message_id", "source_type", "import_failed", "created_at", "updated_at"], "title": "TransportMessageListItem", "type": "object"}, "TransportMessageDetail": {"properties": {"message_id": {"format": "uuid", "title": "Message Id", "type": "string"}, "direction": {"title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "status": {"title": "Status", "type": "string"}, "message_type": {"title": "Message Type", "type": "string"}, "message_type_label": {"title": "Message Type Label", "type": "string"}, "wire_format": {"title": "Wire Format", "type": "integer"}, "wire_format_label": {"title": "Wire Format Label", "type": "string"}, "routing_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Routing Code"}, "remote_message_id": {"title": "Remote Message Id", "type": "string"}, "transport_remote_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Transport Remote Id"}, "resolved_x400_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Resolved X400 Address"}, "p2_originator": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "P2 Originator"}, "source_type": {"title": "Source Type", "type": "string"}, "source_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Source Name"}, "envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "title": "Envelope Id"}, "nad_su_gln": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Nad Su Gln"}, "nad_by_gln": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Nad By Gln"}, "nad_dp_gln": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Nad Dp Gln"}, "header_content": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Header Content"}, "edi_content": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Edi Content"}, "formatted_edi_content": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "EDI content formatted for display: EDIFACT segments split onto individual lines at the segment terminator (apostrophe). Null when edi_content is absent.", "title": "Formatted Edi Content"}, "formatted_header_content": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "Header content normalised to Unix line endings.", "title": "Formatted Header Content"}, "import_failed": {"title": "Import Failed", "type": "boolean"}, "import_failed_at": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Import Failed At"}, "confirmed_at": {"anyOf": [{"format": "date-time", "type": "string"}, {"type": "null"}], "title": "Confirmed At"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["message_id", "direction", "direction_label", "status", "message_type", "message_type_label", "wire_format", "wire_format_label", "remote_message_id", "source_type", "import_failed", "created_at", "updated_at"], "title": "TransportMessageDetail", "type": "object"}, "TransportMessageEventItem": {"properties": {"id": {"title": "Id", "type": "integer"}, "event_type": {"title": "Event Type", "type": "integer"}, "event_type_label": {"title": "Event Type Label", "type": "string"}, "severity": {"title": "Severity", "type": "integer"}, "severity_label": {"title": "Severity Label", "type": "string"}, "error_message": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Error Message"}, "retry_count": {"title": "Retry Count", "type": "integer"}, "username": {"title": "Username", "type": "string"}, "json_message": {"anyOf": [{}, {"type": "null"}], "title": "Json Message"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}}, "required": ["id", "event_type", "event_type_label", "severity", "severity_label", "retry_count", "username", "created_at"], "title": "TransportMessageEventItem", "type": "object"}, "OrderListItem": {"description": "Returned by GET /orders/ \u2014 one item per envelope.", "properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "order_id": {"format": "uuid", "title": "Order Id", "type": "string"}, "direction": {"description": "0=Inbound, 1=Outbound", "title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "order_number": {"title": "Order Number", "type": "string"}, "issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Issue Date"}, "buyer_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Name"}, "buyer_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Identifier"}, "seller_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Name"}, "seller_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Identifier"}, "currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Currency Code"}, "payable_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Payable Amount"}, "source_format": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Source Format"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "order_id", "direction", "direction_label", "order_number", "created_at", "updated_at"], "title": "OrderListItem", "type": "object"}, "PagedOrderListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/OrderListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedOrderListItem", "type": "object"}, "OrderDetail": {"properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "order_id": {"format": "uuid", "title": "Order Id", "type": "string"}, "direction": {"title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "order_number": {"title": "Order Number", "type": "string"}, "issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Issue Date"}, "currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Currency Code"}, "payable_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Payable Amount"}, "line_extension_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Line Extension Amount"}, "source_format": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Source Format"}, "buyer_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Name"}, "buyer_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Identifier"}, "buyer_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Address"}, "buyer_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer City"}, "buyer_postal_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Postal Number"}, "buyer_country": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Country"}, "seller_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Name"}, "seller_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Identifier"}, "seller_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Address"}, "seller_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller City"}, "seller_postal_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Postal Number"}, "seller_country": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Country"}, "customer_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Customer Reference"}, "sales_order_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sales Order Id"}, "note": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Note"}, "has_pdf": {"default": false, "title": "Has Pdf", "type": "boolean"}, "has_xml": {"default": false, "title": "Has Xml", "type": "boolean"}, "has_desadvs": {"default": false, "title": "Has Desadvs", "type": "boolean"}, "order_lines": {"default": [], "items": {"$ref": "#/components/schemas/OrderLineItem"}, "title": "Order Lines", "type": "array"}, "related_desadvs": {"default": [], "items": {"$ref": "#/components/schemas/RelatedDesadvItem"}, "title": "Related Desadvs", "type": "array"}, "related_invoices": {"default": [], "items": {"$ref": "#/components/schemas/RelatedInvoiceItem"}, "title": "Related Invoices", "type": "array"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "order_id", "direction", "direction_label", "order_number", "created_at", "updated_at"], "title": "OrderDetail", "type": "object"}, "OrderLineItem": {"properties": {"line_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Line Id"}, "quantity": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Quantity"}, "unit_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Unit Code"}, "line_extension_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Line Extension Amount"}, "price_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Price Amount"}, "description": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Description"}, "name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Name"}, "buyers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyers Item Id"}, "sellers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sellers Item Id"}, "standard_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Standard Item Id"}, "received_quantity": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Received Quantity"}, "fulfillment_status": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "\"complete\" | \"partial\" | \"zero\" | \"not_found\" | null (no DESADV)", "title": "Fulfillment Status"}}, "title": "OrderLineItem", "type": "object"}, "RelatedDesadvItem": {"properties": {"despatch_advice_id": {"format": "uuid", "title": "Despatch Advice Id", "type": "string"}, "envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "Envelope ID \u2014 use for the /despatch-advice/{envelope_id} endpoint", "title": "Envelope Id"}, "despatch_advice_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Advice Number"}, "issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Issue Date"}, "despatch_supplier_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Despatch Supplier Name"}}, "required": ["despatch_advice_id"], "title": "RelatedDesadvItem", "type": "object"}, "RelatedInvoiceItem": {"properties": {"invoice_id": {"format": "uuid", "title": "Invoice Id", "type": "string"}, "invoice_number": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Invoice Number"}, "issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Issue Date"}, "payable_amount": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Payable Amount"}, "currency_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Currency Code"}}, "required": ["invoice_id"], "title": "RelatedInvoiceItem", "type": "object"}, "PagedDespatchAdviceListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/DespatchAdviceListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedDespatchAdviceListItem", "type": "object"}, "PagedReturnAnnouncementListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/ReturnAnnouncementListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedReturnAnnouncementListItem", "type": "object"}, "ReturnAnnouncementListItem": {"description": "Returned by GET /return-orders/ \u2014 one item per envelope.", "properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "return_announcement_id": {"format": "uuid", "title": "Return Announcement Id", "type": "string"}, "direction": {"description": "0=Inbound, 1=Outbound", "title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "return_announcement_number": {"title": "Return Announcement Number", "type": "string"}, "issue_date": {"format": "date", "title": "Issue Date", "type": "string"}, "buyer_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Name"}, "buyer_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Identifier"}, "seller_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Name"}, "seller_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Identifier"}, "order_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Order Reference"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "return_announcement_id", "direction", "direction_label", "return_announcement_number", "issue_date", "created_at", "updated_at"], "title": "ReturnAnnouncementListItem", "type": "object"}, "ReturnAnnouncementDetail": {"properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "return_announcement_id": {"format": "uuid", "title": "Return Announcement Id", "type": "string"}, "direction": {"title": "Direction", "type": "integer"}, "direction_label": {"title": "Direction Label", "type": "string"}, "return_announcement_number": {"title": "Return Announcement Number", "type": "string"}, "issue_date": {"format": "date", "title": "Issue Date", "type": "string"}, "planned_return_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Planned Return Date"}, "note": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Note"}, "source_format": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Source Format"}, "order_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Order Reference"}, "delivery_reference": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Delivery Reference"}, "buyer_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Name"}, "buyer_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Identifier"}, "buyer_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Address"}, "buyer_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer City"}, "buyer_country": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyer Country"}, "seller_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Name"}, "seller_identifier": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Identifier"}, "seller_address": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Address"}, "seller_city": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller City"}, "seller_country": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Seller Country"}, "linked_order_envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "Envelope ID of the linked Order \u2014 use for /orders/{envelope_id}", "title": "Linked Order Envelope Id"}, "linked_desadv_envelope_id": {"anyOf": [{"format": "uuid", "type": "string"}, {"type": "null"}], "description": "Envelope ID of the linked DespatchAdvice \u2014 use for /despatch-advice/{envelope_id}", "title": "Linked Desadv Envelope Id"}, "has_pdf": {"default": false, "title": "Has Pdf", "type": "boolean"}, "has_xml": {"default": false, "title": "Has Xml", "type": "boolean"}, "lines": {"default": [], "items": {"$ref": "#/components/schemas/ReturnAnnouncementLineItem"}, "title": "Lines", "type": "array"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "return_announcement_id", "direction", "direction_label", "return_announcement_number", "issue_date", "created_at", "updated_at"], "title": "ReturnAnnouncementDetail", "type": "object"}, "ReturnAnnouncementLineItem": {"properties": {"line_number": {"title": "Line Number", "type": "string"}, "return_quantity": {"anyOf": [{"type": "number"}, {"type": "null"}], "title": "Return Quantity"}, "unit_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Unit Code"}, "sellers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Sellers Item Id"}, "ean": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Ean"}, "buyers_item_id": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Buyers Item Id"}, "item_name": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Item Name"}, "reason_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Reason Code"}, "reason_text": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Reason Text"}, "condition_code": {"anyOf": [{"type": "string"}, {"type": "null"}], "title": "Condition Code"}}, "required": ["line_number"], "title": "ReturnAnnouncementLineItem", "type": "object"}, "PagedRemittanceListItem": {"properties": {"items": {"items": {"$ref": "#/components/schemas/RemittanceListItem"}, "title": "Items", "type": "array"}, "count": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Count"}, "next_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Next Page"}, "previous_page": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Previous Page"}, "is_last_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is Last Page"}, "is_first_page": {"anyOf": [{"type": "boolean"}, {"type": "null"}], "title": "Is First Page"}, "total_pages": {"anyOf": [{"type": "integer"}, {"type": "null"}], "title": "Total Pages"}}, "required": ["items", "count", "next_page", "previous_page", "is_last_page", "is_first_page", "total_pages"], "title": "PagedRemittanceListItem", "type": "object"}, "RemittanceListItem": {"description": "Returned by GET /remittance-advice/ \u2014 one item per envelope.", "properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "remittance_id": {"format": "uuid", "title": "Remittance Id", "type": "string"}, "document_number": {"title": "Document Number", "type": "string"}, "issue_date": {"format": "date", "title": "Issue Date", "type": "string"}, "document_currency_code": {"title": "Document Currency Code", "type": "string"}, "total_payment_amount": {"title": "Total Payment Amount", "type": "number"}, "payer_name": {"title": "Payer Name", "type": "string"}, "payer_company_id": {"title": "Payer Company Id", "type": "string"}, "seller_name": {"title": "Seller Name", "type": "string"}, "seller_company_id": {"title": "Seller Company Id", "type": "string"}, "payment_means_code": {"description": "\"42\"=RB transfer, \"30\"=SWIFT", "title": "Payment Means Code", "type": "string"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "remittance_id", "document_number", "issue_date", "document_currency_code", "total_payment_amount", "payer_name", "payer_company_id", "seller_name", "seller_company_id", "payment_means_code", "created_at", "updated_at"], "title": "RemittanceListItem", "type": "object"}, "RemittanceDetail": {"description": "Returned by GET /remittance-advice/{envelope_id} \u2014 full detail with lines.", "properties": {"envelope_id": {"format": "uuid", "title": "Envelope Id", "type": "string"}, "remittance_id": {"format": "uuid", "title": "Remittance Id", "type": "string"}, "standard": {"title": "Standard", "type": "string"}, "ubl_version_id": {"title": "Ubl Version Id", "type": "string"}, "customization_id": {"title": "Customization Id", "type": "string"}, "profile_id": {"title": "Profile Id", "type": "string"}, "document_number": {"title": "Document Number", "type": "string"}, "issue_date": {"format": "date", "title": "Issue Date", "type": "string"}, "issue_time": {"anyOf": [{"type": "string"}, {"type": "null"}], "description": "HH:MM:SS or null", "title": "Issue Time"}, "document_currency_code": {"title": "Document Currency Code", "type": "string"}, "total_payment_amount": {"title": "Total Payment Amount", "type": "number"}, "payer_reference": {"default": "", "title": "Payer Reference", "type": "string"}, "invoicing_party_reference": {"default": "", "title": "Invoicing Party Reference", "type": "string"}, "payer_endpoint_id": {"title": "Payer Endpoint Id", "type": "string"}, "payer_endpoint_scheme_id": {"title": "Payer Endpoint Scheme Id", "type": "string"}, "payer_name": {"title": "Payer Name", "type": "string"}, "payer_company_id": {"title": "Payer Company Id", "type": "string"}, "payer_company_scheme_id": {"title": "Payer Company Scheme Id", "type": "string"}, "seller_endpoint_id": {"title": "Seller Endpoint Id", "type": "string"}, "seller_endpoint_scheme_id": {"title": "Seller Endpoint Scheme Id", "type": "string"}, "seller_name": {"title": "Seller Name", "type": "string"}, "seller_company_id": {"title": "Seller Company Id", "type": "string"}, "seller_company_scheme_id": {"title": "Seller Company Scheme Id", "type": "string"}, "payee_id": {"title": "Payee Id", "type": "string"}, "payee_scheme_id": {"title": "Payee Scheme Id", "type": "string"}, "payee_name": {"title": "Payee Name", "type": "string"}, "payment_means_code": {"title": "Payment Means Code", "type": "string"}, "payment_id": {"default": "", "title": "Payment Id", "type": "string"}, "payee_account_id": {"title": "Payee Account Id", "type": "string"}, "financial_institution_branch_id": {"default": "", "title": "Financial Institution Branch Id", "type": "string"}, "financial_institution_id": {"default": "", "title": "Financial Institution Id", "type": "string"}, "has_pdf": {"default": false, "title": "Has Pdf", "type": "boolean"}, "has_xml": {"default": false, "title": "Has Xml", "type": "boolean"}, "lines": {"default": [], "items": {"$ref": "#/components/schemas/RemittanceLineItem"}, "title": "Lines", "type": "array"}, "created_at": {"format": "date-time", "title": "Created At", "type": "string"}, "updated_at": {"format": "date-time", "title": "Updated At", "type": "string"}}, "required": ["envelope_id", "remittance_id", "standard", "ubl_version_id", "customization_id", "profile_id", "document_number", "issue_date", "document_currency_code", "total_payment_amount", "payer_endpoint_id", "payer_endpoint_scheme_id", "payer_name", "payer_company_id", "payer_company_scheme_id", "seller_endpoint_id", "seller_endpoint_scheme_id", "seller_name", "seller_company_id", "seller_company_scheme_id", "payee_id", "payee_scheme_id", "payee_name", "payment_means_code", "payee_account_id", "created_at", "updated_at"], "title": "RemittanceDetail", "type": "object"}, "RemittanceLineItem": {"description": "One line in a remittance advice.", "properties": {"line_id": {"format": "uuid", "title": "Line Id", "type": "string"}, "line_number": {"title": "Line Number", "type": "string"}, "balance_amount": {"title": "Balance Amount", "type": "number"}, "balance_amount_currency_id": {"title": "Balance Amount Currency Id", "type": "string"}, "seller_reference": {"default": "", "title": "Seller Reference", "type": "string"}, "buyer_id": {"default": "", "title": "Buyer Id", "type": "string"}, "buyer_name": {"default": "", "title": "Buyer Name", "type": "string"}, "document_id": {"title": "Document Id", "type": "string"}, "document_issue_date": {"anyOf": [{"format": "date", "type": "string"}, {"type": "null"}], "title": "Document Issue Date"}, "document_type_code": {"description": "\"380\"=Invoice, \"381\"=CreditNote", "title": "Document Type Code", "type": "string"}, "document_type": {"default": "", "title": "Document Type", "type": "string"}}, "required": ["line_id", "line_number", "balance_amount", "balance_amount_currency_id", "document_id", "document_type_code"], "title": "RemittanceLineItem", "type": "object"}}, "securitySchemes": {"BasicAuth": {"type": "http", "scheme": "basic"}, "MutualTLSAuth": {"type": "mutualTLS", "in": "mutualTLS", "name": "x-ssl-cn"}, "ApiKey": {"type": "apiKey", "in": "query", "name": "api_key"}, "UserJWTBearerAuthAsync": {"type": "http", "scheme": "bearer"}, "MutualTLSAuthAsync": {"type": "mutualTLS", "in": "mutualTLS", "name": "x-ssl-cn"}, "CentaraAPIKeyHeaderAsync": {"type": "apiKey", "in": "header", "name": "api_key"}, "CentaraAPIKeyHeader": {"type": "apiKey", "in": "header", "name": "api_key"}, "UserJWTBearerAuth": {"type": "http", "scheme": "bearer"}, "OptionalMutualTLSAuthAsync": {"type": "mutualTLS", "in": "mutualTLS", "name": "x-ssl-cn"}, "UserSessionAuth": {"type": "apiKey", "in": "cookie", "name": "sessionid"}}}, "servers": [{"url": "https://api.outskira.com", "description": "Staging server"}, {"url": "https://api.centara.com", "description": "Production server"}, {}]}