Errors
addon_ required
HTTP HTTP 402.
- HTTP status
- 402
- Problem type
- https://docs.filmo.io/errors/addon_required
Example
When it happens
402. The account has not contracted (or has let expire) the add-on the operation belongs to, named in requiredAddon. No role or scope bypasses it. It is answered per resource: the CRM, maintenance and incidents (the incidence add-on), purchases and custom fields each need their own add-on, and POST /api answers it when the account has no AI credits left. Operations that need no add-on are not affected.
What to do
An administrator adds the add-on named in requiredAddon to the plan, or you stop calling the operations of that module. Do not change the key or its scopes.
Retry
Stop401 · 402 · 403 (key, owner or plan)
Do not retry: resending the same request fails again. Act on the key, its owner or the plan: use a valid key with the right scope, ask an administrator for the missing permission, or add the add-on.
Fields of errors[]
On addon_required: the id of the add-on the account plan needs (the ids GET /account lists in addons).
Available options: qr-codes, incidence, purchases, activity-log, custom-fields, profitability, web-builder, crm, consignments, email-calendar, sales-documents, internal-bookings, internal-communication, advanced-user-permissions
Returned by
37 operations
GET /api/v1/repair-tickets— List repair ticketsPOST /api/v1/repair-tickets— Create a repair ticketGET /api/v1/repair-tickets/{ticketId}— Get a repair ticketPATCH /api/v1/repair-tickets/{ticketId}— Update a repair ticketPATCH /api/v1/subrents/{subrentId}— Update a subrentGET /api/v1/purchase-orders— List purchase ordersGET /api/v1/purchase-orders/{purchaseOrderId}— Get a purchase orderPATCH /api/v1/purchase-orders/{purchaseOrderId}— Update a purchase orderGET /api/v1/custom-fields— List custom field definitionsGET /api/v1/incidents— List incidentsPOST /api/v1/incidents— Open an incidentGET /api/v1/incidents/{incidentId}— Get an incidentPATCH /api/v1/incidents/{incidentId}— Update an incidentGET /api/v1/incidents/status-counts— Count incidents by statusPOST /api/v1/incidents/{incidentId}/comments— Comment on an incidentGET /api/v1/crm/opportunities— List opportunitiesPOST /api/v1/crm/opportunities— Create an opportunityGET /api/v1/crm/opportunities/{opportunityId}— Get an opportunityPATCH /api/v1/crm/opportunities/{opportunityId}— Update an opportunityPATCH /api/v1/crm/opportunities/{opportunityId}/stage— Move an opportunity to another stagePOST /api/v1/crm/opportunities/{opportunityId}/close— Close an opportunityPOST /api/v1/crm/opportunities/{opportunityId}/links— Link a document to an opportunityGET /api/v1/crm/pipelines— List pipelinesGET /api/v1/crm/pipelines/{pipelineId}— Get a pipelinePOST /api/v1/purchase-orders/{purchaseOrderId}/approve— Approve a purchase orderPOST /api/v1/purchase-orders/{purchaseOrderId}/receive— Receive material from a purchase orderGET /api/v1/supplier-invoices— List supplier invoicesGET /api/v1/supplier-invoices/{supplierInvoiceId}— Get a supplier invoicePOST /api/v1/ai/ask— Ask the AI about your dataPOST /api/v1/invoices/{invoiceId}/validate— Validate an invoicePUT /api/v1/invoices/external/{originSystem}/{originExternalId}— Create or update the mirror of an externally issued invoicePATCH /api/v1/proformas/{proformaId}/status— Change the commercial status of a proformaPATCH /api/v1/quotes/{quoteId}/status— Change the commercial status of a quotePOST /api/v1/contracts/{contractId}/validate— Validate a contractPOST /api/v1/contracts/{contractId}/sign— Record the signature of a contractPOST /api/v1/supplier-invoices/{supplierInvoiceId}/validate— Validate a supplier invoicePOST /api/v1/supplier-invoices/{supplierInvoiceId}/void— Void a supplier invoice
Through MCP
A tool call that fails comes back with `isError` set and the problem as structured content, with the same `code`.
Was this page helpful?