openapi: 3.0.3 info: title: Tradify API (Modeled - Not an Official Public API) Customers Invoices API version: 0.0-modeled description: 'IMPORTANT: This is a MODELED OpenAPI description. As of 2026-07-12, Tradify does NOT publish an open, self-serve, documented public developer API, developer portal, API keys, or webhooks. There is no public base URL to document, so this specification is intentionally SERVER-LESS and every operation is marked `x-status: modeled`. The resource surface below (jobs, customers, quotes, invoices, timesheets) is inferred from Tradify''s product capabilities and from public descriptions of unofficial third-party proxies that automate the authenticated Tradify session. None of these paths, schemas, or parameters are confirmed against official Tradify documentation and MUST NOT be treated as a supported contract. Tradify''s only supported programmatic surface is its pre-built accounting/payment partner integrations (Xero, MYOB Business, QuickBooks Online, Sage, Stripe). A live backend host, api.tradifyhq.com, exists but is undocumented, session-authenticated, and reserved for Tradify''s own web and mobile clients.' contact: name: Tradify (Access) url: https://www.tradifyhq.com x-access-model: publicApi: false publicApiDocumented: false developerPortal: false selfServiceApiKeys: false documentedWebhooks: false supportedProgrammaticSurface: Accounting/payment partner integrations only (Xero, MYOB Business, QuickBooks Online, Sage, Stripe). liveButUndocumentedHost: https://api.tradifyhq.com modeledFrom: - https://www.tradifyhq.com/how-it-works - https://help.tradifyhq.com/hc/en-us - https://supergood.ai/docs/tradify-api disclaimer: Paths and schemas are inferred, not verified. No supported public base URL exists; do not build integrations against this document. tags: - name: Invoices description: (Modeled) Invoices generated from jobs, quotes, or templates. paths: /invoices: get: operationId: listInvoices tags: - Invoices summary: List invoices (modeled) description: MODELED - not a confirmed public endpoint. In practice, invoice data flows to accounting systems through Tradify's Xero / MYOB / QuickBooks / Sage partner integrations rather than a public invoices API. x-status: modeled responses: '200': description: A list of invoices (modeled). content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Invoice' '401': $ref: '#/components/responses/Unauthorized' post: operationId: createInvoice tags: - Invoices summary: Create an invoice (modeled) description: MODELED - not a confirmed public endpoint. x-status: modeled requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/InvoiceInput' responses: '201': description: The created invoice (modeled). content: application/json: schema: $ref: '#/components/schemas/Invoice' '401': $ref: '#/components/responses/Unauthorized' components: responses: Unauthorized: description: Missing or invalid session credential (modeled). content: application/json: schema: $ref: '#/components/schemas/Error' schemas: Invoice: type: object description: Modeled invoice record. properties: id: type: string number: type: string jobId: type: string total: type: number status: type: string Error: type: object properties: error: type: object properties: code: type: string message: type: string InvoiceInput: type: object properties: jobId: type: string quoteId: type: string securitySchemes: sessionAuth: type: apiKey in: header name: Authorization description: MODELED. Tradify has no public API key scheme. Its app backend uses a session token obtained after username/password + MFA sign-in; unofficial proxies replay that session. There is no documented, self-serve public credential.