Get project billing settings
What are Project Billing Settings? Project billing settings define how invoices are created and structured for a specific project. These settings control invoice formatting, billing rules, default recipients, and support contingent (retainer) configurations.
What data is returned:
- Invoice structure settings: Whether to combine support and subscription invoices or split them separately
- Billing rules: Whether bug tasks are billable
- Default invoice recipient: The contact person from the customer organization who receives invoices
- Support contingent (retainer) configuration: Monthly hour packages at fixed prices for recurring support/maintenance services
- Billing version snapshots: Project versions used as the basis for invoicing (Single projects only)
Support Contingents (Retainers): Support contingents allow you to allocate monthly hour packages at a fixed price. They are perfect for recurring support, maintenance, or service tasks and get suggested automatically in invoice review. Unused hours can optionally be carried over to subsequent months.
Billing Versions: For Single projects, you can select which project version snapshot will be used as the basis for billing. This includes components, manual items, and products as agreed in that version. You can also optionally select a separate subscription billing version for products with recurring payments.
Permission requirements: Requires Projects.seeAnyProject permission to view billing settings.
/projects/{id}/billing-settingsAuthorizationOAuth2 access token · headerrequiredapi:readAuthorizationBearer token (JWT) · headerrequiredidstring<uuid>requiredallowMixedBillingbooleanrequiredbillingProjectSnapshotIdobject | nullrequiredbugsAreBillablebooleanrequiredidstringrequiredincludeComponentsInBillingbooleanrequiredinvoiceContactIdobject | nullrequiredproductsBillingProjectSnapshotIdobject | nullrequiredcurl -X GET "https://leadtime.app/api/public/projects/%3Cuuid%3E/billing-settings" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"const response = await fetch("https://leadtime.app/api/public/projects/%3Cuuid%3E/billing-settings", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
});import requests
response = requests.get(
"https://leadtime.app/api/public/projects/%3Cuuid%3E/billing-settings",
headers={
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
},
){
"allowMixedBilling": true,
"billingProjectSnapshotId": "123e4567-e89b-12d3-a456-426614174002",
"bugsAreBillable": true,
"id": "123e4567-e89b-12d3-a456-426614174000",
"includeComponentsInBilling": true,
"invoiceContactId": "123e4567-e89b-12d3-a456-426614174001",
"productsBillingProjectSnapshotId": "123e4567-e89b-12d3-a456-426614174003"
}