Acronis Price List API
Reads the effective price lists a service-provider tenant is on, so an MSP billing system can reconcile Acronis charges against its own rate cards without scraping the partner portal.
Reads the effective price lists a service-provider tenant is on, so an MSP billing system can reconcile Acronis charges against its own rate cards without scraping the partner portal.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/price-list-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
{
"openapi": "3.0.0",
"info": {
"title": "Pricelist API",
"version": "1"
},
"paths": {
"/effective_price_lists": {
"get": {
"operationId": "Fetch tenant's price lists",
"description": "Returns a tenant's price lists for one or more months.",
"parameters": [
{
"name": "tenant_id",
"description": "Tenant UUID to fetch prices for.",
"required": true,
"in": "query",
"schema": {
"description": "Tenant UUID to fetch prices for.",
"type": "string",
"pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
}
},
{
"name": "months",
"description": "Array of months (format YYYY-MM) for which to retrieve price lists.",
"required": true,
"in": "query",
"schema": {
"description": "Array of months (format YYYY-MM) for which to retrieve price lists.",
"example": "2025-01,2025-02",
"type": "string"
}
},
{
"name": "Authorization",
"description": "JWT authorization header",
"required": true,
"in": "header",
"schema": {
"description": "JWT authorization header",
"type": "string",
"pattern": "^Bearer (.*)$"
}
}
],
"responses": {
"200": {
"description": "Price lists have been successfully retrieved.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"price_lists"
],
"properties": {
"price_lists": {
"description": "Collected price lists for the requested months.",
"type": "array",
"items": {
"type": "object",
"required": [
"month",
"currency",
"commitment",
"pricelist_code",
"prices"
],
"properties": {
"month": {
"description": "Target month in YYYY-MM (e.g., 2025-08).",
"type": "string",
"maxLength": 8
},
"currency": {
"description": "The currency code (based on ISO 4217).",
"type": "string",
"maxLength": 8
},
"commitment": {
"description": "actual partner's commitment",
"type": "string",
"maxLength": 8
},
"pricelist_code": {
"description": "code of price list",
"type": "string",
"maxLength": 16
},
"prices": {
"description": "List of SKU/price pairs for the month.",
"type": "array",
"items": {
"type": "object",
"required": [
"sku",
"effective_price",
"list_price",
"sku_discount",
"pricelist_discount",
"category",
"sub_category",
"name",
"friendly_name"
],
"properties": {
"sku": {
"description": "Stock keeping unit identifier.",
"type": "string",
"maxLength": 16
},
"effective_price": {
"description": "price with the discounts.",
"type": "string",
"maxLength": 16
},
"list_price": {
"description": "price without discounts.",
"type": "string",
"maxLength": 16
},
"sku_discount": {
"description": "Discount in percent",
"type": "string",
"maxLength": 16
},
"pricelist_discount": {
"description": "Discount in percent",
"type": "string",
"maxLength": 16
},
"category": {
"description": "category",
"type": "string",
"maxLength": 256
},
"sub_category": {
"description": "sub category",
"type": "string",
"maxLength": 256
},
"name": {
"description": "name",
"type": "string",
"maxLength": 256
},
"friendly_name": {
"description": "friendly name",
"type": "string",
"maxLength": 128
}
}
}
}
}
}
}
}
}
}
}
},
"400": {
"description": "The request cannot be processed since it's malformed or contains invalid data.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BadRequestError"
}
}
}
},
"401": {
"description": "Method required an authenticated user.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UnauthorizedRequestError"
}
}
}
},
"403": {
"description": "Current user has no permissions for this URL/method.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AccessDeniedError"
}
}
}
},
"500": {
"description": "Something unexpected has gone wrong on the server.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/InternalServerError"
}
}
}
}
},
"security": [
{
"oauth_2_0_user": [
"urn:acronis.com::service_plans_manager::price_list_reader"
]
}
]
}
}
},
"x-roles": [
{
"name": "public",
"id": "1",
"description": "public role",
"x-tags": [
"public"
]
},
{
"name": "private",
"id": "2",
"description": "private role",
"x-tags": [
"private"
]
}
],
"components": {
"schemas": {
"InternalServerError": {
"description": "Server encountered an unexpected condition that prevented it from \nfulfilling the request. Use as a base for more granular code and context definitions\n",
"example": {
"domain": "GENERAL",
"code": "INTERNAL_SERVER_ERROR"
},
"type": "object",
"additionalProperties": false,
"required": [
"code",
"domain"
],
"properties": {
"reason": {
"description": "Obsolete. Error id or code, unique in the domain. Same as in 'code' field",
"type": "string"
},
"context": {
"description": "Error context dictionary",
"type": "object"
},
"code": {
"description": "Error id or code, unique in the domain. Same as in 'reason' field",
"enum": [
"INTERNAL_SERVER_ERROR"
],
"type": "string"
},
"domain": {
"description": "Error type or category. Can be ['Licensing','Access'] or name of service (for example 'PolicyManager' or 'VaultManager')",
"enum": [
"GENERAL"
],
"type": "string"
},
"debug": {
"$ref": "#/components/schemas/debugInfo"
},
"kb_link": {
"$ref": "#/components/schemas/kbLinkInfo"
},
"message": {
"description": "human-readable message, describing the error.",
"type": "string"
}
}
},
"BadRequestError": {
"description": "Request is malformed",
"example": {
"domain": "GENERAL",
"code": "BAD_REQUEST_ERROR"
},
"type": "object",
"additionalProperties": false,
"required": [
"code",
"domain"
],
"properties": {
"reason": {
"description": "Obsolete. Error id or code, unique in the domain. Same as in 'code' field",
"type": "string"
},
"context": {
"description": "Error context dictionary",
"type": "object"
},
"code": {
"description": "Error id or code, unique in the domain. Same as in 'reason' field",
"enum": [
"BAD_REQUEST_ERROR"
],
"type": "string"
},
"domain": {
"description": "Error type or category. Can be ['Licensing','Access'] or name of service (for example 'PolicyManager' or 'VaultManager')",
"enum": [
"GENERAL"
],
"type": "string"
},
"debug": {
"$ref": "#/components/schemas/debugInfo"
},
"kb_link": {
"$ref": "#/components/schemas/kbLinkInfo"
},
"message": {
"description": "human-readable message, describing the error.",
"type": "string"
}
}
},
"UnauthorizedRequestError": {
"description": "Authorization failed",
"example": {
"domain": "ACCESS",
"code": "UNAUTHORIZED_REQUEST"
},
"type": "object",
"additionalProperties": false,
"required": [
"code",
"domain"
],
"properties": {
"reason": {
"description": "Obsolete. Error id or code, unique in the domain. Same as in 'code' field",
"type": "string"
},
"context": {
"description": "Error context dictionary",
"type": "object"
},
"code": {
"description": "Error id or code, unique in the domain. Same as in 'reason' field",
"enum": [
"UNAUTHORIZED_REQUEST"
],
"type": "string"
},
"domain": {
"description": "Error type or category. Can be ['Licensing','Access'] or name of service (for example 'PolicyManager' or 'VaultManager')",
"enum": [
"ACCESS"
],
"type": "string"
},
"debug": {
"$ref": "#/components/schemas/debugInfo"
},
"kb_link": {
"$ref": "#/components/schemas/kbLinkInfo"
},
"message": {
"description": "human-readable message, describing the error.",
"type": "string"
}
}
},
"AccessDeniedError": {
"description": "Access was denied",
"example": {
"domain": "ACCESS",
"code": "ACCESS_DENIED_ERROR",
"context": {
"scope": "urn:acronis.com:tenant-id:1234567890:company_admin"
}
},
"type": "object",
"additionalProperties": false,
"required": [
"context",
"code",
"domain"
],
"properties": {
"reason": {
"description": "Obsolete. Error id or code, unique in the domain. Same as in 'code' field",
"type": "string"
},
"context": {
"description": "Error context dictionary",
"type": "object",
"additionalProperties": false,
"required": [
"scope"
],
"properties": {
"scope": {
"type": "string"
}
}
},
"code": {
"description": "Error id or code, unique in the domain. Same as in 'reason' field",
"enum": [
"ACCESS_DENIED_ERROR"
],
"type": "string"
},
"domain": {
"description": "Error type or category. Can be ['Licensing','Access'] or name of service (for example 'PolicyManager' or 'VaultManager')",
"enum": [
"ACCESS"
],
"type": "string"
},
"debug": {
"$ref": "#/components/schemas/debugInfo"
},
"kb_link": {
"$ref": "#/components/schemas/kbLinkInfo"
},
"message": {
"description": "human-readable message, describing the error.",
"type": "string"
}
}
},
"debugInfo": {
"description": "Error debug information (map type)",
"type": "object"
},
"kbLinkInfo": {
"description": "Components for kblink",
"type": "object",
"required": [
"line_tag",
"ser_code",
"version",
"build",
"product",
"os"
],
"properties": {
"line_tag": {
"type": "string"
},
"ser_code": {
"type": "string"
},
"version": {
"type": "string"
},
"build": {
"type": "string"
},
"product": {
"type": "string"
},
"os": {
"type": "string"
}
}
}
},
"securitySchemes": {
"oauth_2_0_user": {
"type": "oauth2",
"description": "OAuth 2.0 security scheme definition for a user authorization.",
"flows": {
"password": {
"scopes": {
"urn:acronis.com::service_plans_manager:|cti.a.p.lic.service_plan.v1.0[type={plan type}]:writer": "",
"urn:acronis.com::service_plans_manager:|cti.a.p.lic.service_plan.v1.0[type={plan type}]:reader": "",
"urn:acronis.com::service_plans_manager::price_list_writer": "",
"urn:acronis.com::service_plans_manager::price_list_reader": ""
},
"tokenUrl": "/api/2/idp/token"
},
"clientCredentials": {
"scopes": {
"urn:acronis.com::service_plans_manager:|cti.a.p.lic.service_plan.v1.0[type={plan type}]:writer": "",
"urn:acronis.com::service_plans_manager:|cti.a.p.lic.service_plan.v1.0[type={plan type}]:reader": "",
"urn:acronis.com::service_plans_manager::price_list_writer": "",
"urn:acronis.com::service_plans_manager::price_list_reader": ""
},
"tokenUrl": "/api/2/idp/token"
},
"authorizationCode": {
"scopes": {
"urn:acronis.com::service_plans_manager:|cti.a.p.lic.service_plan.v1.0[type={plan type}]:writer": "",
"urn:acronis.com::service_plans_manager:|cti.a.p.lic.service_plan.v1.0[type={plan type}]:reader": "",
"urn:acronis.com::service_plans_manager::price_list_writer": "",
"urn:acronis.com::service_plans_manager::price_list_reader": ""
},
"authorizationUrl": "/api/2/idp/authorize",
"tokenUrl": "/api/2/idp/token"
}
}
}
}
},
"servers": [
{
"url": "https://dev-cloud.acronis.com/api/price_sync/v1",
"variables": {}
}
]
}