---
title: Create one or more consent configurations
slug: api-documentation/create-one-or-more-consent-configurations
docTags: 
createdAt: 2026-08-27T17:02:39.001Z
---

{
  "id": "vFc7jOCXNZlXQAcG8D3s0",
  "type": "api-oas-v2",
  "data": {
    "method": "POST",
    "url": "https://api.upstartcommerce.com/v1/customer/consent/configurations",
    "servers": [
      {
        "url": "https://api.upstartcommerce.com/v1/customer/consent/configurations"
      }
    ],
    "name": "Create one or more consent configurations",
    "description": "Creates one or more consent configurations for a specific tenant.",
    "contentType": "application/json",
    "request": {
      "pathParameters": [],
      "headerParameters": [
        {
          "name": "accept",
          "type": "string",
          "kind": "optional",
          "description": "Generated from available response content types",
          "enum": [
            "application/json"
          ],
          "default": "application/json"
        },
        {
          "kind": "required",
          "name": "x-upstart-tenant",
          "type": "string",
          "description": "Tenant identifier associated with the site."
        }
      ],
      "queryParameters": [],
      "bodyDataParameters": [
        {
          "kind": "required",
          "name": "body",
          "type": "object",
          "description": "",
          "customType": "ConsentCategoryConfigurationRequest",
          "schema": [
            {
              "name": "settings",
              "kind": "required",
              "type": "array",
              "description": "",
              "modelRef": "#/components/schemas/ConsentSettings",
              "customType": "ConsentSettings[]",
              "schema": [
                {
                  "name": "categoryId",
                  "kind": "required",
                  "type": "string",
                  "description": "List of unique identifiers for custom consent categories."
                },
                {
                  "name": "enabled",
                  "kind": "required",
                  "type": "boolean",
                  "description": ""
                }
              ]
            },
            {
              "name": "siteIds",
              "kind": "optional",
              "type": "array",
              "description": "",
              "example": "",
              "itemType": "string",
              "customType": "string[]",
              "itemExample": "",
              "itemDefault": ""
            }
          ],
          "modelRef": "#/components/schemas/ConsentCategoryConfigurationRequest",
          "isExpanded": true
        }
      ],
      "formDataParameters": [],
      "oAuthParameters": [
        {
          "id": "ApiKeyAccess",
          "name": "X-Upstart-Api-Key",
          "kind": "optional",
          "type": "apiKey",
          "description": "Api key based authorization.",
          "in": "header"
        },
        {
          "id": "SessionIdAccess",
          "name": "X-Upstart-Session-Id",
          "kind": "optional",
          "type": "apiKey",
          "description": "<p>Session based authorization. This authentication is required for clients to interact with any of the management APIs. Similar to 'LoggedIn', it indicates that the user has actually logged into the system, but in this case with a management role.</p>",
          "in": "header"
        }
      ],
      "cookieParameters": []
    },
    "responses": [
      {
        "statusCode": "201",
        "description": "Custom Consent Categories Updated Successfully",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "ConsentCategoryConfigurationResponse",
            "schema": [
              {
                "name": "tenant",
                "kind": "required",
                "type": "string",
                "description": "The tenant associated with the configuration."
              },
              {
                "name": "siteIds",
                "kind": "optional",
                "type": "array",
                "description": "The site IDs linked to the configuration.",
                "example": "",
                "itemType": "string",
                "customType": "string[]",
                "itemExample": "",
                "itemDefault": ""
              },
              {
                "name": "settings",
                "kind": "required",
                "type": "array",
                "description": "",
                "modelRef": "#/components/schemas/ConsentSettings",
                "customType": "ConsentSettings[]",
                "schema": [
                  {
                    "name": "categoryId",
                    "kind": "required",
                    "type": "string",
                    "description": "List of unique identifiers for custom consent categories."
                  },
                  {
                    "name": "enabled",
                    "kind": "required",
                    "type": "boolean",
                    "description": ""
                  }
                ]
              },
              {
                "name": "audit",
                "kind": "required",
                "type": "object",
                "description": "",
                "modelRef": "#/components/schemas/Audit",
                "customType": "Audit",
                "schema": [
                  {
                    "name": "byId",
                    "kind": "optional",
                    "type": "string",
                    "description": ""
                  },
                  {
                    "name": "by",
                    "kind": "required",
                    "type": "string",
                    "description": ""
                  },
                  {
                    "name": "byAnonymous",
                    "kind": "required",
                    "type": "boolean",
                    "description": ""
                  },
                  {
                    "name": "at",
                    "kind": "required",
                    "type": "string<date-time>",
                    "description": "",
                    "format": "date-time"
                  },
                  {
                    "name": "traceId",
                    "kind": "required",
                    "type": "string",
                    "description": ""
                  },
                  {
                    "name": "serviceName",
                    "kind": "required",
                    "type": "string",
                    "description": ""
                  },
                  {
                    "name": "serviceVersion",
                    "kind": "required",
                    "type": "string",
                    "description": ""
                  },
                  {
                    "name": "byDomain",
                    "kind": "optional",
                    "type": "string",
                    "description": ""
                  },
                  {
                    "name": "bySubjectType",
                    "kind": "optional",
                    "type": "string",
                    "description": ""
                  }
                ]
              }
            ],
            "modelRef": "#/components/schemas/ConsentCategoryConfigurationResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "400",
        "description": "The request contained information that the server was unable to process. Appropriate errors are provided in the response body.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "array",
            "description": "Error response for validation errors",
            "customType": "ValidationErrorResponse[]",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/ValidationErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "401",
        "description": "The provided credentials were not valid for this endpoint.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "UnauthorizedErrorResponse",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/UnauthorizedErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "403",
        "description": "User's roles are insufficient for this endpoint.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "ErrorResponse",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/ErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "404",
        "description": "The requested resource was not found in the NoChannel system.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "ErrorResponse",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/ErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "405",
        "description": "This is to indicate that the server has received a request with an HTTP method that is not supported for the requested resource.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "ErrorResponse",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/ErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "409",
        "description": "This response indicates that the server cannot process the request due to a conflict with the current state of the resource.  This typically occurs when a request attempts to create or modify a resource that already exists or conflicts with another resource.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "ConflictErrorResponse",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              },
              {
                "name": "conflicts",
                "kind": "required",
                "type": "array",
                "description": "List of conflicting data points and their details",
                "modelRef": "#/components/schemas/ConflictDetail",
                "customType": "ConflictDetail[]",
                "schema": [
                  {
                    "name": "index",
                    "kind": "required",
                    "type": "integer",
                    "description": "Index of the conflicting data point in the request array"
                  },
                  {
                    "name": "id",
                    "kind": "required",
                    "type": "string",
                    "description": "ID of the conflicting data point"
                  },
                  {
                    "name": "existingResource",
                    "kind": "required",
                    "type": "string",
                    "description": "Reference to the existing resource that caused the conflict"
                  }
                ]
              }
            ],
            "modelRef": "#/components/schemas/ConflictErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "423",
        "description": "<p>Consent Management is disabled or locked for the tenant, so consent operations are not allowed.</p>",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "array",
            "description": "Error response for validation errors",
            "customType": "ValidationErrorResponse[]",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/ValidationErrorResponse",
            "isExpanded": true
          }
        ]
      },
      {
        "statusCode": "500",
        "description": "There was an internal server error.",
        "jsonExample": "",
        "isExpanded": true,
        "schema": [
          {
            "kind": "optional",
            "type": "object",
            "description": "",
            "customType": "ErrorResponse",
            "schema": [
              {
                "name": "name",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "code",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "detail",
                "kind": "required",
                "type": "string",
                "description": ""
              },
              {
                "name": "reason",
                "kind": "optional",
                "type": "string",
                "description": ""
              }
            ],
            "modelRef": "#/components/schemas/ErrorResponse",
            "isExpanded": true
          }
        ]
      }
    ],
    "hasXCodeSamples": false,
    "examples": {
      "languages": [
        {
          "id": "QYn9Ryr2APwNj_VM_jWqw",
          "language": "curl",
          "label": "cURL",
          "code": "curl --request POST \\\n     --url https://api.upstartcommerce.com/v1/customer/consent/configurations \\\n     --header 'accept: application/json' \\\n     --header 'content-type: application/json' \\\n     --header 'x-upstart-tenant: string' \\\n     --data '{\n     \"settings\": [\n     {\n     \"categoryId\": \"\",\n     \"enabled\": \"\"\n     }\n     ]\n     }'"
        },
        {
          "id": "_O5qySYuolR8Y2lybrMvQ",
          "language": "javascript",
          "label": "javascript",
          "code": "var myHeaders = new Headers();\nmyHeaders.append(\"accept\", \"application/json\");\nmyHeaders.append(\"content-type\", \"application/json\");\nmyHeaders.append(\"x-upstart-tenant\", \"string\");\n\nvar raw = JSON.stringify({\n   \"settings\": [\n      {\n         \"categoryId\": \"\",\n         \"enabled\": \"\"\n      }\n   ]\n});\n\nvar requestOptions = {\n   method: 'POST',\n   headers: myHeaders,\n   body: raw,\n   redirect: 'follow'\n};\n\nfetch(\"https://api.upstartcommerce.com/v1/customer/consent/configurations\", requestOptions)\n   .then(response => response.text())\n   .then(result => console.log(result))\n   .catch(error => console.log('error', error));"
        },
        {
          "id": "cnwI4lpZEvOuIMigSDrna",
          "language": "ruby",
          "label": "Ruby",
          "code": "require \"uri\"\nrequire \"json\"\nrequire \"net/http\"\n\nurl = URI(\"https://api.upstartcommerce.com/v1/customer/consent/configurations\")\n\nhttps = Net::HTTP.new(url.host, url.port)\nhttps.use_ssl = true\n\nrequest = Net::HTTP::Post.new(url)\nrequest[\"accept\"] = \"application/json\"\nrequest[\"content-type\"] = \"application/json\"\nrequest[\"x-upstart-tenant\"] = \"string\"\nrequest.body = JSON.dump({\n   \"settings\": [\n      {\n         \"categoryId\": \"\",\n         \"enabled\": \"\"\n      }\n   ]\n})\n\nresponse = https.request(request)\nputs response.read_body\n"
        },
        {
          "id": "iGTlihRIhukiTSHytEqxj",
          "language": "python",
          "label": "Python",
          "code": "import requests\nimport json\n\nurl = \"https://api.upstartcommerce.com/v1/customer/consent/configurations\"\n\npayload = json.dumps({\n   \"settings\": [\n      {\n         \"categoryId\": \"\",\n         \"enabled\": \"\"\n      }\n   ]\n})\nheaders = {\n   'accept': 'application/json',\n   'content-type': 'application/json',\n   'x-upstart-tenant': 'string'\n}\n\nresponse = requests.request(\"POST\", url, headers=headers, data=payload)\n\nprint(response.text)\n"
        }
      ],
      "selectedLanguageId": "QYn9Ryr2APwNj_VM_jWqw"
    },
    "results": {
      "languages": [
        {
          "id": "8ITJGG5mCoaBOamXFukMz",
          "language": "201",
          "code": "// Custom Consent Categories Updated Successfully\n{\n  \"tenant\": \"\",\n  \"siteIds\": [\n    \"\"\n  ],\n  \"settings\": [\n    {\n      \"categoryId\": \"\",\n      \"enabled\": false\n    }\n  ],\n  \"audit\": {\n    \"byId\": \"\",\n    \"by\": \"\",\n    \"byAnonymous\": false,\n    \"at\": \"\",\n    \"traceId\": \"\",\n    \"serviceName\": \"\",\n    \"serviceVersion\": \"\",\n    \"byDomain\": \"\",\n    \"bySubjectType\": \"\"\n  }\n}"
        },
        {
          "id": "xdPpkFiOEMP5iGgj097-i",
          "language": "400",
          "code": "// The request contained information that the server was unable to process. Appropriate errors are provided in the response body.\n[\n  {\n    \"name\": \"\",\n    \"code\": \"\",\n    \"detail\": \"\",\n    \"reason\": \"\"\n  }\n]"
        },
        {
          "id": "DXGLRmdig2z20Q2ZbZO1n",
          "language": "401",
          "code": "// The provided credentials were not valid for this endpoint.\n{\n  \"name\": \"\",\n  \"code\": \"\",\n  \"detail\": \"\",\n  \"reason\": \"\"\n}"
        },
        {
          "id": "0nW6xFKe6Ae3U1YtZo50d",
          "language": "403",
          "code": "// User's roles are insufficient for this endpoint.\n{\n  \"name\": \"\",\n  \"code\": \"\",\n  \"detail\": \"\",\n  \"reason\": \"\"\n}"
        },
        {
          "id": "4lBKZ_mQgiGTezIOkzc_Z",
          "language": "404",
          "code": "// The requested resource was not found in the NoChannel system.\n{\n  \"name\": \"\",\n  \"code\": \"\",\n  \"detail\": \"\",\n  \"reason\": \"\"\n}"
        },
        {
          "id": "7EyMRZa8VfE7zlyYSSUXI",
          "language": "405",
          "code": "// This is to indicate that the server has received a request with an HTTP method that is not supported for the requested resource.\n{\n  \"name\": \"\",\n  \"code\": \"\",\n  \"detail\": \"\",\n  \"reason\": \"\"\n}"
        },
        {
          "id": "50zI3WvHOvbSdZVplzmid",
          "language": "409",
          "code": "// This response indicates that the server cannot process the request due to a conflict with the current state of the resource.  This typically occurs when a request attempts to create or modify a resource that already exists or conflicts with another resource.\n{\n  \"name\": \"\",\n  \"code\": \"\",\n  \"detail\": \"\",\n  \"reason\": \"\",\n  \"conflicts\": [\n    {\n      \"index\": 0,\n      \"id\": \"\",\n      \"existingResource\": \"\"\n    }\n  ]\n}"
        },
        {
          "id": "TS6rHVOkhtBcvFzwklDPA",
          "language": "423",
          "code": "// Consent Management is disabled or locked for the tenant, so consent operations are not allowed.\n[\n  {\n    \"name\": \"\",\n    \"code\": \"\",\n    \"detail\": \"\",\n    \"reason\": \"\"\n  }\n]"
        },
        {
          "id": "EqjlOF4W9tyf_DiNnIVB6",
          "language": "500",
          "code": "// There was an internal server error.\n{\n  \"name\": \"\",\n  \"code\": \"\",\n  \"detail\": \"\",\n  \"reason\": \"\"\n}"
        }
      ],
      "selectedLanguageId": "8ITJGG5mCoaBOamXFukMz"
    }
  },
  "children": [
    {
      "text": ""
    }
  ]
}