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. Decision model REST API
  1. REST APIs
  2. Decision model REST API

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:

Attribute

Type

Description

Example

name

string

The name of the decision model.

"Determine Ancillary Upsell"

deploymentConfiguration

object

An object that contains the variants array.

"mys3cr3tstr1ingforauth1!x"

deploymentConfiguration.variants

array

An 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:

Attribute

Type

Description

Example

variantRef

string

The reference of the decision model variant.

"19700f15-4069-4121-b709-1031118677c8"

split

integer

The audience percentage that the decision model variant will impact.

80

status

string enum (uppercase)

The status of the decision model variant.

Must be one of the following:

  • "DRAFT"

  • "TEST"

  • "PRODUCTION"

  • "ARCHIVED"

variantRevision

integer

The 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": "2025-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