PROS Performance Quoting - Model public API (1.2.0)

Download OpenAPI specification:Download

The Model Public API provides operations on the model matrix, operations to validate and store a model, and other admin operations.

Warnings:

  • Clients consuming this API, or servers implementing this API, must assume that JSON objects are open for extension. Client and Server must not reject new fields that are not part of the Open API contract. This is consistent with the OpenAPI 2.0 specification that is based on the JSON schema specification: Open API object definitions are considered open for extension by default, an additionalProperties directive is not required to make an object definition extensible. OpenAPI specification: https://swagger.io/specification/v2/

  • When using any public API (even polling ones):
    • One may be aware of the different "Governor Limits" of the product and API: See https://connect.pros.com/products/pros-smart-cpq/help-topics/ section "General" link "Governor Limits" for details.
    • As a general rule, to cope with transient slowdowns, we recommend using a socket read timeout of at least:
      • 3 minutes in general
      • 1 minute in the particular case of an Azure Function customization called by the quote
    • One should ensure that his/her code handles "Too many requests" 429 and "Service unavailable" 503 http errors due to "rate limiting" governor limits or transient errors.
      1. One should use the Retry-After response header when received.
      2. When this response header is not received, there must be a minimal waiting time of 0.5 sec before any retry. The recommended approach is to use the following exponential backoff retry logic: 0.5 sec before first retry then 1-2-4-8-etc. sec between subsequent calls.

API deprecation policy

As the Smart CPQ API evolves, APIs are periodically reorganized or upgraded. Wherever possible, APIs are updated so that they are compatible with earlier versions (according to the OpenAPI standard).
When the changes don’t allow a backward compatibility and the old API can't be supported indefinitely, the old API is deprecated and guidance is provided to help replace the deprecated API.
The deprecation period is 12 months. During this time, the deprecated API will be supported. The first major version following the 12 month deprecation period will be the end of life: the deprecated API will be removed and no longer supported.
No additional delay can and will be granted. Please read here ( https://connect.pros.com/products/smart-configure-price-quote/guides/developer-guide/138511) ** for more details, including how to get deprecation notification.

Model session

Session operations

Initialize a session

Initializes a session and returns a session identifier which is required for any further call to the Quote API.

Authorizations:
Token
header Parameters
X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

X-quotex-customer-correlation-context
string

Use this optional header to pass external context information.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "sessionId": "string"
}

Model matrix

Model matrix operations

Get model matrix elements.

Get model matrix elements related to the given environment. Each element contains the model family and model version parameters. If there is elements for the requested environment an empty list is returned. A model matrix contains the model versions for each modelFamily (model name) and for each environment

Authorizations:
Token
header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "elements": [
    ]
}

Store a model matrix element

Store a model matrix element for the given environment. If an element exists for the given environment and model family it will be REPLACED

Authorizations:
Token
header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Request Body schema: application/json
modelFamily
string
modelVersion
string
modelBranch
string
modelRevision
integer
designerFingerPrint
string
migrateExistingQuotes
boolean
Default: true

Deprecated. The provided value will be ignored. Migrating existing quotes is now mandatory when a model is updated.

Responses

Request samples

Content type
application/json
{
  • "modelFamily": "string",
  • "modelVersion": "string",
  • "modelBranch": "string",
  • "modelRevision": 0,
  • "designerFingerPrint": "string",
  • "migrateExistingQuotes": true
}

Response samples

Content type
application/json
{
  • "operationId": "b91bbf81beb74397ae282d1186aa1798",
  • "code": 100,
  • "message": "string"
}

Delete model matrix elements

This operation deletes all model matrix elements related to the given environment

Authorizations:
Token
header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "operationId": "b91bbf81beb74397ae282d1186aa1798",
  • "code": 100,
  • "message": "string"
}

Get a model matrix element.

Get the model matrix element correponding to the given environment and model family if it exists.

