Read the complete saved revenue credits of one job
curl --request GET \
--url https://api.getbreezyapp.com/v1/revenue-attributions/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getbreezyapp.com/v1/revenue-attributions/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getbreezyapp.com/v1/revenue-attributions/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"id": "11111111-1111-4111-8111-000000000501",
"number": "200",
"account": {
"id": "11111111-1111-4111-8111-000000000101",
"name": "Example Household"
},
"location_id": "11111111-1111-4111-8111-000000001107",
"business_unit": {
"id": "11111111-1111-4111-8111-000000000201",
"name": "Service"
},
"job_type": {
"id": "11111111-1111-4111-8111-000000000301",
"name": "HVAC Service"
},
"job_class": "SERVICE",
"created_at": "2026-08-19T16:00:00Z",
"work_completed_at": "2026-08-20T15:00:00Z",
"report_date": "2026-08-20",
"currency": "USD",
"credits": [
{
"credit_type": "SOLD",
"revenue_cents": 100000,
"team_member": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
},
"invoice": {
"id": "11111111-1111-4111-8111-000000000601",
"number": "1001"
},
"invoice_line_item_ids": [
"11111111-1111-4111-8111-000000000901"
]
},
{
"credit_type": "EARNED",
"revenue_cents": 100000,
"team_member": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
},
"invoice": {
"id": "11111111-1111-4111-8111-000000000601",
"number": "1001"
},
"invoice_line_item_ids": [
"11111111-1111-4111-8111-000000000901"
]
},
{
"credit_type": "SOLD",
"revenue_cents": 0,
"team_member": null,
"invoice": null,
"invoice_line_item_ids": []
}
]
},
"meta": {
"request_id": "11111111-1111-4111-8111-000000009999",
"generated_at": "2026-09-08T19:00:00Z",
"timezone": "America/Los_Angeles"
}
}{
"error": {
"code": "INVALID_REQUEST",
"message": "end_date must be later than start_date",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "UNAUTHENTICATED",
"message": "A valid API key is required",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "METHOD_NOT_ALLOWED",
"message": "This resource supports GET",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Request limit exceeded",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Unable to complete request",
"request_id": "example-request",
"details": []
}
}RevenueAttributions
Read the complete saved revenue credits of one job
Uses the job ID and returns the same complete representation as collection pages. Replace the entire credit array when refreshing. Unavailable current references remain null or empty while owned credit amounts remain readable. Matching invoice lines provide context only; several may match one saved credit.
GET
/
revenue-attributions
/
{id}
Read the complete saved revenue credits of one job
curl --request GET \
--url https://api.getbreezyapp.com/v1/revenue-attributions/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.getbreezyapp.com/v1/revenue-attributions/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.getbreezyapp.com/v1/revenue-attributions/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"data": {
"id": "11111111-1111-4111-8111-000000000501",
"number": "200",
"account": {
"id": "11111111-1111-4111-8111-000000000101",
"name": "Example Household"
},
"location_id": "11111111-1111-4111-8111-000000001107",
"business_unit": {
"id": "11111111-1111-4111-8111-000000000201",
"name": "Service"
},
"job_type": {
"id": "11111111-1111-4111-8111-000000000301",
"name": "HVAC Service"
},
"job_class": "SERVICE",
"created_at": "2026-08-19T16:00:00Z",
"work_completed_at": "2026-08-20T15:00:00Z",
"report_date": "2026-08-20",
"currency": "USD",
"credits": [
{
"credit_type": "SOLD",
"revenue_cents": 100000,
"team_member": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
},
"invoice": {
"id": "11111111-1111-4111-8111-000000000601",
"number": "1001"
},
"invoice_line_item_ids": [
"11111111-1111-4111-8111-000000000901"
]
},
{
"credit_type": "EARNED",
"revenue_cents": 100000,
"team_member": {
"id": "11111111-1111-4111-8111-000000000401",
"name": "Alex Example"
},
"invoice": {
"id": "11111111-1111-4111-8111-000000000601",
"number": "1001"
},
"invoice_line_item_ids": [
"11111111-1111-4111-8111-000000000901"
]
},
{
"credit_type": "SOLD",
"revenue_cents": 0,
"team_member": null,
"invoice": null,
"invoice_line_item_ids": []
}
]
},
"meta": {
"request_id": "11111111-1111-4111-8111-000000009999",
"generated_at": "2026-09-08T19:00:00Z",
"timezone": "America/Los_Angeles"
}
}{
"error": {
"code": "INVALID_REQUEST",
"message": "end_date must be later than start_date",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "UNAUTHENTICATED",
"message": "A valid API key is required",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "NOT_FOUND",
"message": "Resource not found",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "METHOD_NOT_ALLOWED",
"message": "This resource supports GET",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "RATE_LIMITED",
"message": "Request limit exceeded",
"request_id": "example-request",
"details": []
}
}{
"error": {
"code": "INTERNAL_ERROR",
"message": "Unable to complete request",
"request_id": "example-request",
"details": []
}
}Authorizations
Existing Breezy API key. Grants all published reads in its associated company. No app permission scopes.