Commitment Plans (Beta)
Cloud provider (aws, azure, gcp)
awsPossible values: Optional segment ID to scope results. Defaults to the provider resources segment if not specified.
nullFilter to plans generated from this template (GET /commitment-plan-templates)
nullFilter by plan status (e.g. 'draft', 'in_progress')
nullPossible values: Filter to the flagged recommended plan
nullFilter to system-generated (default) plans — the three built-ins (Recommended / Balanced / High Savings) vs. user-created plans.
nullOK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Cloud provider (aws, azure, gcp)
awsPossible values: Optional segment ID to scope results. Defaults to the provider resources segment if not specified.
nullHuman-readable plan name
OK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Cloud provider (aws, azure, gcp)
awsPossible values: Optional segment ID to scope results. Defaults to the provider resources segment if not specified.
nullOK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Commitment coverage of reservable spend today, from existing commitments (0-1) — the BEFORE picture, pre-plan.
Commitment coverage of reservable spend if this plan is applied (0-1) — the AFTER picture, post-plan.
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Cloud provider (aws, azure, gcp)
awsPossible values: Optional segment ID to scope results. Defaults to the provider resources segment if not specified.
nullOK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Commitment coverage of reservable spend today, from existing commitments (0-1) — the BEFORE picture, pre-plan.
Commitment coverage of reservable spend if this plan is applied (0-1) — the AFTER picture, post-plan.
No Content
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
OK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Commitment coverage of reservable spend today, from existing commitments (0-1) — the BEFORE picture, pre-plan.
Commitment coverage of reservable spend if this plan is applied (0-1) — the AFTER picture, post-plan.
Bad request
Unauthorized
Forbidden
Not Found
Method not allowed
Conflict
Internal server error
Default error response
New plan name
OK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Bad request
Unauthorized
Forbidden
Not Found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
No Content
Bad request
Unauthorized
Forbidden
Not Found
Method not allowed
Conflict
Internal server error
Default error response
No content
OK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Commitment coverage of reservable spend today, from existing commitments (0-1) — the BEFORE picture, pre-plan.
Commitment coverage of reservable spend if this plan is applied (0-1) — the AFTER picture, post-plan.
Bad request
Unauthorized
Forbidden
Not Found
Method not allowed
Conflict
Internal server error
Default error response
Server-side resolution mode. Set to a target contract term and the server resolves the per-line-item update set using the same fallback rule the comparison endpoint projects: exact match on (term, payment) where available, else closest shorter term with the same payment option (GRI preferred within tier). Mutually exclusive with explicit per-line-item updates — pass one OR the other, not both. Preferred over enumerating updates manually because the server can't silently omit entries from a list it builds itself.
nullPossible values: Target payment option for resolution mode. Defaults to no_upfront — most users are uncomfortable with cash at signing, so this matches the default framing for plan comparisons. Ignored when target_contract_term is null.
no_upfrontPossible values: Optional subset of line items to update under resolution mode. If omitted, applies to all selected line items in the plan. Ignored when target_contract_term is null.
nullName for the copied plan. If omitted, defaults to '
nullOK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Bad Request
Unauthorized
Forbidden
Not Found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Optional list of line-item ids to scope the response to. When omitted, returns every line item in the plan.
nullField to order results by
monthly_net_savingsPossible values: Sort descending (default true)
true120OK
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Server-side resolution mode. Set to a target contract term and the server resolves the per-line-item update set using the same fallback rule the comparison endpoint projects: exact match on (term, payment) where available, else closest shorter term with the same payment option (GRI preferred within tier). Mutually exclusive with explicit per-line-item updates — pass one OR the other, not both. Preferred over enumerating updates manually because the server can't silently omit entries from a list it builds itself.
nullPossible values: Target payment option for resolution mode. Defaults to no_upfront — most users are uncomfortable with cash at signing, so this matches the default framing for plan comparisons. Ignored when target_contract_term is null.
no_upfrontPossible values: Optional subset of line items to update under resolution mode. If omitted, applies to all selected line items in the plan. Ignored when target_contract_term is null.
nullOK
Unique plan identifier
Cloud provider (aws, azure, gcp)
Plan name (e.g. 'Recommended', 'Balanced', 'High Savings')
Human-readable summary of the plan
Plan status (e.g. 'draft', 'in_progress', 'completed')
True if the plan is still being computed
When the plan was generated
Start of the usage window the plan was computed from.
End of the usage window the plan was computed from.
Maximum commitment term (e.g. '30_DAY', '1_YEAR', '3_YEAR')
Minimum total spend being committed to
Days until the plan pays for itself. If commitments are kept for at least this many days, the plan is a more profitable decision than running on-demand.
One-time total dollars required at signing if this plan is applied. NOT a rate — do not sum with monthly-rate fields. Typically 0 for the Recommended plan; can be significant for High Savings / All Upfront plans. Always mention explicitly to the user when non-zero.
Bad Request
Unauthorized
Forbidden
Not Found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Optional subset of line items to compare. If omitted, defaults to all selected line items in the plan.
nullOK
Bad Request
Unauthorized
Forbidden
Not Found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
OK
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Internal server error
Default error response
Filter to matches from specific line items
nullOnly include matches from selected line items (default true)
trueFree-text ILIKE search across the resource SKU's identity and classification fields (resource id, name, account ids, service, region, instance_type, etc.). Mirrors the search lane on /resources/skus.
nullField to order results by. Defaults to monthly_net_savings. All numeric axes are 730-hour monthly rates on the per-match plan economics, net of the Archera premium where applicable (NOT the resource's warehouse trailing-30-day actuals — those are filterable but not orderable here, on purpose, to keep sort and response framing on the same monthly basis).
monthly_net_savingsPossible values: Sort descending (default true)
trueOK
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Filter to matches from specific line items
nullOnly include matches from selected line items (default true)
trueOK
Cloud service name (e.g. 'AmazonEC2', 'AmazonRDS')
Cloud account ID
Cloud region (e.g. 'us-east-1')
Resource type within this group — instance family for compute (e.g. 'm5'), usage type for other services (e.g. 'Fargate-GB-Hours', 'Lambda-GB-Second'), or SKU name as fallback
Number of resources in this group
Mean projected coverage across resources in this group (0-1) — the fraction of each resource's usage THIS plan would cover, averaged. Post-plan / projected: distinct from resource.coverage (the trailing-30-day actual coverage from existing commitments). For per-resource projected coverage, use the paginated /covered-resources endpoint.
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Filter to matches from specific line items
nullOnly include matches from selected line items (default true)
trueFree-text ILIKE search across the resource SKU's identity and classification fields (resource id, name, account ids, service, region, instance_type, etc.). Mirrors the search lane on /resources/skus.
nullField to order results by. Defaults to monthly_net_savings. All numeric axes are 730-hour monthly rates on the per-match plan economics, net of the Archera premium where applicable (NOT the resource's warehouse trailing-30-day actuals — those are filterable but not orderable here, on purpose, to keep sort and response framing on the same monthly basis).
monthly_net_savingsPossible values: Sort descending (default true)
true120OK
Bad request
Unauthorized
Forbidden
Not found
Method not allowed
Conflict
Unprocessable Content
Internal server error
Default error response
Last updated
Was this helpful?