Authorizations:
Token
path Parameters
modelFamily
required
string

The model family to search in the model matrix

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "modelFamily": "string",
  • "modelVersion": "string",
  • "modelBranch": "string",
  • "modelRevision": 0,
  • "designerFingerPrint": "string",
  • "migrateExistingQuotes": true
}

Check if a model matrix element (model family) exists in the model matrix

Check if a modle matrix element exists

Authorizations:
Token
path Parameters
modelFamily
required
string

The model family to search in the model matrix

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "operationId": "b91bbf81beb74397ae282d1186aa1798",
  • "code": 100,
  • "message": "string"
}

Delete a model matrix element for a model family

This operation delete the model matrix element related to the given environment and model family If no model matrix element if found this method will not return an error

Authorizations:
Token
path Parameters
modelFamily
required
string

The model family to search in the model matrix

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "operationId": "b91bbf81beb74397ae282d1186aa1798",
  • "code": 100,
  • "message": "string"
}

Model operations

Model operations (Operations on the model structure)

Get sdk model and public model versions

This feature gets quote model versions of sdk and quote model public api

Authorizations:
Token
header Parameters
X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "modelVersions": [
    ]
}

provide a grid definition

This operation provide a grid definition

Authorizations:
Token
path Parameters
modelName
required
string

The name of quote model

query Parameters
modelVersion
string

The version of quote model, if null or empty get the latest version

modelBranch
string

The branch of quote model, by default "main"

modelRevision
string

The revision of quote model should be an Integer, if null get the latest revision

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "gridColumnDefinitions": [
    ],
  • "gridFieldsDefinitions": [
    ],
  • "rowTemplateDefinitions": [
    ],
  • "viewDefinitions": [
    ]
}

Validate a quote model. Deprecated before Version 12.13 - will be discontinued as of june 2024. Can be replaced by POST /model/validatefile. Deprecated

This validates the quote model and all underlying models (spreadsheet, data provider, UI).

Authorizations:
Token
query Parameters
ignoreFeatureUpgrade
boolean

Allow model to be validated if the SDK version minor digits (second digits) from the client version is not compatible with the server version

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

X-quotex-modelApiVersion
string

Use this optional header to check technical compatibility of model version.

X-quotex-modelSdkVersion
string

Use this optional header to check technical compatibility of model version.

Request Body schema: application/json
modelJsonString
required
string
customDataNamespace
required
string

Responses

Request samples

Content type
application/json
{
  • "modelJsonString": "string",
  • "customDataNamespace": "string"
}

Response samples

Content type
application/json
{
  • "validationErrors": [
    ]
}

Store a Quote model. Deprecated before Version 12.13 - will be discontinued as of june 2024. Can be replaced by POST /model/storefile. Deprecated

This opertaion stores the quote model and all underlying models (spreadsheet, data provider, UI).

Authorizations:
Token
query Parameters
ignoreFeatureUpgrade
boolean

Allow model to be validated if the SDK version minor digits (second digits) from the client version is not compatible with the server version

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

X-quotex-modelApiVersion
string

Use this optional header to check technical compatibility of model version.

X-quotex-modelSdkVersion
string

Use this optional header to check technical compatibility of model version.

Request Body schema: application/json
modelJsonString
required
string
customDataNamespace
required
string

Responses

Request samples

Content type
application/json
{
  • "modelJsonString": "string",
  • "customDataNamespace": "string"
}

Response samples

Content type
application/json
{
  • "modelId": "string",
  • "version": "string",
  • "branch": "string",
  • "revision": 0,
  • "publicationId": "string"
}

Validate a quote model file

This validates the quote model and all underlying models (spreadsheet, data provider, UI), takes a json model file as input

Authorizations:
Token
query Parameters
ignoreFeatureUpgrade
boolean

Allow model to be validated if the SDK version minor digits (second digits) from the client version is not compatible with the server version

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

X-quotex-modelApiVersion
string

