Skip to main content
Sitecore Documentation
  • Learn
  • Downloads
  • Changelog
  • Roadmap
PersonalizeCloud Portal
Sitecore Personalize developer documentation
  • Developing with Sitecore Personalize
    • Base URL
    • Response codes
        • Create a decision model
        • Retrieve decision models
        • Retrieve a decision model
        • Update a decision model
        • Retrieve revisions
        • Retrieve a revision
        • Retrieve variants
  1. REST API Decision model
  1. Sitecore Personalize developer documentation
  2. REST APIs

Create a decision model

POST /v2/decisionModelDefinitions

Creates a decision model.

At a minimum, you must provide the following required attributes in the request body:

AttributeTypeDescriptionExample
namestringThe name of the decision model."Determine Ancillary Upsell"
deploymentConfigurationobjectAn object that contains the variants array."mys3cr3tstr1ingforauth1!x"
deploymentConfiguration.variantsarrayAn array of objects. Every object describes a variant.

You can leave this array empty.
"mys3cr3tstr1ingforauth1!x"

If you do not leave the variants array empty, every object in the array must include the following required attributes:

AttributeTypeDescriptionExample
variantRefstringThe reference of the decision model variant."19700f15-4069-4121-b709-1031118677c8"
splitintegerThe audience percentage that the decision model variant will impact.80
statusstring enum (uppercase)The status of the decision model variant.Must be one of the following:

  • "DRAFT"
  • "TEST"
  • "PRODUCTION"
  • "ARCHIVED"
variantRevisionintegerThe sequential number of the decision model variant revision.2

The deploymentConfiguration object:

"deploymentConfiguration": {
        "variants": [
            {
                "variantRef": "19700f15-4069-4121-b709-1031118677c8",
                "split": 80,
                "status": "PRODUCTION",
                "variantRevision": 2
            }
        ]
    }

In the response, the ref key contains the decision model reference.

You use the decision model reference to interact with a specific decision model, for example, to retrieve or update it.

curl -X POST '<baseURL>/v2/decisionModelDefinitions' \
-H 'Authorization: Bearer <accessToken>' \
-H 'Accept: application/json' \
--data-raw '
{
    "name": "Determine Ancillary Upsell",
    "deploymentConfiguration": {
        "variants": []
    }
}'
{
    "clientKey": "pqsPERS3lw12v5a9rrHPW1c4hET73GxQ",
    "href": "<baseURL>/v2/decisionModelDefinitions/62fa90f6-f59c-4974-b603-587dd6a5f951",
    "ref": "62fa90f6-f59c-4974-b603-587dd6a5f951",
    "name": "Determine Ancillary Upsell",
    "modifiedByRef": "25f46901-bc51-45e8-b587-148aecf1e48f",
    "modifiedAt": "2026-10-12T12:`45:03`.902Z",
    "revision": 1,
    "archived": false,
    "deploymentConfiguration": {
        "variants": []
    },
    "variants": {
        "href": "<baseURL>/v2/decisionModelDefinitions/62fa90f6-f59c-4974-b603-587dd6a5f951/variants"
    },
    "revisions": {
        "href": "<baseURL>/v2/decisionModelDefinitions/62fa90f6-f59c-4974-b603-587dd6a5f951/revisions"
    }
}
If you have suggestions for improving this article, let us know!

Documentation Assistant

This assistant uses AI to generate responses based on Sitecore documentation. While it has access to official sources, answers may be incomplete or inaccurate and should not be considered official advice or support.
Powered by
k
kapa.ai
Protected by reCAPTCHA

© Copyright 2026, Sitecore A/S or a Sitecore affiliated company.
All rights reserved.

Privacy policySitecore Trust CenterTerms of use