{"openapi":"3.1.0","info":{"title":"Omnizone API","version":"v1","description":"Public REST API for Omnizone workspaces. Authenticate with an org API key (`Authorization: Bearer ozk_live_…`).\n\nBase URL is versioned (`/v1`). Breaking changes ship as `/v2`.\n\nList endpoints return `{ data, meta: { limit, offset, total } }`. Errors return `{ error: { code, message, request_id } }`.\n\nAccess follows the workspace plan: Starter covers books; Growth adds inventory, HR, and CRM; Business raises rate limits and key caps."},"servers":[{"url":"https://api.omnizone.app","description":"Omnizone API"}],"paths":{"/v1/me":{"get":{"operationId":"get_me","tags":["Current key"],"summary":"GET Current key","description":"Workspace and plan for the API key making the request. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/me"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/clients":{"get":{"operationId":"get_clients","tags":["Clients"],"summary":"GET Clients","description":"Customer directory. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/clients"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"},"post":{"operationId":"post_clients","tags":["Clients"],"summary":"POST Clients","description":"Customer directory. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"email":{"type":"string"},"phones":{"type":"string"},"contact":{"type":"string"},"address":{"type":"string"},"currency_code":{"type":"string"},"payment_terms_code":{"type":"string"},"notes":{"type":"string"},"active":{"type":"boolean"},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]}},"required":["name"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/clients"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/clients/{id}":{"get":{"operationId":"get_clients_item","tags":["Clients"],"summary":"GET Clients by id","description":"Customer directory. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/clients"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"},"patch":{"operationId":"patch_clients_item","tags":["Clients"],"summary":"PATCH Clients by id","description":"Customer directory. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"email":{"type":"string"},"phones":{"type":"string"},"contact":{"type":"string"},"address":{"type":"string"},"currency_code":{"type":"string"},"payment_terms_code":{"type":"string"},"notes":{"type":"string"},"active":{"type":"boolean"},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]}},"required":["name"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/clients"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/invoices":{"get":{"operationId":"get_invoices","tags":["Invoices"],"summary":"GET Invoices","description":"Sales invoices. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/invoices"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/invoices/{id}":{"get":{"operationId":"get_invoices_item","tags":["Invoices"],"summary":"GET Invoices by id","description":"Sales invoices. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/invoices"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/invoices/{id}/payments":{"get":{"operationId":"get_invoices_item","tags":["Invoices"],"summary":"List payments on an invoice.","description":"Sales invoices. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"},"post":{"operationId":"post_invoices_item","tags":["Invoices"],"summary":"Record a payment on an invoice.","description":"Sales invoices. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string","description":"Document number shown to the customer."},"status":{"type":"string"},"date":{"type":"string"},"due_date":{"type":"string"},"client_id":{"type":"string","nullable":true},"client_name":{"type":"string"},"currency_code":{"type":"string"},"amount_excl_vat_cents":{"type":"integer","description":"Amount excluding VAT, in minor units."},"vat_amount_cents":{"type":"integer","description":"VAT in minor units."},"amount_incl_vat_cents":{"type":"integer","description":"Amount including VAT, in minor units."},"remaining_cents":{"type":"integer","description":"Open balance in document currency, minor units."},"notes":{"type":"string"}},"required":["id","number","status","date"]}}}},"responses":{"200":{"description":"OK"},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/quotes":{"get":{"operationId":"get_quotes","tags":["Quotes"],"summary":"GET Quotes","description":"Sales quotes. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/quotes"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/quotes/{id}":{"get":{"operationId":"get_quotes_item","tags":["Quotes"],"summary":"GET Quotes by id","description":"Sales quotes. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/quotes"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/credit-notes":{"get":{"operationId":"get_credit_notes","tags":["Credit notes"],"summary":"GET Credit notes","description":"Customer credit notes. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/credit_notes"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/credit-notes/{id}":{"get":{"operationId":"get_credit_notes_item","tags":["Credit notes"],"summary":"GET Credit notes by id","description":"Customer credit notes. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/credit_notes"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/vendors":{"get":{"operationId":"get_vendors","tags":["Vendors"],"summary":"GET Vendors","description":"Supplier directory. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/vendors"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"},"post":{"operationId":"post_vendors","tags":["Vendors"],"summary":"POST Vendors","description":"Supplier directory. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"currency_code":{"type":"string"},"notes":{"type":"string"},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]}},"required":["name"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/vendors"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/vendors/{id}":{"get":{"operationId":"get_vendors_item","tags":["Vendors"],"summary":"GET Vendors by id","description":"Supplier directory. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/vendors"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"},"patch":{"operationId":"patch_vendors_item","tags":["Vendors"],"summary":"PATCH Vendors by id","description":"Supplier directory. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"currency_code":{"type":"string"},"notes":{"type":"string"},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]}},"required":["name"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/vendors"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/bills":{"get":{"operationId":"get_bills","tags":["Bills"],"summary":"GET Bills","description":"Vendor bills. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/bills"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/bills/{id}":{"get":{"operationId":"get_bills_item","tags":["Bills"],"summary":"GET Bills by id","description":"Vendor bills. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/bills"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/bills/{id}/payments":{"get":{"operationId":"get_bills_item","tags":["Bills"],"summary":"List payments on a bill.","description":"Vendor bills. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK"},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"},"post":{"operationId":"post_bills_item","tags":["Bills"],"summary":"Record a payment on a bill.","description":"Vendor bills. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string"},"date":{"type":"string"},"due_date":{"type":"string"},"vendor_id":{"type":"string","nullable":true},"vendor_name":{"type":"string"},"currency_code":{"type":"string"},"amount_incl_vat_cents":{"type":"integer","description":"Bill total including VAT, minor units."},"remaining_cents":{"type":"integer","description":"Open balance in document currency, minor units."},"status":{"type":"string"}},"required":["id"]}}}},"responses":{"200":{"description":"OK"},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/items":{"get":{"operationId":"get_items","tags":["Items"],"summary":"GET Items","description":"Item catalog. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/items"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/items/{id}":{"get":{"operationId":"get_items_item","tags":["Items"],"summary":"GET Items by id","description":"Item catalog. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/items"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/recommendations":{"get":{"operationId":"get_recommendations","tags":["Product recommendations"],"summary":"GET Product recommendations","description":"Online store suggestions for a product page (`context=product&item_id=…`) or a cart (`context=cart&item_ids=a,b`). Manual related, up-sell, cross-sell and accessory links come first; the store's same-category / same-brand rules and frequently-bought-together fill in only where no manual link exists. Optional `store` picks the store. Needs the online store module. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/recommendations"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/accounts":{"get":{"operationId":"get_accounts","tags":["Chart of accounts"],"summary":"GET Chart of accounts","description":"General ledger accounts (read). Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/accounts"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/accounts/{id}":{"get":{"operationId":"get_accounts_item","tags":["Chart of accounts"],"summary":"GET Chart of accounts by id","description":"General ledger accounts (read). Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/accounts"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/journals":{"get":{"operationId":"get_journals","tags":["Journals"],"summary":"GET Journals","description":"Posted journal entries (read). Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/journals"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/journals/{id}":{"get":{"operationId":"get_journals_item","tags":["Journals"],"summary":"GET Journals by id","description":"Posted journal entries (read). Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/journals"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/bank-accounts":{"get":{"operationId":"get_bank_accounts","tags":["Bank accounts"],"summary":"GET Bank accounts","description":"Workspace bank accounts (read). Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/bank_accounts"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/bank-accounts/{id}":{"get":{"operationId":"get_bank_accounts_item","tags":["Bank accounts"],"summary":"GET Bank accounts by id","description":"Workspace bank accounts (read). Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/bank_accounts"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/currencies":{"get":{"operationId":"get_currencies","tags":["Currencies"],"summary":"GET Currencies","description":"Enabled workspace currencies (read). Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/currencies"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/exchange-rates":{"get":{"operationId":"get_exchange_rates","tags":["Exchange rates"],"summary":"GET Exchange rates","description":"Effective-dated FX rates (read). `rate` is LCY per 1 foreign unit. Requires the starter plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/exchange_rates"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"starter"}},"/v1/warehouses":{"get":{"operationId":"get_warehouses","tags":["Warehouses"],"summary":"GET Warehouses","description":"Inventory locations. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/warehouses"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/warehouses/{id}":{"get":{"operationId":"get_warehouses_item","tags":["Warehouses"],"summary":"GET Warehouses by id","description":"Inventory locations. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/warehouses"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/inventory/on-hand":{"get":{"operationId":"get_inventory_on_hand","tags":["Inventory on hand"],"summary":"GET Inventory on hand","description":"Stock on hand by item and location. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/inventory_on_hand"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/inventory/adjustments":{"get":{"operationId":"get_inventory_adjustments","tags":["Inventory adjustments"],"summary":"GET Inventory adjustments","description":"Stock adjustments. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/inventory_adjustments"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/inventory/adjustments/{id}":{"get":{"operationId":"get_inventory_adjustments_item","tags":["Inventory adjustments"],"summary":"GET Inventory adjustments by id","description":"Stock adjustments. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/inventory_adjustments"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/inventory/transfers":{"get":{"operationId":"get_inventory_transfers","tags":["Inventory transfers"],"summary":"GET Inventory transfers","description":"Stock transfers between locations. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/inventory_transfers"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/inventory/transfers/{id}":{"get":{"operationId":"get_inventory_transfers_item","tags":["Inventory transfers"],"summary":"GET Inventory transfers by id","description":"Stock transfers between locations. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/inventory_transfers"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/employees":{"get":{"operationId":"get_employees","tags":["Employees"],"summary":"GET Employees","description":"Employee directory. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/employees"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/employees/{id}":{"get":{"operationId":"get_employees_item","tags":["Employees"],"summary":"GET Employees by id","description":"Employee directory. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/employees"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/leave":{"get":{"operationId":"get_leave","tags":["Leave"],"summary":"GET Leave","description":"Leave requests. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/leave"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/leave/{id}":{"get":{"operationId":"get_leave_item","tags":["Leave"],"summary":"GET Leave by id","description":"Leave requests. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/leave"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/attendance":{"get":{"operationId":"get_attendance","tags":["Attendance"],"summary":"GET Attendance","description":"Attendance punches. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/attendance"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/holidays":{"get":{"operationId":"get_holidays","tags":["Holidays"],"summary":"GET Holidays","description":"Public holidays. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/holidays"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/payroll":{"get":{"operationId":"get_payroll","tags":["Payroll runs"],"summary":"GET Payroll runs","description":"Pay runs. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/payroll"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/payroll/{id}":{"get":{"operationId":"get_payroll_item","tags":["Payroll runs"],"summary":"GET Payroll runs by id","description":"Pay runs. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/payroll"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/leads":{"get":{"operationId":"get_leads","tags":["Leads"],"summary":"GET Leads","description":"Sales leads. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/leads"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"},"post":{"operationId":"post_leads","tags":["Leads"],"summary":"POST Leads","description":"Sales leads. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"company":{"type":"string"},"contact":{"type":"string"},"email":{"type":"string"},"phones":{"type":"string"},"notes":{"type":"string"},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]}},"required":["company"]}}}},"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/leads"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/leads/{id}":{"get":{"operationId":"get_leads_item","tags":["Leads"],"summary":"GET Leads by id","description":"Sales leads. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/leads"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/tasks":{"get":{"operationId":"get_tasks","tags":["Tasks"],"summary":"GET Tasks","description":"Workspace tasks. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/tasks"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/tasks/{id}":{"get":{"operationId":"get_tasks_item","tags":["Tasks"],"summary":"GET Tasks by id","description":"Workspace tasks. Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/tasks"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/calendar/events":{"get":{"operationId":"get_calendar","tags":["Calendar events"],"summary":"GET Calendar events","description":"Meetings and calendar events (not Google sync). Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"limit","in":"query","schema":{"type":"integer","default":25}},{"name":"offset","in":"query","schema":{"type":"integer","default":0}},{"name":"q","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/calendar"}},"meta":{"type":"object","properties":{"limit":{"type":"integer"},"offset":{"type":"integer"},"total":{"type":"integer"}}}}}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}},"/v1/calendar/events/{id}":{"get":{"operationId":"get_calendar_item","tags":["Calendar events"],"summary":"GET Calendar events by id","description":"Meetings and calendar events (not Google sync). Requires the growth plan or higher.","security":[{"bearerAuth":[]}],"parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/calendar"}}}},"201":{"description":"Created"},"401":{"description":"Missing or invalid API key"},"403":{"description":"Forbidden or plan required"},"404":{"description":"Not found"},"429":{"description":"Rate limited"}},"x-min-plan":"growth"}}},"components":{"schemas":{"me":{"type":"object","properties":{"org":{"type":"object","properties":{"id":{"type":"string"},"name":{"type":"string"},"slug":{"type":"string","nullable":true}}},"plan":{"type":"object","properties":{"name":{"type":"string"},"code":{"type":"string"}}},"key":{"type":"object","properties":{"name":{"type":"string"},"role":{"type":"string"},"prefix":{"type":"string"},"expires_at":{"type":"string","nullable":true}}}}},"clients":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"name":{"type":"string"},"email":{"type":"string"},"phones":{"type":"string"},"contact":{"type":"string"},"address":{"type":"string","nullable":true},"currency_code":{"type":"string"},"payment_terms_code":{"type":"string","nullable":true},"payment_method_code":{"type":"string","nullable":true},"notes":{"type":"string"},"active":{"type":"boolean"},"customer_no":{"type":"string","nullable":true},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]},"created":{"type":"string"},"addresses":{"type":"array","description":"Address book. The default billing address is mirrored into `address`.","items":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"label":{"type":"string"},"kind":{"type":"string","enum":["billing","shipping","both"]},"contact_name":{"type":"string"},"company":{"type":"string"},"phone":{"type":"string"},"email":{"type":"string"},"line1":{"type":"string"},"line2":{"type":"string"},"city":{"type":"string"},"region":{"type":"string"},"postal_code":{"type":"string"},"country_code":{"type":"string","description":"ISO 3166-1 alpha-2."},"lat":{"type":"number","nullable":true},"lng":{"type":"number","nullable":true},"is_default_billing":{"type":"boolean"},"is_default_shipping":{"type":"boolean"},"notes":{"type":"string"}},"required":["id","kind","is_default_billing","is_default_shipping"]}}},"required":["id","name","active"]},"invoices":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string","description":"Document number shown to the customer."},"status":{"type":"string"},"date":{"type":"string"},"due_date":{"type":"string"},"client_id":{"type":"string","nullable":true},"client_name":{"type":"string"},"currency_code":{"type":"string"},"amount_excl_vat_cents":{"type":"integer","description":"Amount excluding VAT, in minor units."},"vat_amount_cents":{"type":"integer","description":"VAT in minor units."},"amount_incl_vat_cents":{"type":"integer","description":"Amount including VAT, in minor units."},"remaining_cents":{"type":"integer","description":"Open balance in document currency, minor units."},"notes":{"type":"string"}},"required":["id","number","status","date"]},"quotes":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string"},"status":{"type":"string"},"date":{"type":"string"},"client_id":{"type":"string","nullable":true},"client_name":{"type":"string"},"currency_code":{"type":"string"},"amount_incl_vat_cents":{"type":"integer","description":"Quote total including VAT, minor units."}},"required":["id"]},"credit_notes":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string"},"date":{"type":"string"},"client_id":{"type":"string","nullable":true},"invoice_id":{"type":"string","nullable":true},"currency_code":{"type":"string"},"amount_incl_vat_cents":{"type":"integer","description":"Credit total including VAT, minor units."},"status":{"type":"string"}},"required":["id"]},"vendors":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"name":{"type":"string"},"email":{"type":"string"},"phone":{"type":"string"},"currency_code":{"type":"string"},"notes":{"type":"string"},"active":{"type":"boolean"},"vendor_no":{"type":"string","nullable":true},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]}},"required":["id","name"]},"bills":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string"},"date":{"type":"string"},"due_date":{"type":"string"},"vendor_id":{"type":"string","nullable":true},"vendor_name":{"type":"string"},"currency_code":{"type":"string"},"amount_incl_vat_cents":{"type":"integer","description":"Bill total including VAT, minor units."},"remaining_cents":{"type":"integer","description":"Open balance in document currency, minor units."},"status":{"type":"string"}},"required":["id"]},"items":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string"},"name":{"type":"string"},"description":{"type":"string"},"currency_code":{"type":"string"},"unit_price_cents":{"type":"integer","description":"List price in minor units."},"active":{"type":"boolean"},"translations":{"type":"object","description":"French and Arabic catalogue text. The name and description fields stay English.","properties":{"name":{"type":"object","properties":{"fr":{"type":"string"},"ar":{"type":"string"}}},"description":{"type":"object","properties":{"fr":{"type":"string"},"ar":{"type":"string"}}},"short_description":{"type":"object","properties":{"fr":{"type":"string"},"ar":{"type":"string"}}},"long_description":{"type":"object","properties":{"fr":{"type":"string"},"ar":{"type":"string"}}},"meta_title":{"type":"object","properties":{"fr":{"type":"string"},"ar":{"type":"string"}}},"meta_description":{"type":"object","properties":{"fr":{"type":"string"},"ar":{"type":"string"}}}}}},"required":["id"]},"recommendations":{"type":"object","properties":{"item_id":{"type":"string","description":"Suggested item id"},"number":{"type":"string"},"name":{"type":"string"},"currency_code":{"type":"string","description":"Blank means the workspace currency."},"unit_price_cents":{"type":"integer","description":"List price in minor units."},"section":{"type":"string","enum":["related","upsell","accessory","cross_sell"]},"source":{"type":"string","enum":["manual","same_category","same_brand","fbt"]},"score_bps":{"type":"integer","description":"Frequently-bought-together confidence in basis points; 0 for manual links."},"position":{"type":"integer","description":"Order inside the section, from 0."}},"required":["item_id","section","source","position"]},"accounts":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"code":{"type":"string"},"name":{"type":"string"},"account_type":{"type":"string"},"parent_code":{"type":"string","nullable":true},"active":{"type":"boolean"}},"required":["id","code","name"]},"journals":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"number":{"type":"string"},"date":{"type":"string"},"memo":{"type":"string"},"status":{"type":"string"},"lines":{"type":"array","items":{"type":"object"}}},"required":["id"]},"bank_accounts":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"name":{"type":"string"},"currency_code":{"type":"string"},"iban":{"type":"string","nullable":true},"account_no":{"type":"string","nullable":true},"active":{"type":"boolean"}},"required":["id","name"]},"currencies":{"type":"object","properties":{"code":{"type":"string"},"name":{"type":"string"},"active":{"type":"boolean"}},"required":["code"]},"exchange_rates":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"currency_code":{"type":"string"},"starting_date":{"type":"string"},"rate":{"type":"number","description":"LCY per 1 foreign unit."}},"required":["id","currency_code","starting_date","rate"]},"warehouses":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"code":{"type":"string"},"name":{"type":"string"},"active":{"type":"boolean"}},"required":["id"]},"inventory_on_hand":{"type":"object","properties":{"item_id":{"type":"string"},"location_id":{"type":"string","nullable":true},"qty":{"type":"number"}}},"inventory_adjustments":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"date":{"type":"string"},"status":{"type":"string"},"memo":{"type":"string"}},"required":["id"]},"inventory_transfers":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"date":{"type":"string"},"status":{"type":"string"}},"required":["id"]},"employees":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"name":{"type":"string"},"email":{"type":"string"},"status":{"type":"string"},"hired_on":{"type":"string","nullable":true}},"required":["id"]},"leave":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"employee_id":{"type":"string"},"status":{"type":"string"},"start_date":{"type":"string"},"end_date":{"type":"string"}},"required":["id"]},"attendance":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"employee_id":{"type":"string"},"punched_at":{"type":"string"},"kind":{"type":"string"}},"required":["id"]},"holidays":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"name":{"type":"string"},"date":{"type":"string"}},"required":["id","name","date"]},"payroll":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"status":{"type":"string"},"period_start":{"type":"string"},"period_end":{"type":"string"}},"required":["id"]},"leads":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"name":{"type":"string"},"status":{"type":"string"},"email":{"type":"string"},"preferred_language":{"type":"string","nullable":true,"enum":["en","fr","ar","bilingual"]}},"required":["id"]},"tasks":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"title":{"type":"string"},"status":{"type":"string"},"due_date":{"type":"string","nullable":true}},"required":["id"]},"calendar":{"type":"object","properties":{"id":{"type":"string","description":"Record id"},"title":{"type":"string"},"starts_at":{"type":"string"},"ends_at":{"type":"string","nullable":true}},"required":["id"]}},"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"API key","description":"Org API key created in Settings → API keys."}}},"tags":[{"name":"Current key","description":"Workspace and plan for the API key making the request."},{"name":"Clients","description":"Customer directory."},{"name":"Invoices","description":"Sales invoices."},{"name":"Quotes","description":"Sales quotes."},{"name":"Credit notes","description":"Customer credit notes."},{"name":"Vendors","description":"Supplier directory."},{"name":"Bills","description":"Vendor bills."},{"name":"Items","description":"Item catalog."},{"name":"Product recommendations","description":"Online store suggestions for a product page (`context=product&item_id=…`) or a cart (`context=cart&item_ids=a,b`). Manual related, up-sell, cross-sell and accessory links come first; the store's same-category / same-brand rules and frequently-bought-together fill in only where no manual link exists. Optional `store` picks the store. Needs the online store module."},{"name":"Chart of accounts","description":"General ledger accounts (read)."},{"name":"Journals","description":"Posted journal entries (read)."},{"name":"Bank accounts","description":"Workspace bank accounts (read)."},{"name":"Currencies","description":"Enabled workspace currencies (read)."},{"name":"Exchange rates","description":"Effective-dated FX rates (read). `rate` is LCY per 1 foreign unit."},{"name":"Warehouses","description":"Inventory locations."},{"name":"Inventory on hand","description":"Stock on hand by item and location."},{"name":"Inventory adjustments","description":"Stock adjustments."},{"name":"Inventory transfers","description":"Stock transfers between locations."},{"name":"Employees","description":"Employee directory."},{"name":"Leave","description":"Leave requests."},{"name":"Attendance","description":"Attendance punches."},{"name":"Holidays","description":"Public holidays."},{"name":"Payroll runs","description":"Pay runs."},{"name":"Leads","description":"Sales leads."},{"name":"Tasks","description":"Workspace tasks."},{"name":"Calendar events","description":"Meetings and calendar events (not Google sync)."}]}