Use this optional header to check technical compatibility of model version.

X-quotex-modelSdkVersion
string

Use this optional header to check technical compatibility of model version.

X-quotex-designer-finger-print
string

Use this optional header to check if request comes from quote designer.

Request Body schema: multipart/form-data
modelFile
required
string <binary>

Model to validate must be a json file

customDataNamespace
required
string

custom data namespace

Responses

Response samples

Content type
application/json
{
  • "validationErrors": [
    ]
}

Validate a spreadsheet model file

This validates the spreadsheet model only, takes a json file containing spreadsheet model as input

Authorizations:
Token
header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Request Body schema: multipart/form-data
modelFile
required
string <binary>

Model to validate must be a json file containing the spreadsheet model

Responses

Response samples

Content type
application/json
{
  • "validationErrors": [
    ]
}

Store a Quote model file

This opertaion stores the quote model and all underlying models (spreadsheet, data provider, UI), takes a json model file as input

Authorizations:
Token
query Parameters
ignoreFeatureUpgrade
boolean

Allow model to be validated if the SDK version minor digits (second digits) from the client version is not compatible with the server version

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

X-quotex-modelApiVersion
string

Use this optional header to check technical compatibility of model version.

X-quotex-modelSdkVersion
string

Use this optional header to check technical compatibility of model version.

X-quotex-designer-finger-print
string

Use this optional header to check if request comes from quote designer.

Request Body schema: multipart/form-data
modelFile
required
string <binary>

Model to store must be a json file

customDataNamespace
required
string

custom data namespace

Responses

Response samples

Content type
application/json
{
  • "modelId": "string",
  • "version": "string",
  • "branch": "string",
  • "revision": 0,
  • "publicationId": "string"
}

Get a Quote model by its name

This opertaion get the quote model from database by its name and model version information. The model returned has the model public format. If model version information is not provided the model last version will be returned

Authorizations:
Token
path Parameters
modelName
required
string

The name of quote model. Case sensitive

query Parameters
modelVersion
string

The version of quote model, if null or empty get the latest version

modelBranch
string

The branch of quote model, by default "main"

modelRevision
string

The revision of quote model should be an Integer, if null get the latest revision

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "modelJsonString": "string",
  • "customDataNamespace": "string"
}

Model docGen

Model version operations

Get list of available document generation templates

This operations provides the list of available document generation tempates and the list of related models

Authorizations:
Token
header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
application/json
{
  • "models": [
    ],
  • "templates": [
    ]
}

Push a new document generation template

This operation uploads a new docGen template (zip file). The template can be used to generate documents with quote data.

Authorizations:
Token
header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Request Body schema: multipart/form-data
templateFile
required
string <binary>
templateName
required
string

please check that the templateName matches with the main template name in the provided zip file (lowercase, uppercase, whitespaces, ...)

Responses

Response samples

Content type
application/json
{
  • "operationId": "b91bbf81beb74397ae282d1186aa1798",
  • "code": 100,
  • "message": "string"
}

get a document generation template

This operation downloads a template model (zip file). It can be used to generate Quote reports.

Authorizations:
Token
path Parameters
templateName
required
string

The name of template

header Parameters
X-quotex-sessionId
required
string

Session identifier. Call initSession API to get a session Id

X-quotex-environment
string

Deprecated: Environment identifier. This parameter is deprecated and the environment will be automatically retrieved. If used the provided environment value will be checked against the the environment value automatically found. This header should NOT be used to pass AppPortal environment value.

X-quotex-userId
string

The user identifier -> Optional user email. It will replace the authenticated usedId for certain roles if provided.

Request-Id
string

Use this optional header to correlate many calls to the public API for the same external operation. Must be a UUID without "-" caracters.

X-quotex-system-mode
boolean

Use this optional header to run an API in system mode. The user must have the API_SUPER_USER or AGREEMENT role to be able to use system mode.

Responses

Response samples

Content type
No sample