Get Contribution Margin Cost Analysis
GET/api/reporting/contribution-margin/cost-analysis
Contribution margin measures profitability after both cost of goods sold and allocated operating costs:
- Gross Profit = Revenue − COGS
- Contribution Dollars = Gross Profit − Allocated Costs
- Contribution Margin % = Contribution Dollars ÷ Revenue × 100
reports:readGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Revenue and COGS come from per-order-line financial records that are kept current by background financial calculations. Allocated costs come from the cost allocation system (cost entries prorated across products, orders, brands, suppliers, or sales channels).
Returns an overview of all allocated costs feeding the contribution margin reports: the total amount allocated, how many individual allocations and distinct cost entries produced it, and three breakdowns —
by_allocatable_type: what kind of entity the costs were allocated to (products, orders, brands, suppliers, sales channels).full_typeis the internal type identifier;typeis its short name.by_cost_entry_type: the user-defined cost categories (e.g. Amazon Advertising, Warehouse Rent). Allocations whose cost entry has no type are grouped underUncategorized.by_proration_strategy: how each allocation was split (revenue_based,cost_based,weight_based,volume_based,quantity_based,specific_line, ormanual).
Amounts are in the account's base currency. Breakdown rows are sorted by total amount, descending.
Date filtering: date_from and date_to must BOTH be provided for date filtering to apply — if either is omitted the report covers all available history. Sales figures are filtered by order date; allocated costs are matched by their allocation period when one is set (any overlap with the requested range counts), otherwise by their allocation date.
Authentication: Requires Bearer token. Scope: reports (read/write).
Request
Responses
- 200
- 401
- 403
- 422
- 429
OK
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.