{"openapi":"3.0.0","paths":{"/v1/webhooks":{"get":{"description":"Retrieve all registered webhook subscriptions for your account.","operationId":"WebhooksController_findAll","parameters":[{"name":"limit","required":false,"in":"query","schema":{"minimum":1,"maximum":100,"default":20,"type":"number"}},{"name":"offset","required":false,"in":"query","schema":{"minimum":0,"default":0,"type":"number"}},{"name":"sort","required":false,"in":"query","description":"Sort field","schema":{"example":"modified","type":"string"}},{"name":"order","required":false,"in":"query","schema":{"default":"desc","type":"string","enum":["asc","desc"]}}],"responses":{"200":{"description":"List of webhooks"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List webhook subscriptions","tags":["Webhooks"]},"post":{"description":"Register a new webhook endpoint to receive event notifications.","operationId":"WebhooksController_create","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateWebhookDto"}}}},"responses":{"201":{"description":"Webhook created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a webhook subscription","tags":["Webhooks"]}},"/v1/webhooks/events":{"get":{"description":"Returns the full catalog of events you can subscribe to.","operationId":"WebhooksController_listEvents","parameters":[],"responses":{"200":{"description":"Event catalog"}},"security":[{"api-key":[]}],"summary":"List available events","tags":["Webhooks"]}},"/v1/webhooks/{id}":{"get":{"description":"Retrieve details of a specific webhook subscription.","operationId":"WebhooksController_findOne","parameters":[{"name":"id","required":true,"in":"path","description":"Webhook subscription ID","schema":{"type":"string"}}],"responses":{"200":{"description":"Webhook details"},"404":{"description":"Webhook not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a webhook subscription","tags":["Webhooks"]},"delete":{"description":"Remove a webhook subscription. No further events will be delivered.","operationId":"WebhooksController_remove","parameters":[{"name":"id","required":true,"in":"path","description":"Webhook subscription ID","schema":{"type":"string"}}],"responses":{"200":{"description":"Webhook deleted"},"404":{"description":"Webhook not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a webhook subscription","tags":["Webhooks"]}},"/v1/webhooks/{id}/deliveries":{"get":{"description":"View recent delivery attempts for a webhook subscription.","operationId":"WebhooksController_listDeliveries","parameters":[{"name":"id","required":true,"in":"path","description":"Webhook subscription ID","schema":{"type":"string"}},{"name":"limit","required":false,"in":"query","schema":{"minimum":1,"maximum":100,"default":20,"type":"number"}},{"name":"offset","required":false,"in":"query","schema":{"minimum":0,"default":0,"type":"number"}},{"name":"sort","required":false,"in":"query","description":"Sort field","schema":{"example":"modified","type":"string"}},{"name":"order","required":false,"in":"query","schema":{"default":"desc","type":"string","enum":["asc","desc"]}}],"responses":{"200":{"description":"List of deliveries"}},"security":[{"api-key":[]}],"summary":"List webhook deliveries","tags":["Webhooks"]}},"/v1/events":{"get":{"description":"Retrieve a chronological log of events for your account. Use this to replay missed webhook deliveries or audit activity.","operationId":"EventsController_findAll","parameters":[{"name":"limit","required":false,"in":"query","schema":{"minimum":1,"maximum":100,"default":20,"type":"number"}},{"name":"offset","required":false,"in":"query","schema":{"minimum":0,"default":0,"type":"number"}},{"name":"sort","required":false,"in":"query","description":"Sort field","schema":{"example":"modified","type":"string"}},{"name":"order","required":false,"in":"query","schema":{"default":"desc","type":"string","enum":["asc","desc"]}},{"name":"event_type","required":false,"in":"query","description":"Filter by event type (e.g. \"sales-order.created\")","schema":{"type":"string"}},{"name":"resource","required":false,"in":"query","description":"Filter by resource slug (e.g. \"sales-orders\")","schema":{"type":"string"}},{"name":"since","required":false,"in":"query","description":"ISO 8601 timestamp — only events after this time","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of events"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List events","tags":["Events"]}},"/v1/banking/bank-transactions/{name}/actions/create-payment-entry":{"post":{"description":"Creates and reconciles a Payment Entry against the given Bank Transaction via the reconciliation tool.","operationId":"BankingActionsController_createPaymentEntry","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Transaction name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreatePaymentEntryBody"}}}},"responses":{"201":{"description":"Payment Entry created and reconciled"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Transaction not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create Payment Entry from bank transaction","tags":["Banking Actions"]}},"/v1/banking/bank-transactions/{name}/actions/create-journal-entry":{"post":{"description":"Creates and reconciles a Journal Entry against the given Bank Transaction.","operationId":"BankingActionsController_createJournalEntry","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Transaction name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateJournalEntryBody"}}}},"responses":{"201":{"description":"Journal Entry created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Transaction not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create Journal Entry from bank transaction","tags":["Banking Actions"]}},"/v1/banking/bank-transactions/{name}/actions/update-references":{"post":{"description":"Updates the reference number, party, and party type on a Bank Transaction.","operationId":"BankingActionsController_updateReferences","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Transaction name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateReferencesBody"}}}},"responses":{"200":{"description":"Bank Transaction updated"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Transaction not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update bank transaction references","tags":["Banking Actions"]}},"/v1/banking/bank-transactions/{name}/actions/unreconcile":{"post":{"description":"Removes all payment entries linked to the Bank Transaction and cancels any vouchers created during reconciliation.","operationId":"BankingActionsController_unreconcile","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Transaction name","schema":{"type":"string"}}],"responses":{"200":{"description":"Bank Transaction unreconciled"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Transaction not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Unreconcile bank transaction","tags":["Banking Actions"]}},"/v1/banking/bank-accounts/{name}/balance":{"get":{"description":"Returns the calculated account balance for a Bank Account as of the given date.","operationId":"BankingActionsController_getBalance","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Account name","schema":{"type":"string"}},{"name":"company","required":true,"in":"query","description":"Company that owns the Bank Account","schema":{"type":"string"}},{"name":"till_date","required":false,"in":"query","description":"Balance as of this date (YYYY-MM-DD)","schema":{}}],"responses":{"200":{"description":"Account balance"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get bank account balance","tags":["Banking Actions"]}},"/v1/banking/bank-accounts/{name}/closing-balance":{"get":{"description":"Returns the closing balance recorded from a bank statement for a given date.","operationId":"BankingActionsController_getClosingBalance","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Account name","schema":{"type":"string"}},{"name":"date","required":true,"in":"query","description":"Statement date (YYYY-MM-DD)","schema":{"type":"string"}}],"responses":{"200":{"description":"Closing balance"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get statement closing balance","tags":["Banking Actions"]},"post":{"description":"Records the closing balance from a bank statement for a Bank Account on a given date.","operationId":"BankingActionsController_setClosingBalance","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Account name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/SetClosingBalanceBody"}}}},"responses":{"200":{"description":"Closing balance saved"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Set statement closing balance","tags":["Banking Actions"]}},"/v1/banking/bank-accounts/{name}/details":{"get":{"description":"Returns account number, IBAN, branch and other metadata for a Bank Account.","operationId":"BankingActionsController_getDetails","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Account name","schema":{"type":"string"}}],"responses":{"200":{"description":"Bank Account details"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get bank account details","tags":["Banking Actions"]}},"/v1/banking/bank-accounts/{name}/unreconciled-transactions":{"get":{"description":"Returns the count and total value of unreconciled bank transactions on a Bank Account before a given date.","operationId":"BankingActionsController_getUnreconciled","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Account name","schema":{"type":"string"}},{"name":"from_date","required":true,"in":"query","description":"Cutoff date (YYYY-MM-DD)","schema":{"type":"string"}}],"responses":{"200":{"description":"Unreconciled transaction summary"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get older unreconciled transactions","tags":["Banking Actions"]}},"/v1/banking/bank-clearances/update-clearance-date":{"post":{"description":"Records the clearance date on a Payment Entry or Journal Entry line for a bank account.","operationId":"BankingActionsController_updateClearanceDate","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateClearanceDateBody"}}}},"responses":{"200":{"description":"Clearance date updated"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Set voucher clearance date","tags":["Banking Actions"]}},"/v1/banking/bank-clearances/clear-clearance-date":{"post":{"description":"Removes the clearance date from a voucher, marking it as no longer cleared by the bank.","operationId":"BankingActionsController_clearClearanceDate","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ClearClearanceDateBody"}}}},"responses":{"200":{"description":"Clearance date cleared"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Clear voucher clearance date","tags":["Banking Actions"]}},"/v1/banking/bank-statement-imports/{name}/actions/upload":{"post":{"description":"Uploads a bank statement file (CSV, XLSX, or MT940) via Frappe's standard file API, attaches it to the referenced Bank Statement Import document, and sets the document's import_file field to the uploaded file URL.","operationId":"BankingActionsController_uploadStatement","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Statement Import name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/UploadStatementBody"}}}},"responses":{"201":{"description":"Statement uploaded and attached"},"400":{"description":"Invalid or missing file","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Statement Import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Upload statement file for import","tags":["Banking Actions"]}},"/v1/banking/bank-statement-imports/{name}/actions/preview":{"post":{"description":"Returns a preview of parsed rows from an attached statement file or Google Sheet.","operationId":"BankingActionsController_previewImport","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Statement Import name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StatementPreviewBody"}}}},"responses":{"200":{"description":"Preview payload"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Statement Import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Preview statement import","tags":["Banking Actions"]}},"/v1/banking/bank-statement-imports/{name}/actions/start":{"post":{"description":"Enqueues the import job for a Bank Statement Import document.","operationId":"BankingActionsController_startImport","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Statement Import name","schema":{"type":"string"}}],"responses":{"200":{"description":"Import started"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Statement Import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Start statement import","tags":["Banking Actions"]}},"/v1/banking/bank-statement-imports/{name}/actions/mt940-to-csv":{"post":{"description":"Parses an attached MT940 file and produces a CSV file attached to the Bank Statement Import.","operationId":"BankingActionsController_convertMt940","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Statement Import name","schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Mt940ConvertBody"}}}},"responses":{"200":{"description":"CSV file URL"},"400":{"description":"Invalid MT940 file","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Statement Import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Convert MT940 to CSV","tags":["Banking Actions"]}},"/v1/banking/bank-statement-imports/{name}/status":{"get":{"description":"Returns the current status of the import job for a Bank Statement Import document.","operationId":"BankingActionsController_importStatus","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Statement Import name","schema":{"type":"string"}}],"responses":{"200":{"description":"Import status"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Statement Import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get import job status","tags":["Banking Actions"]}},"/v1/banking/bank-statement-imports/{name}/logs":{"get":{"description":"Returns per-row success/error logs recorded during a Bank Statement Import run.","operationId":"BankingActionsController_importLogs","parameters":[{"name":"name","required":true,"in":"path","description":"Bank Statement Import name","schema":{"type":"string"}}],"responses":{"200":{"description":"Import log entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Bank Statement Import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get import logs","tags":["Banking Actions"]}},"/v1/payment-reconciliation/unreconciled":{"get":{"description":"Returns outstanding invoices and unallocated payments for a party that can be matched against each other.","operationId":"PaymentReconciliationActionsController_unreconciled","parameters":[{"name":"company","required":false,"in":"query","description":"Company filter","schema":{}},{"name":"party","required":false,"in":"query","description":"Party name matching party_type","schema":{}},{"name":"party_type","required":false,"in":"query","description":"Customer, Supplier, or Employee","schema":{}}],"responses":{"200":{"description":"Unreconciled entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get unreconciled payments and invoices","tags":["Payment Reconciliation"]}},"/v1/payment-reconciliation/allocate":{"post":{"description":"Runs the auto-allocation pass that pairs selected payments with selected invoices.","operationId":"PaymentReconciliationActionsController_allocate","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AllocationsBody"}}}},"responses":{"200":{"description":"Allocations computed"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Allocate payments to invoices","tags":["Payment Reconciliation"]}},"/v1/payment-reconciliation/reconcile":{"post":{"description":"Commits the allocations to the ledger, creating any required gain/loss journals.","operationId":"PaymentReconciliationActionsController_reconcile","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AllocationsBody"}}}},"responses":{"200":{"description":"Reconciliation posted"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Post reconciliation entries","tags":["Payment Reconciliation"]}},"/v1/payment-reconciliation/dimension-filters":{"get":{"description":"Returns query definitions for dimension filters used by the reconciliation form.","operationId":"PaymentReconciliationActionsController_dimensionFilters","parameters":[{"name":"company","required":false,"in":"query","schema":{}}],"responses":{"200":{"description":"Dimension filter map"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get accounting dimension filter queries","tags":["Payment Reconciliation"]}},"/v1/payment-reconciliation/auto-process-enabled":{"get":{"description":"Returns whether the automated payment reconciliation process is enabled for this tenant.","operationId":"PaymentReconciliationActionsController_autoProcessEnabled","parameters":[],"responses":{"200":{"description":"Auto-process flag"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Check auto-reconcile flag","tags":["Payment Reconciliation"]}},"/v1/payment-requests/from-invoice":{"post":{"description":"Creates a Payment Request against a Sales Invoice, Sales Order, Purchase Invoice, or Purchase Order.","operationId":"PaymentRequestsActionsController_fromInvoice","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MakePaymentRequestBody"}}}},"responses":{"201":{"description":"Payment Request created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Reference document not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create Payment Request from source doc","tags":["Payment Requests Actions"]}},"/v1/payment-requests/{name}/actions/resend":{"post":{"description":"Re-sends the payment link email associated with a Payment Request.","operationId":"PaymentRequestsActionsController_resend","parameters":[{"name":"name","required":true,"in":"path","description":"Payment Request name","schema":{"type":"string"}}],"responses":{"200":{"description":"Email queued"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Payment Request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Resend payment request email","tags":["Payment Requests Actions"]}},"/v1/payment-requests/{name}/actions/make-payment-entry":{"post":{"description":"Generates a Payment Entry that settles the Payment Request against the referenced invoice.","operationId":"PaymentRequestsActionsController_makePaymentEntry","parameters":[{"name":"name","required":true,"in":"path","description":"Payment Request name","schema":{"type":"string"}}],"responses":{"201":{"description":"Payment Entry created"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Payment Request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create Payment Entry from request","tags":["Payment Requests Actions"]}},"/v1/payment-requests/{name}/subscription-details":{"get":{"description":"Returns the subscription plans linked to the invoice referenced by this Payment Request.","operationId":"PaymentRequestsActionsController_subscriptionDetails","parameters":[{"name":"name","required":true,"in":"path","description":"Payment Request name","schema":{"type":"string"}}],"responses":{"200":{"description":"Subscription plan list"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Payment Request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get subscription plans for request","tags":["Payment Requests Actions"]}},"/v1/integrations/plaid/link-token":{"post":{"description":"Generates a new short-lived Plaid Link token for initializing the client-side Link flow.","operationId":"PlaidIntegrationController_linkToken","parameters":[],"responses":{"201":{"description":"Link token payload"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create Plaid Link token","tags":["Plaid Integration"]}},"/v1/integrations/plaid/link-token/update":{"post":{"description":"Generates a Plaid Link token used to re-authenticate an existing Item after credential rotation.","operationId":"PlaidIntegrationController_linkTokenUpdate","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateLinkTokenBody"}}}},"responses":{"201":{"description":"Link token payload"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create Link token for update mode","tags":["Plaid Integration"]}},"/v1/integrations/plaid/config":{"get":{"description":"Returns the environment, client name, and a fresh Link token if the Plaid integration is enabled.","operationId":"PlaidIntegrationController_config","parameters":[],"responses":{"200":{"description":"Plaid config payload or \"disabled\""},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get Plaid configuration","tags":["Plaid Integration"]}},"/v1/integrations/plaid/institutions":{"post":{"description":"Exchanges the Plaid public token for an access token and creates or updates the linked Bank record.","operationId":"PlaidIntegrationController_addInstitution","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddInstitutionBody"}}}},"responses":{"201":{"description":"Bank record created or updated"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Register a Plaid institution","tags":["Plaid Integration"]}},"/v1/integrations/plaid/bank-accounts":{"post":{"description":"Creates Bank Account records in ERPNext for each account returned by Plaid Link.","operationId":"PlaidIntegrationController_addBankAccounts","parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AddBankAccountsBody"}}}},"responses":{"201":{"description":"Bank accounts created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Register Plaid bank accounts","tags":["Plaid Integration"]}},"/v1/integrations/plaid/sync":{"post":{"description":"Enqueues a background job that pulls the latest transactions from Plaid into ERPNext Bank Transactions.","operationId":"PlaidIntegrationController_sync","parameters":[],"responses":{"202":{"description":"Sync job enqueued"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Trigger Plaid transaction sync","tags":["Plaid Integration"]}},"/v1/addons":{"get":{"description":"Public catalog of add-ons available for purchase (name, slug, description, price, features). No API key required.","operationId":"AddonsController_list","parameters":[],"responses":{"200":{"description":"Add-on catalog"}},"summary":"List available add-ons","tags":["Add-ons"]}},"/v1/addons/mine":{"get":{"description":"Returns add-ons the authenticated tenant has subscribed to, including status and renewal date.","operationId":"AddonsController_listMine","parameters":[],"responses":{"200":{"description":"Subscribed add-ons"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List add-ons subscribed by the current tenant","tags":["Add-ons"]}},"/v1/addons/{slug}/subscribe":{"post":{"description":"Enables the given add-on for the authenticated tenant. Provisions billing and activates the associated resources.","operationId":"AddonsController_subscribe","parameters":[{"name":"slug","required":true,"in":"path","description":"Add-on slug (e.g. \"ecommerce-integrations\")","schema":{"type":"string"}}],"responses":{"201":{"description":"Subscription activated"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Add-on not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Subscribe to an add-on","tags":["Add-ons"]}},"/v1/addons/{slug}/cancel":{"post":{"description":"Cancels the given add-on for the authenticated tenant. Access continues through the paid period, then the add-on is disabled.","operationId":"AddonsController_cancel","parameters":[{"name":"slug","required":true,"in":"path","description":"Add-on slug (e.g. \"ecommerce-integrations\")","schema":{"type":"string"}}],"responses":{"200":{"description":"Subscription cancelled"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"404":{"description":"Add-on not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Cancel an add-on subscription","tags":["Add-ons"]}},"/v1/leads":{"get":{"description":"Retrieve a paginated list of leads.","operationId":"LeadsController_","parameters":[{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"source","required":false,"in":"query","description":"Filter by source","schema":{"type":"string"}},{"name":"territory","required":false,"in":"query","description":"Filter by territory","schema":{"type":"string"}},{"name":"industry","required":false,"in":"query","description":"Filter by industry","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of leads"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List leads","tags":["Leads"]},"post":{"description":"Create a new lead.","operationId":"LeadsController_","parameters":[],"responses":{"201":{"description":"lead created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a lead","tags":["Leads"]}},"/v1/leads/{id}":{"get":{"description":"Retrieve a single lead by ID.","operationId":"LeadsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leads ID or name","schema":{}}],"responses":{"200":{"description":"lead details"},"404":{"description":"lead not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a lead","tags":["Leads"]},"patch":{"description":"Partially update a lead.","operationId":"LeadsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leads ID or name","schema":{}}],"responses":{"200":{"description":"lead updated"},"404":{"description":"lead not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a lead","tags":["Leads"]},"delete":{"description":"Permanently delete a lead.","operationId":"LeadsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leads ID or name","schema":{}}],"responses":{"200":{"description":"lead deleted"},"404":{"description":"lead not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a lead","tags":["Leads"]}},"/v1/opportunities":{"get":{"description":"Retrieve a paginated list of opportunities.","operationId":"OpportunitiesController_","parameters":[{"name":"opportunity_type","required":false,"in":"query","description":"Filter by opportunity type","schema":{"type":"string"}},{"name":"sales_stage","required":false,"in":"query","description":"Filter by sales stage","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of opportunities"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List opportunities","tags":["Opportunities"]},"post":{"description":"Create a new opportunitie.","operationId":"OpportunitiesController_","parameters":[],"responses":{"201":{"description":"opportunitie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a opportunitie","tags":["Opportunities"]}},"/v1/opportunities/{id}":{"get":{"description":"Retrieve a single opportunitie by ID.","operationId":"OpportunitiesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Opportunities ID or name","schema":{}}],"responses":{"200":{"description":"opportunitie details"},"404":{"description":"opportunitie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a opportunitie","tags":["Opportunities"]},"patch":{"description":"Partially update a opportunitie.","operationId":"OpportunitiesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Opportunities ID or name","schema":{}}],"responses":{"200":{"description":"opportunitie updated"},"404":{"description":"opportunitie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a opportunitie","tags":["Opportunities"]},"delete":{"description":"Permanently delete a opportunitie.","operationId":"OpportunitiesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Opportunities ID or name","schema":{}}],"responses":{"200":{"description":"opportunitie deleted"},"404":{"description":"opportunitie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a opportunitie","tags":["Opportunities"]}},"/v1/customers":{"get":{"description":"Retrieve a paginated list of customers.","operationId":"CustomersController_","parameters":[{"name":"customer_type","required":false,"in":"query","description":"Filter by customer type","schema":{"type":"string"}},{"name":"customer_group","required":false,"in":"query","description":"Filter by customer group","schema":{"type":"string"}},{"name":"territory","required":false,"in":"query","description":"Filter by territory","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of customers"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List customers","tags":["Customers"]},"post":{"description":"Create a new customer.","operationId":"CustomersController_","parameters":[],"responses":{"201":{"description":"customer created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a customer","tags":["Customers"]}},"/v1/customers/{id}":{"get":{"description":"Retrieve a single customer by ID.","operationId":"CustomersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Customers ID or name","schema":{}}],"responses":{"200":{"description":"customer details"},"404":{"description":"customer not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a customer","tags":["Customers"]},"patch":{"description":"Partially update a customer.","operationId":"CustomersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Customers ID or name","schema":{}}],"responses":{"200":{"description":"customer updated"},"404":{"description":"customer not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a customer","tags":["Customers"]},"delete":{"description":"Permanently delete a customer.","operationId":"CustomersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Customers ID or name","schema":{}}],"responses":{"200":{"description":"customer deleted"},"404":{"description":"customer not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a customer","tags":["Customers"]}},"/v1/contacts":{"get":{"description":"Retrieve a paginated list of contacts.","operationId":"ContactsController_","parameters":[{"name":"company_name","required":false,"in":"query","description":"Filter by company name","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of contacts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List contacts","tags":["Contacts"]},"post":{"description":"Create a new contact.","operationId":"ContactsController_","parameters":[],"responses":{"201":{"description":"contact created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a contact","tags":["Contacts"]}},"/v1/contacts/{id}":{"get":{"description":"Retrieve a single contact by ID.","operationId":"ContactsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Contacts ID or name","schema":{}}],"responses":{"200":{"description":"contact details"},"404":{"description":"contact not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a contact","tags":["Contacts"]},"patch":{"description":"Partially update a contact.","operationId":"ContactsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Contacts ID or name","schema":{}}],"responses":{"200":{"description":"contact updated"},"404":{"description":"contact not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a contact","tags":["Contacts"]},"delete":{"description":"Permanently delete a contact.","operationId":"ContactsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Contacts ID or name","schema":{}}],"responses":{"200":{"description":"contact deleted"},"404":{"description":"contact not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a contact","tags":["Contacts"]}},"/v1/suppliers":{"get":{"description":"Retrieve a paginated list of suppliers.","operationId":"SuppliersController_","parameters":[{"name":"supplier_group","required":false,"in":"query","description":"Filter by supplier group","schema":{"type":"string"}},{"name":"supplier_type","required":false,"in":"query","description":"Filter by supplier type","schema":{"type":"string"}},{"name":"country","required":false,"in":"query","description":"Filter by country","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of suppliers"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List suppliers","tags":["Suppliers"]},"post":{"description":"Create a new supplier.","operationId":"SuppliersController_","parameters":[],"responses":{"201":{"description":"supplier created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a supplier","tags":["Suppliers"]}},"/v1/suppliers/{id}":{"get":{"description":"Retrieve a single supplier by ID.","operationId":"SuppliersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Suppliers ID or name","schema":{}}],"responses":{"200":{"description":"supplier details"},"404":{"description":"supplier not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a supplier","tags":["Suppliers"]},"patch":{"description":"Partially update a supplier.","operationId":"SuppliersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Suppliers ID or name","schema":{}}],"responses":{"200":{"description":"supplier updated"},"404":{"description":"supplier not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a supplier","tags":["Suppliers"]},"delete":{"description":"Permanently delete a supplier.","operationId":"SuppliersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Suppliers ID or name","schema":{}}],"responses":{"200":{"description":"supplier deleted"},"404":{"description":"supplier not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a supplier","tags":["Suppliers"]}},"/v1/quotations":{"get":{"description":"Retrieve a paginated list of quotations.","operationId":"QuotationsController_","parameters":[{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of quotations"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List quotations","tags":["Quotations"]},"post":{"description":"Create a new quotation.","operationId":"QuotationsController_","parameters":[],"responses":{"201":{"description":"quotation created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a quotation","tags":["Quotations"]}},"/v1/quotations/{id}":{"get":{"description":"Retrieve a single quotation by ID.","operationId":"QuotationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quotations ID or name","schema":{}}],"responses":{"200":{"description":"quotation details"},"404":{"description":"quotation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a quotation","tags":["Quotations"]},"patch":{"description":"Partially update a quotation.","operationId":"QuotationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quotations ID or name","schema":{}}],"responses":{"200":{"description":"quotation updated"},"404":{"description":"quotation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a quotation","tags":["Quotations"]},"delete":{"description":"Permanently delete a quotation.","operationId":"QuotationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quotations ID or name","schema":{}}],"responses":{"200":{"description":"quotation deleted"},"404":{"description":"quotation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a quotation","tags":["Quotations"]}},"/v1/quotations/{id}/submit":{"post":{"description":"Submit a draft quotation to finalize it.","operationId":"QuotationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quotations ID or name","schema":{}}],"responses":{"200":{"description":"quotation submitted"}},"security":[{"api-key":[]}],"summary":"Submit a quotation","tags":["Quotations"]}},"/v1/sales-orders":{"get":{"description":"Retrieve a paginated list of sales orders.","operationId":"SalesOrdersController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"order_type","required":false,"in":"query","description":"Filter by order type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of sales orders"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List sales orders","tags":["Sales Orders"]},"post":{"description":"Create a new sales order.","operationId":"SalesOrdersController_","parameters":[],"responses":{"201":{"description":"sales order created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a sales order","tags":["Sales Orders"]}},"/v1/sales-orders/{id}":{"get":{"description":"Retrieve a single sales order by ID.","operationId":"SalesOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Orders ID or name","schema":{}}],"responses":{"200":{"description":"sales order details"},"404":{"description":"sales order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a sales order","tags":["Sales Orders"]},"patch":{"description":"Partially update a sales order.","operationId":"SalesOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Orders ID or name","schema":{}}],"responses":{"200":{"description":"sales order updated"},"404":{"description":"sales order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a sales order","tags":["Sales Orders"]},"delete":{"description":"Permanently delete a sales order.","operationId":"SalesOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Orders ID or name","schema":{}}],"responses":{"200":{"description":"sales order deleted"},"404":{"description":"sales order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a sales order","tags":["Sales Orders"]}},"/v1/sales-orders/{id}/submit":{"post":{"description":"Submit a draft sales order to finalize it.","operationId":"SalesOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Orders ID or name","schema":{}}],"responses":{"200":{"description":"sales order submitted"}},"security":[{"api-key":[]}],"summary":"Submit a sales order","tags":["Sales Orders"]}},"/v1/purchase-orders":{"get":{"description":"Retrieve a paginated list of purchase orders.","operationId":"PurchaseOrdersController_","parameters":[{"name":"supplier","required":false,"in":"query","description":"Filter by supplier","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of purchase orders"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List purchase orders","tags":["Purchase Orders"]},"post":{"description":"Create a new purchase order.","operationId":"PurchaseOrdersController_","parameters":[],"responses":{"201":{"description":"purchase order created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a purchase order","tags":["Purchase Orders"]}},"/v1/purchase-orders/{id}":{"get":{"description":"Retrieve a single purchase order by ID.","operationId":"PurchaseOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Orders ID or name","schema":{}}],"responses":{"200":{"description":"purchase order details"},"404":{"description":"purchase order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a purchase order","tags":["Purchase Orders"]},"patch":{"description":"Partially update a purchase order.","operationId":"PurchaseOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Orders ID or name","schema":{}}],"responses":{"200":{"description":"purchase order updated"},"404":{"description":"purchase order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a purchase order","tags":["Purchase Orders"]},"delete":{"description":"Permanently delete a purchase order.","operationId":"PurchaseOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Orders ID or name","schema":{}}],"responses":{"200":{"description":"purchase order deleted"},"404":{"description":"purchase order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a purchase order","tags":["Purchase Orders"]}},"/v1/purchase-orders/{id}/submit":{"post":{"description":"Submit a draft purchase order to finalize it.","operationId":"PurchaseOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Orders ID or name","schema":{}}],"responses":{"200":{"description":"purchase order submitted"}},"security":[{"api-key":[]}],"summary":"Submit a purchase order","tags":["Purchase Orders"]}},"/v1/items":{"get":{"description":"Retrieve a paginated list of items.","operationId":"ItemsController_","parameters":[{"name":"item_group","required":false,"in":"query","description":"Filter by item group","schema":{"type":"string"}},{"name":"has_variants","required":false,"in":"query","description":"Filter by has variants","schema":{"type":"boolean"}},{"name":"is_stock_item","required":false,"in":"query","description":"Filter by is stock item","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of items"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List items","tags":["Items"]},"post":{"description":"Create a new item.","operationId":"ItemsController_","parameters":[],"responses":{"201":{"description":"item created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a item","tags":["Items"]}},"/v1/items/{id}":{"get":{"description":"Retrieve a single item by ID.","operationId":"ItemsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Item code or name","schema":{}}],"responses":{"200":{"description":"item details"},"404":{"description":"item not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a item","tags":["Items"]},"patch":{"description":"Partially update a item.","operationId":"ItemsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Item code or name","schema":{}}],"responses":{"200":{"description":"item updated"},"404":{"description":"item not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a item","tags":["Items"]},"delete":{"description":"Permanently delete a item.","operationId":"ItemsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Item code or name","schema":{}}],"responses":{"200":{"description":"item deleted"},"404":{"description":"item not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a item","tags":["Items"]}},"/v1/sales-invoices":{"get":{"description":"Retrieve a paginated list of sales invoices. Requires Pro plan.","operationId":"SalesInvoicesController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"is_return","required":false,"in":"query","description":"Filter by is return","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of sales invoices"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List sales invoices","tags":["Sales Invoices"]},"post":{"description":"Create a new sales invoice.","operationId":"SalesInvoicesController_","parameters":[],"responses":{"201":{"description":"sales invoice created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a sales invoice","tags":["Sales Invoices"]}},"/v1/sales-invoices/{id}":{"get":{"description":"Retrieve a single sales invoice by ID.","operationId":"SalesInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Invoices ID or name","schema":{}}],"responses":{"200":{"description":"sales invoice details"},"404":{"description":"sales invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a sales invoice","tags":["Sales Invoices"]},"patch":{"description":"Partially update a sales invoice.","operationId":"SalesInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Invoices ID or name","schema":{}}],"responses":{"200":{"description":"sales invoice updated"},"404":{"description":"sales invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a sales invoice","tags":["Sales Invoices"]},"delete":{"description":"Permanently delete a sales invoice.","operationId":"SalesInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Invoices ID or name","schema":{}}],"responses":{"200":{"description":"sales invoice deleted"},"404":{"description":"sales invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a sales invoice","tags":["Sales Invoices"]}},"/v1/sales-invoices/{id}/submit":{"post":{"description":"Submit a draft sales invoice to finalize it.","operationId":"SalesInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Invoices ID or name","schema":{}}],"responses":{"200":{"description":"sales invoice submitted"}},"security":[{"api-key":[]}],"summary":"Submit a sales invoice","tags":["Sales Invoices"]}},"/v1/purchase-invoices":{"get":{"description":"Retrieve a paginated list of purchase invoices. Requires Pro plan.","operationId":"PurchaseInvoicesController_","parameters":[{"name":"supplier","required":false,"in":"query","description":"Filter by supplier","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"is_return","required":false,"in":"query","description":"Filter by is return","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of purchase invoices"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List purchase invoices","tags":["Purchase Invoices"]},"post":{"description":"Create a new purchase invoice.","operationId":"PurchaseInvoicesController_","parameters":[],"responses":{"201":{"description":"purchase invoice created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a purchase invoice","tags":["Purchase Invoices"]}},"/v1/purchase-invoices/{id}":{"get":{"description":"Retrieve a single purchase invoice by ID.","operationId":"PurchaseInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Invoices ID or name","schema":{}}],"responses":{"200":{"description":"purchase invoice details"},"404":{"description":"purchase invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a purchase invoice","tags":["Purchase Invoices"]},"patch":{"description":"Partially update a purchase invoice.","operationId":"PurchaseInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Invoices ID or name","schema":{}}],"responses":{"200":{"description":"purchase invoice updated"},"404":{"description":"purchase invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a purchase invoice","tags":["Purchase Invoices"]},"delete":{"description":"Permanently delete a purchase invoice.","operationId":"PurchaseInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Invoices ID or name","schema":{}}],"responses":{"200":{"description":"purchase invoice deleted"},"404":{"description":"purchase invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a purchase invoice","tags":["Purchase Invoices"]}},"/v1/purchase-invoices/{id}/submit":{"post":{"description":"Submit a draft purchase invoice to finalize it.","operationId":"PurchaseInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Invoices ID or name","schema":{}}],"responses":{"200":{"description":"purchase invoice submitted"}},"security":[{"api-key":[]}],"summary":"Submit a purchase invoice","tags":["Purchase Invoices"]}},"/v1/payment-entries":{"get":{"description":"Retrieve a paginated list of payment entries. Requires Pro plan.","operationId":"PaymentEntriesController_","parameters":[{"name":"party_type","required":false,"in":"query","description":"Filter by party type","schema":{"type":"string"}},{"name":"party","required":false,"in":"query","description":"Filter by party","schema":{"type":"string"}},{"name":"mode_of_payment","required":false,"in":"query","description":"Filter by mode of payment","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of payment entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payment entries","tags":["Payment Entries"]},"post":{"description":"Create a new payment entrie.","operationId":"PaymentEntriesController_","parameters":[],"responses":{"201":{"description":"payment entrie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payment entrie","tags":["Payment Entries"]}},"/v1/payment-entries/{id}":{"get":{"description":"Retrieve a single payment entrie by ID.","operationId":"PaymentEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Entries ID or name","schema":{}}],"responses":{"200":{"description":"payment entrie details"},"404":{"description":"payment entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payment entrie","tags":["Payment Entries"]},"patch":{"description":"Partially update a payment entrie.","operationId":"PaymentEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Entries ID or name","schema":{}}],"responses":{"200":{"description":"payment entrie updated"},"404":{"description":"payment entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payment entrie","tags":["Payment Entries"]},"delete":{"description":"Permanently delete a payment entrie.","operationId":"PaymentEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Entries ID or name","schema":{}}],"responses":{"200":{"description":"payment entrie deleted"},"404":{"description":"payment entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payment entrie","tags":["Payment Entries"]}},"/v1/payment-entries/{id}/submit":{"post":{"description":"Submit a draft payment entrie to finalize it.","operationId":"PaymentEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Entries ID or name","schema":{}}],"responses":{"200":{"description":"payment entrie submitted"}},"security":[{"api-key":[]}],"summary":"Submit a payment entrie","tags":["Payment Entries"]}},"/v1/journal-entries":{"get":{"description":"Retrieve a paginated list of journal entries. Requires Pro plan.","operationId":"JournalEntriesController_","parameters":[{"name":"voucher_type","required":false,"in":"query","description":"Filter by voucher type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of journal entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List journal entries","tags":["Journal Entries"]},"post":{"description":"Create a new journal entrie.","operationId":"JournalEntriesController_","parameters":[],"responses":{"201":{"description":"journal entrie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a journal entrie","tags":["Journal Entries"]}},"/v1/journal-entries/{id}":{"get":{"description":"Retrieve a single journal entrie by ID.","operationId":"JournalEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Journal Entries ID or name","schema":{}}],"responses":{"200":{"description":"journal entrie details"},"404":{"description":"journal entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a journal entrie","tags":["Journal Entries"]},"patch":{"description":"Partially update a journal entrie.","operationId":"JournalEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Journal Entries ID or name","schema":{}}],"responses":{"200":{"description":"journal entrie updated"},"404":{"description":"journal entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a journal entrie","tags":["Journal Entries"]},"delete":{"description":"Permanently delete a journal entrie.","operationId":"JournalEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Journal Entries ID or name","schema":{}}],"responses":{"200":{"description":"journal entrie deleted"},"404":{"description":"journal entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a journal entrie","tags":["Journal Entries"]}},"/v1/journal-entries/{id}/submit":{"post":{"description":"Submit a draft journal entrie to finalize it.","operationId":"JournalEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Journal Entries ID or name","schema":{}}],"responses":{"200":{"description":"journal entrie submitted"}},"security":[{"api-key":[]}],"summary":"Submit a journal entrie","tags":["Journal Entries"]}},"/v1/accounts":{"get":{"description":"Retrieve a paginated list of chart of accounts. Requires Pro plan.","operationId":"AccountsController_","parameters":[{"name":"account_type","required":false,"in":"query","description":"Filter by account type","schema":{"type":"string"}},{"name":"root_type","required":false,"in":"query","description":"Filter by root type","schema":{"type":"string"}},{"name":"is_group","required":false,"in":"query","description":"Filter by is group","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of chart of accounts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List chart of accounts","tags":["Chart of Accounts"]},"post":{"description":"Create a new chart of account.","operationId":"AccountsController_","parameters":[],"responses":{"201":{"description":"chart of account created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a chart of account","tags":["Chart of Accounts"]}},"/v1/accounts/{id}":{"get":{"description":"Retrieve a single chart of account by ID.","operationId":"AccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chart of Accounts ID or name","schema":{}}],"responses":{"200":{"description":"chart of account details"},"404":{"description":"chart of account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a chart of account","tags":["Chart of Accounts"]},"patch":{"description":"Partially update a chart of account.","operationId":"AccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chart of Accounts ID or name","schema":{}}],"responses":{"200":{"description":"chart of account updated"},"404":{"description":"chart of account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a chart of account","tags":["Chart of Accounts"]},"delete":{"description":"Permanently delete a chart of account.","operationId":"AccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chart of Accounts ID or name","schema":{}}],"responses":{"200":{"description":"chart of account deleted"},"404":{"description":"chart of account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a chart of account","tags":["Chart of Accounts"]}},"/v1/warehouses":{"get":{"description":"Retrieve a paginated list of warehouses. Requires Pro plan.","operationId":"WarehousesController_","parameters":[{"name":"warehouse_type","required":false,"in":"query","description":"Filter by warehouse type","schema":{"type":"string"}},{"name":"is_group","required":false,"in":"query","description":"Filter by is group","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of warehouses"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List warehouses","tags":["Warehouses"]},"post":{"description":"Create a new warehouse.","operationId":"WarehousesController_","parameters":[],"responses":{"201":{"description":"warehouse created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a warehouse","tags":["Warehouses"]}},"/v1/warehouses/{id}":{"get":{"description":"Retrieve a single warehouse by ID.","operationId":"WarehousesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Warehouses ID or name","schema":{}}],"responses":{"200":{"description":"warehouse details"},"404":{"description":"warehouse not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a warehouse","tags":["Warehouses"]},"patch":{"description":"Partially update a warehouse.","operationId":"WarehousesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Warehouses ID or name","schema":{}}],"responses":{"200":{"description":"warehouse updated"},"404":{"description":"warehouse not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a warehouse","tags":["Warehouses"]},"delete":{"description":"Permanently delete a warehouse.","operationId":"WarehousesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Warehouses ID or name","schema":{}}],"responses":{"200":{"description":"warehouse deleted"},"404":{"description":"warehouse not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a warehouse","tags":["Warehouses"]}},"/v1/stock-entries":{"get":{"description":"Retrieve a paginated list of stock entries. Requires Pro plan.","operationId":"StockEntriesController_","parameters":[{"name":"stock_entry_type","required":false,"in":"query","description":"Filter by stock entry type","schema":{"type":"string"}},{"name":"purpose","required":false,"in":"query","description":"Filter by purpose","schema":{"type":"string"}},{"name":"from_warehouse","required":false,"in":"query","description":"Filter by from warehouse","schema":{"type":"string"}},{"name":"to_warehouse","required":false,"in":"query","description":"Filter by to warehouse","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of stock entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List stock entries","tags":["Stock Entries"]},"post":{"description":"Create a new stock entrie.","operationId":"StockEntriesController_","parameters":[],"responses":{"201":{"description":"stock entrie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a stock entrie","tags":["Stock Entries"]}},"/v1/stock-entries/{id}":{"get":{"description":"Retrieve a single stock entrie by ID.","operationId":"StockEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Entries ID or name","schema":{}}],"responses":{"200":{"description":"stock entrie details"},"404":{"description":"stock entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a stock entrie","tags":["Stock Entries"]},"patch":{"description":"Partially update a stock entrie.","operationId":"StockEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Entries ID or name","schema":{}}],"responses":{"200":{"description":"stock entrie updated"},"404":{"description":"stock entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a stock entrie","tags":["Stock Entries"]},"delete":{"description":"Permanently delete a stock entrie.","operationId":"StockEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Entries ID or name","schema":{}}],"responses":{"200":{"description":"stock entrie deleted"},"404":{"description":"stock entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a stock entrie","tags":["Stock Entries"]}},"/v1/stock-entries/{id}/submit":{"post":{"description":"Submit a draft stock entrie to finalize it.","operationId":"StockEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Entries ID or name","schema":{}}],"responses":{"200":{"description":"stock entrie submitted"}},"security":[{"api-key":[]}],"summary":"Submit a stock entrie","tags":["Stock Entries"]}},"/v1/delivery-notes":{"get":{"description":"Retrieve a paginated list of delivery notes. Requires Pro plan.","operationId":"DeliveryNotesController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of delivery notes"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List delivery notes","tags":["Delivery Notes"]},"post":{"description":"Create a new delivery note.","operationId":"DeliveryNotesController_","parameters":[],"responses":{"201":{"description":"delivery note created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a delivery note","tags":["Delivery Notes"]}},"/v1/delivery-notes/{id}":{"get":{"description":"Retrieve a single delivery note by ID.","operationId":"DeliveryNotesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Notes ID or name","schema":{}}],"responses":{"200":{"description":"delivery note details"},"404":{"description":"delivery note not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a delivery note","tags":["Delivery Notes"]},"patch":{"description":"Partially update a delivery note.","operationId":"DeliveryNotesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Notes ID or name","schema":{}}],"responses":{"200":{"description":"delivery note updated"},"404":{"description":"delivery note not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a delivery note","tags":["Delivery Notes"]},"delete":{"description":"Permanently delete a delivery note.","operationId":"DeliveryNotesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Notes ID or name","schema":{}}],"responses":{"200":{"description":"delivery note deleted"},"404":{"description":"delivery note not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a delivery note","tags":["Delivery Notes"]}},"/v1/delivery-notes/{id}/submit":{"post":{"description":"Submit a draft delivery note to finalize it.","operationId":"DeliveryNotesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Notes ID or name","schema":{}}],"responses":{"200":{"description":"delivery note submitted"}},"security":[{"api-key":[]}],"summary":"Submit a delivery note","tags":["Delivery Notes"]}},"/v1/purchase-receipts":{"get":{"description":"Retrieve a paginated list of purchase receipts. Requires Pro plan.","operationId":"PurchaseReceiptsController_","parameters":[{"name":"supplier","required":false,"in":"query","description":"Filter by supplier","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of purchase receipts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List purchase receipts","tags":["Purchase Receipts"]},"post":{"description":"Create a new purchase receipt.","operationId":"PurchaseReceiptsController_","parameters":[],"responses":{"201":{"description":"purchase receipt created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a purchase receipt","tags":["Purchase Receipts"]}},"/v1/purchase-receipts/{id}":{"get":{"description":"Retrieve a single purchase receipt by ID.","operationId":"PurchaseReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Receipts ID or name","schema":{}}],"responses":{"200":{"description":"purchase receipt details"},"404":{"description":"purchase receipt not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a purchase receipt","tags":["Purchase Receipts"]},"patch":{"description":"Partially update a purchase receipt.","operationId":"PurchaseReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Receipts ID or name","schema":{}}],"responses":{"200":{"description":"purchase receipt updated"},"404":{"description":"purchase receipt not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a purchase receipt","tags":["Purchase Receipts"]},"delete":{"description":"Permanently delete a purchase receipt.","operationId":"PurchaseReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Receipts ID or name","schema":{}}],"responses":{"200":{"description":"purchase receipt deleted"},"404":{"description":"purchase receipt not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a purchase receipt","tags":["Purchase Receipts"]}},"/v1/purchase-receipts/{id}/submit":{"post":{"description":"Submit a draft purchase receipt to finalize it.","operationId":"PurchaseReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Receipts ID or name","schema":{}}],"responses":{"200":{"description":"purchase receipt submitted"}},"security":[{"api-key":[]}],"summary":"Submit a purchase receipt","tags":["Purchase Receipts"]}},"/v1/material-requests":{"get":{"description":"Retrieve a paginated list of material requests. Requires Pro plan.","operationId":"MaterialRequestsController_","parameters":[{"name":"material_request_type","required":false,"in":"query","description":"Filter by material request type","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of material requests"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List material requests","tags":["Material Requests"]},"post":{"description":"Create a new material request.","operationId":"MaterialRequestsController_","parameters":[],"responses":{"201":{"description":"material request created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a material request","tags":["Material Requests"]}},"/v1/material-requests/{id}":{"get":{"description":"Retrieve a single material request by ID.","operationId":"MaterialRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Material Requests ID or name","schema":{}}],"responses":{"200":{"description":"material request details"},"404":{"description":"material request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a material request","tags":["Material Requests"]},"patch":{"description":"Partially update a material request.","operationId":"MaterialRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Material Requests ID or name","schema":{}}],"responses":{"200":{"description":"material request updated"},"404":{"description":"material request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a material request","tags":["Material Requests"]},"delete":{"description":"Permanently delete a material request.","operationId":"MaterialRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Material Requests ID or name","schema":{}}],"responses":{"200":{"description":"material request deleted"},"404":{"description":"material request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a material request","tags":["Material Requests"]}},"/v1/material-requests/{id}/submit":{"post":{"description":"Submit a draft material request to finalize it.","operationId":"MaterialRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Material Requests ID or name","schema":{}}],"responses":{"200":{"description":"material request submitted"}},"security":[{"api-key":[]}],"summary":"Submit a material request","tags":["Material Requests"]}},"/v1/batches":{"get":{"description":"Retrieve a paginated list of batches. Requires Pro plan.","operationId":"BatchesController_","parameters":[{"name":"item","required":false,"in":"query","description":"Filter by item","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of batches"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List batches","tags":["Batches"]},"post":{"description":"Create a new batche.","operationId":"BatchesController_","parameters":[],"responses":{"201":{"description":"batche created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a batche","tags":["Batches"]}},"/v1/batches/{id}":{"get":{"description":"Retrieve a single batche by ID.","operationId":"BatchesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Batches ID or name","schema":{}}],"responses":{"200":{"description":"batche details"},"404":{"description":"batche not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a batche","tags":["Batches"]},"patch":{"description":"Partially update a batche.","operationId":"BatchesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Batches ID or name","schema":{}}],"responses":{"200":{"description":"batche updated"},"404":{"description":"batche not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a batche","tags":["Batches"]},"delete":{"description":"Permanently delete a batche.","operationId":"BatchesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Batches ID or name","schema":{}}],"responses":{"200":{"description":"batche deleted"},"404":{"description":"batche not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a batche","tags":["Batches"]}},"/v1/serial-nos":{"get":{"description":"Retrieve a paginated list of serial numbers. Requires Pro plan.","operationId":"SerialNosController_","parameters":[{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"warehouse","required":false,"in":"query","description":"Filter by warehouse","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of serial numbers"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List serial numbers","tags":["Serial Numbers"]},"post":{"description":"Create a new serial number.","operationId":"SerialNosController_","parameters":[],"responses":{"201":{"description":"serial number created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a serial number","tags":["Serial Numbers"]}},"/v1/serial-nos/{id}":{"get":{"description":"Retrieve a single serial number by ID.","operationId":"SerialNosController_","parameters":[{"name":"id","required":true,"in":"path","description":"Serial Numbers ID or name","schema":{}}],"responses":{"200":{"description":"serial number details"},"404":{"description":"serial number not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a serial number","tags":["Serial Numbers"]},"patch":{"description":"Partially update a serial number.","operationId":"SerialNosController_","parameters":[{"name":"id","required":true,"in":"path","description":"Serial Numbers ID or name","schema":{}}],"responses":{"200":{"description":"serial number updated"},"404":{"description":"serial number not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a serial number","tags":["Serial Numbers"]},"delete":{"description":"Permanently delete a serial number.","operationId":"SerialNosController_","parameters":[{"name":"id","required":true,"in":"path","description":"Serial Numbers ID or name","schema":{}}],"responses":{"200":{"description":"serial number deleted"},"404":{"description":"serial number not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a serial number","tags":["Serial Numbers"]}},"/v1/stock-balance":{"get":{"description":"Retrieve a paginated list of stock balance. Requires Pro plan.","operationId":"StockBalanceController_","parameters":[{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"warehouse","required":false,"in":"query","description":"Filter by warehouse","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of stock balance"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List stock balance","tags":["Stock Balance"]}},"/v1/stock-balance/{id}":{"get":{"description":"Retrieve a single stock balance by ID.","operationId":"StockBalanceController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Balance ID or name","schema":{}}],"responses":{"200":{"description":"stock balance details"},"404":{"description":"stock balance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a stock balance","tags":["Stock Balance"]}},"/v1/employees":{"get":{"description":"Retrieve a paginated list of employees. Requires Pro plan.","operationId":"EmployeesController_","parameters":[{"name":"designation","required":false,"in":"query","description":"Filter by designation","schema":{"type":"string"}},{"name":"department","required":false,"in":"query","description":"Filter by department","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"gender","required":false,"in":"query","description":"Filter by gender","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of employees"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List employees","tags":["Employees"]},"post":{"description":"Create a new employee.","operationId":"EmployeesController_","parameters":[],"responses":{"201":{"description":"employee created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a employee","tags":["Employees"]}},"/v1/employees/{id}":{"get":{"description":"Retrieve a single employee by ID.","operationId":"EmployeesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employees ID or name","schema":{}}],"responses":{"200":{"description":"employee details"},"404":{"description":"employee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a employee","tags":["Employees"]},"patch":{"description":"Partially update a employee.","operationId":"EmployeesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employees ID or name","schema":{}}],"responses":{"200":{"description":"employee updated"},"404":{"description":"employee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a employee","tags":["Employees"]},"delete":{"description":"Permanently delete a employee.","operationId":"EmployeesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employees ID or name","schema":{}}],"responses":{"200":{"description":"employee deleted"},"404":{"description":"employee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a employee","tags":["Employees"]}},"/v1/leave-applications":{"get":{"description":"Retrieve a paginated list of leave applications. Requires Pro plan.","operationId":"LeaveApplicationsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"leave_type","required":false,"in":"query","description":"Filter by leave type","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of leave applications"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List leave applications","tags":["Leave Applications"]},"post":{"description":"Create a new leave application.","operationId":"LeaveApplicationsController_","parameters":[],"responses":{"201":{"description":"leave application created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a leave application","tags":["Leave Applications"]}},"/v1/leave-applications/{id}":{"get":{"description":"Retrieve a single leave application by ID.","operationId":"LeaveApplicationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Applications ID or name","schema":{}}],"responses":{"200":{"description":"leave application details"},"404":{"description":"leave application not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a leave application","tags":["Leave Applications"]},"patch":{"description":"Partially update a leave application.","operationId":"LeaveApplicationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Applications ID or name","schema":{}}],"responses":{"200":{"description":"leave application updated"},"404":{"description":"leave application not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a leave application","tags":["Leave Applications"]},"delete":{"description":"Permanently delete a leave application.","operationId":"LeaveApplicationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Applications ID or name","schema":{}}],"responses":{"200":{"description":"leave application deleted"},"404":{"description":"leave application not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a leave application","tags":["Leave Applications"]}},"/v1/leave-applications/{id}/submit":{"post":{"description":"Submit a draft leave application to finalize it.","operationId":"LeaveApplicationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Applications ID or name","schema":{}}],"responses":{"200":{"description":"leave application submitted"}},"security":[{"api-key":[]}],"summary":"Submit a leave application","tags":["Leave Applications"]}},"/v1/attendance":{"get":{"description":"Retrieve a paginated list of attendance. Requires Pro plan.","operationId":"AttendanceController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"leave_type","required":false,"in":"query","description":"Filter by leave type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of attendance"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List attendance","tags":["Attendance"]},"post":{"description":"Create a new attendance.","operationId":"AttendanceController_","parameters":[],"responses":{"201":{"description":"attendance created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a attendance","tags":["Attendance"]}},"/v1/attendance/{id}":{"get":{"description":"Retrieve a single attendance by ID.","operationId":"AttendanceController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance ID or name","schema":{}}],"responses":{"200":{"description":"attendance details"},"404":{"description":"attendance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a attendance","tags":["Attendance"]},"patch":{"description":"Partially update a attendance.","operationId":"AttendanceController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance ID or name","schema":{}}],"responses":{"200":{"description":"attendance updated"},"404":{"description":"attendance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a attendance","tags":["Attendance"]},"delete":{"description":"Permanently delete a attendance.","operationId":"AttendanceController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance ID or name","schema":{}}],"responses":{"200":{"description":"attendance deleted"},"404":{"description":"attendance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a attendance","tags":["Attendance"]}},"/v1/attendance/{id}/submit":{"post":{"description":"Submit a draft attendance to finalize it.","operationId":"AttendanceController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance ID or name","schema":{}}],"responses":{"200":{"description":"attendance submitted"}},"security":[{"api-key":[]}],"summary":"Submit a attendance","tags":["Attendance"]}},"/v1/expense-claims":{"get":{"description":"Retrieve a paginated list of expense claims. Requires Pro plan.","operationId":"ExpenseClaimsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"approval_status","required":false,"in":"query","description":"Filter by approval status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of expense claims"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List expense claims","tags":["Expense Claims"]},"post":{"description":"Create a new expense claim.","operationId":"ExpenseClaimsController_","parameters":[],"responses":{"201":{"description":"expense claim created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a expense claim","tags":["Expense Claims"]}},"/v1/expense-claims/{id}":{"get":{"description":"Retrieve a single expense claim by ID.","operationId":"ExpenseClaimsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Expense Claims ID or name","schema":{}}],"responses":{"200":{"description":"expense claim details"},"404":{"description":"expense claim not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a expense claim","tags":["Expense Claims"]},"patch":{"description":"Partially update a expense claim.","operationId":"ExpenseClaimsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Expense Claims ID or name","schema":{}}],"responses":{"200":{"description":"expense claim updated"},"404":{"description":"expense claim not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a expense claim","tags":["Expense Claims"]},"delete":{"description":"Permanently delete a expense claim.","operationId":"ExpenseClaimsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Expense Claims ID or name","schema":{}}],"responses":{"200":{"description":"expense claim deleted"},"404":{"description":"expense claim not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a expense claim","tags":["Expense Claims"]}},"/v1/expense-claims/{id}/submit":{"post":{"description":"Submit a draft expense claim to finalize it.","operationId":"ExpenseClaimsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Expense Claims ID or name","schema":{}}],"responses":{"200":{"description":"expense claim submitted"}},"security":[{"api-key":[]}],"summary":"Submit a expense claim","tags":["Expense Claims"]}},"/v1/projects":{"get":{"description":"Retrieve a paginated list of projects. Requires Pro plan.","operationId":"ProjectsController_","parameters":[{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"project_type","required":false,"in":"query","description":"Filter by project type","schema":{"type":"string"}},{"name":"priority","required":false,"in":"query","description":"Filter by priority","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of projects"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List projects","tags":["Projects"]},"post":{"description":"Create a new project.","operationId":"ProjectsController_","parameters":[],"responses":{"201":{"description":"project created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a project","tags":["Projects"]}},"/v1/projects/{id}":{"get":{"description":"Retrieve a single project by ID.","operationId":"ProjectsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Projects ID or name","schema":{}}],"responses":{"200":{"description":"project details"},"404":{"description":"project not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a project","tags":["Projects"]},"patch":{"description":"Partially update a project.","operationId":"ProjectsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Projects ID or name","schema":{}}],"responses":{"200":{"description":"project updated"},"404":{"description":"project not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a project","tags":["Projects"]},"delete":{"description":"Permanently delete a project.","operationId":"ProjectsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Projects ID or name","schema":{}}],"responses":{"200":{"description":"project deleted"},"404":{"description":"project not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a project","tags":["Projects"]}},"/v1/tasks":{"get":{"description":"Retrieve a paginated list of tasks. Requires Pro plan.","operationId":"TasksController_","parameters":[{"name":"project","required":false,"in":"query","description":"Filter by project","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"priority","required":false,"in":"query","description":"Filter by priority","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of tasks"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List tasks","tags":["Tasks"]},"post":{"description":"Create a new task.","operationId":"TasksController_","parameters":[],"responses":{"201":{"description":"task created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a task","tags":["Tasks"]}},"/v1/tasks/{id}":{"get":{"description":"Retrieve a single task by ID.","operationId":"TasksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Tasks ID or name","schema":{}}],"responses":{"200":{"description":"task details"},"404":{"description":"task not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a task","tags":["Tasks"]},"patch":{"description":"Partially update a task.","operationId":"TasksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Tasks ID or name","schema":{}}],"responses":{"200":{"description":"task updated"},"404":{"description":"task not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a task","tags":["Tasks"]},"delete":{"description":"Permanently delete a task.","operationId":"TasksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Tasks ID or name","schema":{}}],"responses":{"200":{"description":"task deleted"},"404":{"description":"task not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a task","tags":["Tasks"]}},"/v1/timesheets":{"get":{"description":"Retrieve a paginated list of timesheets. Requires Pro plan.","operationId":"TimesheetsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of timesheets"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List timesheets","tags":["Timesheets"]},"post":{"description":"Create a new timesheet.","operationId":"TimesheetsController_","parameters":[],"responses":{"201":{"description":"timesheet created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a timesheet","tags":["Timesheets"]}},"/v1/timesheets/{id}":{"get":{"description":"Retrieve a single timesheet by ID.","operationId":"TimesheetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Timesheets ID or name","schema":{}}],"responses":{"200":{"description":"timesheet details"},"404":{"description":"timesheet not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a timesheet","tags":["Timesheets"]},"patch":{"description":"Partially update a timesheet.","operationId":"TimesheetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Timesheets ID or name","schema":{}}],"responses":{"200":{"description":"timesheet updated"},"404":{"description":"timesheet not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a timesheet","tags":["Timesheets"]},"delete":{"description":"Permanently delete a timesheet.","operationId":"TimesheetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Timesheets ID or name","schema":{}}],"responses":{"200":{"description":"timesheet deleted"},"404":{"description":"timesheet not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a timesheet","tags":["Timesheets"]}},"/v1/timesheets/{id}/submit":{"post":{"description":"Submit a draft timesheet to finalize it.","operationId":"TimesheetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Timesheets ID or name","schema":{}}],"responses":{"200":{"description":"timesheet submitted"}},"security":[{"api-key":[]}],"summary":"Submit a timesheet","tags":["Timesheets"]}},"/v1/boms":{"get":{"description":"Retrieve a paginated list of bills of materials. Requires Pro plan.","operationId":"BomsController_","parameters":[{"name":"item","required":false,"in":"query","description":"Filter by item","schema":{"type":"string"}},{"name":"is_active","required":false,"in":"query","description":"Filter by is active","schema":{"type":"boolean"}},{"name":"is_default","required":false,"in":"query","description":"Filter by is default","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of bills of materials"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bills of materials","tags":["Bills of Materials"]},"post":{"description":"Create a new bills of material.","operationId":"BomsController_","parameters":[],"responses":{"201":{"description":"bills of material created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bills of material","tags":["Bills of Materials"]}},"/v1/boms/{id}":{"get":{"description":"Retrieve a single bills of material by ID.","operationId":"BomsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bills of Materials ID or name","schema":{}}],"responses":{"200":{"description":"bills of material details"},"404":{"description":"bills of material not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bills of material","tags":["Bills of Materials"]},"patch":{"description":"Partially update a bills of material.","operationId":"BomsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bills of Materials ID or name","schema":{}}],"responses":{"200":{"description":"bills of material updated"},"404":{"description":"bills of material not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bills of material","tags":["Bills of Materials"]},"delete":{"description":"Permanently delete a bills of material.","operationId":"BomsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bills of Materials ID or name","schema":{}}],"responses":{"200":{"description":"bills of material deleted"},"404":{"description":"bills of material not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bills of material","tags":["Bills of Materials"]}},"/v1/boms/{id}/submit":{"post":{"description":"Submit a draft bills of material to finalize it.","operationId":"BomsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bills of Materials ID or name","schema":{}}],"responses":{"200":{"description":"bills of material submitted"}},"security":[{"api-key":[]}],"summary":"Submit a bills of material","tags":["Bills of Materials"]}},"/v1/work-orders":{"get":{"description":"Retrieve a paginated list of work orders. Requires Pro plan.","operationId":"WorkOrdersController_","parameters":[{"name":"production_item","required":false,"in":"query","description":"Filter by production item","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"bom_no","required":false,"in":"query","description":"Filter by bom no","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of work orders"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List work orders","tags":["Work Orders"]},"post":{"description":"Create a new work order.","operationId":"WorkOrdersController_","parameters":[],"responses":{"201":{"description":"work order created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a work order","tags":["Work Orders"]}},"/v1/work-orders/{id}":{"get":{"description":"Retrieve a single work order by ID.","operationId":"WorkOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Work Orders ID or name","schema":{}}],"responses":{"200":{"description":"work order details"},"404":{"description":"work order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a work order","tags":["Work Orders"]},"patch":{"description":"Partially update a work order.","operationId":"WorkOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Work Orders ID or name","schema":{}}],"responses":{"200":{"description":"work order updated"},"404":{"description":"work order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a work order","tags":["Work Orders"]},"delete":{"description":"Permanently delete a work order.","operationId":"WorkOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Work Orders ID or name","schema":{}}],"responses":{"200":{"description":"work order deleted"},"404":{"description":"work order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a work order","tags":["Work Orders"]}},"/v1/work-orders/{id}/submit":{"post":{"description":"Submit a draft work order to finalize it.","operationId":"WorkOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Work Orders ID or name","schema":{}}],"responses":{"200":{"description":"work order submitted"}},"security":[{"api-key":[]}],"summary":"Submit a work order","tags":["Work Orders"]}},"/v1/issues":{"get":{"description":"Retrieve a paginated list of support issues. Requires Pro plan.","operationId":"IssuesController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"priority","required":false,"in":"query","description":"Filter by priority","schema":{"type":"string"}},{"name":"issue_type","required":false,"in":"query","description":"Filter by issue type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of support issues"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List support issues","tags":["Support Issues"]},"post":{"description":"Create a new support issue.","operationId":"IssuesController_","parameters":[],"responses":{"201":{"description":"support issue created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a support issue","tags":["Support Issues"]}},"/v1/issues/{id}":{"get":{"description":"Retrieve a single support issue by ID.","operationId":"IssuesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Issues ID or name","schema":{}}],"responses":{"200":{"description":"support issue details"},"404":{"description":"support issue not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a support issue","tags":["Support Issues"]},"patch":{"description":"Partially update a support issue.","operationId":"IssuesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Issues ID or name","schema":{}}],"responses":{"200":{"description":"support issue updated"},"404":{"description":"support issue not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a support issue","tags":["Support Issues"]},"delete":{"description":"Permanently delete a support issue.","operationId":"IssuesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Issues ID or name","schema":{}}],"responses":{"200":{"description":"support issue deleted"},"404":{"description":"support issue not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a support issue","tags":["Support Issues"]}},"/v1/assets":{"get":{"description":"Retrieve a paginated list of assets. Requires Business plan.","operationId":"AssetsController_","parameters":[{"name":"asset_category","required":false,"in":"query","description":"Filter by asset category","schema":{"type":"string"}},{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"location","required":false,"in":"query","description":"Filter by location","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of assets"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List assets","tags":["Assets"]},"post":{"description":"Create a new asset.","operationId":"AssetsController_","parameters":[],"responses":{"201":{"description":"asset created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a asset","tags":["Assets"]}},"/v1/assets/{id}":{"get":{"description":"Retrieve a single asset by ID.","operationId":"AssetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Assets ID or name","schema":{}}],"responses":{"200":{"description":"asset details"},"404":{"description":"asset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a asset","tags":["Assets"]},"patch":{"description":"Partially update a asset.","operationId":"AssetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Assets ID or name","schema":{}}],"responses":{"200":{"description":"asset updated"},"404":{"description":"asset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a asset","tags":["Assets"]},"delete":{"description":"Permanently delete a asset.","operationId":"AssetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Assets ID or name","schema":{}}],"responses":{"200":{"description":"asset deleted"},"404":{"description":"asset not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a asset","tags":["Assets"]}},"/v1/assets/{id}/submit":{"post":{"description":"Submit a draft asset to finalize it.","operationId":"AssetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Assets ID or name","schema":{}}],"responses":{"200":{"description":"asset submitted"}},"security":[{"api-key":[]}],"summary":"Submit a asset","tags":["Assets"]}},"/v1/quality-inspections":{"get":{"description":"Retrieve a paginated list of quality inspections. Requires Business plan.","operationId":"QualityInspectionsController_","parameters":[{"name":"inspection_type","required":false,"in":"query","description":"Filter by inspection type","schema":{"type":"string"}},{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of quality inspections"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List quality inspections","tags":["Quality Inspections"]},"post":{"description":"Create a new quality inspection.","operationId":"QualityInspectionsController_","parameters":[],"responses":{"201":{"description":"quality inspection created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a quality inspection","tags":["Quality Inspections"]}},"/v1/quality-inspections/{id}":{"get":{"description":"Retrieve a single quality inspection by ID.","operationId":"QualityInspectionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Inspections ID or name","schema":{}}],"responses":{"200":{"description":"quality inspection details"},"404":{"description":"quality inspection not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a quality inspection","tags":["Quality Inspections"]},"patch":{"description":"Partially update a quality inspection.","operationId":"QualityInspectionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Inspections ID or name","schema":{}}],"responses":{"200":{"description":"quality inspection updated"},"404":{"description":"quality inspection not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a quality inspection","tags":["Quality Inspections"]},"delete":{"description":"Permanently delete a quality inspection.","operationId":"QualityInspectionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Inspections ID or name","schema":{}}],"responses":{"200":{"description":"quality inspection deleted"},"404":{"description":"quality inspection not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a quality inspection","tags":["Quality Inspections"]}},"/v1/quality-inspections/{id}/submit":{"post":{"description":"Submit a draft quality inspection to finalize it.","operationId":"QualityInspectionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Inspections ID or name","schema":{}}],"responses":{"200":{"description":"quality inspection submitted"}},"security":[{"api-key":[]}],"summary":"Submit a quality inspection","tags":["Quality Inspections"]}},"/v1/production-plans":{"get":{"description":"Retrieve a paginated list of production plans. Requires Business plan.","operationId":"ProductionPlansController_","parameters":[{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of production plans"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List production plans","tags":["Production Plans"]},"post":{"description":"Create a new production plan.","operationId":"ProductionPlansController_","parameters":[],"responses":{"201":{"description":"production plan created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a production plan","tags":["Production Plans"]}},"/v1/production-plans/{id}":{"get":{"description":"Retrieve a single production plan by ID.","operationId":"ProductionPlansController_","parameters":[{"name":"id","required":true,"in":"path","description":"Production Plans ID or name","schema":{}}],"responses":{"200":{"description":"production plan details"},"404":{"description":"production plan not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a production plan","tags":["Production Plans"]},"patch":{"description":"Partially update a production plan.","operationId":"ProductionPlansController_","parameters":[{"name":"id","required":true,"in":"path","description":"Production Plans ID or name","schema":{}}],"responses":{"200":{"description":"production plan updated"},"404":{"description":"production plan not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a production plan","tags":["Production Plans"]},"delete":{"description":"Permanently delete a production plan.","operationId":"ProductionPlansController_","parameters":[{"name":"id","required":true,"in":"path","description":"Production Plans ID or name","schema":{}}],"responses":{"200":{"description":"production plan deleted"},"404":{"description":"production plan not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a production plan","tags":["Production Plans"]}},"/v1/production-plans/{id}/submit":{"post":{"description":"Submit a draft production plan to finalize it.","operationId":"ProductionPlansController_","parameters":[{"name":"id","required":true,"in":"path","description":"Production Plans ID or name","schema":{}}],"responses":{"200":{"description":"production plan submitted"}},"security":[{"api-key":[]}],"summary":"Submit a production plan","tags":["Production Plans"]}},"/v1/subcontracting-orders":{"get":{"description":"Retrieve a paginated list of subcontracting orders. Requires Business plan.","operationId":"SubcontractingOrdersController_","parameters":[{"name":"supplier","required":false,"in":"query","description":"Filter by supplier","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of subcontracting orders"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List subcontracting orders","tags":["Subcontracting Orders"]},"post":{"description":"Create a new subcontracting order.","operationId":"SubcontractingOrdersController_","parameters":[],"responses":{"201":{"description":"subcontracting order created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a subcontracting order","tags":["Subcontracting Orders"]}},"/v1/subcontracting-orders/{id}":{"get":{"description":"Retrieve a single subcontracting order by ID.","operationId":"SubcontractingOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting order details"},"404":{"description":"subcontracting order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a subcontracting order","tags":["Subcontracting Orders"]},"patch":{"description":"Partially update a subcontracting order.","operationId":"SubcontractingOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting order updated"},"404":{"description":"subcontracting order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a subcontracting order","tags":["Subcontracting Orders"]},"delete":{"description":"Permanently delete a subcontracting order.","operationId":"SubcontractingOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting order deleted"},"404":{"description":"subcontracting order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a subcontracting order","tags":["Subcontracting Orders"]}},"/v1/subcontracting-orders/{id}/submit":{"post":{"description":"Submit a draft subcontracting order to finalize it.","operationId":"SubcontractingOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting order submitted"}},"security":[{"api-key":[]}],"summary":"Submit a subcontracting order","tags":["Subcontracting Orders"]}},"/v1/subscriptions":{"get":{"description":"Retrieve a paginated list of subscriptions. Requires Business plan.","operationId":"SubscriptionsController_","parameters":[{"name":"party_type","required":false,"in":"query","description":"Filter by party type","schema":{"type":"string"}},{"name":"party","required":false,"in":"query","description":"Filter by party","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of subscriptions"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List subscriptions","tags":["Subscriptions"]},"post":{"description":"Create a new subscription.","operationId":"SubscriptionsController_","parameters":[],"responses":{"201":{"description":"subscription created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a subscription","tags":["Subscriptions"]}},"/v1/subscriptions/{id}":{"get":{"description":"Retrieve a single subscription by ID.","operationId":"SubscriptionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subscriptions ID or name","schema":{}}],"responses":{"200":{"description":"subscription details"},"404":{"description":"subscription not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a subscription","tags":["Subscriptions"]},"patch":{"description":"Partially update a subscription.","operationId":"SubscriptionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subscriptions ID or name","schema":{}}],"responses":{"200":{"description":"subscription updated"},"404":{"description":"subscription not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a subscription","tags":["Subscriptions"]},"delete":{"description":"Permanently delete a subscription.","operationId":"SubscriptionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subscriptions ID or name","schema":{}}],"responses":{"200":{"description":"subscription deleted"},"404":{"description":"subscription not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a subscription","tags":["Subscriptions"]}},"/v1/addresses":{"get":{"description":"Retrieve a paginated list of addresses.","operationId":"AddressesController_","parameters":[{"name":"address_type","required":false,"in":"query","description":"Filter by address type","schema":{"type":"string"}},{"name":"city","required":false,"in":"query","description":"Filter by city","schema":{"type":"string"}},{"name":"state","required":false,"in":"query","description":"Filter by state","schema":{"type":"string"}},{"name":"country","required":false,"in":"query","description":"Filter by country","schema":{"type":"string"}},{"name":"is_primary_address","required":false,"in":"query","description":"Filter by is primary address","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of addresses"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List addresses","tags":["Addresses"]},"post":{"description":"Create a new addresse.","operationId":"AddressesController_","parameters":[],"responses":{"201":{"description":"addresse created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a addresse","tags":["Addresses"]}},"/v1/addresses/{id}":{"get":{"description":"Retrieve a single addresse by ID.","operationId":"AddressesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Addresses ID or name","schema":{}}],"responses":{"200":{"description":"addresse details"},"404":{"description":"addresse not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a addresse","tags":["Addresses"]},"patch":{"description":"Partially update a addresse.","operationId":"AddressesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Addresses ID or name","schema":{}}],"responses":{"200":{"description":"addresse updated"},"404":{"description":"addresse not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a addresse","tags":["Addresses"]},"delete":{"description":"Permanently delete a addresse.","operationId":"AddressesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Addresses ID or name","schema":{}}],"responses":{"200":{"description":"addresse deleted"},"404":{"description":"addresse not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a addresse","tags":["Addresses"]}},"/v1/banks":{"get":{"description":"Retrieve a paginated list of banks. Requires Pro plan.","operationId":"BanksController_","parameters":[],"responses":{"200":{"description":"Paginated list of banks"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List banks","tags":["Banks"]},"post":{"description":"Create a new bank.","operationId":"BanksController_","parameters":[],"responses":{"201":{"description":"bank created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bank","tags":["Banks"]}},"/v1/banks/{id}":{"get":{"description":"Retrieve a single bank by ID.","operationId":"BanksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Banks ID or name","schema":{}}],"responses":{"200":{"description":"bank details"},"404":{"description":"bank not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bank","tags":["Banks"]},"patch":{"description":"Partially update a bank.","operationId":"BanksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Banks ID or name","schema":{}}],"responses":{"200":{"description":"bank updated"},"404":{"description":"bank not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bank","tags":["Banks"]},"delete":{"description":"Permanently delete a bank.","operationId":"BanksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Banks ID or name","schema":{}}],"responses":{"200":{"description":"bank deleted"},"404":{"description":"bank not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bank","tags":["Banks"]}},"/v1/bank-accounts":{"get":{"description":"Retrieve a paginated list of bank accounts. Requires Pro plan.","operationId":"BankAccountsController_","parameters":[{"name":"bank","required":false,"in":"query","description":"Filter by bank","schema":{"type":"string"}},{"name":"account","required":false,"in":"query","description":"Filter by account","schema":{"type":"string"}},{"name":"account_type","required":false,"in":"query","description":"Filter by account type","schema":{"type":"string"}},{"name":"is_default","required":false,"in":"query","description":"Filter by is default","schema":{"type":"boolean"}},{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of bank accounts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bank accounts","tags":["Bank Accounts"]},"post":{"description":"Create a new bank account.","operationId":"BankAccountsController_","parameters":[],"responses":{"201":{"description":"bank account created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bank account","tags":["Bank Accounts"]}},"/v1/bank-accounts/{id}":{"get":{"description":"Retrieve a single bank account by ID.","operationId":"BankAccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Accounts ID or name","schema":{}}],"responses":{"200":{"description":"bank account details"},"404":{"description":"bank account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bank account","tags":["Bank Accounts"]},"patch":{"description":"Partially update a bank account.","operationId":"BankAccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Accounts ID or name","schema":{}}],"responses":{"200":{"description":"bank account updated"},"404":{"description":"bank account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bank account","tags":["Bank Accounts"]},"delete":{"description":"Permanently delete a bank account.","operationId":"BankAccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Accounts ID or name","schema":{}}],"responses":{"200":{"description":"bank account deleted"},"404":{"description":"bank account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bank account","tags":["Bank Accounts"]}},"/v1/bank-transactions":{"get":{"description":"Retrieve a paginated list of bank transactions. Requires Pro plan.","operationId":"BankTransactionsController_","parameters":[{"name":"bank_account","required":false,"in":"query","description":"Filter by bank account","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"party_type","required":false,"in":"query","description":"Filter by party type","schema":{"type":"string"}},{"name":"party","required":false,"in":"query","description":"Filter by party","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of bank transactions"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bank transactions","tags":["Bank Transactions"]},"post":{"description":"Create a new bank transaction.","operationId":"BankTransactionsController_","parameters":[],"responses":{"201":{"description":"bank transaction created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bank transaction","tags":["Bank Transactions"]}},"/v1/bank-transactions/{id}":{"get":{"description":"Retrieve a single bank transaction by ID.","operationId":"BankTransactionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Transactions ID or name","schema":{}}],"responses":{"200":{"description":"bank transaction details"},"404":{"description":"bank transaction not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bank transaction","tags":["Bank Transactions"]},"patch":{"description":"Partially update a bank transaction.","operationId":"BankTransactionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Transactions ID or name","schema":{}}],"responses":{"200":{"description":"bank transaction updated"},"404":{"description":"bank transaction not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bank transaction","tags":["Bank Transactions"]},"delete":{"description":"Permanently delete a bank transaction.","operationId":"BankTransactionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Transactions ID or name","schema":{}}],"responses":{"200":{"description":"bank transaction deleted"},"404":{"description":"bank transaction not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bank transaction","tags":["Bank Transactions"]}},"/v1/bank-transactions/{id}/submit":{"post":{"description":"Submit a draft bank transaction to finalize it.","operationId":"BankTransactionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Transactions ID or name","schema":{}}],"responses":{"200":{"description":"bank transaction submitted"}},"security":[{"api-key":[]}],"summary":"Submit a bank transaction","tags":["Bank Transactions"]}},"/v1/bank-clearances":{"get":{"description":"Retrieve a paginated list of bank clearances. Requires Pro plan.","operationId":"BankClearancesController_","parameters":[{"name":"account","required":false,"in":"query","description":"Filter by account","schema":{"type":"string"}},{"name":"bank_account","required":false,"in":"query","description":"Filter by bank account","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of bank clearances"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bank clearances","tags":["Bank Clearances"]},"post":{"description":"Create a new bank clearance.","operationId":"BankClearancesController_","parameters":[],"responses":{"201":{"description":"bank clearance created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bank clearance","tags":["Bank Clearances"]}},"/v1/bank-clearances/{id}":{"get":{"description":"Retrieve a single bank clearance by ID.","operationId":"BankClearancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Clearances ID or name","schema":{}}],"responses":{"200":{"description":"bank clearance details"},"404":{"description":"bank clearance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bank clearance","tags":["Bank Clearances"]},"patch":{"description":"Partially update a bank clearance.","operationId":"BankClearancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Clearances ID or name","schema":{}}],"responses":{"200":{"description":"bank clearance updated"},"404":{"description":"bank clearance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bank clearance","tags":["Bank Clearances"]},"delete":{"description":"Permanently delete a bank clearance.","operationId":"BankClearancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Clearances ID or name","schema":{}}],"responses":{"200":{"description":"bank clearance deleted"},"404":{"description":"bank clearance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bank clearance","tags":["Bank Clearances"]}},"/v1/bank-statement-imports":{"get":{"description":"Retrieve a paginated list of bank statement imports. Requires Pro plan.","operationId":"BankStatementImportsController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"bank_account","required":false,"in":"query","description":"Filter by bank account","schema":{"type":"string"}},{"name":"bank","required":false,"in":"query","description":"Filter by bank","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"import_type","required":false,"in":"query","description":"Filter by import type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of bank statement imports"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bank statement imports","tags":["Bank Statement Imports"]},"post":{"description":"Create a new bank statement import.","operationId":"BankStatementImportsController_","parameters":[],"responses":{"201":{"description":"bank statement import created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bank statement import","tags":["Bank Statement Imports"]}},"/v1/bank-statement-imports/{id}":{"get":{"description":"Retrieve a single bank statement import by ID.","operationId":"BankStatementImportsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Statement Imports ID or name","schema":{}}],"responses":{"200":{"description":"bank statement import details"},"404":{"description":"bank statement import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bank statement import","tags":["Bank Statement Imports"]},"patch":{"description":"Partially update a bank statement import.","operationId":"BankStatementImportsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Statement Imports ID or name","schema":{}}],"responses":{"200":{"description":"bank statement import updated"},"404":{"description":"bank statement import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bank statement import","tags":["Bank Statement Imports"]},"delete":{"description":"Permanently delete a bank statement import.","operationId":"BankStatementImportsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Statement Imports ID or name","schema":{}}],"responses":{"200":{"description":"bank statement import deleted"},"404":{"description":"bank statement import not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bank statement import","tags":["Bank Statement Imports"]}},"/v1/bank-transaction-rules":{"get":{"description":"Retrieve a paginated list of bank transaction rules. Requires Pro plan.","operationId":"BankTransactionRulesController_","parameters":[{"name":"transaction_type","required":false,"in":"query","description":"Filter by transaction type","schema":{"type":"string"}},{"name":"priority","required":false,"in":"query","description":"Filter by priority","schema":{"type":"number"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of bank transaction rules"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bank transaction rules","tags":["Bank Transaction Rules"]},"post":{"description":"Create a new bank transaction rule.","operationId":"BankTransactionRulesController_","parameters":[],"responses":{"201":{"description":"bank transaction rule created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bank transaction rule","tags":["Bank Transaction Rules"]}},"/v1/bank-transaction-rules/{id}":{"get":{"description":"Retrieve a single bank transaction rule by ID.","operationId":"BankTransactionRulesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Transaction Rules ID or name","schema":{}}],"responses":{"200":{"description":"bank transaction rule details"},"404":{"description":"bank transaction rule not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bank transaction rule","tags":["Bank Transaction Rules"]},"patch":{"description":"Partially update a bank transaction rule.","operationId":"BankTransactionRulesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Transaction Rules ID or name","schema":{}}],"responses":{"200":{"description":"bank transaction rule updated"},"404":{"description":"bank transaction rule not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bank transaction rule","tags":["Bank Transaction Rules"]},"delete":{"description":"Permanently delete a bank transaction rule.","operationId":"BankTransactionRulesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Transaction Rules ID or name","schema":{}}],"responses":{"200":{"description":"bank transaction rule deleted"},"404":{"description":"bank transaction rule not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bank transaction rule","tags":["Bank Transaction Rules"]}},"/v1/bank-guarantees":{"get":{"description":"Retrieve a paginated list of bank guarantees. Requires Pro plan.","operationId":"BankGuaranteesController_","parameters":[{"name":"bank","required":false,"in":"query","description":"Filter by bank","schema":{"type":"string"}},{"name":"bank_account","required":false,"in":"query","description":"Filter by bank account","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of bank guarantees"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bank guarantees","tags":["Bank Guarantees"]},"post":{"description":"Create a new bank guarantee.","operationId":"BankGuaranteesController_","parameters":[],"responses":{"201":{"description":"bank guarantee created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bank guarantee","tags":["Bank Guarantees"]}},"/v1/bank-guarantees/{id}":{"get":{"description":"Retrieve a single bank guarantee by ID.","operationId":"BankGuaranteesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Guarantees ID or name","schema":{}}],"responses":{"200":{"description":"bank guarantee details"},"404":{"description":"bank guarantee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bank guarantee","tags":["Bank Guarantees"]},"patch":{"description":"Partially update a bank guarantee.","operationId":"BankGuaranteesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Guarantees ID or name","schema":{}}],"responses":{"200":{"description":"bank guarantee updated"},"404":{"description":"bank guarantee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bank guarantee","tags":["Bank Guarantees"]},"delete":{"description":"Permanently delete a bank guarantee.","operationId":"BankGuaranteesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Guarantees ID or name","schema":{}}],"responses":{"200":{"description":"bank guarantee deleted"},"404":{"description":"bank guarantee not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bank guarantee","tags":["Bank Guarantees"]}},"/v1/bank-guarantees/{id}/submit":{"post":{"description":"Submit a draft bank guarantee to finalize it.","operationId":"BankGuaranteesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Bank Guarantees ID or name","schema":{}}],"responses":{"200":{"description":"bank guarantee submitted"}},"security":[{"api-key":[]}],"summary":"Submit a bank guarantee","tags":["Bank Guarantees"]}},"/v1/mode-of-payments":{"get":{"description":"Retrieve a paginated list of modes of payment. Requires Pro plan.","operationId":"ModeOfPaymentsController_","parameters":[{"name":"type","required":false,"in":"query","description":"Filter by type","schema":{"type":"string"}},{"name":"enabled","required":false,"in":"query","description":"Filter by enabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of modes of payment"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List modes of payment","tags":["Modes of Payment"]},"post":{"description":"Create a new modes of payment.","operationId":"ModeOfPaymentsController_","parameters":[],"responses":{"201":{"description":"modes of payment created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a modes of payment","tags":["Modes of Payment"]}},"/v1/mode-of-payments/{id}":{"get":{"description":"Retrieve a single modes of payment by ID.","operationId":"ModeOfPaymentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Modes of Payment ID or name","schema":{}}],"responses":{"200":{"description":"modes of payment details"},"404":{"description":"modes of payment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a modes of payment","tags":["Modes of Payment"]},"patch":{"description":"Partially update a modes of payment.","operationId":"ModeOfPaymentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Modes of Payment ID or name","schema":{}}],"responses":{"200":{"description":"modes of payment updated"},"404":{"description":"modes of payment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a modes of payment","tags":["Modes of Payment"]},"delete":{"description":"Permanently delete a modes of payment.","operationId":"ModeOfPaymentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Modes of Payment ID or name","schema":{}}],"responses":{"200":{"description":"modes of payment deleted"},"404":{"description":"modes of payment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a modes of payment","tags":["Modes of Payment"]}},"/v1/payment-terms-templates":{"get":{"description":"Retrieve a paginated list of payment terms templates. Requires Pro plan.","operationId":"PaymentTermsTemplatesController_","parameters":[],"responses":{"200":{"description":"Paginated list of payment terms templates"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payment terms templates","tags":["Payment Terms Templates"]},"post":{"description":"Create a new payment terms template.","operationId":"PaymentTermsTemplatesController_","parameters":[],"responses":{"201":{"description":"payment terms template created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payment terms template","tags":["Payment Terms Templates"]}},"/v1/payment-terms-templates/{id}":{"get":{"description":"Retrieve a single payment terms template by ID.","operationId":"PaymentTermsTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Terms Templates ID or name","schema":{}}],"responses":{"200":{"description":"payment terms template details"},"404":{"description":"payment terms template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payment terms template","tags":["Payment Terms Templates"]},"patch":{"description":"Partially update a payment terms template.","operationId":"PaymentTermsTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Terms Templates ID or name","schema":{}}],"responses":{"200":{"description":"payment terms template updated"},"404":{"description":"payment terms template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payment terms template","tags":["Payment Terms Templates"]},"delete":{"description":"Permanently delete a payment terms template.","operationId":"PaymentTermsTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Terms Templates ID or name","schema":{}}],"responses":{"200":{"description":"payment terms template deleted"},"404":{"description":"payment terms template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payment terms template","tags":["Payment Terms Templates"]}},"/v1/payment-requests":{"get":{"description":"Retrieve a paginated list of payment requests. Requires Pro plan.","operationId":"PaymentRequestsController_","parameters":[{"name":"party_type","required":false,"in":"query","description":"Filter by party type","schema":{"type":"string"}},{"name":"party","required":false,"in":"query","description":"Filter by party","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of payment requests"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payment requests","tags":["Payment Requests"]},"post":{"description":"Create a new payment request.","operationId":"PaymentRequestsController_","parameters":[],"responses":{"201":{"description":"payment request created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payment request","tags":["Payment Requests"]}},"/v1/payment-requests/{id}":{"get":{"description":"Retrieve a single payment request by ID.","operationId":"PaymentRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Requests ID or name","schema":{}}],"responses":{"200":{"description":"payment request details"},"404":{"description":"payment request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payment request","tags":["Payment Requests"]},"patch":{"description":"Partially update a payment request.","operationId":"PaymentRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Requests ID or name","schema":{}}],"responses":{"200":{"description":"payment request updated"},"404":{"description":"payment request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payment request","tags":["Payment Requests"]},"delete":{"description":"Permanently delete a payment request.","operationId":"PaymentRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Requests ID or name","schema":{}}],"responses":{"200":{"description":"payment request deleted"},"404":{"description":"payment request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payment request","tags":["Payment Requests"]}},"/v1/payment-requests/{id}/submit":{"post":{"description":"Submit a draft payment request to finalize it.","operationId":"PaymentRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Requests ID or name","schema":{}}],"responses":{"200":{"description":"payment request submitted"}},"security":[{"api-key":[]}],"summary":"Submit a payment request","tags":["Payment Requests"]}},"/v1/payment-reconciliations":{"get":{"description":"Retrieve a paginated list of payment reconciliations. Requires Pro plan.","operationId":"PaymentReconciliationsController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"party_type","required":false,"in":"query","description":"Filter by party type","schema":{"type":"string"}},{"name":"party","required":false,"in":"query","description":"Filter by party","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of payment reconciliations"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payment reconciliations","tags":["Payment Reconciliations"]},"post":{"description":"Create a new payment reconciliation.","operationId":"PaymentReconciliationsController_","parameters":[],"responses":{"201":{"description":"payment reconciliation created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payment reconciliation","tags":["Payment Reconciliations"]}},"/v1/payment-reconciliations/{id}":{"get":{"description":"Retrieve a single payment reconciliation by ID.","operationId":"PaymentReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"payment reconciliation details"},"404":{"description":"payment reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payment reconciliation","tags":["Payment Reconciliations"]},"patch":{"description":"Partially update a payment reconciliation.","operationId":"PaymentReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"payment reconciliation updated"},"404":{"description":"payment reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payment reconciliation","tags":["Payment Reconciliations"]},"delete":{"description":"Permanently delete a payment reconciliation.","operationId":"PaymentReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"payment reconciliation deleted"},"404":{"description":"payment reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payment reconciliation","tags":["Payment Reconciliations"]}},"/v1/process-payment-reconciliations":{"get":{"description":"Retrieve a paginated list of process payment reconciliations. Requires Pro plan.","operationId":"ProcessPaymentReconciliationsController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"party_type","required":false,"in":"query","description":"Filter by party type","schema":{"type":"string"}},{"name":"party","required":false,"in":"query","description":"Filter by party","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of process payment reconciliations"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List process payment reconciliations","tags":["Process Payment Reconciliations"]},"post":{"description":"Create a new process payment reconciliation.","operationId":"ProcessPaymentReconciliationsController_","parameters":[],"responses":{"201":{"description":"process payment reconciliation created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a process payment reconciliation","tags":["Process Payment Reconciliations"]}},"/v1/process-payment-reconciliations/{id}":{"get":{"description":"Retrieve a single process payment reconciliation by ID.","operationId":"ProcessPaymentReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Process Payment Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"process payment reconciliation details"},"404":{"description":"process payment reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a process payment reconciliation","tags":["Process Payment Reconciliations"]},"patch":{"description":"Partially update a process payment reconciliation.","operationId":"ProcessPaymentReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Process Payment Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"process payment reconciliation updated"},"404":{"description":"process payment reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a process payment reconciliation","tags":["Process Payment Reconciliations"]},"delete":{"description":"Permanently delete a process payment reconciliation.","operationId":"ProcessPaymentReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Process Payment Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"process payment reconciliation deleted"},"404":{"description":"process payment reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a process payment reconciliation","tags":["Process Payment Reconciliations"]}},"/v1/process-payment-reconciliations/{id}/submit":{"post":{"description":"Submit a draft process payment reconciliation to finalize it.","operationId":"ProcessPaymentReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Process Payment Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"process payment reconciliation submitted"}},"security":[{"api-key":[]}],"summary":"Submit a process payment reconciliation","tags":["Process Payment Reconciliations"]}},"/v1/payment-orders":{"get":{"description":"Retrieve a paginated list of payment orders. Requires Pro plan.","operationId":"PaymentOrdersController_","parameters":[{"name":"company_bank_account","required":false,"in":"query","description":"Filter by company bank account","schema":{"type":"string"}},{"name":"payment_order_type","required":false,"in":"query","description":"Filter by payment order type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of payment orders"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payment orders","tags":["Payment Orders"]},"post":{"description":"Create a new payment order.","operationId":"PaymentOrdersController_","parameters":[],"responses":{"201":{"description":"payment order created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payment order","tags":["Payment Orders"]}},"/v1/payment-orders/{id}":{"get":{"description":"Retrieve a single payment order by ID.","operationId":"PaymentOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Orders ID or name","schema":{}}],"responses":{"200":{"description":"payment order details"},"404":{"description":"payment order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payment order","tags":["Payment Orders"]},"patch":{"description":"Partially update a payment order.","operationId":"PaymentOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Orders ID or name","schema":{}}],"responses":{"200":{"description":"payment order updated"},"404":{"description":"payment order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payment order","tags":["Payment Orders"]},"delete":{"description":"Permanently delete a payment order.","operationId":"PaymentOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Orders ID or name","schema":{}}],"responses":{"200":{"description":"payment order deleted"},"404":{"description":"payment order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payment order","tags":["Payment Orders"]}},"/v1/payment-orders/{id}/submit":{"post":{"description":"Submit a draft payment order to finalize it.","operationId":"PaymentOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Orders ID or name","schema":{}}],"responses":{"200":{"description":"payment order submitted"}},"security":[{"api-key":[]}],"summary":"Submit a payment order","tags":["Payment Orders"]}},"/v1/payment-gateway-accounts":{"get":{"description":"Retrieve a paginated list of payment gateway accounts. Requires Pro plan.","operationId":"PaymentGatewayAccountsController_","parameters":[{"name":"payment_gateway","required":false,"in":"query","description":"Filter by payment gateway","schema":{"type":"string"}},{"name":"currency","required":false,"in":"query","description":"Filter by currency","schema":{"type":"string"}},{"name":"is_default","required":false,"in":"query","description":"Filter by is default","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of payment gateway accounts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payment gateway accounts","tags":["Payment Gateway Accounts"]},"post":{"description":"Create a new payment gateway account.","operationId":"PaymentGatewayAccountsController_","parameters":[],"responses":{"201":{"description":"payment gateway account created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payment gateway account","tags":["Payment Gateway Accounts"]}},"/v1/payment-gateway-accounts/{id}":{"get":{"description":"Retrieve a single payment gateway account by ID.","operationId":"PaymentGatewayAccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Gateway Accounts ID or name","schema":{}}],"responses":{"200":{"description":"payment gateway account details"},"404":{"description":"payment gateway account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payment gateway account","tags":["Payment Gateway Accounts"]},"patch":{"description":"Partially update a payment gateway account.","operationId":"PaymentGatewayAccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Gateway Accounts ID or name","schema":{}}],"responses":{"200":{"description":"payment gateway account updated"},"404":{"description":"payment gateway account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payment gateway account","tags":["Payment Gateway Accounts"]},"delete":{"description":"Permanently delete a payment gateway account.","operationId":"PaymentGatewayAccountsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Gateway Accounts ID or name","schema":{}}],"responses":{"200":{"description":"payment gateway account deleted"},"404":{"description":"payment gateway account not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payment gateway account","tags":["Payment Gateway Accounts"]}},"/v1/dunnings":{"get":{"description":"Retrieve a paginated list of dunnings. Requires Pro plan.","operationId":"DunningsController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"dunning_type","required":false,"in":"query","description":"Filter by dunning type","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of dunnings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List dunnings","tags":["Dunnings"]},"post":{"description":"Create a new dunning.","operationId":"DunningsController_","parameters":[],"responses":{"201":{"description":"dunning created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a dunning","tags":["Dunnings"]}},"/v1/dunnings/{id}":{"get":{"description":"Retrieve a single dunning by ID.","operationId":"DunningsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Dunnings ID or name","schema":{}}],"responses":{"200":{"description":"dunning details"},"404":{"description":"dunning not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a dunning","tags":["Dunnings"]},"patch":{"description":"Partially update a dunning.","operationId":"DunningsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Dunnings ID or name","schema":{}}],"responses":{"200":{"description":"dunning updated"},"404":{"description":"dunning not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a dunning","tags":["Dunnings"]},"delete":{"description":"Permanently delete a dunning.","operationId":"DunningsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Dunnings ID or name","schema":{}}],"responses":{"200":{"description":"dunning deleted"},"404":{"description":"dunning not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a dunning","tags":["Dunnings"]}},"/v1/dunnings/{id}/submit":{"post":{"description":"Submit a draft dunning to finalize it.","operationId":"DunningsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Dunnings ID or name","schema":{}}],"responses":{"200":{"description":"dunning submitted"}},"security":[{"api-key":[]}],"summary":"Submit a dunning","tags":["Dunnings"]}},"/v1/cost-centers":{"get":{"description":"Retrieve a paginated list of cost centers. Requires Pro plan.","operationId":"CostCentersController_","parameters":[{"name":"is_group","required":false,"in":"query","description":"Filter by is group","schema":{"type":"boolean"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of cost centers"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List cost centers","tags":["Cost Centers"]},"post":{"description":"Create a new cost center.","operationId":"CostCentersController_","parameters":[],"responses":{"201":{"description":"cost center created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a cost center","tags":["Cost Centers"]}},"/v1/cost-centers/{id}":{"get":{"description":"Retrieve a single cost center by ID.","operationId":"CostCentersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Cost Centers ID or name","schema":{}}],"responses":{"200":{"description":"cost center details"},"404":{"description":"cost center not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a cost center","tags":["Cost Centers"]},"patch":{"description":"Partially update a cost center.","operationId":"CostCentersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Cost Centers ID or name","schema":{}}],"responses":{"200":{"description":"cost center updated"},"404":{"description":"cost center not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a cost center","tags":["Cost Centers"]},"delete":{"description":"Permanently delete a cost center.","operationId":"CostCentersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Cost Centers ID or name","schema":{}}],"responses":{"200":{"description":"cost center deleted"},"404":{"description":"cost center not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a cost center","tags":["Cost Centers"]}},"/v1/fiscal-years":{"get":{"description":"Retrieve a paginated list of fiscal years. Requires Pro plan.","operationId":"FiscalYearsController_","parameters":[{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of fiscal years"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List fiscal years","tags":["Fiscal Years"]},"post":{"description":"Create a new fiscal year.","operationId":"FiscalYearsController_","parameters":[],"responses":{"201":{"description":"fiscal year created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a fiscal year","tags":["Fiscal Years"]}},"/v1/fiscal-years/{id}":{"get":{"description":"Retrieve a single fiscal year by ID.","operationId":"FiscalYearsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Fiscal Years ID or name","schema":{}}],"responses":{"200":{"description":"fiscal year details"},"404":{"description":"fiscal year not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a fiscal year","tags":["Fiscal Years"]},"patch":{"description":"Partially update a fiscal year.","operationId":"FiscalYearsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Fiscal Years ID or name","schema":{}}],"responses":{"200":{"description":"fiscal year updated"},"404":{"description":"fiscal year not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a fiscal year","tags":["Fiscal Years"]},"delete":{"description":"Permanently delete a fiscal year.","operationId":"FiscalYearsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Fiscal Years ID or name","schema":{}}],"responses":{"200":{"description":"fiscal year deleted"},"404":{"description":"fiscal year not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a fiscal year","tags":["Fiscal Years"]}},"/v1/budgets":{"get":{"description":"Retrieve a paginated list of budgets. Requires Pro plan.","operationId":"BudgetsController_","parameters":[{"name":"budget_against","required":false,"in":"query","description":"Filter by budget against","schema":{"type":"string"}},{"name":"cost_center","required":false,"in":"query","description":"Filter by cost center","schema":{"type":"string"}},{"name":"project","required":false,"in":"query","description":"Filter by project","schema":{"type":"string"}},{"name":"fiscal_year","required":false,"in":"query","description":"Filter by fiscal year","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of budgets"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List budgets","tags":["Budgets"]},"post":{"description":"Create a new budget.","operationId":"BudgetsController_","parameters":[],"responses":{"201":{"description":"budget created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a budget","tags":["Budgets"]}},"/v1/budgets/{id}":{"get":{"description":"Retrieve a single budget by ID.","operationId":"BudgetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Budgets ID or name","schema":{}}],"responses":{"200":{"description":"budget details"},"404":{"description":"budget not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a budget","tags":["Budgets"]},"patch":{"description":"Partially update a budget.","operationId":"BudgetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Budgets ID or name","schema":{}}],"responses":{"200":{"description":"budget updated"},"404":{"description":"budget not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a budget","tags":["Budgets"]},"delete":{"description":"Permanently delete a budget.","operationId":"BudgetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Budgets ID or name","schema":{}}],"responses":{"200":{"description":"budget deleted"},"404":{"description":"budget not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a budget","tags":["Budgets"]}},"/v1/budgets/{id}/submit":{"post":{"description":"Submit a draft budget to finalize it.","operationId":"BudgetsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Budgets ID or name","schema":{}}],"responses":{"200":{"description":"budget submitted"}},"security":[{"api-key":[]}],"summary":"Submit a budget","tags":["Budgets"]}},"/v1/pos-invoices":{"get":{"description":"Retrieve a paginated list of pos invoices. Requires Pro plan.","operationId":"PosInvoicesController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"pos_profile","required":false,"in":"query","description":"Filter by pos profile","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"is_return","required":false,"in":"query","description":"Filter by is return","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of pos invoices"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List pos invoices","tags":["POS Invoices"]},"post":{"description":"Create a new pos invoice.","operationId":"PosInvoicesController_","parameters":[],"responses":{"201":{"description":"pos invoice created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a pos invoice","tags":["POS Invoices"]}},"/v1/pos-invoices/{id}":{"get":{"description":"Retrieve a single pos invoice by ID.","operationId":"PosInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"POS Invoices ID or name","schema":{}}],"responses":{"200":{"description":"pos invoice details"},"404":{"description":"pos invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a pos invoice","tags":["POS Invoices"]},"patch":{"description":"Partially update a pos invoice.","operationId":"PosInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"POS Invoices ID or name","schema":{}}],"responses":{"200":{"description":"pos invoice updated"},"404":{"description":"pos invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a pos invoice","tags":["POS Invoices"]},"delete":{"description":"Permanently delete a pos invoice.","operationId":"PosInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"POS Invoices ID or name","schema":{}}],"responses":{"200":{"description":"pos invoice deleted"},"404":{"description":"pos invoice not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a pos invoice","tags":["POS Invoices"]}},"/v1/pos-invoices/{id}/submit":{"post":{"description":"Submit a draft pos invoice to finalize it.","operationId":"PosInvoicesController_","parameters":[{"name":"id","required":true,"in":"path","description":"POS Invoices ID or name","schema":{}}],"responses":{"200":{"description":"pos invoice submitted"}},"security":[{"api-key":[]}],"summary":"Submit a pos invoice","tags":["POS Invoices"]}},"/v1/pos-profiles":{"get":{"description":"Retrieve a paginated list of pos profiles. Requires Pro plan.","operationId":"PosProfilesController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"warehouse","required":false,"in":"query","description":"Filter by warehouse","schema":{"type":"string"}},{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of pos profiles"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List pos profiles","tags":["POS Profiles"]},"post":{"description":"Create a new pos profile.","operationId":"PosProfilesController_","parameters":[],"responses":{"201":{"description":"pos profile created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a pos profile","tags":["POS Profiles"]}},"/v1/pos-profiles/{id}":{"get":{"description":"Retrieve a single pos profile by ID.","operationId":"PosProfilesController_","parameters":[{"name":"id","required":true,"in":"path","description":"POS Profiles ID or name","schema":{}}],"responses":{"200":{"description":"pos profile details"},"404":{"description":"pos profile not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a pos profile","tags":["POS Profiles"]},"patch":{"description":"Partially update a pos profile.","operationId":"PosProfilesController_","parameters":[{"name":"id","required":true,"in":"path","description":"POS Profiles ID or name","schema":{}}],"responses":{"200":{"description":"pos profile updated"},"404":{"description":"pos profile not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a pos profile","tags":["POS Profiles"]},"delete":{"description":"Permanently delete a pos profile.","operationId":"PosProfilesController_","parameters":[{"name":"id","required":true,"in":"path","description":"POS Profiles ID or name","schema":{}}],"responses":{"200":{"description":"pos profile deleted"},"404":{"description":"pos profile not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a pos profile","tags":["POS Profiles"]}},"/v1/loyalty-programs":{"get":{"description":"Retrieve a paginated list of loyalty programs. Requires Pro plan.","operationId":"LoyaltyProgramsController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"auto_opt_in","required":false,"in":"query","description":"Filter by auto opt in","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of loyalty programs"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List loyalty programs","tags":["Loyalty Programs"]},"post":{"description":"Create a new loyalty program.","operationId":"LoyaltyProgramsController_","parameters":[],"responses":{"201":{"description":"loyalty program created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a loyalty program","tags":["Loyalty Programs"]}},"/v1/loyalty-programs/{id}":{"get":{"description":"Retrieve a single loyalty program by ID.","operationId":"LoyaltyProgramsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Loyalty Programs ID or name","schema":{}}],"responses":{"200":{"description":"loyalty program details"},"404":{"description":"loyalty program not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a loyalty program","tags":["Loyalty Programs"]},"patch":{"description":"Partially update a loyalty program.","operationId":"LoyaltyProgramsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Loyalty Programs ID or name","schema":{}}],"responses":{"200":{"description":"loyalty program updated"},"404":{"description":"loyalty program not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a loyalty program","tags":["Loyalty Programs"]},"delete":{"description":"Permanently delete a loyalty program.","operationId":"LoyaltyProgramsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Loyalty Programs ID or name","schema":{}}],"responses":{"200":{"description":"loyalty program deleted"},"404":{"description":"loyalty program not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a loyalty program","tags":["Loyalty Programs"]}},"/v1/period-closing-vouchers":{"get":{"description":"Retrieve a paginated list of period closing vouchers. Requires Pro plan.","operationId":"PeriodClosingVouchersController_","parameters":[{"name":"fiscal_year","required":false,"in":"query","description":"Filter by fiscal year","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of period closing vouchers"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List period closing vouchers","tags":["Period Closing Vouchers"]},"post":{"description":"Create a new period closing voucher.","operationId":"PeriodClosingVouchersController_","parameters":[],"responses":{"201":{"description":"period closing voucher created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a period closing voucher","tags":["Period Closing Vouchers"]}},"/v1/period-closing-vouchers/{id}":{"get":{"description":"Retrieve a single period closing voucher by ID.","operationId":"PeriodClosingVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Period Closing Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"period closing voucher details"},"404":{"description":"period closing voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a period closing voucher","tags":["Period Closing Vouchers"]},"patch":{"description":"Partially update a period closing voucher.","operationId":"PeriodClosingVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Period Closing Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"period closing voucher updated"},"404":{"description":"period closing voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a period closing voucher","tags":["Period Closing Vouchers"]},"delete":{"description":"Permanently delete a period closing voucher.","operationId":"PeriodClosingVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Period Closing Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"period closing voucher deleted"},"404":{"description":"period closing voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a period closing voucher","tags":["Period Closing Vouchers"]}},"/v1/period-closing-vouchers/{id}/submit":{"post":{"description":"Submit a draft period closing voucher to finalize it.","operationId":"PeriodClosingVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Period Closing Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"period closing voucher submitted"}},"security":[{"api-key":[]}],"summary":"Submit a period closing voucher","tags":["Period Closing Vouchers"]}},"/v1/accounting-periods":{"get":{"description":"Retrieve a paginated list of accounting periods. Requires Pro plan.","operationId":"AccountingPeriodsController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of accounting periods"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List accounting periods","tags":["Accounting Periods"]},"post":{"description":"Create a new accounting period.","operationId":"AccountingPeriodsController_","parameters":[],"responses":{"201":{"description":"accounting period created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a accounting period","tags":["Accounting Periods"]}},"/v1/accounting-periods/{id}":{"get":{"description":"Retrieve a single accounting period by ID.","operationId":"AccountingPeriodsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Accounting Periods ID or name","schema":{}}],"responses":{"200":{"description":"accounting period details"},"404":{"description":"accounting period not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a accounting period","tags":["Accounting Periods"]},"patch":{"description":"Partially update a accounting period.","operationId":"AccountingPeriodsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Accounting Periods ID or name","schema":{}}],"responses":{"200":{"description":"accounting period updated"},"404":{"description":"accounting period not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a accounting period","tags":["Accounting Periods"]},"delete":{"description":"Permanently delete a accounting period.","operationId":"AccountingPeriodsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Accounting Periods ID or name","schema":{}}],"responses":{"200":{"description":"accounting period deleted"},"404":{"description":"accounting period not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a accounting period","tags":["Accounting Periods"]}},"/v1/tax-categories":{"get":{"description":"Retrieve a paginated list of tax categories. Requires Pro plan.","operationId":"TaxCategoriesController_","parameters":[{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of tax categories"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List tax categories","tags":["Tax Categories"]},"post":{"description":"Create a new tax categorie.","operationId":"TaxCategoriesController_","parameters":[],"responses":{"201":{"description":"tax categorie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a tax categorie","tags":["Tax Categories"]}},"/v1/tax-categories/{id}":{"get":{"description":"Retrieve a single tax categorie by ID.","operationId":"TaxCategoriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Tax Categories ID or name","schema":{}}],"responses":{"200":{"description":"tax categorie details"},"404":{"description":"tax categorie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a tax categorie","tags":["Tax Categories"]},"patch":{"description":"Partially update a tax categorie.","operationId":"TaxCategoriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Tax Categories ID or name","schema":{}}],"responses":{"200":{"description":"tax categorie updated"},"404":{"description":"tax categorie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a tax categorie","tags":["Tax Categories"]},"delete":{"description":"Permanently delete a tax categorie.","operationId":"TaxCategoriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Tax Categories ID or name","schema":{}}],"responses":{"200":{"description":"tax categorie deleted"},"404":{"description":"tax categorie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a tax categorie","tags":["Tax Categories"]}},"/v1/sales-taxes-charges-templates":{"get":{"description":"Retrieve a paginated list of sales tax templates. Requires Pro plan.","operationId":"SalesTaxesChargesTemplatesController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"is_default","required":false,"in":"query","description":"Filter by is default","schema":{"type":"boolean"}},{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}},{"name":"tax_category","required":false,"in":"query","description":"Filter by tax category","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of sales tax templates"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List sales tax templates","tags":["Sales Tax Templates"]},"post":{"description":"Create a new sales tax template.","operationId":"SalesTaxesChargesTemplatesController_","parameters":[],"responses":{"201":{"description":"sales tax template created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a sales tax template","tags":["Sales Tax Templates"]}},"/v1/sales-taxes-charges-templates/{id}":{"get":{"description":"Retrieve a single sales tax template by ID.","operationId":"SalesTaxesChargesTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Tax Templates ID or name","schema":{}}],"responses":{"200":{"description":"sales tax template details"},"404":{"description":"sales tax template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a sales tax template","tags":["Sales Tax Templates"]},"patch":{"description":"Partially update a sales tax template.","operationId":"SalesTaxesChargesTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Tax Templates ID or name","schema":{}}],"responses":{"200":{"description":"sales tax template updated"},"404":{"description":"sales tax template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a sales tax template","tags":["Sales Tax Templates"]},"delete":{"description":"Permanently delete a sales tax template.","operationId":"SalesTaxesChargesTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Sales Tax Templates ID or name","schema":{}}],"responses":{"200":{"description":"sales tax template deleted"},"404":{"description":"sales tax template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a sales tax template","tags":["Sales Tax Templates"]}},"/v1/purchase-taxes-charges-templates":{"get":{"description":"Retrieve a paginated list of purchase tax templates. Requires Pro plan.","operationId":"PurchaseTaxesChargesTemplatesController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"is_default","required":false,"in":"query","description":"Filter by is default","schema":{"type":"boolean"}},{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}},{"name":"tax_category","required":false,"in":"query","description":"Filter by tax category","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of purchase tax templates"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List purchase tax templates","tags":["Purchase Tax Templates"]},"post":{"description":"Create a new purchase tax template.","operationId":"PurchaseTaxesChargesTemplatesController_","parameters":[],"responses":{"201":{"description":"purchase tax template created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a purchase tax template","tags":["Purchase Tax Templates"]}},"/v1/purchase-taxes-charges-templates/{id}":{"get":{"description":"Retrieve a single purchase tax template by ID.","operationId":"PurchaseTaxesChargesTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Tax Templates ID or name","schema":{}}],"responses":{"200":{"description":"purchase tax template details"},"404":{"description":"purchase tax template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a purchase tax template","tags":["Purchase Tax Templates"]},"patch":{"description":"Partially update a purchase tax template.","operationId":"PurchaseTaxesChargesTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Tax Templates ID or name","schema":{}}],"responses":{"200":{"description":"purchase tax template updated"},"404":{"description":"purchase tax template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a purchase tax template","tags":["Purchase Tax Templates"]},"delete":{"description":"Permanently delete a purchase tax template.","operationId":"PurchaseTaxesChargesTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Purchase Tax Templates ID or name","schema":{}}],"responses":{"200":{"description":"purchase tax template deleted"},"404":{"description":"purchase tax template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a purchase tax template","tags":["Purchase Tax Templates"]}},"/v1/accounting-dimensions":{"get":{"description":"Retrieve a paginated list of accounting dimensions. Requires Pro plan.","operationId":"AccountingDimensionsController_","parameters":[{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of accounting dimensions"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List accounting dimensions","tags":["Accounting Dimensions"]},"post":{"description":"Create a new accounting dimension.","operationId":"AccountingDimensionsController_","parameters":[],"responses":{"201":{"description":"accounting dimension created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a accounting dimension","tags":["Accounting Dimensions"]}},"/v1/accounting-dimensions/{id}":{"get":{"description":"Retrieve a single accounting dimension by ID.","operationId":"AccountingDimensionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Accounting Dimensions ID or name","schema":{}}],"responses":{"200":{"description":"accounting dimension details"},"404":{"description":"accounting dimension not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a accounting dimension","tags":["Accounting Dimensions"]},"patch":{"description":"Partially update a accounting dimension.","operationId":"AccountingDimensionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Accounting Dimensions ID or name","schema":{}}],"responses":{"200":{"description":"accounting dimension updated"},"404":{"description":"accounting dimension not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a accounting dimension","tags":["Accounting Dimensions"]},"delete":{"description":"Permanently delete a accounting dimension.","operationId":"AccountingDimensionsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Accounting Dimensions ID or name","schema":{}}],"responses":{"200":{"description":"accounting dimension deleted"},"404":{"description":"accounting dimension not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a accounting dimension","tags":["Accounting Dimensions"]}},"/v1/gl-entries":{"get":{"description":"Retrieve a paginated list of gl entries. Requires Pro plan.","operationId":"GlEntriesController_","parameters":[{"name":"posting_date","required":false,"in":"query","description":"Filter by posting date","schema":{"type":"string"}},{"name":"account","required":false,"in":"query","description":"Filter by account","schema":{"type":"string"}},{"name":"party_type","required":false,"in":"query","description":"Filter by party type","schema":{"type":"string"}},{"name":"party","required":false,"in":"query","description":"Filter by party","schema":{"type":"string"}},{"name":"voucher_type","required":false,"in":"query","description":"Filter by voucher type","schema":{"type":"string"}},{"name":"voucher_no","required":false,"in":"query","description":"Filter by voucher no","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of gl entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List gl entries","tags":["GL Entries"]}},"/v1/gl-entries/{id}":{"get":{"description":"Retrieve a single gl entrie by ID.","operationId":"GlEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"GL Entries ID or name","schema":{}}],"responses":{"200":{"description":"gl entrie details"},"404":{"description":"gl entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a gl entrie","tags":["GL Entries"]}},"/v1/stock-reconciliations":{"get":{"description":"Retrieve a paginated list of stock reconciliations. Requires Pro plan.","operationId":"StockReconciliationsController_","parameters":[{"name":"purpose","required":false,"in":"query","description":"Filter by purpose","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of stock reconciliations"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List stock reconciliations","tags":["Stock Reconciliations"]},"post":{"description":"Create a new stock reconciliation.","operationId":"StockReconciliationsController_","parameters":[],"responses":{"201":{"description":"stock reconciliation created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a stock reconciliation","tags":["Stock Reconciliations"]}},"/v1/stock-reconciliations/{id}":{"get":{"description":"Retrieve a single stock reconciliation by ID.","operationId":"StockReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"stock reconciliation details"},"404":{"description":"stock reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a stock reconciliation","tags":["Stock Reconciliations"]},"patch":{"description":"Partially update a stock reconciliation.","operationId":"StockReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"stock reconciliation updated"},"404":{"description":"stock reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a stock reconciliation","tags":["Stock Reconciliations"]},"delete":{"description":"Permanently delete a stock reconciliation.","operationId":"StockReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"stock reconciliation deleted"},"404":{"description":"stock reconciliation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a stock reconciliation","tags":["Stock Reconciliations"]}},"/v1/stock-reconciliations/{id}/submit":{"post":{"description":"Submit a draft stock reconciliation to finalize it.","operationId":"StockReconciliationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Reconciliations ID or name","schema":{}}],"responses":{"200":{"description":"stock reconciliation submitted"}},"security":[{"api-key":[]}],"summary":"Submit a stock reconciliation","tags":["Stock Reconciliations"]}},"/v1/pick-lists":{"get":{"description":"Retrieve a paginated list of pick lists. Requires Pro plan.","operationId":"PickListsController_","parameters":[{"name":"purpose","required":false,"in":"query","description":"Filter by purpose","schema":{"type":"string"}},{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"parent_warehouse","required":false,"in":"query","description":"Filter by parent warehouse","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of pick lists"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List pick lists","tags":["Pick Lists"]},"post":{"description":"Create a new pick list.","operationId":"PickListsController_","parameters":[],"responses":{"201":{"description":"pick list created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a pick list","tags":["Pick Lists"]}},"/v1/pick-lists/{id}":{"get":{"description":"Retrieve a single pick list by ID.","operationId":"PickListsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Pick Lists ID or name","schema":{}}],"responses":{"200":{"description":"pick list details"},"404":{"description":"pick list not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a pick list","tags":["Pick Lists"]},"patch":{"description":"Partially update a pick list.","operationId":"PickListsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Pick Lists ID or name","schema":{}}],"responses":{"200":{"description":"pick list updated"},"404":{"description":"pick list not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a pick list","tags":["Pick Lists"]},"delete":{"description":"Permanently delete a pick list.","operationId":"PickListsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Pick Lists ID or name","schema":{}}],"responses":{"200":{"description":"pick list deleted"},"404":{"description":"pick list not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a pick list","tags":["Pick Lists"]}},"/v1/pick-lists/{id}/submit":{"post":{"description":"Submit a draft pick list to finalize it.","operationId":"PickListsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Pick Lists ID or name","schema":{}}],"responses":{"200":{"description":"pick list submitted"}},"security":[{"api-key":[]}],"summary":"Submit a pick list","tags":["Pick Lists"]}},"/v1/shipments":{"get":{"description":"Retrieve a paginated list of shipments. Requires Pro plan.","operationId":"ShipmentsController_","parameters":[{"name":"pickup_from_type","required":false,"in":"query","description":"Filter by pickup from type","schema":{"type":"string"}},{"name":"delivery_to_type","required":false,"in":"query","description":"Filter by delivery to type","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"carrier","required":false,"in":"query","description":"Filter by carrier","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of shipments"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List shipments","tags":["Shipments"]},"post":{"description":"Create a new shipment.","operationId":"ShipmentsController_","parameters":[],"responses":{"201":{"description":"shipment created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a shipment","tags":["Shipments"]}},"/v1/shipments/{id}":{"get":{"description":"Retrieve a single shipment by ID.","operationId":"ShipmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shipments ID or name","schema":{}}],"responses":{"200":{"description":"shipment details"},"404":{"description":"shipment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a shipment","tags":["Shipments"]},"patch":{"description":"Partially update a shipment.","operationId":"ShipmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shipments ID or name","schema":{}}],"responses":{"200":{"description":"shipment updated"},"404":{"description":"shipment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a shipment","tags":["Shipments"]},"delete":{"description":"Permanently delete a shipment.","operationId":"ShipmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shipments ID or name","schema":{}}],"responses":{"200":{"description":"shipment deleted"},"404":{"description":"shipment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a shipment","tags":["Shipments"]}},"/v1/shipments/{id}/submit":{"post":{"description":"Submit a draft shipment to finalize it.","operationId":"ShipmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shipments ID or name","schema":{}}],"responses":{"200":{"description":"shipment submitted"}},"security":[{"api-key":[]}],"summary":"Submit a shipment","tags":["Shipments"]}},"/v1/delivery-trips":{"get":{"description":"Retrieve a paginated list of delivery trips. Requires Pro plan.","operationId":"DeliveryTripsController_","parameters":[{"name":"driver","required":false,"in":"query","description":"Filter by driver","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of delivery trips"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List delivery trips","tags":["Delivery Trips"]},"post":{"description":"Create a new delivery trip.","operationId":"DeliveryTripsController_","parameters":[],"responses":{"201":{"description":"delivery trip created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a delivery trip","tags":["Delivery Trips"]}},"/v1/delivery-trips/{id}":{"get":{"description":"Retrieve a single delivery trip by ID.","operationId":"DeliveryTripsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Trips ID or name","schema":{}}],"responses":{"200":{"description":"delivery trip details"},"404":{"description":"delivery trip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a delivery trip","tags":["Delivery Trips"]},"patch":{"description":"Partially update a delivery trip.","operationId":"DeliveryTripsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Trips ID or name","schema":{}}],"responses":{"200":{"description":"delivery trip updated"},"404":{"description":"delivery trip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a delivery trip","tags":["Delivery Trips"]},"delete":{"description":"Permanently delete a delivery trip.","operationId":"DeliveryTripsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Trips ID or name","schema":{}}],"responses":{"200":{"description":"delivery trip deleted"},"404":{"description":"delivery trip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a delivery trip","tags":["Delivery Trips"]}},"/v1/delivery-trips/{id}/submit":{"post":{"description":"Submit a draft delivery trip to finalize it.","operationId":"DeliveryTripsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Delivery Trips ID or name","schema":{}}],"responses":{"200":{"description":"delivery trip submitted"}},"security":[{"api-key":[]}],"summary":"Submit a delivery trip","tags":["Delivery Trips"]}},"/v1/packing-slips":{"get":{"description":"Retrieve a paginated list of packing slips. Requires Pro plan.","operationId":"PackingSlipsController_","parameters":[{"name":"delivery_note","required":false,"in":"query","description":"Filter by delivery note","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of packing slips"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List packing slips","tags":["Packing Slips"]},"post":{"description":"Create a new packing slip.","operationId":"PackingSlipsController_","parameters":[],"responses":{"201":{"description":"packing slip created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a packing slip","tags":["Packing Slips"]}},"/v1/packing-slips/{id}":{"get":{"description":"Retrieve a single packing slip by ID.","operationId":"PackingSlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Packing Slips ID or name","schema":{}}],"responses":{"200":{"description":"packing slip details"},"404":{"description":"packing slip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a packing slip","tags":["Packing Slips"]},"patch":{"description":"Partially update a packing slip.","operationId":"PackingSlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Packing Slips ID or name","schema":{}}],"responses":{"200":{"description":"packing slip updated"},"404":{"description":"packing slip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a packing slip","tags":["Packing Slips"]},"delete":{"description":"Permanently delete a packing slip.","operationId":"PackingSlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Packing Slips ID or name","schema":{}}],"responses":{"200":{"description":"packing slip deleted"},"404":{"description":"packing slip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a packing slip","tags":["Packing Slips"]}},"/v1/packing-slips/{id}/submit":{"post":{"description":"Submit a draft packing slip to finalize it.","operationId":"PackingSlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Packing Slips ID or name","schema":{}}],"responses":{"200":{"description":"packing slip submitted"}},"security":[{"api-key":[]}],"summary":"Submit a packing slip","tags":["Packing Slips"]}},"/v1/landed-cost-vouchers":{"get":{"description":"Retrieve a paginated list of landed cost vouchers. Requires Pro plan.","operationId":"LandedCostVouchersController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"distribute_charges_based_on","required":false,"in":"query","description":"Filter by distribute charges based on","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of landed cost vouchers"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List landed cost vouchers","tags":["Landed Cost Vouchers"]},"post":{"description":"Create a new landed cost voucher.","operationId":"LandedCostVouchersController_","parameters":[],"responses":{"201":{"description":"landed cost voucher created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a landed cost voucher","tags":["Landed Cost Vouchers"]}},"/v1/landed-cost-vouchers/{id}":{"get":{"description":"Retrieve a single landed cost voucher by ID.","operationId":"LandedCostVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Landed Cost Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"landed cost voucher details"},"404":{"description":"landed cost voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a landed cost voucher","tags":["Landed Cost Vouchers"]},"patch":{"description":"Partially update a landed cost voucher.","operationId":"LandedCostVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Landed Cost Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"landed cost voucher updated"},"404":{"description":"landed cost voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a landed cost voucher","tags":["Landed Cost Vouchers"]},"delete":{"description":"Permanently delete a landed cost voucher.","operationId":"LandedCostVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Landed Cost Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"landed cost voucher deleted"},"404":{"description":"landed cost voucher not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a landed cost voucher","tags":["Landed Cost Vouchers"]}},"/v1/landed-cost-vouchers/{id}/submit":{"post":{"description":"Submit a draft landed cost voucher to finalize it.","operationId":"LandedCostVouchersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Landed Cost Vouchers ID or name","schema":{}}],"responses":{"200":{"description":"landed cost voucher submitted"}},"security":[{"api-key":[]}],"summary":"Submit a landed cost voucher","tags":["Landed Cost Vouchers"]}},"/v1/putaway-rules":{"get":{"description":"Retrieve a paginated list of putaway rules. Requires Pro plan.","operationId":"PutawayRulesController_","parameters":[{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"warehouse","required":false,"in":"query","description":"Filter by warehouse","schema":{"type":"string"}},{"name":"disable","required":false,"in":"query","description":"Filter by disable","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of putaway rules"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List putaway rules","tags":["Putaway Rules"]},"post":{"description":"Create a new putaway rule.","operationId":"PutawayRulesController_","parameters":[],"responses":{"201":{"description":"putaway rule created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a putaway rule","tags":["Putaway Rules"]}},"/v1/putaway-rules/{id}":{"get":{"description":"Retrieve a single putaway rule by ID.","operationId":"PutawayRulesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Putaway Rules ID or name","schema":{}}],"responses":{"200":{"description":"putaway rule details"},"404":{"description":"putaway rule not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a putaway rule","tags":["Putaway Rules"]},"patch":{"description":"Partially update a putaway rule.","operationId":"PutawayRulesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Putaway Rules ID or name","schema":{}}],"responses":{"200":{"description":"putaway rule updated"},"404":{"description":"putaway rule not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a putaway rule","tags":["Putaway Rules"]},"delete":{"description":"Permanently delete a putaway rule.","operationId":"PutawayRulesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Putaway Rules ID or name","schema":{}}],"responses":{"200":{"description":"putaway rule deleted"},"404":{"description":"putaway rule not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a putaway rule","tags":["Putaway Rules"]}},"/v1/serial-batch-bundles":{"get":{"description":"Retrieve a paginated list of serial & batch bundles. Requires Pro plan.","operationId":"SerialBatchBundlesController_","parameters":[{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"warehouse","required":false,"in":"query","description":"Filter by warehouse","schema":{"type":"string"}},{"name":"type_of_transaction","required":false,"in":"query","description":"Filter by type of transaction","schema":{"type":"string"}},{"name":"voucher_type","required":false,"in":"query","description":"Filter by voucher type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of serial & batch bundles"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List serial & batch bundles","tags":["Serial & Batch Bundles"]},"post":{"description":"Create a new serial & batch bundle.","operationId":"SerialBatchBundlesController_","parameters":[],"responses":{"201":{"description":"serial & batch bundle created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a serial & batch bundle","tags":["Serial & Batch Bundles"]}},"/v1/serial-batch-bundles/{id}":{"get":{"description":"Retrieve a single serial & batch bundle by ID.","operationId":"SerialBatchBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Serial & Batch Bundles ID or name","schema":{}}],"responses":{"200":{"description":"serial & batch bundle details"},"404":{"description":"serial & batch bundle not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a serial & batch bundle","tags":["Serial & Batch Bundles"]},"patch":{"description":"Partially update a serial & batch bundle.","operationId":"SerialBatchBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Serial & Batch Bundles ID or name","schema":{}}],"responses":{"200":{"description":"serial & batch bundle updated"},"404":{"description":"serial & batch bundle not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a serial & batch bundle","tags":["Serial & Batch Bundles"]},"delete":{"description":"Permanently delete a serial & batch bundle.","operationId":"SerialBatchBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Serial & Batch Bundles ID or name","schema":{}}],"responses":{"200":{"description":"serial & batch bundle deleted"},"404":{"description":"serial & batch bundle not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a serial & batch bundle","tags":["Serial & Batch Bundles"]}},"/v1/serial-batch-bundles/{id}/submit":{"post":{"description":"Submit a draft serial & batch bundle to finalize it.","operationId":"SerialBatchBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Serial & Batch Bundles ID or name","schema":{}}],"responses":{"200":{"description":"serial & batch bundle submitted"}},"security":[{"api-key":[]}],"summary":"Submit a serial & batch bundle","tags":["Serial & Batch Bundles"]}},"/v1/stock-ledger-entries":{"get":{"description":"Retrieve a paginated list of stock ledger entries. Requires Pro plan.","operationId":"StockLedgerEntriesController_","parameters":[{"name":"posting_date","required":false,"in":"query","description":"Filter by posting date","schema":{"type":"string"}},{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"warehouse","required":false,"in":"query","description":"Filter by warehouse","schema":{"type":"string"}},{"name":"voucher_type","required":false,"in":"query","description":"Filter by voucher type","schema":{"type":"string"}},{"name":"voucher_no","required":false,"in":"query","description":"Filter by voucher no","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of stock ledger entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List stock ledger entries","tags":["Stock Ledger Entries"]}},"/v1/stock-ledger-entries/{id}":{"get":{"description":"Retrieve a single stock ledger entrie by ID.","operationId":"StockLedgerEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Stock Ledger Entries ID or name","schema":{}}],"responses":{"200":{"description":"stock ledger entrie details"},"404":{"description":"stock ledger entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a stock ledger entrie","tags":["Stock Ledger Entries"]}},"/v1/employee-grades":{"get":{"description":"Retrieve a paginated list of employee grades. Requires Pro plan.","operationId":"EmployeeGradesController_","parameters":[],"responses":{"200":{"description":"Paginated list of employee grades"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List employee grades","tags":["Employee Grades"]},"post":{"description":"Create a new employee grade.","operationId":"EmployeeGradesController_","parameters":[],"responses":{"201":{"description":"employee grade created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a employee grade","tags":["Employee Grades"]}},"/v1/employee-grades/{id}":{"get":{"description":"Retrieve a single employee grade by ID.","operationId":"EmployeeGradesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Grades ID or name","schema":{}}],"responses":{"200":{"description":"employee grade details"},"404":{"description":"employee grade not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a employee grade","tags":["Employee Grades"]},"patch":{"description":"Partially update a employee grade.","operationId":"EmployeeGradesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Grades ID or name","schema":{}}],"responses":{"200":{"description":"employee grade updated"},"404":{"description":"employee grade not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a employee grade","tags":["Employee Grades"]},"delete":{"description":"Permanently delete a employee grade.","operationId":"EmployeeGradesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Grades ID or name","schema":{}}],"responses":{"200":{"description":"employee grade deleted"},"404":{"description":"employee grade not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a employee grade","tags":["Employee Grades"]}},"/v1/departments":{"get":{"description":"Retrieve a paginated list of departments. Requires Pro plan.","operationId":"DepartmentsController_","parameters":[{"name":"is_group","required":false,"in":"query","description":"Filter by is group","schema":{"type":"boolean"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of departments"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List departments","tags":["Departments"]},"post":{"description":"Create a new department.","operationId":"DepartmentsController_","parameters":[],"responses":{"201":{"description":"department created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a department","tags":["Departments"]}},"/v1/departments/{id}":{"get":{"description":"Retrieve a single department by ID.","operationId":"DepartmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Departments ID or name","schema":{}}],"responses":{"200":{"description":"department details"},"404":{"description":"department not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a department","tags":["Departments"]},"patch":{"description":"Partially update a department.","operationId":"DepartmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Departments ID or name","schema":{}}],"responses":{"200":{"description":"department updated"},"404":{"description":"department not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a department","tags":["Departments"]},"delete":{"description":"Permanently delete a department.","operationId":"DepartmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Departments ID or name","schema":{}}],"responses":{"200":{"description":"department deleted"},"404":{"description":"department not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a department","tags":["Departments"]}},"/v1/designations":{"get":{"description":"Retrieve a paginated list of designations. Requires Pro plan.","operationId":"DesignationsController_","parameters":[],"responses":{"200":{"description":"Paginated list of designations"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List designations","tags":["Designations"]},"post":{"description":"Create a new designation.","operationId":"DesignationsController_","parameters":[],"responses":{"201":{"description":"designation created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a designation","tags":["Designations"]}},"/v1/designations/{id}":{"get":{"description":"Retrieve a single designation by ID.","operationId":"DesignationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Designations ID or name","schema":{}}],"responses":{"200":{"description":"designation details"},"404":{"description":"designation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a designation","tags":["Designations"]},"patch":{"description":"Partially update a designation.","operationId":"DesignationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Designations ID or name","schema":{}}],"responses":{"200":{"description":"designation updated"},"404":{"description":"designation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a designation","tags":["Designations"]},"delete":{"description":"Permanently delete a designation.","operationId":"DesignationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Designations ID or name","schema":{}}],"responses":{"200":{"description":"designation deleted"},"404":{"description":"designation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a designation","tags":["Designations"]}},"/v1/leave-types":{"get":{"description":"Retrieve a paginated list of leave types. Requires Pro plan.","operationId":"LeaveTypesController_","parameters":[{"name":"is_carry_forward","required":false,"in":"query","description":"Filter by is carry forward","schema":{"type":"boolean"}},{"name":"is_lwp","required":false,"in":"query","description":"Filter by is lwp","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of leave types"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List leave types","tags":["Leave Types"]},"post":{"description":"Create a new leave type.","operationId":"LeaveTypesController_","parameters":[],"responses":{"201":{"description":"leave type created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a leave type","tags":["Leave Types"]}},"/v1/leave-types/{id}":{"get":{"description":"Retrieve a single leave type by ID.","operationId":"LeaveTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Types ID or name","schema":{}}],"responses":{"200":{"description":"leave type details"},"404":{"description":"leave type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a leave type","tags":["Leave Types"]},"patch":{"description":"Partially update a leave type.","operationId":"LeaveTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Types ID or name","schema":{}}],"responses":{"200":{"description":"leave type updated"},"404":{"description":"leave type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a leave type","tags":["Leave Types"]},"delete":{"description":"Permanently delete a leave type.","operationId":"LeaveTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Types ID or name","schema":{}}],"responses":{"200":{"description":"leave type deleted"},"404":{"description":"leave type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a leave type","tags":["Leave Types"]}},"/v1/leave-allocations":{"get":{"description":"Retrieve a paginated list of leave allocations. Requires Pro plan.","operationId":"LeaveAllocationsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"leave_type","required":false,"in":"query","description":"Filter by leave type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of leave allocations"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List leave allocations","tags":["Leave Allocations"]},"post":{"description":"Create a new leave allocation.","operationId":"LeaveAllocationsController_","parameters":[],"responses":{"201":{"description":"leave allocation created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a leave allocation","tags":["Leave Allocations"]}},"/v1/leave-allocations/{id}":{"get":{"description":"Retrieve a single leave allocation by ID.","operationId":"LeaveAllocationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Allocations ID or name","schema":{}}],"responses":{"200":{"description":"leave allocation details"},"404":{"description":"leave allocation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a leave allocation","tags":["Leave Allocations"]},"patch":{"description":"Partially update a leave allocation.","operationId":"LeaveAllocationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Allocations ID or name","schema":{}}],"responses":{"200":{"description":"leave allocation updated"},"404":{"description":"leave allocation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a leave allocation","tags":["Leave Allocations"]},"delete":{"description":"Permanently delete a leave allocation.","operationId":"LeaveAllocationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Allocations ID or name","schema":{}}],"responses":{"200":{"description":"leave allocation deleted"},"404":{"description":"leave allocation not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a leave allocation","tags":["Leave Allocations"]}},"/v1/leave-allocations/{id}/submit":{"post":{"description":"Submit a draft leave allocation to finalize it.","operationId":"LeaveAllocationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Allocations ID or name","schema":{}}],"responses":{"200":{"description":"leave allocation submitted"}},"security":[{"api-key":[]}],"summary":"Submit a leave allocation","tags":["Leave Allocations"]}},"/v1/leave-policies":{"get":{"description":"Retrieve a paginated list of leave policies. Requires Pro plan.","operationId":"LeavePoliciesController_","parameters":[],"responses":{"200":{"description":"Paginated list of leave policies"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List leave policies","tags":["Leave Policies"]},"post":{"description":"Create a new leave policie.","operationId":"LeavePoliciesController_","parameters":[],"responses":{"201":{"description":"leave policie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a leave policie","tags":["Leave Policies"]}},"/v1/leave-policies/{id}":{"get":{"description":"Retrieve a single leave policie by ID.","operationId":"LeavePoliciesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Policies ID or name","schema":{}}],"responses":{"200":{"description":"leave policie details"},"404":{"description":"leave policie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a leave policie","tags":["Leave Policies"]},"patch":{"description":"Partially update a leave policie.","operationId":"LeavePoliciesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Policies ID or name","schema":{}}],"responses":{"200":{"description":"leave policie updated"},"404":{"description":"leave policie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a leave policie","tags":["Leave Policies"]},"delete":{"description":"Permanently delete a leave policie.","operationId":"LeavePoliciesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Leave Policies ID or name","schema":{}}],"responses":{"200":{"description":"leave policie deleted"},"404":{"description":"leave policie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a leave policie","tags":["Leave Policies"]}},"/v1/attendance-requests":{"get":{"description":"Retrieve a paginated list of attendance requests. Requires Pro plan.","operationId":"AttendanceRequestsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"reason","required":false,"in":"query","description":"Filter by reason","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of attendance requests"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List attendance requests","tags":["Attendance Requests"]},"post":{"description":"Create a new attendance request.","operationId":"AttendanceRequestsController_","parameters":[],"responses":{"201":{"description":"attendance request created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a attendance request","tags":["Attendance Requests"]}},"/v1/attendance-requests/{id}":{"get":{"description":"Retrieve a single attendance request by ID.","operationId":"AttendanceRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance Requests ID or name","schema":{}}],"responses":{"200":{"description":"attendance request details"},"404":{"description":"attendance request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a attendance request","tags":["Attendance Requests"]},"patch":{"description":"Partially update a attendance request.","operationId":"AttendanceRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance Requests ID or name","schema":{}}],"responses":{"200":{"description":"attendance request updated"},"404":{"description":"attendance request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a attendance request","tags":["Attendance Requests"]},"delete":{"description":"Permanently delete a attendance request.","operationId":"AttendanceRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance Requests ID or name","schema":{}}],"responses":{"200":{"description":"attendance request deleted"},"404":{"description":"attendance request not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a attendance request","tags":["Attendance Requests"]}},"/v1/attendance-requests/{id}/submit":{"post":{"description":"Submit a draft attendance request to finalize it.","operationId":"AttendanceRequestsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Attendance Requests ID or name","schema":{}}],"responses":{"200":{"description":"attendance request submitted"}},"security":[{"api-key":[]}],"summary":"Submit a attendance request","tags":["Attendance Requests"]}},"/v1/employee-checkins":{"get":{"description":"Retrieve a paginated list of employee check-ins. Requires Pro plan.","operationId":"EmployeeCheckinsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"log_type","required":false,"in":"query","description":"Filter by log type","schema":{"type":"string"}},{"name":"shift","required":false,"in":"query","description":"Filter by shift","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of employee check-ins"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List employee check-ins","tags":["Employee Check-ins"]},"post":{"description":"Create a new employee check-in.","operationId":"EmployeeCheckinsController_","parameters":[],"responses":{"201":{"description":"employee check-in created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a employee check-in","tags":["Employee Check-ins"]}},"/v1/employee-checkins/{id}":{"get":{"description":"Retrieve a single employee check-in by ID.","operationId":"EmployeeCheckinsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Check-ins ID or name","schema":{}}],"responses":{"200":{"description":"employee check-in details"},"404":{"description":"employee check-in not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a employee check-in","tags":["Employee Check-ins"]},"patch":{"description":"Partially update a employee check-in.","operationId":"EmployeeCheckinsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Check-ins ID or name","schema":{}}],"responses":{"200":{"description":"employee check-in updated"},"404":{"description":"employee check-in not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a employee check-in","tags":["Employee Check-ins"]},"delete":{"description":"Permanently delete a employee check-in.","operationId":"EmployeeCheckinsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Check-ins ID or name","schema":{}}],"responses":{"200":{"description":"employee check-in deleted"},"404":{"description":"employee check-in not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a employee check-in","tags":["Employee Check-ins"]}},"/v1/payroll-entries":{"get":{"description":"Retrieve a paginated list of payroll entries. Requires Pro plan.","operationId":"PayrollEntriesController_","parameters":[{"name":"payroll_frequency","required":false,"in":"query","description":"Filter by payroll frequency","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of payroll entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payroll entries","tags":["Payroll Entries"]},"post":{"description":"Create a new payroll entrie.","operationId":"PayrollEntriesController_","parameters":[],"responses":{"201":{"description":"payroll entrie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payroll entrie","tags":["Payroll Entries"]}},"/v1/payroll-entries/{id}":{"get":{"description":"Retrieve a single payroll entrie by ID.","operationId":"PayrollEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payroll Entries ID or name","schema":{}}],"responses":{"200":{"description":"payroll entrie details"},"404":{"description":"payroll entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payroll entrie","tags":["Payroll Entries"]},"patch":{"description":"Partially update a payroll entrie.","operationId":"PayrollEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payroll Entries ID or name","schema":{}}],"responses":{"200":{"description":"payroll entrie updated"},"404":{"description":"payroll entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payroll entrie","tags":["Payroll Entries"]},"delete":{"description":"Permanently delete a payroll entrie.","operationId":"PayrollEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payroll Entries ID or name","schema":{}}],"responses":{"200":{"description":"payroll entrie deleted"},"404":{"description":"payroll entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payroll entrie","tags":["Payroll Entries"]}},"/v1/payroll-entries/{id}/submit":{"post":{"description":"Submit a draft payroll entrie to finalize it.","operationId":"PayrollEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payroll Entries ID or name","schema":{}}],"responses":{"200":{"description":"payroll entrie submitted"}},"security":[{"api-key":[]}],"summary":"Submit a payroll entrie","tags":["Payroll Entries"]}},"/v1/salary-slips":{"get":{"description":"Retrieve a paginated list of salary slips. Requires Pro plan.","operationId":"SalarySlipsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"salary_structure","required":false,"in":"query","description":"Filter by salary structure","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of salary slips"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List salary slips","tags":["Salary Slips"]},"post":{"description":"Create a new salary slip.","operationId":"SalarySlipsController_","parameters":[],"responses":{"201":{"description":"salary slip created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a salary slip","tags":["Salary Slips"]}},"/v1/salary-slips/{id}":{"get":{"description":"Retrieve a single salary slip by ID.","operationId":"SalarySlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Slips ID or name","schema":{}}],"responses":{"200":{"description":"salary slip details"},"404":{"description":"salary slip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a salary slip","tags":["Salary Slips"]},"patch":{"description":"Partially update a salary slip.","operationId":"SalarySlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Slips ID or name","schema":{}}],"responses":{"200":{"description":"salary slip updated"},"404":{"description":"salary slip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a salary slip","tags":["Salary Slips"]},"delete":{"description":"Permanently delete a salary slip.","operationId":"SalarySlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Slips ID or name","schema":{}}],"responses":{"200":{"description":"salary slip deleted"},"404":{"description":"salary slip not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a salary slip","tags":["Salary Slips"]}},"/v1/salary-slips/{id}/submit":{"post":{"description":"Submit a draft salary slip to finalize it.","operationId":"SalarySlipsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Slips ID or name","schema":{}}],"responses":{"200":{"description":"salary slip submitted"}},"security":[{"api-key":[]}],"summary":"Submit a salary slip","tags":["Salary Slips"]}},"/v1/salary-structures":{"get":{"description":"Retrieve a paginated list of salary structures. Requires Pro plan.","operationId":"SalaryStructuresController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"is_active","required":false,"in":"query","description":"Filter by is active","schema":{"type":"string"}},{"name":"payroll_frequency","required":false,"in":"query","description":"Filter by payroll frequency","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of salary structures"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List salary structures","tags":["Salary Structures"]},"post":{"description":"Create a new salary structure.","operationId":"SalaryStructuresController_","parameters":[],"responses":{"201":{"description":"salary structure created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a salary structure","tags":["Salary Structures"]}},"/v1/salary-structures/{id}":{"get":{"description":"Retrieve a single salary structure by ID.","operationId":"SalaryStructuresController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structures ID or name","schema":{}}],"responses":{"200":{"description":"salary structure details"},"404":{"description":"salary structure not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a salary structure","tags":["Salary Structures"]},"patch":{"description":"Partially update a salary structure.","operationId":"SalaryStructuresController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structures ID or name","schema":{}}],"responses":{"200":{"description":"salary structure updated"},"404":{"description":"salary structure not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a salary structure","tags":["Salary Structures"]},"delete":{"description":"Permanently delete a salary structure.","operationId":"SalaryStructuresController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structures ID or name","schema":{}}],"responses":{"200":{"description":"salary structure deleted"},"404":{"description":"salary structure not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a salary structure","tags":["Salary Structures"]}},"/v1/salary-structures/{id}/submit":{"post":{"description":"Submit a draft salary structure to finalize it.","operationId":"SalaryStructuresController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structures ID or name","schema":{}}],"responses":{"200":{"description":"salary structure submitted"}},"security":[{"api-key":[]}],"summary":"Submit a salary structure","tags":["Salary Structures"]}},"/v1/salary-structure-assignments":{"get":{"description":"Retrieve a paginated list of salary structure assignments. Requires Pro plan.","operationId":"SalaryStructureAssignmentsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"salary_structure","required":false,"in":"query","description":"Filter by salary structure","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of salary structure assignments"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List salary structure assignments","tags":["Salary Structure Assignments"]},"post":{"description":"Create a new salary structure assignment.","operationId":"SalaryStructureAssignmentsController_","parameters":[],"responses":{"201":{"description":"salary structure assignment created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a salary structure assignment","tags":["Salary Structure Assignments"]}},"/v1/salary-structure-assignments/{id}":{"get":{"description":"Retrieve a single salary structure assignment by ID.","operationId":"SalaryStructureAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structure Assignments ID or name","schema":{}}],"responses":{"200":{"description":"salary structure assignment details"},"404":{"description":"salary structure assignment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a salary structure assignment","tags":["Salary Structure Assignments"]},"patch":{"description":"Partially update a salary structure assignment.","operationId":"SalaryStructureAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structure Assignments ID or name","schema":{}}],"responses":{"200":{"description":"salary structure assignment updated"},"404":{"description":"salary structure assignment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a salary structure assignment","tags":["Salary Structure Assignments"]},"delete":{"description":"Permanently delete a salary structure assignment.","operationId":"SalaryStructureAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structure Assignments ID or name","schema":{}}],"responses":{"200":{"description":"salary structure assignment deleted"},"404":{"description":"salary structure assignment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a salary structure assignment","tags":["Salary Structure Assignments"]}},"/v1/salary-structure-assignments/{id}/submit":{"post":{"description":"Submit a draft salary structure assignment to finalize it.","operationId":"SalaryStructureAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Salary Structure Assignments ID or name","schema":{}}],"responses":{"200":{"description":"salary structure assignment submitted"}},"security":[{"api-key":[]}],"summary":"Submit a salary structure assignment","tags":["Salary Structure Assignments"]}},"/v1/appraisals":{"get":{"description":"Retrieve a paginated list of appraisals. Requires Pro plan.","operationId":"AppraisalsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"appraisal_template","required":false,"in":"query","description":"Filter by appraisal template","schema":{"type":"string"}},{"name":"appraisal_cycle","required":false,"in":"query","description":"Filter by appraisal cycle","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of appraisals"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List appraisals","tags":["Appraisals"]},"post":{"description":"Create a new appraisal.","operationId":"AppraisalsController_","parameters":[],"responses":{"201":{"description":"appraisal created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a appraisal","tags":["Appraisals"]}},"/v1/appraisals/{id}":{"get":{"description":"Retrieve a single appraisal by ID.","operationId":"AppraisalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appraisals ID or name","schema":{}}],"responses":{"200":{"description":"appraisal details"},"404":{"description":"appraisal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a appraisal","tags":["Appraisals"]},"patch":{"description":"Partially update a appraisal.","operationId":"AppraisalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appraisals ID or name","schema":{}}],"responses":{"200":{"description":"appraisal updated"},"404":{"description":"appraisal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a appraisal","tags":["Appraisals"]},"delete":{"description":"Permanently delete a appraisal.","operationId":"AppraisalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appraisals ID or name","schema":{}}],"responses":{"200":{"description":"appraisal deleted"},"404":{"description":"appraisal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a appraisal","tags":["Appraisals"]}},"/v1/appraisals/{id}/submit":{"post":{"description":"Submit a draft appraisal to finalize it.","operationId":"AppraisalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appraisals ID or name","schema":{}}],"responses":{"200":{"description":"appraisal submitted"}},"security":[{"api-key":[]}],"summary":"Submit a appraisal","tags":["Appraisals"]}},"/v1/employee-advances":{"get":{"description":"Retrieve a paginated list of employee advances. Requires Pro plan.","operationId":"EmployeeAdvancesController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"purpose","required":false,"in":"query","description":"Filter by purpose","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of employee advances"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List employee advances","tags":["Employee Advances"]},"post":{"description":"Create a new employee advance.","operationId":"EmployeeAdvancesController_","parameters":[],"responses":{"201":{"description":"employee advance created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a employee advance","tags":["Employee Advances"]}},"/v1/employee-advances/{id}":{"get":{"description":"Retrieve a single employee advance by ID.","operationId":"EmployeeAdvancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Advances ID or name","schema":{}}],"responses":{"200":{"description":"employee advance details"},"404":{"description":"employee advance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a employee advance","tags":["Employee Advances"]},"patch":{"description":"Partially update a employee advance.","operationId":"EmployeeAdvancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Advances ID or name","schema":{}}],"responses":{"200":{"description":"employee advance updated"},"404":{"description":"employee advance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a employee advance","tags":["Employee Advances"]},"delete":{"description":"Permanently delete a employee advance.","operationId":"EmployeeAdvancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Advances ID or name","schema":{}}],"responses":{"200":{"description":"employee advance deleted"},"404":{"description":"employee advance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a employee advance","tags":["Employee Advances"]}},"/v1/employee-advances/{id}/submit":{"post":{"description":"Submit a draft employee advance to finalize it.","operationId":"EmployeeAdvancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Advances ID or name","schema":{}}],"responses":{"200":{"description":"employee advance submitted"}},"security":[{"api-key":[]}],"summary":"Submit a employee advance","tags":["Employee Advances"]}},"/v1/employee-onboardings":{"get":{"description":"Retrieve a paginated list of employee onboardings. Requires Pro plan.","operationId":"EmployeeOnboardingsController_","parameters":[{"name":"job_applicant","required":false,"in":"query","description":"Filter by job applicant","schema":{"type":"string"}},{"name":"boarding_status","required":false,"in":"query","description":"Filter by boarding status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"department","required":false,"in":"query","description":"Filter by department","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of employee onboardings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List employee onboardings","tags":["Employee Onboardings"]},"post":{"description":"Create a new employee onboarding.","operationId":"EmployeeOnboardingsController_","parameters":[],"responses":{"201":{"description":"employee onboarding created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a employee onboarding","tags":["Employee Onboardings"]}},"/v1/employee-onboardings/{id}":{"get":{"description":"Retrieve a single employee onboarding by ID.","operationId":"EmployeeOnboardingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Onboardings ID or name","schema":{}}],"responses":{"200":{"description":"employee onboarding details"},"404":{"description":"employee onboarding not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a employee onboarding","tags":["Employee Onboardings"]},"patch":{"description":"Partially update a employee onboarding.","operationId":"EmployeeOnboardingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Onboardings ID or name","schema":{}}],"responses":{"200":{"description":"employee onboarding updated"},"404":{"description":"employee onboarding not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a employee onboarding","tags":["Employee Onboardings"]},"delete":{"description":"Permanently delete a employee onboarding.","operationId":"EmployeeOnboardingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Employee Onboardings ID or name","schema":{}}],"responses":{"200":{"description":"employee onboarding deleted"},"404":{"description":"employee onboarding not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a employee onboarding","tags":["Employee Onboardings"]}},"/v1/shift-assignments":{"get":{"description":"Retrieve a paginated list of shift assignments. Requires Pro plan.","operationId":"ShiftAssignmentsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"shift_type","required":false,"in":"query","description":"Filter by shift type","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of shift assignments"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List shift assignments","tags":["Shift Assignments"]},"post":{"description":"Create a new shift assignment.","operationId":"ShiftAssignmentsController_","parameters":[],"responses":{"201":{"description":"shift assignment created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a shift assignment","tags":["Shift Assignments"]}},"/v1/shift-assignments/{id}":{"get":{"description":"Retrieve a single shift assignment by ID.","operationId":"ShiftAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shift Assignments ID or name","schema":{}}],"responses":{"200":{"description":"shift assignment details"},"404":{"description":"shift assignment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a shift assignment","tags":["Shift Assignments"]},"patch":{"description":"Partially update a shift assignment.","operationId":"ShiftAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shift Assignments ID or name","schema":{}}],"responses":{"200":{"description":"shift assignment updated"},"404":{"description":"shift assignment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a shift assignment","tags":["Shift Assignments"]},"delete":{"description":"Permanently delete a shift assignment.","operationId":"ShiftAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shift Assignments ID or name","schema":{}}],"responses":{"200":{"description":"shift assignment deleted"},"404":{"description":"shift assignment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a shift assignment","tags":["Shift Assignments"]}},"/v1/shift-assignments/{id}/submit":{"post":{"description":"Submit a draft shift assignment to finalize it.","operationId":"ShiftAssignmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shift Assignments ID or name","schema":{}}],"responses":{"200":{"description":"shift assignment submitted"}},"security":[{"api-key":[]}],"summary":"Submit a shift assignment","tags":["Shift Assignments"]}},"/v1/holiday-lists":{"get":{"description":"Retrieve a paginated list of holiday lists. Requires Pro plan.","operationId":"HolidayListsController_","parameters":[{"name":"country","required":false,"in":"query","description":"Filter by country","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of holiday lists"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List holiday lists","tags":["Holiday Lists"]},"post":{"description":"Create a new holiday list.","operationId":"HolidayListsController_","parameters":[],"responses":{"201":{"description":"holiday list created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a holiday list","tags":["Holiday Lists"]}},"/v1/holiday-lists/{id}":{"get":{"description":"Retrieve a single holiday list by ID.","operationId":"HolidayListsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Holiday Lists ID or name","schema":{}}],"responses":{"200":{"description":"holiday list details"},"404":{"description":"holiday list not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a holiday list","tags":["Holiday Lists"]},"patch":{"description":"Partially update a holiday list.","operationId":"HolidayListsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Holiday Lists ID or name","schema":{}}],"responses":{"200":{"description":"holiday list updated"},"404":{"description":"holiday list not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a holiday list","tags":["Holiday Lists"]},"delete":{"description":"Permanently delete a holiday list.","operationId":"HolidayListsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Holiday Lists ID or name","schema":{}}],"responses":{"200":{"description":"holiday list deleted"},"404":{"description":"holiday list not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a holiday list","tags":["Holiday Lists"]}},"/v1/shift-types":{"get":{"description":"Retrieve a paginated list of shift types. Requires Pro plan.","operationId":"ShiftTypesController_","parameters":[{"name":"enable_auto_attendance","required":false,"in":"query","description":"Filter by enable auto attendance","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of shift types"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List shift types","tags":["Shift Types"]},"post":{"description":"Create a new shift type.","operationId":"ShiftTypesController_","parameters":[],"responses":{"201":{"description":"shift type created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a shift type","tags":["Shift Types"]}},"/v1/shift-types/{id}":{"get":{"description":"Retrieve a single shift type by ID.","operationId":"ShiftTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shift Types ID or name","schema":{}}],"responses":{"200":{"description":"shift type details"},"404":{"description":"shift type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a shift type","tags":["Shift Types"]},"patch":{"description":"Partially update a shift type.","operationId":"ShiftTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shift Types ID or name","schema":{}}],"responses":{"200":{"description":"shift type updated"},"404":{"description":"shift type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a shift type","tags":["Shift Types"]},"delete":{"description":"Permanently delete a shift type.","operationId":"ShiftTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shift Types ID or name","schema":{}}],"responses":{"200":{"description":"shift type deleted"},"404":{"description":"shift type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a shift type","tags":["Shift Types"]}},"/v1/job-openings":{"get":{"description":"Retrieve a paginated list of job openings. Requires Pro plan.","operationId":"JobOpeningsController_","parameters":[{"name":"department","required":false,"in":"query","description":"Filter by department","schema":{"type":"string"}},{"name":"designation","required":false,"in":"query","description":"Filter by designation","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of job openings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List job openings","tags":["Job Openings"]},"post":{"description":"Create a new job opening.","operationId":"JobOpeningsController_","parameters":[],"responses":{"201":{"description":"job opening created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a job opening","tags":["Job Openings"]}},"/v1/job-openings/{id}":{"get":{"description":"Retrieve a single job opening by ID.","operationId":"JobOpeningsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Openings ID or name","schema":{}}],"responses":{"200":{"description":"job opening details"},"404":{"description":"job opening not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a job opening","tags":["Job Openings"]},"patch":{"description":"Partially update a job opening.","operationId":"JobOpeningsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Openings ID or name","schema":{}}],"responses":{"200":{"description":"job opening updated"},"404":{"description":"job opening not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a job opening","tags":["Job Openings"]},"delete":{"description":"Permanently delete a job opening.","operationId":"JobOpeningsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Openings ID or name","schema":{}}],"responses":{"200":{"description":"job opening deleted"},"404":{"description":"job opening not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a job opening","tags":["Job Openings"]}},"/v1/job-applicants":{"get":{"description":"Retrieve a paginated list of job applicants. Requires Pro plan.","operationId":"JobApplicantsController_","parameters":[{"name":"job_title","required":false,"in":"query","description":"Filter by job title","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"source","required":false,"in":"query","description":"Filter by source","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of job applicants"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List job applicants","tags":["Job Applicants"]},"post":{"description":"Create a new job applicant.","operationId":"JobApplicantsController_","parameters":[],"responses":{"201":{"description":"job applicant created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a job applicant","tags":["Job Applicants"]}},"/v1/job-applicants/{id}":{"get":{"description":"Retrieve a single job applicant by ID.","operationId":"JobApplicantsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Applicants ID or name","schema":{}}],"responses":{"200":{"description":"job applicant details"},"404":{"description":"job applicant not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a job applicant","tags":["Job Applicants"]},"patch":{"description":"Partially update a job applicant.","operationId":"JobApplicantsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Applicants ID or name","schema":{}}],"responses":{"200":{"description":"job applicant updated"},"404":{"description":"job applicant not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a job applicant","tags":["Job Applicants"]},"delete":{"description":"Permanently delete a job applicant.","operationId":"JobApplicantsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Applicants ID or name","schema":{}}],"responses":{"200":{"description":"job applicant deleted"},"404":{"description":"job applicant not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a job applicant","tags":["Job Applicants"]}},"/v1/interviews":{"get":{"description":"Retrieve a paginated list of interviews. Requires Pro plan.","operationId":"InterviewsController_","parameters":[{"name":"job_applicant","required":false,"in":"query","description":"Filter by job applicant","schema":{"type":"string"}},{"name":"interview_round","required":false,"in":"query","description":"Filter by interview round","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of interviews"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List interviews","tags":["Interviews"]},"post":{"description":"Create a new interview.","operationId":"InterviewsController_","parameters":[],"responses":{"201":{"description":"interview created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a interview","tags":["Interviews"]}},"/v1/interviews/{id}":{"get":{"description":"Retrieve a single interview by ID.","operationId":"InterviewsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Interviews ID or name","schema":{}}],"responses":{"200":{"description":"interview details"},"404":{"description":"interview not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a interview","tags":["Interviews"]},"patch":{"description":"Partially update a interview.","operationId":"InterviewsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Interviews ID or name","schema":{}}],"responses":{"200":{"description":"interview updated"},"404":{"description":"interview not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a interview","tags":["Interviews"]},"delete":{"description":"Permanently delete a interview.","operationId":"InterviewsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Interviews ID or name","schema":{}}],"responses":{"200":{"description":"interview deleted"},"404":{"description":"interview not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a interview","tags":["Interviews"]}},"/v1/interviews/{id}/submit":{"post":{"description":"Submit a draft interview to finalize it.","operationId":"InterviewsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Interviews ID or name","schema":{}}],"responses":{"200":{"description":"interview submitted"}},"security":[{"api-key":[]}],"summary":"Submit a interview","tags":["Interviews"]}},"/v1/interview-rounds":{"get":{"description":"Retrieve a paginated list of interview rounds. Requires Pro plan.","operationId":"InterviewRoundsController_","parameters":[{"name":"designation","required":false,"in":"query","description":"Filter by designation","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of interview rounds"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List interview rounds","tags":["Interview Rounds"]},"post":{"description":"Create a new interview round.","operationId":"InterviewRoundsController_","parameters":[],"responses":{"201":{"description":"interview round created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a interview round","tags":["Interview Rounds"]}},"/v1/interview-rounds/{id}":{"get":{"description":"Retrieve a single interview round by ID.","operationId":"InterviewRoundsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Interview Rounds ID or name","schema":{}}],"responses":{"200":{"description":"interview round details"},"404":{"description":"interview round not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a interview round","tags":["Interview Rounds"]},"patch":{"description":"Partially update a interview round.","operationId":"InterviewRoundsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Interview Rounds ID or name","schema":{}}],"responses":{"200":{"description":"interview round updated"},"404":{"description":"interview round not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a interview round","tags":["Interview Rounds"]},"delete":{"description":"Permanently delete a interview round.","operationId":"InterviewRoundsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Interview Rounds ID or name","schema":{}}],"responses":{"200":{"description":"interview round deleted"},"404":{"description":"interview round not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a interview round","tags":["Interview Rounds"]}},"/v1/job-offers":{"get":{"description":"Retrieve a paginated list of job offers. Requires Pro plan.","operationId":"JobOffersController_","parameters":[{"name":"job_applicant","required":false,"in":"query","description":"Filter by job applicant","schema":{"type":"string"}},{"name":"designation","required":false,"in":"query","description":"Filter by designation","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of job offers"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List job offers","tags":["Job Offers"]},"post":{"description":"Create a new job offer.","operationId":"JobOffersController_","parameters":[],"responses":{"201":{"description":"job offer created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a job offer","tags":["Job Offers"]}},"/v1/job-offers/{id}":{"get":{"description":"Retrieve a single job offer by ID.","operationId":"JobOffersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Offers ID or name","schema":{}}],"responses":{"200":{"description":"job offer details"},"404":{"description":"job offer not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a job offer","tags":["Job Offers"]},"patch":{"description":"Partially update a job offer.","operationId":"JobOffersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Offers ID or name","schema":{}}],"responses":{"200":{"description":"job offer updated"},"404":{"description":"job offer not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a job offer","tags":["Job Offers"]},"delete":{"description":"Permanently delete a job offer.","operationId":"JobOffersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Offers ID or name","schema":{}}],"responses":{"200":{"description":"job offer deleted"},"404":{"description":"job offer not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a job offer","tags":["Job Offers"]}},"/v1/job-offers/{id}/submit":{"post":{"description":"Submit a draft job offer to finalize it.","operationId":"JobOffersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Offers ID or name","schema":{}}],"responses":{"200":{"description":"job offer submitted"}},"security":[{"api-key":[]}],"summary":"Submit a job offer","tags":["Job Offers"]}},"/v1/appointment-letters":{"get":{"description":"Retrieve a paginated list of appointment letters. Requires Pro plan.","operationId":"AppointmentLettersController_","parameters":[{"name":"job_applicant","required":false,"in":"query","description":"Filter by job applicant","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of appointment letters"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List appointment letters","tags":["Appointment Letters"]},"post":{"description":"Create a new appointment letter.","operationId":"AppointmentLettersController_","parameters":[],"responses":{"201":{"description":"appointment letter created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a appointment letter","tags":["Appointment Letters"]}},"/v1/appointment-letters/{id}":{"get":{"description":"Retrieve a single appointment letter by ID.","operationId":"AppointmentLettersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appointment Letters ID or name","schema":{}}],"responses":{"200":{"description":"appointment letter details"},"404":{"description":"appointment letter not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a appointment letter","tags":["Appointment Letters"]},"patch":{"description":"Partially update a appointment letter.","operationId":"AppointmentLettersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appointment Letters ID or name","schema":{}}],"responses":{"200":{"description":"appointment letter updated"},"404":{"description":"appointment letter not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a appointment letter","tags":["Appointment Letters"]},"delete":{"description":"Permanently delete a appointment letter.","operationId":"AppointmentLettersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appointment Letters ID or name","schema":{}}],"responses":{"200":{"description":"appointment letter deleted"},"404":{"description":"appointment letter not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a appointment letter","tags":["Appointment Letters"]}},"/v1/appointment-letters/{id}/submit":{"post":{"description":"Submit a draft appointment letter to finalize it.","operationId":"AppointmentLettersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Appointment Letters ID or name","schema":{}}],"responses":{"200":{"description":"appointment letter submitted"}},"security":[{"api-key":[]}],"summary":"Submit a appointment letter","tags":["Appointment Letters"]}},"/v1/goals":{"get":{"description":"Retrieve a paginated list of goals. Requires Pro plan.","operationId":"GoalsController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of goals"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List goals","tags":["Goals"]},"post":{"description":"Create a new goal.","operationId":"GoalsController_","parameters":[],"responses":{"201":{"description":"goal created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a goal","tags":["Goals"]}},"/v1/goals/{id}":{"get":{"description":"Retrieve a single goal by ID.","operationId":"GoalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Goals ID or name","schema":{}}],"responses":{"200":{"description":"goal details"},"404":{"description":"goal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a goal","tags":["Goals"]},"patch":{"description":"Partially update a goal.","operationId":"GoalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Goals ID or name","schema":{}}],"responses":{"200":{"description":"goal updated"},"404":{"description":"goal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a goal","tags":["Goals"]},"delete":{"description":"Permanently delete a goal.","operationId":"GoalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Goals ID or name","schema":{}}],"responses":{"200":{"description":"goal deleted"},"404":{"description":"goal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a goal","tags":["Goals"]}},"/v1/performance-feedbacks":{"get":{"description":"Retrieve a paginated list of performance feedbacks. Requires Pro plan.","operationId":"PerformanceFeedbacksController_","parameters":[{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"reviewer","required":false,"in":"query","description":"Filter by reviewer","schema":{"type":"string"}},{"name":"appraisal","required":false,"in":"query","description":"Filter by appraisal","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of performance feedbacks"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List performance feedbacks","tags":["Performance Feedbacks"]},"post":{"description":"Create a new performance feedback.","operationId":"PerformanceFeedbacksController_","parameters":[],"responses":{"201":{"description":"performance feedback created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a performance feedback","tags":["Performance Feedbacks"]}},"/v1/performance-feedbacks/{id}":{"get":{"description":"Retrieve a single performance feedback by ID.","operationId":"PerformanceFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Performance Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"performance feedback details"},"404":{"description":"performance feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a performance feedback","tags":["Performance Feedbacks"]},"patch":{"description":"Partially update a performance feedback.","operationId":"PerformanceFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Performance Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"performance feedback updated"},"404":{"description":"performance feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a performance feedback","tags":["Performance Feedbacks"]},"delete":{"description":"Permanently delete a performance feedback.","operationId":"PerformanceFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Performance Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"performance feedback deleted"},"404":{"description":"performance feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a performance feedback","tags":["Performance Feedbacks"]}},"/v1/performance-feedbacks/{id}/submit":{"post":{"description":"Submit a draft performance feedback to finalize it.","operationId":"PerformanceFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Performance Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"performance feedback submitted"}},"security":[{"api-key":[]}],"summary":"Submit a performance feedback","tags":["Performance Feedbacks"]}},"/v1/training-events":{"get":{"description":"Retrieve a paginated list of training events. Requires Pro plan.","operationId":"TrainingEventsController_","parameters":[{"name":"event_status","required":false,"in":"query","description":"Filter by event status","schema":{"type":"string"}},{"name":"training_program","required":false,"in":"query","description":"Filter by training program","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of training events"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List training events","tags":["Training Events"]},"post":{"description":"Create a new training event.","operationId":"TrainingEventsController_","parameters":[],"responses":{"201":{"description":"training event created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a training event","tags":["Training Events"]}},"/v1/training-events/{id}":{"get":{"description":"Retrieve a single training event by ID.","operationId":"TrainingEventsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Events ID or name","schema":{}}],"responses":{"200":{"description":"training event details"},"404":{"description":"training event not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a training event","tags":["Training Events"]},"patch":{"description":"Partially update a training event.","operationId":"TrainingEventsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Events ID or name","schema":{}}],"responses":{"200":{"description":"training event updated"},"404":{"description":"training event not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a training event","tags":["Training Events"]},"delete":{"description":"Permanently delete a training event.","operationId":"TrainingEventsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Events ID or name","schema":{}}],"responses":{"200":{"description":"training event deleted"},"404":{"description":"training event not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a training event","tags":["Training Events"]}},"/v1/training-programs":{"get":{"description":"Retrieve a paginated list of training programs. Requires Pro plan.","operationId":"TrainingProgramsController_","parameters":[{"name":"supplier","required":false,"in":"query","description":"Filter by supplier","schema":{"type":"string"}},{"name":"is_internal","required":false,"in":"query","description":"Filter by is internal","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of training programs"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List training programs","tags":["Training Programs"]},"post":{"description":"Create a new training program.","operationId":"TrainingProgramsController_","parameters":[],"responses":{"201":{"description":"training program created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a training program","tags":["Training Programs"]}},"/v1/training-programs/{id}":{"get":{"description":"Retrieve a single training program by ID.","operationId":"TrainingProgramsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Programs ID or name","schema":{}}],"responses":{"200":{"description":"training program details"},"404":{"description":"training program not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a training program","tags":["Training Programs"]},"patch":{"description":"Partially update a training program.","operationId":"TrainingProgramsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Programs ID or name","schema":{}}],"responses":{"200":{"description":"training program updated"},"404":{"description":"training program not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a training program","tags":["Training Programs"]},"delete":{"description":"Permanently delete a training program.","operationId":"TrainingProgramsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Programs ID or name","schema":{}}],"responses":{"200":{"description":"training program deleted"},"404":{"description":"training program not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a training program","tags":["Training Programs"]}},"/v1/training-results":{"get":{"description":"Retrieve a paginated list of training results. Requires Pro plan.","operationId":"TrainingResultsController_","parameters":[{"name":"training_event","required":false,"in":"query","description":"Filter by training event","schema":{"type":"string"}},{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}},{"name":"grade","required":false,"in":"query","description":"Filter by grade","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of training results"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List training results","tags":["Training Results"]},"post":{"description":"Create a new training result.","operationId":"TrainingResultsController_","parameters":[],"responses":{"201":{"description":"training result created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a training result","tags":["Training Results"]}},"/v1/training-results/{id}":{"get":{"description":"Retrieve a single training result by ID.","operationId":"TrainingResultsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Results ID or name","schema":{}}],"responses":{"200":{"description":"training result details"},"404":{"description":"training result not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a training result","tags":["Training Results"]},"patch":{"description":"Partially update a training result.","operationId":"TrainingResultsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Results ID or name","schema":{}}],"responses":{"200":{"description":"training result updated"},"404":{"description":"training result not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a training result","tags":["Training Results"]},"delete":{"description":"Permanently delete a training result.","operationId":"TrainingResultsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Results ID or name","schema":{}}],"responses":{"200":{"description":"training result deleted"},"404":{"description":"training result not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a training result","tags":["Training Results"]}},"/v1/training-results/{id}/submit":{"post":{"description":"Submit a draft training result to finalize it.","operationId":"TrainingResultsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Results ID or name","schema":{}}],"responses":{"200":{"description":"training result submitted"}},"security":[{"api-key":[]}],"summary":"Submit a training result","tags":["Training Results"]}},"/v1/training-feedbacks":{"get":{"description":"Retrieve a paginated list of training feedbacks. Requires Pro plan.","operationId":"TrainingFeedbacksController_","parameters":[{"name":"training_event","required":false,"in":"query","description":"Filter by training event","schema":{"type":"string"}},{"name":"employee","required":false,"in":"query","description":"Filter by employee","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of training feedbacks"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List training feedbacks","tags":["Training Feedbacks"]},"post":{"description":"Create a new training feedback.","operationId":"TrainingFeedbacksController_","parameters":[],"responses":{"201":{"description":"training feedback created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a training feedback","tags":["Training Feedbacks"]}},"/v1/training-feedbacks/{id}":{"get":{"description":"Retrieve a single training feedback by ID.","operationId":"TrainingFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"training feedback details"},"404":{"description":"training feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a training feedback","tags":["Training Feedbacks"]},"patch":{"description":"Partially update a training feedback.","operationId":"TrainingFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"training feedback updated"},"404":{"description":"training feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a training feedback","tags":["Training Feedbacks"]},"delete":{"description":"Permanently delete a training feedback.","operationId":"TrainingFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"training feedback deleted"},"404":{"description":"training feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a training feedback","tags":["Training Feedbacks"]}},"/v1/training-feedbacks/{id}/submit":{"post":{"description":"Submit a draft training feedback to finalize it.","operationId":"TrainingFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Training Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"training feedback submitted"}},"security":[{"api-key":[]}],"summary":"Submit a training feedback","tags":["Training Feedbacks"]}},"/v1/project-templates":{"get":{"description":"Retrieve a paginated list of project templates. Requires Pro plan.","operationId":"ProjectTemplatesController_","parameters":[{"name":"project_type","required":false,"in":"query","description":"Filter by project type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of project templates"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List project templates","tags":["Project Templates"]},"post":{"description":"Create a new project template.","operationId":"ProjectTemplatesController_","parameters":[],"responses":{"201":{"description":"project template created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a project template","tags":["Project Templates"]}},"/v1/project-templates/{id}":{"get":{"description":"Retrieve a single project template by ID.","operationId":"ProjectTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Project Templates ID or name","schema":{}}],"responses":{"200":{"description":"project template details"},"404":{"description":"project template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a project template","tags":["Project Templates"]},"patch":{"description":"Partially update a project template.","operationId":"ProjectTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Project Templates ID or name","schema":{}}],"responses":{"200":{"description":"project template updated"},"404":{"description":"project template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a project template","tags":["Project Templates"]},"delete":{"description":"Permanently delete a project template.","operationId":"ProjectTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Project Templates ID or name","schema":{}}],"responses":{"200":{"description":"project template deleted"},"404":{"description":"project template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a project template","tags":["Project Templates"]}},"/v1/activity-types":{"get":{"description":"Retrieve a paginated list of activity types. Requires Pro plan.","operationId":"ActivityTypesController_","parameters":[{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of activity types"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List activity types","tags":["Activity Types"]},"post":{"description":"Create a new activity type.","operationId":"ActivityTypesController_","parameters":[],"responses":{"201":{"description":"activity type created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a activity type","tags":["Activity Types"]}},"/v1/activity-types/{id}":{"get":{"description":"Retrieve a single activity type by ID.","operationId":"ActivityTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Activity Types ID or name","schema":{}}],"responses":{"200":{"description":"activity type details"},"404":{"description":"activity type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a activity type","tags":["Activity Types"]},"patch":{"description":"Partially update a activity type.","operationId":"ActivityTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Activity Types ID or name","schema":{}}],"responses":{"200":{"description":"activity type updated"},"404":{"description":"activity type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a activity type","tags":["Activity Types"]},"delete":{"description":"Permanently delete a activity type.","operationId":"ActivityTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Activity Types ID or name","schema":{}}],"responses":{"200":{"description":"activity type deleted"},"404":{"description":"activity type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a activity type","tags":["Activity Types"]}},"/v1/bom-creators":{"get":{"description":"Retrieve a paginated list of bom creators. Requires Pro plan.","operationId":"BomCreatorsController_","parameters":[{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of bom creators"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bom creators","tags":["BOM Creators"]},"post":{"description":"Create a new bom creator.","operationId":"BomCreatorsController_","parameters":[],"responses":{"201":{"description":"bom creator created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a bom creator","tags":["BOM Creators"]}},"/v1/bom-creators/{id}":{"get":{"description":"Retrieve a single bom creator by ID.","operationId":"BomCreatorsController_","parameters":[{"name":"id","required":true,"in":"path","description":"BOM Creators ID or name","schema":{}}],"responses":{"200":{"description":"bom creator details"},"404":{"description":"bom creator not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bom creator","tags":["BOM Creators"]},"patch":{"description":"Partially update a bom creator.","operationId":"BomCreatorsController_","parameters":[{"name":"id","required":true,"in":"path","description":"BOM Creators ID or name","schema":{}}],"responses":{"200":{"description":"bom creator updated"},"404":{"description":"bom creator not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a bom creator","tags":["BOM Creators"]},"delete":{"description":"Permanently delete a bom creator.","operationId":"BomCreatorsController_","parameters":[{"name":"id","required":true,"in":"path","description":"BOM Creators ID or name","schema":{}}],"responses":{"200":{"description":"bom creator deleted"},"404":{"description":"bom creator not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a bom creator","tags":["BOM Creators"]}},"/v1/bom-creators/{id}/submit":{"post":{"description":"Submit a draft bom creator to finalize it.","operationId":"BomCreatorsController_","parameters":[{"name":"id","required":true,"in":"path","description":"BOM Creators ID or name","schema":{}}],"responses":{"200":{"description":"bom creator submitted"}},"security":[{"api-key":[]}],"summary":"Submit a bom creator","tags":["BOM Creators"]}},"/v1/job-cards":{"get":{"description":"Retrieve a paginated list of job cards. Requires Business plan.","operationId":"JobCardsController_","parameters":[{"name":"work_order","required":false,"in":"query","description":"Filter by work order","schema":{"type":"string"}},{"name":"production_item","required":false,"in":"query","description":"Filter by production item","schema":{"type":"string"}},{"name":"operation","required":false,"in":"query","description":"Filter by operation","schema":{"type":"string"}},{"name":"workstation","required":false,"in":"query","description":"Filter by workstation","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of job cards"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List job cards","tags":["Job Cards"]},"post":{"description":"Create a new job card.","operationId":"JobCardsController_","parameters":[],"responses":{"201":{"description":"job card created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a job card","tags":["Job Cards"]}},"/v1/job-cards/{id}":{"get":{"description":"Retrieve a single job card by ID.","operationId":"JobCardsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Cards ID or name","schema":{}}],"responses":{"200":{"description":"job card details"},"404":{"description":"job card not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a job card","tags":["Job Cards"]},"patch":{"description":"Partially update a job card.","operationId":"JobCardsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Cards ID or name","schema":{}}],"responses":{"200":{"description":"job card updated"},"404":{"description":"job card not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a job card","tags":["Job Cards"]},"delete":{"description":"Permanently delete a job card.","operationId":"JobCardsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Cards ID or name","schema":{}}],"responses":{"200":{"description":"job card deleted"},"404":{"description":"job card not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a job card","tags":["Job Cards"]}},"/v1/job-cards/{id}/submit":{"post":{"description":"Submit a draft job card to finalize it.","operationId":"JobCardsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Job Cards ID or name","schema":{}}],"responses":{"200":{"description":"job card submitted"}},"security":[{"api-key":[]}],"summary":"Submit a job card","tags":["Job Cards"]}},"/v1/routings":{"get":{"description":"Retrieve a paginated list of routings. Requires Business plan.","operationId":"RoutingsController_","parameters":[{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of routings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List routings","tags":["Routings"]},"post":{"description":"Create a new routing.","operationId":"RoutingsController_","parameters":[],"responses":{"201":{"description":"routing created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a routing","tags":["Routings"]}},"/v1/routings/{id}":{"get":{"description":"Retrieve a single routing by ID.","operationId":"RoutingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Routings ID or name","schema":{}}],"responses":{"200":{"description":"routing details"},"404":{"description":"routing not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a routing","tags":["Routings"]},"patch":{"description":"Partially update a routing.","operationId":"RoutingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Routings ID or name","schema":{}}],"responses":{"200":{"description":"routing updated"},"404":{"description":"routing not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a routing","tags":["Routings"]},"delete":{"description":"Permanently delete a routing.","operationId":"RoutingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Routings ID or name","schema":{}}],"responses":{"200":{"description":"routing deleted"},"404":{"description":"routing not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a routing","tags":["Routings"]}},"/v1/bom-update-tools":{"get":{"description":"Retrieve a paginated list of bom update tool. Requires Business plan.","operationId":"BomUpdateToolsController_","parameters":[{"name":"update_type","required":false,"in":"query","description":"Filter by update type","schema":{"type":"string"}},{"name":"current_bom","required":false,"in":"query","description":"Filter by current bom","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of bom update tool"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List bom update tool","tags":["BOM Update Tool"]}},"/v1/bom-update-tools/{id}":{"get":{"description":"Retrieve a single bom update tool by ID.","operationId":"BomUpdateToolsController_","parameters":[{"name":"id","required":true,"in":"path","description":"BOM Update Tool ID or name","schema":{}}],"responses":{"200":{"description":"bom update tool details"},"404":{"description":"bom update tool not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a bom update tool","tags":["BOM Update Tool"]}},"/v1/downtime-entries":{"get":{"description":"Retrieve a paginated list of downtime entries. Requires Business plan.","operationId":"DowntimeEntriesController_","parameters":[{"name":"workstation","required":false,"in":"query","description":"Filter by workstation","schema":{"type":"string"}},{"name":"stop_reason","required":false,"in":"query","description":"Filter by stop reason","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of downtime entries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List downtime entries","tags":["Downtime Entries"]},"post":{"description":"Create a new downtime entrie.","operationId":"DowntimeEntriesController_","parameters":[],"responses":{"201":{"description":"downtime entrie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a downtime entrie","tags":["Downtime Entries"]}},"/v1/downtime-entries/{id}":{"get":{"description":"Retrieve a single downtime entrie by ID.","operationId":"DowntimeEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Downtime Entries ID or name","schema":{}}],"responses":{"200":{"description":"downtime entrie details"},"404":{"description":"downtime entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a downtime entrie","tags":["Downtime Entries"]},"patch":{"description":"Partially update a downtime entrie.","operationId":"DowntimeEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Downtime Entries ID or name","schema":{}}],"responses":{"200":{"description":"downtime entrie updated"},"404":{"description":"downtime entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a downtime entrie","tags":["Downtime Entries"]},"delete":{"description":"Permanently delete a downtime entrie.","operationId":"DowntimeEntriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Downtime Entries ID or name","schema":{}}],"responses":{"200":{"description":"downtime entrie deleted"},"404":{"description":"downtime entrie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a downtime entrie","tags":["Downtime Entries"]}},"/v1/quality-inspection-templates":{"get":{"description":"Retrieve a paginated list of quality inspection templates. Requires Business plan.","operationId":"QualityInspectionTemplatesController_","parameters":[],"responses":{"200":{"description":"Paginated list of quality inspection templates"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List quality inspection templates","tags":["Quality Inspection Templates"]},"post":{"description":"Create a new quality inspection template.","operationId":"QualityInspectionTemplatesController_","parameters":[],"responses":{"201":{"description":"quality inspection template created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a quality inspection template","tags":["Quality Inspection Templates"]}},"/v1/quality-inspection-templates/{id}":{"get":{"description":"Retrieve a single quality inspection template by ID.","operationId":"QualityInspectionTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Inspection Templates ID or name","schema":{}}],"responses":{"200":{"description":"quality inspection template details"},"404":{"description":"quality inspection template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a quality inspection template","tags":["Quality Inspection Templates"]},"patch":{"description":"Partially update a quality inspection template.","operationId":"QualityInspectionTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Inspection Templates ID or name","schema":{}}],"responses":{"200":{"description":"quality inspection template updated"},"404":{"description":"quality inspection template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a quality inspection template","tags":["Quality Inspection Templates"]},"delete":{"description":"Permanently delete a quality inspection template.","operationId":"QualityInspectionTemplatesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Inspection Templates ID or name","schema":{}}],"responses":{"200":{"description":"quality inspection template deleted"},"404":{"description":"quality inspection template not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a quality inspection template","tags":["Quality Inspection Templates"]}},"/v1/quality-goals":{"get":{"description":"Retrieve a paginated list of quality goals. Requires Business plan.","operationId":"QualityGoalsController_","parameters":[{"name":"frequency","required":false,"in":"query","description":"Filter by frequency","schema":{"type":"string"}},{"name":"monitoring_frequency","required":false,"in":"query","description":"Filter by monitoring frequency","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of quality goals"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List quality goals","tags":["Quality Goals"]},"post":{"description":"Create a new quality goal.","operationId":"QualityGoalsController_","parameters":[],"responses":{"201":{"description":"quality goal created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a quality goal","tags":["Quality Goals"]}},"/v1/quality-goals/{id}":{"get":{"description":"Retrieve a single quality goal by ID.","operationId":"QualityGoalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Goals ID or name","schema":{}}],"responses":{"200":{"description":"quality goal details"},"404":{"description":"quality goal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a quality goal","tags":["Quality Goals"]},"patch":{"description":"Partially update a quality goal.","operationId":"QualityGoalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Goals ID or name","schema":{}}],"responses":{"200":{"description":"quality goal updated"},"404":{"description":"quality goal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a quality goal","tags":["Quality Goals"]},"delete":{"description":"Permanently delete a quality goal.","operationId":"QualityGoalsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Goals ID or name","schema":{}}],"responses":{"200":{"description":"quality goal deleted"},"404":{"description":"quality goal not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a quality goal","tags":["Quality Goals"]}},"/v1/quality-procedures":{"get":{"description":"Retrieve a paginated list of quality procedures. Requires Business plan.","operationId":"QualityProceduresController_","parameters":[{"name":"is_group","required":false,"in":"query","description":"Filter by is group","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of quality procedures"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List quality procedures","tags":["Quality Procedures"]},"post":{"description":"Create a new quality procedure.","operationId":"QualityProceduresController_","parameters":[],"responses":{"201":{"description":"quality procedure created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a quality procedure","tags":["Quality Procedures"]}},"/v1/quality-procedures/{id}":{"get":{"description":"Retrieve a single quality procedure by ID.","operationId":"QualityProceduresController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Procedures ID or name","schema":{}}],"responses":{"200":{"description":"quality procedure details"},"404":{"description":"quality procedure not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a quality procedure","tags":["Quality Procedures"]},"patch":{"description":"Partially update a quality procedure.","operationId":"QualityProceduresController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Procedures ID or name","schema":{}}],"responses":{"200":{"description":"quality procedure updated"},"404":{"description":"quality procedure not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a quality procedure","tags":["Quality Procedures"]},"delete":{"description":"Permanently delete a quality procedure.","operationId":"QualityProceduresController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Procedures ID or name","schema":{}}],"responses":{"200":{"description":"quality procedure deleted"},"404":{"description":"quality procedure not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a quality procedure","tags":["Quality Procedures"]}},"/v1/quality-feedbacks":{"get":{"description":"Retrieve a paginated list of quality feedbacks. Requires Business plan.","operationId":"QualityFeedbacksController_","parameters":[{"name":"template","required":false,"in":"query","description":"Filter by template","schema":{"type":"string"}},{"name":"document_type","required":false,"in":"query","description":"Filter by document type","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of quality feedbacks"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List quality feedbacks","tags":["Quality Feedbacks"]},"post":{"description":"Create a new quality feedback.","operationId":"QualityFeedbacksController_","parameters":[],"responses":{"201":{"description":"quality feedback created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a quality feedback","tags":["Quality Feedbacks"]}},"/v1/quality-feedbacks/{id}":{"get":{"description":"Retrieve a single quality feedback by ID.","operationId":"QualityFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"quality feedback details"},"404":{"description":"quality feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a quality feedback","tags":["Quality Feedbacks"]},"patch":{"description":"Partially update a quality feedback.","operationId":"QualityFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"quality feedback updated"},"404":{"description":"quality feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a quality feedback","tags":["Quality Feedbacks"]},"delete":{"description":"Permanently delete a quality feedback.","operationId":"QualityFeedbacksController_","parameters":[{"name":"id","required":true,"in":"path","description":"Quality Feedbacks ID or name","schema":{}}],"responses":{"200":{"description":"quality feedback deleted"},"404":{"description":"quality feedback not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a quality feedback","tags":["Quality Feedbacks"]}},"/v1/non-conformances":{"get":{"description":"Retrieve a paginated list of non conformances. Requires Business plan.","operationId":"NonConformancesController_","parameters":[{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"procedure","required":false,"in":"query","description":"Filter by procedure","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of non conformances"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List non conformances","tags":["Non Conformances"]},"post":{"description":"Create a new non conformance.","operationId":"NonConformancesController_","parameters":[],"responses":{"201":{"description":"non conformance created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a non conformance","tags":["Non Conformances"]}},"/v1/non-conformances/{id}":{"get":{"description":"Retrieve a single non conformance by ID.","operationId":"NonConformancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Non Conformances ID or name","schema":{}}],"responses":{"200":{"description":"non conformance details"},"404":{"description":"non conformance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a non conformance","tags":["Non Conformances"]},"patch":{"description":"Partially update a non conformance.","operationId":"NonConformancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Non Conformances ID or name","schema":{}}],"responses":{"200":{"description":"non conformance updated"},"404":{"description":"non conformance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a non conformance","tags":["Non Conformances"]},"delete":{"description":"Permanently delete a non conformance.","operationId":"NonConformancesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Non Conformances ID or name","schema":{}}],"responses":{"200":{"description":"non conformance deleted"},"404":{"description":"non conformance not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a non conformance","tags":["Non Conformances"]}},"/v1/asset-categories":{"get":{"description":"Retrieve a paginated list of asset categories. Requires Business plan.","operationId":"AssetCategoriesController_","parameters":[{"name":"enable_cwip_accounting","required":false,"in":"query","description":"Filter by enable cwip accounting","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of asset categories"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List asset categories","tags":["Asset Categories"]},"post":{"description":"Create a new asset categorie.","operationId":"AssetCategoriesController_","parameters":[],"responses":{"201":{"description":"asset categorie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a asset categorie","tags":["Asset Categories"]}},"/v1/asset-categories/{id}":{"get":{"description":"Retrieve a single asset categorie by ID.","operationId":"AssetCategoriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Categories ID or name","schema":{}}],"responses":{"200":{"description":"asset categorie details"},"404":{"description":"asset categorie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a asset categorie","tags":["Asset Categories"]},"patch":{"description":"Partially update a asset categorie.","operationId":"AssetCategoriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Categories ID or name","schema":{}}],"responses":{"200":{"description":"asset categorie updated"},"404":{"description":"asset categorie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a asset categorie","tags":["Asset Categories"]},"delete":{"description":"Permanently delete a asset categorie.","operationId":"AssetCategoriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Categories ID or name","schema":{}}],"responses":{"200":{"description":"asset categorie deleted"},"404":{"description":"asset categorie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a asset categorie","tags":["Asset Categories"]}},"/v1/asset-capitalizations":{"get":{"description":"Retrieve a paginated list of asset capitalizations. Requires Business plan.","operationId":"AssetCapitalizationsController_","parameters":[{"name":"entry_type","required":false,"in":"query","description":"Filter by entry type","schema":{"type":"string"}},{"name":"target_item_code","required":false,"in":"query","description":"Filter by target item code","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of asset capitalizations"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List asset capitalizations","tags":["Asset Capitalizations"]},"post":{"description":"Create a new asset capitalization.","operationId":"AssetCapitalizationsController_","parameters":[],"responses":{"201":{"description":"asset capitalization created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a asset capitalization","tags":["Asset Capitalizations"]}},"/v1/asset-capitalizations/{id}":{"get":{"description":"Retrieve a single asset capitalization by ID.","operationId":"AssetCapitalizationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Capitalizations ID or name","schema":{}}],"responses":{"200":{"description":"asset capitalization details"},"404":{"description":"asset capitalization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a asset capitalization","tags":["Asset Capitalizations"]},"patch":{"description":"Partially update a asset capitalization.","operationId":"AssetCapitalizationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Capitalizations ID or name","schema":{}}],"responses":{"200":{"description":"asset capitalization updated"},"404":{"description":"asset capitalization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a asset capitalization","tags":["Asset Capitalizations"]},"delete":{"description":"Permanently delete a asset capitalization.","operationId":"AssetCapitalizationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Capitalizations ID or name","schema":{}}],"responses":{"200":{"description":"asset capitalization deleted"},"404":{"description":"asset capitalization not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a asset capitalization","tags":["Asset Capitalizations"]}},"/v1/asset-capitalizations/{id}/submit":{"post":{"description":"Submit a draft asset capitalization to finalize it.","operationId":"AssetCapitalizationsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Capitalizations ID or name","schema":{}}],"responses":{"200":{"description":"asset capitalization submitted"}},"security":[{"api-key":[]}],"summary":"Submit a asset capitalization","tags":["Asset Capitalizations"]}},"/v1/asset-movements":{"get":{"description":"Retrieve a paginated list of asset movements. Requires Business plan.","operationId":"AssetMovementsController_","parameters":[{"name":"purpose","required":false,"in":"query","description":"Filter by purpose","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of asset movements"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List asset movements","tags":["Asset Movements"]},"post":{"description":"Create a new asset movement.","operationId":"AssetMovementsController_","parameters":[],"responses":{"201":{"description":"asset movement created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a asset movement","tags":["Asset Movements"]}},"/v1/asset-movements/{id}":{"get":{"description":"Retrieve a single asset movement by ID.","operationId":"AssetMovementsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Movements ID or name","schema":{}}],"responses":{"200":{"description":"asset movement details"},"404":{"description":"asset movement not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a asset movement","tags":["Asset Movements"]},"patch":{"description":"Partially update a asset movement.","operationId":"AssetMovementsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Movements ID or name","schema":{}}],"responses":{"200":{"description":"asset movement updated"},"404":{"description":"asset movement not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a asset movement","tags":["Asset Movements"]},"delete":{"description":"Permanently delete a asset movement.","operationId":"AssetMovementsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Movements ID or name","schema":{}}],"responses":{"200":{"description":"asset movement deleted"},"404":{"description":"asset movement not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a asset movement","tags":["Asset Movements"]}},"/v1/asset-movements/{id}/submit":{"post":{"description":"Submit a draft asset movement to finalize it.","operationId":"AssetMovementsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Movements ID or name","schema":{}}],"responses":{"200":{"description":"asset movement submitted"}},"security":[{"api-key":[]}],"summary":"Submit a asset movement","tags":["Asset Movements"]}},"/v1/asset-repairs":{"get":{"description":"Retrieve a paginated list of asset repairs. Requires Business plan.","operationId":"AssetRepairsController_","parameters":[{"name":"asset","required":false,"in":"query","description":"Filter by asset","schema":{"type":"string"}},{"name":"repair_status","required":false,"in":"query","description":"Filter by repair status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of asset repairs"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List asset repairs","tags":["Asset Repairs"]},"post":{"description":"Create a new asset repair.","operationId":"AssetRepairsController_","parameters":[],"responses":{"201":{"description":"asset repair created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a asset repair","tags":["Asset Repairs"]}},"/v1/asset-repairs/{id}":{"get":{"description":"Retrieve a single asset repair by ID.","operationId":"AssetRepairsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Repairs ID or name","schema":{}}],"responses":{"200":{"description":"asset repair details"},"404":{"description":"asset repair not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a asset repair","tags":["Asset Repairs"]},"patch":{"description":"Partially update a asset repair.","operationId":"AssetRepairsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Repairs ID or name","schema":{}}],"responses":{"200":{"description":"asset repair updated"},"404":{"description":"asset repair not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a asset repair","tags":["Asset Repairs"]},"delete":{"description":"Permanently delete a asset repair.","operationId":"AssetRepairsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Repairs ID or name","schema":{}}],"responses":{"200":{"description":"asset repair deleted"},"404":{"description":"asset repair not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a asset repair","tags":["Asset Repairs"]}},"/v1/asset-repairs/{id}/submit":{"post":{"description":"Submit a draft asset repair to finalize it.","operationId":"AssetRepairsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Repairs ID or name","schema":{}}],"responses":{"200":{"description":"asset repair submitted"}},"security":[{"api-key":[]}],"summary":"Submit a asset repair","tags":["Asset Repairs"]}},"/v1/asset-value-adjustments":{"get":{"description":"Retrieve a paginated list of asset value adjustments. Requires Business plan.","operationId":"AssetValueAdjustmentsController_","parameters":[{"name":"asset","required":false,"in":"query","description":"Filter by asset","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of asset value adjustments"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List asset value adjustments","tags":["Asset Value Adjustments"]},"post":{"description":"Create a new asset value adjustment.","operationId":"AssetValueAdjustmentsController_","parameters":[],"responses":{"201":{"description":"asset value adjustment created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a asset value adjustment","tags":["Asset Value Adjustments"]}},"/v1/asset-value-adjustments/{id}":{"get":{"description":"Retrieve a single asset value adjustment by ID.","operationId":"AssetValueAdjustmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Value Adjustments ID or name","schema":{}}],"responses":{"200":{"description":"asset value adjustment details"},"404":{"description":"asset value adjustment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a asset value adjustment","tags":["Asset Value Adjustments"]},"patch":{"description":"Partially update a asset value adjustment.","operationId":"AssetValueAdjustmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Value Adjustments ID or name","schema":{}}],"responses":{"200":{"description":"asset value adjustment updated"},"404":{"description":"asset value adjustment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a asset value adjustment","tags":["Asset Value Adjustments"]},"delete":{"description":"Permanently delete a asset value adjustment.","operationId":"AssetValueAdjustmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Value Adjustments ID or name","schema":{}}],"responses":{"200":{"description":"asset value adjustment deleted"},"404":{"description":"asset value adjustment not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a asset value adjustment","tags":["Asset Value Adjustments"]}},"/v1/asset-value-adjustments/{id}/submit":{"post":{"description":"Submit a draft asset value adjustment to finalize it.","operationId":"AssetValueAdjustmentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Value Adjustments ID or name","schema":{}}],"responses":{"200":{"description":"asset value adjustment submitted"}},"security":[{"api-key":[]}],"summary":"Submit a asset value adjustment","tags":["Asset Value Adjustments"]}},"/v1/asset-depreciation-schedules":{"get":{"description":"Retrieve a paginated list of asset depreciation schedules. Requires Business plan.","operationId":"AssetDepreciationSchedulesController_","parameters":[{"name":"asset","required":false,"in":"query","description":"Filter by asset","schema":{"type":"string"}},{"name":"finance_book","required":false,"in":"query","description":"Filter by finance book","schema":{"type":"string"}},{"name":"depreciation_method","required":false,"in":"query","description":"Filter by depreciation method","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of asset depreciation schedules"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List asset depreciation schedules","tags":["Asset Depreciation Schedules"]}},"/v1/asset-depreciation-schedules/{id}":{"get":{"description":"Retrieve a single asset depreciation schedule by ID.","operationId":"AssetDepreciationSchedulesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Asset Depreciation Schedules ID or name","schema":{}}],"responses":{"200":{"description":"asset depreciation schedule details"},"404":{"description":"asset depreciation schedule not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a asset depreciation schedule","tags":["Asset Depreciation Schedules"]}},"/v1/subscription-plans":{"get":{"description":"Retrieve a paginated list of subscription plans. Requires Business plan.","operationId":"SubscriptionPlansController_","parameters":[{"name":"item","required":false,"in":"query","description":"Filter by item","schema":{"type":"string"}},{"name":"price_determination","required":false,"in":"query","description":"Filter by price determination","schema":{"type":"string"}},{"name":"billing_interval","required":false,"in":"query","description":"Filter by billing interval","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of subscription plans"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List subscription plans","tags":["Subscription Plans"]},"post":{"description":"Create a new subscription plan.","operationId":"SubscriptionPlansController_","parameters":[],"responses":{"201":{"description":"subscription plan created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a subscription plan","tags":["Subscription Plans"]}},"/v1/subscription-plans/{id}":{"get":{"description":"Retrieve a single subscription plan by ID.","operationId":"SubscriptionPlansController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subscription Plans ID or name","schema":{}}],"responses":{"200":{"description":"subscription plan details"},"404":{"description":"subscription plan not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a subscription plan","tags":["Subscription Plans"]},"patch":{"description":"Partially update a subscription plan.","operationId":"SubscriptionPlansController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subscription Plans ID or name","schema":{}}],"responses":{"200":{"description":"subscription plan updated"},"404":{"description":"subscription plan not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a subscription plan","tags":["Subscription Plans"]},"delete":{"description":"Permanently delete a subscription plan.","operationId":"SubscriptionPlansController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subscription Plans ID or name","schema":{}}],"responses":{"200":{"description":"subscription plan deleted"},"404":{"description":"subscription plan not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a subscription plan","tags":["Subscription Plans"]}},"/v1/subcontracting-receipts":{"get":{"description":"Retrieve a paginated list of subcontracting receipts. Requires Business plan.","operationId":"SubcontractingReceiptsController_","parameters":[{"name":"supplier","required":false,"in":"query","description":"Filter by supplier","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of subcontracting receipts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List subcontracting receipts","tags":["Subcontracting Receipts"]},"post":{"description":"Create a new subcontracting receipt.","operationId":"SubcontractingReceiptsController_","parameters":[],"responses":{"201":{"description":"subcontracting receipt created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a subcontracting receipt","tags":["Subcontracting Receipts"]}},"/v1/subcontracting-receipts/{id}":{"get":{"description":"Retrieve a single subcontracting receipt by ID.","operationId":"SubcontractingReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Receipts ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting receipt details"},"404":{"description":"subcontracting receipt not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a subcontracting receipt","tags":["Subcontracting Receipts"]},"patch":{"description":"Partially update a subcontracting receipt.","operationId":"SubcontractingReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Receipts ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting receipt updated"},"404":{"description":"subcontracting receipt not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a subcontracting receipt","tags":["Subcontracting Receipts"]},"delete":{"description":"Permanently delete a subcontracting receipt.","operationId":"SubcontractingReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Receipts ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting receipt deleted"},"404":{"description":"subcontracting receipt not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a subcontracting receipt","tags":["Subcontracting Receipts"]}},"/v1/subcontracting-receipts/{id}/submit":{"post":{"description":"Submit a draft subcontracting receipt to finalize it.","operationId":"SubcontractingReceiptsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Receipts ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting receipt submitted"}},"security":[{"api-key":[]}],"summary":"Submit a subcontracting receipt","tags":["Subcontracting Receipts"]}},"/v1/subcontracting-inward-orders":{"get":{"description":"Retrieve a paginated list of subcontracting inward orders. Requires Business plan.","operationId":"SubcontractingInwardOrdersController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"sales_order","required":false,"in":"query","description":"Filter by sales order","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of subcontracting inward orders"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List subcontracting inward orders","tags":["Subcontracting Inward Orders"]},"post":{"description":"Create a new subcontracting inward order.","operationId":"SubcontractingInwardOrdersController_","parameters":[],"responses":{"201":{"description":"subcontracting inward order created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a subcontracting inward order","tags":["Subcontracting Inward Orders"]}},"/v1/subcontracting-inward-orders/{id}":{"get":{"description":"Retrieve a single subcontracting inward order by ID.","operationId":"SubcontractingInwardOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Inward Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting inward order details"},"404":{"description":"subcontracting inward order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a subcontracting inward order","tags":["Subcontracting Inward Orders"]},"patch":{"description":"Partially update a subcontracting inward order.","operationId":"SubcontractingInwardOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Inward Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting inward order updated"},"404":{"description":"subcontracting inward order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a subcontracting inward order","tags":["Subcontracting Inward Orders"]},"delete":{"description":"Permanently delete a subcontracting inward order.","operationId":"SubcontractingInwardOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Inward Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting inward order deleted"},"404":{"description":"subcontracting inward order not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a subcontracting inward order","tags":["Subcontracting Inward Orders"]}},"/v1/subcontracting-inward-orders/{id}/submit":{"post":{"description":"Submit a draft subcontracting inward order to finalize it.","operationId":"SubcontractingInwardOrdersController_","parameters":[{"name":"id","required":true,"in":"path","description":"Subcontracting Inward Orders ID or name","schema":{}}],"responses":{"200":{"description":"subcontracting inward order submitted"}},"security":[{"api-key":[]}],"summary":"Submit a subcontracting inward order","tags":["Subcontracting Inward Orders"]}},"/v1/support-tickets":{"get":{"description":"Retrieve a paginated list of support tickets. Requires Pro plan.","operationId":"SupportTicketsController_","parameters":[{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"priority","required":false,"in":"query","description":"Filter by priority","schema":{"type":"string"}},{"name":"ticket_type","required":false,"in":"query","description":"Filter by ticket type","schema":{"type":"string"}},{"name":"contact","required":false,"in":"query","description":"Filter by contact","schema":{"type":"string"}},{"name":"agent_group","required":false,"in":"query","description":"Filter by agent group","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of support tickets"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List support tickets","tags":["Support Tickets"]},"post":{"description":"Create a new support ticket.","operationId":"SupportTicketsController_","parameters":[],"responses":{"201":{"description":"support ticket created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a support ticket","tags":["Support Tickets"]}},"/v1/support-tickets/{id}":{"get":{"description":"Retrieve a single support ticket by ID.","operationId":"SupportTicketsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Tickets ID or name","schema":{}}],"responses":{"200":{"description":"support ticket details"},"404":{"description":"support ticket not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a support ticket","tags":["Support Tickets"]},"patch":{"description":"Partially update a support ticket.","operationId":"SupportTicketsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Tickets ID or name","schema":{}}],"responses":{"200":{"description":"support ticket updated"},"404":{"description":"support ticket not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a support ticket","tags":["Support Tickets"]},"delete":{"description":"Permanently delete a support ticket.","operationId":"SupportTicketsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Tickets ID or name","schema":{}}],"responses":{"200":{"description":"support ticket deleted"},"404":{"description":"support ticket not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a support ticket","tags":["Support Tickets"]}},"/v1/support-articles":{"get":{"description":"Retrieve a paginated list of support articles. Requires Pro plan.","operationId":"SupportArticlesController_","parameters":[{"name":"category","required":false,"in":"query","description":"Filter by category","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"author","required":false,"in":"query","description":"Filter by author","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of support articles"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List support articles","tags":["Support Articles"]},"post":{"description":"Create a new support article.","operationId":"SupportArticlesController_","parameters":[],"responses":{"201":{"description":"support article created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a support article","tags":["Support Articles"]}},"/v1/support-articles/{id}":{"get":{"description":"Retrieve a single support article by ID.","operationId":"SupportArticlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Articles ID or name","schema":{}}],"responses":{"200":{"description":"support article details"},"404":{"description":"support article not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a support article","tags":["Support Articles"]},"patch":{"description":"Partially update a support article.","operationId":"SupportArticlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Articles ID or name","schema":{}}],"responses":{"200":{"description":"support article updated"},"404":{"description":"support article not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a support article","tags":["Support Articles"]},"delete":{"description":"Permanently delete a support article.","operationId":"SupportArticlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Articles ID or name","schema":{}}],"responses":{"200":{"description":"support article deleted"},"404":{"description":"support article not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a support article","tags":["Support Articles"]}},"/v1/support-teams":{"get":{"description":"Retrieve a paginated list of support teams. Requires Pro plan.","operationId":"SupportTeamsController_","parameters":[{"name":"ignore_restrictions","required":false,"in":"query","description":"Filter by ignore restrictions","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of support teams"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List support teams","tags":["Support Teams"]},"post":{"description":"Create a new support team.","operationId":"SupportTeamsController_","parameters":[],"responses":{"201":{"description":"support team created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a support team","tags":["Support Teams"]}},"/v1/support-teams/{id}":{"get":{"description":"Retrieve a single support team by ID.","operationId":"SupportTeamsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Teams ID or name","schema":{}}],"responses":{"200":{"description":"support team details"},"404":{"description":"support team not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a support team","tags":["Support Teams"]},"patch":{"description":"Partially update a support team.","operationId":"SupportTeamsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Teams ID or name","schema":{}}],"responses":{"200":{"description":"support team updated"},"404":{"description":"support team not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a support team","tags":["Support Teams"]},"delete":{"description":"Permanently delete a support team.","operationId":"SupportTeamsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Support Teams ID or name","schema":{}}],"responses":{"200":{"description":"support team deleted"},"404":{"description":"support team not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a support team","tags":["Support Teams"]}},"/v1/service-contracts":{"get":{"description":"Retrieve a paginated list of service contracts. Requires Pro plan.","operationId":"ServiceContractsController_","parameters":[{"name":"customer","required":false,"in":"query","description":"Filter by customer","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of service contracts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List service contracts","tags":["Service Contracts"]},"post":{"description":"Create a new service contract.","operationId":"ServiceContractsController_","parameters":[],"responses":{"201":{"description":"service contract created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a service contract","tags":["Service Contracts"]}},"/v1/service-contracts/{id}":{"get":{"description":"Retrieve a single service contract by ID.","operationId":"ServiceContractsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Service Contracts ID or name","schema":{}}],"responses":{"200":{"description":"service contract details"},"404":{"description":"service contract not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a service contract","tags":["Service Contracts"]},"patch":{"description":"Partially update a service contract.","operationId":"ServiceContractsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Service Contracts ID or name","schema":{}}],"responses":{"200":{"description":"service contract updated"},"404":{"description":"service contract not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a service contract","tags":["Service Contracts"]},"delete":{"description":"Permanently delete a service contract.","operationId":"ServiceContractsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Service Contracts ID or name","schema":{}}],"responses":{"200":{"description":"service contract deleted"},"404":{"description":"service contract not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a service contract","tags":["Service Contracts"]}},"/v1/ticket-types":{"get":{"description":"Retrieve a paginated list of ticket types. Requires Pro plan.","operationId":"TicketTypesController_","parameters":[],"responses":{"200":{"description":"Paginated list of ticket types"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List ticket types","tags":["Ticket Types"]},"post":{"description":"Create a new ticket type.","operationId":"TicketTypesController_","parameters":[],"responses":{"201":{"description":"ticket type created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a ticket type","tags":["Ticket Types"]}},"/v1/ticket-types/{id}":{"get":{"description":"Retrieve a single ticket type by ID.","operationId":"TicketTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Ticket Types ID or name","schema":{}}],"responses":{"200":{"description":"ticket type details"},"404":{"description":"ticket type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a ticket type","tags":["Ticket Types"]},"patch":{"description":"Partially update a ticket type.","operationId":"TicketTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Ticket Types ID or name","schema":{}}],"responses":{"200":{"description":"ticket type updated"},"404":{"description":"ticket type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a ticket type","tags":["Ticket Types"]},"delete":{"description":"Permanently delete a ticket type.","operationId":"TicketTypesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Ticket Types ID or name","schema":{}}],"responses":{"200":{"description":"ticket type deleted"},"404":{"description":"ticket type not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a ticket type","tags":["Ticket Types"]}},"/v1/ticket-priorities":{"get":{"description":"Retrieve a paginated list of ticket priorities. Requires Pro plan.","operationId":"TicketPrioritiesController_","parameters":[],"responses":{"200":{"description":"Paginated list of ticket priorities"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List ticket priorities","tags":["Ticket Priorities"]},"post":{"description":"Create a new ticket prioritie.","operationId":"TicketPrioritiesController_","parameters":[],"responses":{"201":{"description":"ticket prioritie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a ticket prioritie","tags":["Ticket Priorities"]}},"/v1/ticket-priorities/{id}":{"get":{"description":"Retrieve a single ticket prioritie by ID.","operationId":"TicketPrioritiesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Ticket Priorities ID or name","schema":{}}],"responses":{"200":{"description":"ticket prioritie details"},"404":{"description":"ticket prioritie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a ticket prioritie","tags":["Ticket Priorities"]},"patch":{"description":"Partially update a ticket prioritie.","operationId":"TicketPrioritiesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Ticket Priorities ID or name","schema":{}}],"responses":{"200":{"description":"ticket prioritie updated"},"404":{"description":"ticket prioritie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a ticket prioritie","tags":["Ticket Priorities"]},"delete":{"description":"Permanently delete a ticket prioritie.","operationId":"TicketPrioritiesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Ticket Priorities ID or name","schema":{}}],"responses":{"200":{"description":"ticket prioritie deleted"},"404":{"description":"ticket prioritie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a ticket prioritie","tags":["Ticket Priorities"]}},"/v1/chat-channels":{"get":{"description":"Retrieve a paginated list of chat channels. Requires Pro plan.","operationId":"ChatChannelsController_","parameters":[{"name":"type","required":false,"in":"query","description":"Filter by type","schema":{"type":"string"}},{"name":"is_direct_message","required":false,"in":"query","description":"Filter by is direct message","schema":{"type":"boolean"}},{"name":"is_archived","required":false,"in":"query","description":"Filter by is archived","schema":{"type":"boolean"}},{"name":"is_thread","required":false,"in":"query","description":"Filter by is thread","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of chat channels"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List chat channels","tags":["Chat Channels"]},"post":{"description":"Create a new chat channel.","operationId":"ChatChannelsController_","parameters":[],"responses":{"201":{"description":"chat channel created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a chat channel","tags":["Chat Channels"]}},"/v1/chat-channels/{id}":{"get":{"description":"Retrieve a single chat channel by ID.","operationId":"ChatChannelsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chat Channels ID or name","schema":{}}],"responses":{"200":{"description":"chat channel details"},"404":{"description":"chat channel not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a chat channel","tags":["Chat Channels"]},"patch":{"description":"Partially update a chat channel.","operationId":"ChatChannelsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chat Channels ID or name","schema":{}}],"responses":{"200":{"description":"chat channel updated"},"404":{"description":"chat channel not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a chat channel","tags":["Chat Channels"]},"delete":{"description":"Permanently delete a chat channel.","operationId":"ChatChannelsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chat Channels ID or name","schema":{}}],"responses":{"200":{"description":"chat channel deleted"},"404":{"description":"chat channel not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a chat channel","tags":["Chat Channels"]}},"/v1/chat-messages":{"get":{"description":"Retrieve a paginated list of chat messages. Requires Pro plan.","operationId":"ChatMessagesController_","parameters":[{"name":"channel_id","required":false,"in":"query","description":"Filter by channel id","schema":{"type":"string"}},{"name":"message_type","required":false,"in":"query","description":"Filter by message type","schema":{"type":"string"}},{"name":"is_reply","required":false,"in":"query","description":"Filter by is reply","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of chat messages"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List chat messages","tags":["Chat Messages"]},"post":{"description":"Create a new chat message.","operationId":"ChatMessagesController_","parameters":[],"responses":{"201":{"description":"chat message created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a chat message","tags":["Chat Messages"]}},"/v1/chat-messages/{id}":{"get":{"description":"Retrieve a single chat message by ID.","operationId":"ChatMessagesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chat Messages ID or name","schema":{}}],"responses":{"200":{"description":"chat message details"},"404":{"description":"chat message not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a chat message","tags":["Chat Messages"]},"patch":{"description":"Partially update a chat message.","operationId":"ChatMessagesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chat Messages ID or name","schema":{}}],"responses":{"200":{"description":"chat message updated"},"404":{"description":"chat message not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a chat message","tags":["Chat Messages"]},"delete":{"description":"Permanently delete a chat message.","operationId":"ChatMessagesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Chat Messages ID or name","schema":{}}],"responses":{"200":{"description":"chat message deleted"},"404":{"description":"chat message not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a chat message","tags":["Chat Messages"]}},"/v1/insights-dashboards":{"get":{"description":"Retrieve a paginated list of insights dashboards. Requires Business plan.","operationId":"InsightsDashboardsController_","parameters":[{"name":"is_public","required":false,"in":"query","description":"Filter by is public","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of insights dashboards"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List insights dashboards","tags":["Insights Dashboards"]},"post":{"description":"Create a new insights dashboard.","operationId":"InsightsDashboardsController_","parameters":[],"responses":{"201":{"description":"insights dashboard created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a insights dashboard","tags":["Insights Dashboards"]}},"/v1/insights-dashboards/{id}":{"get":{"description":"Retrieve a single insights dashboard by ID.","operationId":"InsightsDashboardsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Dashboards ID or name","schema":{}}],"responses":{"200":{"description":"insights dashboard details"},"404":{"description":"insights dashboard not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a insights dashboard","tags":["Insights Dashboards"]},"patch":{"description":"Partially update a insights dashboard.","operationId":"InsightsDashboardsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Dashboards ID or name","schema":{}}],"responses":{"200":{"description":"insights dashboard updated"},"404":{"description":"insights dashboard not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a insights dashboard","tags":["Insights Dashboards"]},"delete":{"description":"Permanently delete a insights dashboard.","operationId":"InsightsDashboardsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Dashboards ID or name","schema":{}}],"responses":{"200":{"description":"insights dashboard deleted"},"404":{"description":"insights dashboard not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a insights dashboard","tags":["Insights Dashboards"]}},"/v1/insights-queries":{"get":{"description":"Retrieve a paginated list of insights queries. Requires Business plan.","operationId":"InsightsQueriesController_","parameters":[{"name":"data_source","required":false,"in":"query","description":"Filter by data source","schema":{"type":"string"}},{"name":"is_native_query","required":false,"in":"query","description":"Filter by is native query","schema":{"type":"boolean"}},{"name":"is_stored","required":false,"in":"query","description":"Filter by is stored","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of insights queries"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List insights queries","tags":["Insights Queries"]},"post":{"description":"Create a new insights querie.","operationId":"InsightsQueriesController_","parameters":[],"responses":{"201":{"description":"insights querie created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a insights querie","tags":["Insights Queries"]}},"/v1/insights-queries/{id}":{"get":{"description":"Retrieve a single insights querie by ID.","operationId":"InsightsQueriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Queries ID or name","schema":{}}],"responses":{"200":{"description":"insights querie details"},"404":{"description":"insights querie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a insights querie","tags":["Insights Queries"]},"patch":{"description":"Partially update a insights querie.","operationId":"InsightsQueriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Queries ID or name","schema":{}}],"responses":{"200":{"description":"insights querie updated"},"404":{"description":"insights querie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a insights querie","tags":["Insights Queries"]},"delete":{"description":"Permanently delete a insights querie.","operationId":"InsightsQueriesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Queries ID or name","schema":{}}],"responses":{"200":{"description":"insights querie deleted"},"404":{"description":"insights querie not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a insights querie","tags":["Insights Queries"]}},"/v1/insights-charts":{"get":{"description":"Retrieve a paginated list of insights charts. Requires Business plan.","operationId":"InsightsChartsController_","parameters":[{"name":"chart_type","required":false,"in":"query","description":"Filter by chart type","schema":{"type":"string"}},{"name":"query","required":false,"in":"query","description":"Filter by query","schema":{"type":"string"}},{"name":"data_source","required":false,"in":"query","description":"Filter by data source","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of insights charts"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List insights charts","tags":["Insights Charts"]},"post":{"description":"Create a new insights chart.","operationId":"InsightsChartsController_","parameters":[],"responses":{"201":{"description":"insights chart created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a insights chart","tags":["Insights Charts"]}},"/v1/insights-charts/{id}":{"get":{"description":"Retrieve a single insights chart by ID.","operationId":"InsightsChartsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Charts ID or name","schema":{}}],"responses":{"200":{"description":"insights chart details"},"404":{"description":"insights chart not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a insights chart","tags":["Insights Charts"]},"patch":{"description":"Partially update a insights chart.","operationId":"InsightsChartsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Charts ID or name","schema":{}}],"responses":{"200":{"description":"insights chart updated"},"404":{"description":"insights chart not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a insights chart","tags":["Insights Charts"]},"delete":{"description":"Permanently delete a insights chart.","operationId":"InsightsChartsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Charts ID or name","schema":{}}],"responses":{"200":{"description":"insights chart deleted"},"404":{"description":"insights chart not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a insights chart","tags":["Insights Charts"]}},"/v1/insights-tables":{"get":{"description":"Retrieve a paginated list of insights tables. Requires Business plan.","operationId":"InsightsTablesController_","parameters":[{"name":"label","required":false,"in":"query","description":"Filter by label","schema":{"type":"string"}},{"name":"table","required":false,"in":"query","description":"Filter by table","schema":{"type":"string"}},{"name":"data_source","required":false,"in":"query","description":"Filter by data source","schema":{"type":"string"}},{"name":"is_query_based","required":false,"in":"query","description":"Filter by is query based","schema":{"type":"boolean"}},{"name":"hidden","required":false,"in":"query","description":"Filter by hidden","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of insights tables"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List insights tables","tags":["Insights Tables"]}},"/v1/insights-tables/{id}":{"get":{"description":"Retrieve a single insights table by ID.","operationId":"InsightsTablesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Tables ID or name","schema":{}}],"responses":{"200":{"description":"insights table details"},"404":{"description":"insights table not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a insights table","tags":["Insights Tables"]}},"/v1/insights-data-sources":{"get":{"description":"Retrieve a paginated list of insights data sources. Requires Business plan.","operationId":"InsightsDataSourcesController_","parameters":[{"name":"database_type","required":false,"in":"query","description":"Filter by database type","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"is_site_db","required":false,"in":"query","description":"Filter by is site db","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of insights data sources"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List insights data sources","tags":["Insights Data Sources"]},"post":{"description":"Create a new insights data source.","operationId":"InsightsDataSourcesController_","parameters":[],"responses":{"201":{"description":"insights data source created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a insights data source","tags":["Insights Data Sources"]}},"/v1/insights-data-sources/{id}":{"get":{"description":"Retrieve a single insights data source by ID.","operationId":"InsightsDataSourcesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Data Sources ID or name","schema":{}}],"responses":{"200":{"description":"insights data source details"},"404":{"description":"insights data source not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a insights data source","tags":["Insights Data Sources"]},"patch":{"description":"Partially update a insights data source.","operationId":"InsightsDataSourcesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Data Sources ID or name","schema":{}}],"responses":{"200":{"description":"insights data source updated"},"404":{"description":"insights data source not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a insights data source","tags":["Insights Data Sources"]},"delete":{"description":"Permanently delete a insights data source.","operationId":"InsightsDataSourcesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Insights Data Sources ID or name","schema":{}}],"responses":{"200":{"description":"insights data source deleted"},"404":{"description":"insights data source not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a insights data source","tags":["Insights Data Sources"]}},"/v1/website-items":{"get":{"description":"Retrieve a paginated list of website items. Requires Business plan.","operationId":"WebsiteItemsController_","parameters":[{"name":"item_code","required":false,"in":"query","description":"Filter by item code","schema":{"type":"string"}},{"name":"item_group","required":false,"in":"query","description":"Filter by item group","schema":{"type":"string"}},{"name":"published","required":false,"in":"query","description":"Filter by published","schema":{"type":"boolean"}},{"name":"website_warehouse","required":false,"in":"query","description":"Filter by website warehouse","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of website items"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List website items","tags":["Website Items"]},"post":{"description":"Create a new website item.","operationId":"WebsiteItemsController_","parameters":[],"responses":{"201":{"description":"website item created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a website item","tags":["Website Items"]}},"/v1/website-items/{id}":{"get":{"description":"Retrieve a single website item by ID.","operationId":"WebsiteItemsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Website Items ID or name","schema":{}}],"responses":{"200":{"description":"website item details"},"404":{"description":"website item not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a website item","tags":["Website Items"]},"patch":{"description":"Partially update a website item.","operationId":"WebsiteItemsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Website Items ID or name","schema":{}}],"responses":{"200":{"description":"website item updated"},"404":{"description":"website item not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a website item","tags":["Website Items"]},"delete":{"description":"Permanently delete a website item.","operationId":"WebsiteItemsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Website Items ID or name","schema":{}}],"responses":{"200":{"description":"website item deleted"},"404":{"description":"website item not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a website item","tags":["Website Items"]}},"/v1/product-bundles":{"get":{"description":"Retrieve a paginated list of product bundles. Requires Business plan.","operationId":"ProductBundlesController_","parameters":[{"name":"new_item_code","required":false,"in":"query","description":"Filter by new item code","schema":{"type":"string"}},{"name":"disabled","required":false,"in":"query","description":"Filter by disabled","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of product bundles"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List product bundles","tags":["Product Bundles"]},"post":{"description":"Create a new product bundle.","operationId":"ProductBundlesController_","parameters":[],"responses":{"201":{"description":"product bundle created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a product bundle","tags":["Product Bundles"]}},"/v1/product-bundles/{id}":{"get":{"description":"Retrieve a single product bundle by ID.","operationId":"ProductBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Product Bundles ID or name","schema":{}}],"responses":{"200":{"description":"product bundle details"},"404":{"description":"product bundle not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a product bundle","tags":["Product Bundles"]},"patch":{"description":"Partially update a product bundle.","operationId":"ProductBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Product Bundles ID or name","schema":{}}],"responses":{"200":{"description":"product bundle updated"},"404":{"description":"product bundle not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a product bundle","tags":["Product Bundles"]},"delete":{"description":"Permanently delete a product bundle.","operationId":"ProductBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Product Bundles ID or name","schema":{}}],"responses":{"200":{"description":"product bundle deleted"},"404":{"description":"product bundle not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a product bundle","tags":["Product Bundles"]}},"/v1/product-bundles/{id}/submit":{"post":{"description":"Submit a draft product bundle to finalize it.","operationId":"ProductBundlesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Product Bundles ID or name","schema":{}}],"responses":{"200":{"description":"product bundle submitted"}},"security":[{"api-key":[]}],"summary":"Submit a product bundle","tags":["Product Bundles"]}},"/v1/webshop-slideshows":{"get":{"description":"Retrieve a paginated list of webshop slideshows. Requires Business plan.","operationId":"WebshopSlideshowsController_","parameters":[],"responses":{"200":{"description":"Paginated list of webshop slideshows"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List webshop slideshows","tags":["Webshop Slideshows"]},"post":{"description":"Create a new webshop slideshow.","operationId":"WebshopSlideshowsController_","parameters":[],"responses":{"201":{"description":"webshop slideshow created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a webshop slideshow","tags":["Webshop Slideshows"]}},"/v1/webshop-slideshows/{id}":{"get":{"description":"Retrieve a single webshop slideshow by ID.","operationId":"WebshopSlideshowsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Webshop Slideshows ID or name","schema":{}}],"responses":{"200":{"description":"webshop slideshow details"},"404":{"description":"webshop slideshow not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a webshop slideshow","tags":["Webshop Slideshows"]},"patch":{"description":"Partially update a webshop slideshow.","operationId":"WebshopSlideshowsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Webshop Slideshows ID or name","schema":{}}],"responses":{"200":{"description":"webshop slideshow updated"},"404":{"description":"webshop slideshow not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a webshop slideshow","tags":["Webshop Slideshows"]},"delete":{"description":"Permanently delete a webshop slideshow.","operationId":"WebshopSlideshowsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Webshop Slideshows ID or name","schema":{}}],"responses":{"200":{"description":"webshop slideshow deleted"},"404":{"description":"webshop slideshow not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a webshop slideshow","tags":["Webshop Slideshows"]}},"/v1/shopify-settings":{"get":{"description":"Retrieve a paginated list of shopify settings. Requires Business plan.","operationId":"ShopifySettingsController_","parameters":[{"name":"enable_shopify","required":false,"in":"query","description":"Filter by enable shopify","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of shopify settings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List shopify settings","tags":["Shopify Settings"]},"post":{"description":"Create a new shopify setting.","operationId":"ShopifySettingsController_","parameters":[],"responses":{"201":{"description":"shopify setting created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a shopify setting","tags":["Shopify Settings"]}},"/v1/shopify-settings/{id}":{"get":{"description":"Retrieve a single shopify setting by ID.","operationId":"ShopifySettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shopify Settings ID or name","schema":{}}],"responses":{"200":{"description":"shopify setting details"},"404":{"description":"shopify setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a shopify setting","tags":["Shopify Settings"]},"patch":{"description":"Partially update a shopify setting.","operationId":"ShopifySettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shopify Settings ID or name","schema":{}}],"responses":{"200":{"description":"shopify setting updated"},"404":{"description":"shopify setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a shopify setting","tags":["Shopify Settings"]},"delete":{"description":"Permanently delete a shopify setting.","operationId":"ShopifySettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Shopify Settings ID or name","schema":{}}],"responses":{"200":{"description":"shopify setting deleted"},"404":{"description":"shopify setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a shopify setting","tags":["Shopify Settings"]}},"/v1/amazon-sp-settings":{"get":{"description":"Retrieve a paginated list of amazon sp settings. Requires Business plan.","operationId":"AmazonSpSettingsController_","parameters":[{"name":"is_active","required":false,"in":"query","description":"Filter by is active","schema":{"type":"boolean"}},{"name":"enable_sync","required":false,"in":"query","description":"Filter by enable sync","schema":{"type":"boolean"}}],"responses":{"200":{"description":"Paginated list of amazon sp settings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Business plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List amazon sp settings","tags":["Amazon SP Settings"]},"post":{"description":"Create a new amazon sp setting.","operationId":"AmazonSpSettingsController_","parameters":[],"responses":{"201":{"description":"amazon sp setting created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a amazon sp setting","tags":["Amazon SP Settings"]}},"/v1/amazon-sp-settings/{id}":{"get":{"description":"Retrieve a single amazon sp setting by ID.","operationId":"AmazonSpSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Amazon SP Settings ID or name","schema":{}}],"responses":{"200":{"description":"amazon sp setting details"},"404":{"description":"amazon sp setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a amazon sp setting","tags":["Amazon SP Settings"]},"patch":{"description":"Partially update a amazon sp setting.","operationId":"AmazonSpSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Amazon SP Settings ID or name","schema":{}}],"responses":{"200":{"description":"amazon sp setting updated"},"404":{"description":"amazon sp setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a amazon sp setting","tags":["Amazon SP Settings"]},"delete":{"description":"Permanently delete a amazon sp setting.","operationId":"AmazonSpSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Amazon SP Settings ID or name","schema":{}}],"responses":{"200":{"description":"amazon sp setting deleted"},"404":{"description":"amazon sp setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a amazon sp setting","tags":["Amazon SP Settings"]}},"/v1/unicommerce-settings":{"get":{"description":"Retrieve a paginated list of unicommerce settings. Requires Pro plan.","operationId":"UnicommerceSettingsController_","parameters":[{"name":"enabled","required":false,"in":"query","description":"Filter by enabled","schema":{"type":"boolean"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of unicommerce settings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List unicommerce settings","tags":["Unicommerce Settings"]},"post":{"description":"Create a new unicommerce setting.","operationId":"UnicommerceSettingsController_","parameters":[],"responses":{"201":{"description":"unicommerce setting created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a unicommerce setting","tags":["Unicommerce Settings"]}},"/v1/unicommerce-settings/{id}":{"get":{"description":"Retrieve a single unicommerce setting by ID.","operationId":"UnicommerceSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Unicommerce Settings ID or name","schema":{}}],"responses":{"200":{"description":"unicommerce setting details"},"404":{"description":"unicommerce setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a unicommerce setting","tags":["Unicommerce Settings"]},"patch":{"description":"Partially update a unicommerce setting.","operationId":"UnicommerceSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Unicommerce Settings ID or name","schema":{}}],"responses":{"200":{"description":"unicommerce setting updated"},"404":{"description":"unicommerce setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a unicommerce setting","tags":["Unicommerce Settings"]},"delete":{"description":"Permanently delete a unicommerce setting.","operationId":"UnicommerceSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Unicommerce Settings ID or name","schema":{}}],"responses":{"200":{"description":"unicommerce setting deleted"},"404":{"description":"unicommerce setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a unicommerce setting","tags":["Unicommerce Settings"]}},"/v1/ecommerce-integration-logs":{"get":{"description":"Retrieve a paginated list of ecommerce integration logs. Requires Pro plan.","operationId":"EcommerceIntegrationLogsController_","parameters":[{"name":"integration","required":false,"in":"query","description":"Filter by integration","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"method","required":false,"in":"query","description":"Filter by method","schema":{"type":"string"}},{"name":"reference_doctype","required":false,"in":"query","description":"Filter by reference doctype","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of ecommerce integration logs"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List ecommerce integration logs","tags":["Ecommerce Integration Logs"]}},"/v1/ecommerce-integration-logs/{id}":{"get":{"description":"Retrieve a single ecommerce integration log by ID.","operationId":"EcommerceIntegrationLogsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Ecommerce Integration Logs ID or name","schema":{}}],"responses":{"200":{"description":"ecommerce integration log details"},"404":{"description":"ecommerce integration log not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a ecommerce integration log","tags":["Ecommerce Integration Logs"]}},"/v1/datev-settings":{"get":{"description":"Retrieve a paginated list of datev settings. Requires Pro plan.","operationId":"DatevSettingsController_","parameters":[{"name":"enabled","required":false,"in":"query","description":"Filter by enabled","schema":{"type":"boolean"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of datev settings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List datev settings","tags":["DATEV Settings"]},"post":{"description":"Create a new datev setting.","operationId":"DatevSettingsController_","parameters":[],"responses":{"201":{"description":"datev setting created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a datev setting","tags":["DATEV Settings"]}},"/v1/datev-settings/{id}":{"get":{"description":"Retrieve a single datev setting by ID.","operationId":"DatevSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"DATEV Settings ID or name","schema":{}}],"responses":{"200":{"description":"datev setting details"},"404":{"description":"datev setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a datev setting","tags":["DATEV Settings"]},"patch":{"description":"Partially update a datev setting.","operationId":"DatevSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"DATEV Settings ID or name","schema":{}}],"responses":{"200":{"description":"datev setting updated"},"404":{"description":"datev setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a datev setting","tags":["DATEV Settings"]},"delete":{"description":"Permanently delete a datev setting.","operationId":"DatevSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"DATEV Settings ID or name","schema":{}}],"responses":{"200":{"description":"datev setting deleted"},"404":{"description":"datev setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a datev setting","tags":["DATEV Settings"]}},"/v1/datev-exports":{"get":{"description":"Retrieve a paginated list of datev exports. Requires Pro plan.","operationId":"DatevExportsController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"export_type","required":false,"in":"query","description":"Filter by export type","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of datev exports"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List datev exports","tags":["DATEV Exports"]},"post":{"description":"Create a new datev export.","operationId":"DatevExportsController_","parameters":[],"responses":{"201":{"description":"datev export created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a datev export","tags":["DATEV Exports"]}},"/v1/datev-exports/{id}":{"get":{"description":"Retrieve a single datev export by ID.","operationId":"DatevExportsController_","parameters":[{"name":"id","required":true,"in":"path","description":"DATEV Exports ID or name","schema":{}}],"responses":{"200":{"description":"datev export details"},"404":{"description":"datev export not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a datev export","tags":["DATEV Exports"]},"patch":{"description":"Partially update a datev export.","operationId":"DatevExportsController_","parameters":[{"name":"id","required":true,"in":"path","description":"DATEV Exports ID or name","schema":{}}],"responses":{"200":{"description":"datev export updated"},"404":{"description":"datev export not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a datev export","tags":["DATEV Exports"]},"delete":{"description":"Permanently delete a datev export.","operationId":"DatevExportsController_","parameters":[{"name":"id","required":true,"in":"path","description":"DATEV Exports ID or name","schema":{}}],"responses":{"200":{"description":"datev export deleted"},"404":{"description":"datev export not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a datev export","tags":["DATEV Exports"]}},"/v1/datev-exports/{id}/submit":{"post":{"description":"Submit a draft datev export to finalize it.","operationId":"DatevExportsController_","parameters":[{"name":"id","required":true,"in":"path","description":"DATEV Exports ID or name","schema":{}}],"responses":{"200":{"description":"datev export submitted"}},"security":[{"api-key":[]}],"summary":"Submit a datev export","tags":["DATEV Exports"]}},"/v1/digital-signer-settings":{"get":{"description":"Retrieve a paginated list of digital signer settings. Requires Pro plan.","operationId":"DigitalSignerSettingsController_","parameters":[{"name":"enabled","required":false,"in":"query","description":"Filter by enabled","schema":{"type":"boolean"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"provider","required":false,"in":"query","description":"Filter by provider","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of digital signer settings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List digital signer settings","tags":["Digital Signer Settings"]},"post":{"description":"Create a new digital signer setting.","operationId":"DigitalSignerSettingsController_","parameters":[],"responses":{"201":{"description":"digital signer setting created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a digital signer setting","tags":["Digital Signer Settings"]}},"/v1/digital-signer-settings/{id}":{"get":{"description":"Retrieve a single digital signer setting by ID.","operationId":"DigitalSignerSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Digital Signer Settings ID or name","schema":{}}],"responses":{"200":{"description":"digital signer setting details"},"404":{"description":"digital signer setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a digital signer setting","tags":["Digital Signer Settings"]},"patch":{"description":"Partially update a digital signer setting.","operationId":"DigitalSignerSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Digital Signer Settings ID or name","schema":{}}],"responses":{"200":{"description":"digital signer setting updated"},"404":{"description":"digital signer setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a digital signer setting","tags":["Digital Signer Settings"]},"delete":{"description":"Permanently delete a digital signer setting.","operationId":"DigitalSignerSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Digital Signer Settings ID or name","schema":{}}],"responses":{"200":{"description":"digital signer setting deleted"},"404":{"description":"digital signer setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a digital signer setting","tags":["Digital Signer Settings"]}},"/v1/signed-documents":{"get":{"description":"Retrieve a paginated list of signed documents. Requires Pro plan.","operationId":"SignedDocumentsController_","parameters":[{"name":"reference_doctype","required":false,"in":"query","description":"Filter by reference doctype","schema":{"type":"string"}},{"name":"signer","required":false,"in":"query","description":"Filter by signer","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of signed documents"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List signed documents","tags":["Signed Documents"]},"post":{"description":"Create a new signed document.","operationId":"SignedDocumentsController_","parameters":[],"responses":{"201":{"description":"signed document created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a signed document","tags":["Signed Documents"]}},"/v1/signed-documents/{id}":{"get":{"description":"Retrieve a single signed document by ID.","operationId":"SignedDocumentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Signed Documents ID or name","schema":{}}],"responses":{"200":{"description":"signed document details"},"404":{"description":"signed document not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a signed document","tags":["Signed Documents"]},"patch":{"description":"Partially update a signed document.","operationId":"SignedDocumentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Signed Documents ID or name","schema":{}}],"responses":{"200":{"description":"signed document updated"},"404":{"description":"signed document not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a signed document","tags":["Signed Documents"]},"delete":{"description":"Permanently delete a signed document.","operationId":"SignedDocumentsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Signed Documents ID or name","schema":{}}],"responses":{"200":{"description":"signed document deleted"},"404":{"description":"signed document not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a signed document","tags":["Signed Documents"]}},"/v1/payments-processor-settings":{"get":{"description":"Retrieve a paginated list of payments processor settings. Requires Pro plan.","operationId":"PaymentsProcessorSettingsController_","parameters":[{"name":"enabled","required":false,"in":"query","description":"Filter by enabled","schema":{"type":"boolean"}},{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"processor","required":false,"in":"query","description":"Filter by processor","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of payments processor settings"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payments processor settings","tags":["Payments Processor Settings"]},"post":{"description":"Create a new payments processor setting.","operationId":"PaymentsProcessorSettingsController_","parameters":[],"responses":{"201":{"description":"payments processor setting created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payments processor setting","tags":["Payments Processor Settings"]}},"/v1/payments-processor-settings/{id}":{"get":{"description":"Retrieve a single payments processor setting by ID.","operationId":"PaymentsProcessorSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payments Processor Settings ID or name","schema":{}}],"responses":{"200":{"description":"payments processor setting details"},"404":{"description":"payments processor setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payments processor setting","tags":["Payments Processor Settings"]},"patch":{"description":"Partially update a payments processor setting.","operationId":"PaymentsProcessorSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payments Processor Settings ID or name","schema":{}}],"responses":{"200":{"description":"payments processor setting updated"},"404":{"description":"payments processor setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payments processor setting","tags":["Payments Processor Settings"]},"delete":{"description":"Permanently delete a payments processor setting.","operationId":"PaymentsProcessorSettingsController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payments Processor Settings ID or name","schema":{}}],"responses":{"200":{"description":"payments processor setting deleted"},"404":{"description":"payments processor setting not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payments processor setting","tags":["Payments Processor Settings"]}},"/v1/payment-batches":{"get":{"description":"Retrieve a paginated list of payment batches. Requires Pro plan.","operationId":"PaymentBatchesController_","parameters":[{"name":"company","required":false,"in":"query","description":"Filter by company","schema":{"type":"string"}},{"name":"bank_account","required":false,"in":"query","description":"Filter by bank account","schema":{"type":"string"}},{"name":"status","required":false,"in":"query","description":"Filter by status","schema":{"type":"string"}},{"name":"processor","required":false,"in":"query","description":"Filter by processor","schema":{"type":"string"}}],"responses":{"200":{"description":"Paginated list of payment batches"},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}},"403":{"description":"Requires Pro plan","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"List payment batches","tags":["Payment Batches"]},"post":{"description":"Create a new payment batche.","operationId":"PaymentBatchesController_","parameters":[],"responses":{"201":{"description":"payment batche created"},"400":{"description":"Validation error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Create a payment batche","tags":["Payment Batches"]}},"/v1/payment-batches/{id}":{"get":{"description":"Retrieve a single payment batche by ID.","operationId":"PaymentBatchesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Batches ID or name","schema":{}}],"responses":{"200":{"description":"payment batche details"},"404":{"description":"payment batche not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Get a payment batche","tags":["Payment Batches"]},"patch":{"description":"Partially update a payment batche.","operationId":"PaymentBatchesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Batches ID or name","schema":{}}],"responses":{"200":{"description":"payment batche updated"},"404":{"description":"payment batche not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Update a payment batche","tags":["Payment Batches"]},"delete":{"description":"Permanently delete a payment batche.","operationId":"PaymentBatchesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Batches ID or name","schema":{}}],"responses":{"200":{"description":"payment batche deleted"},"404":{"description":"payment batche not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorResponse"}}}}},"security":[{"api-key":[]}],"summary":"Delete a payment batche","tags":["Payment Batches"]}},"/v1/payment-batches/{id}/submit":{"post":{"description":"Submit a draft payment batche to finalize it.","operationId":"PaymentBatchesController_","parameters":[{"name":"id","required":true,"in":"path","description":"Payment Batches ID or name","schema":{}}],"responses":{"200":{"description":"payment batche submitted"}},"security":[{"api-key":[]}],"summary":"Submit a payment batche","tags":["Payment Batches"]}}},"info":{"title":"Zivvy API","description":"Public REST API for Zivvy — your business data, programmatically.","version":"1.0","contact":{"name":"Zivvy","url":"https://zivvy.xyz","email":"support@zivvy.xyz"}},"tags":[],"servers":[{"url":"https://api.zivvy.dev","description":"Production"}],"components":{"securitySchemes":{"api-key":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"ErrorDetail":{"type":"object","properties":{"code":{"type":"string","example":"NOT_FOUND"},"message":{"type":"string","example":"Item IT-001 not found"},"status":{"type":"number","example":404}},"required":["code","message","status"]},"ErrorResponse":{"type":"object","properties":{"error":{"$ref":"#/components/schemas/ErrorDetail"}},"required":["error"]},"CreateWebhookDto":{"type":"object","properties":{"url":{"type":"string","example":"https://example.com/webhooks/zivvy","description":"URL to receive webhook payloads"},"events":{"example":["sales-order.created","invoice.submitted"],"description":"Events to subscribe to. Use \"*\" for all events.","type":"array","items":{"type":"string"}},"secret":{"type":"string","example":"whsec_mykey123","description":"Shared secret for HMAC-SHA256 signature verification"},"label":{"type":"string","example":"Production order alerts","description":"Optional label for this webhook"}},"required":["url","events"]},"CreatePaymentEntryBody":{"type":"object","properties":{"reference_number":{"type":"string","example":"CHQ-00123","description":"Reference number on the bank transaction"},"party_type":{"type":"string","example":"Customer","description":"Party type (Customer/Supplier/Employee)"},"party":{"type":"string","example":"CUST-0001","description":"Party name matching the party_type"},"posting_date":{"type":"string","example":"2026-07-24"},"reference_date":{"type":"string","example":"2026-07-24"},"bank_account":{"type":"string","example":"HDFC Bank - HDF"},"mode_of_payment":{"type":"string","example":"Cash"},"project":{"type":"string","example":"PROJ-0001"},"cost_center":{"type":"string","example":"Main - ZV"},"allow_edit":{"type":"boolean","example":true,"description":"Open the created Payment Entry as a draft for editing"}}},"CreateJournalEntryBody":{"type":"object","properties":{"reference_number":{"type":"string"},"reference_date":{"type":"string"},"party_type":{"type":"string"},"party":{"type":"string"},"posting_date":{"type":"string"},"mode_of_payment":{"type":"string"},"entries":{"type":"array","items":{"type":"object"}}}},"UpdateReferencesBody":{"type":"object","properties":{"reference_number":{"type":"string"},"party_type":{"type":"string"},"party":{"type":"string"}}},"SetClosingBalanceBody":{"type":"object","properties":{"date":{"type":"string","example":"2026-07-24"},"balance":{"type":"number","example":15000.75}},"required":["date","balance"]},"UpdateClearanceDateBody":{"type":"object","properties":{"payment_document":{"type":"string","example":"Payment Entry"},"payment_entry":{"type":"string","example":"PAY-2026-00001"},"account":{"type":"string","example":"HDFC Bank - HDF"},"clearance_date":{"type":"string","example":"2026-07-24"}},"required":["payment_document","payment_entry","account","clearance_date"]},"ClearClearanceDateBody":{"type":"object","properties":{"voucher_type":{"type":"string","example":"Payment Entry"},"voucher_name":{"type":"string","example":"PAY-2026-00001"}},"required":["voucher_type","voucher_name"]},"UploadStatementBody":{"type":"object","properties":{"file":{"type":"string","format":"binary","description":"Bank statement file (CSV, XLSX, or MT940)"}},"required":["file"]},"StatementPreviewBody":{"type":"object","properties":{"import_file":{"type":"string","description":"Attached file URL previously uploaded to Frappe"},"google_sheets_url":{"type":"string","description":"Google Sheets URL for the statement template"}}},"Mt940ConvertBody":{"type":"object","properties":{"mt940_file_path":{"type":"string","example":"/private/files/statement.mt940"}},"required":["mt940_file_path"]},"AllocationsBody":{"type":"object","properties":{"allocations":{"type":"array","items":{"type":"object"},"description":"Allocation rows linking payments to invoices with amounts"},"payments":{"type":"array","items":{"type":"object"}},"invoices":{"type":"array","items":{"type":"object"}}}},"MakePaymentRequestBody":{"type":"object","properties":{"dt":{"type":"string","example":"Sales Invoice","description":"Reference doctype (Sales Invoice, Sales Order, Purchase Invoice, Purchase Order)"},"dn":{"type":"string","example":"ACC-SINV-2026-00001","description":"Reference document name"},"submit_doc":{"type":"boolean","example":false,"description":"Submit the resulting Payment Request immediately"},"mute_email":{"type":"boolean","example":false,"description":"Suppress the customer notification email"},"order_type":{"type":"string","example":"Sales","description":"Order type category"}},"required":["dt","dn"]},"UpdateLinkTokenBody":{"type":"object","properties":{"access_token":{"type":"string","description":"Existing Plaid access token whose Link session needs refreshing"}},"required":["access_token"]},"AddInstitutionBody":{"type":"object","properties":{"token":{"type":"string","description":"Public token returned by Plaid Link"},"response":{"description":"Institution metadata payload from Plaid Link (JSON string or object)","oneOf":[{"type":"string"},{"type":"object"}]}},"required":["token","response"]},"AddBankAccountsBody":{"type":"object","properties":{"response":{"description":"Accounts payload returned by Plaid Link","oneOf":[{"type":"string"},{"type":"object"}]},"bank":{"description":"Bank identifier (name or full Bank doc payload)","oneOf":[{"type":"string"},{"type":"object"}]},"company":{"type":"string","example":"Zivvy Inc."}},"required":["response","bank","company"]}}}}