Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

There are generally 3 apis you should APIs to be aware of when working with combo values. Each API covers slightly different use cases. Those use cases are outlined in this document.

CRUD on combo values

This is the most general use case, where you don’t care about the combo values for specific cases and want to manage which combo values are availablean integration should manage the combo node definitions.

This requires the Editor_SystemTools_Metadata role.

There are 6 endpoints to be aware of here. These should feel natural if you have worked with REST before.

Response properties

Name

Type

Description

id

int

A language-independent id for this combo value.

optionValue

string

A language-independent string value for this combo value.

sortIndex

int

A value indicating how this node should be sorted in relation to all other combo value.

metaFieldId

int

The metafield id of the metafield this combo value belongs to.

itemId

int

The itemId of the combo value.

itemGuid

string/guid/uuid

The itemGuid of the combo value.

labels

dictionary

The translations of this combo value. The key is the languageId.

labels.label

string

The title/name/label of the combo value in this language.

labels.languageId

int

The language id of this translation.

labels.comboValueId

int

The language specific id of this combo value.

Get all combo values

URL: /digizuitecore/legacyservice/api/admin/combo-values

...

Expand
titleExample

Request

Code Block
GET https://<my-dam>/digizuitecore/legacyservice/api/admin/combo-values
Authorization: AccessKey MIIC...dEK

Response

Code Block
languagejson
[
  {
    "id": 50239,
    "optionValue": "five",
    "sortIndex": 0,
    "metaFieldId": 50398,
    "itemId": 20460,
    "itemGuid": "8129443f-be24-4c48-9579-b8c91be41385",
    "labels": {
      "1": {
        "label": "fem",
        "languageId": 1,
        "comboValueId": 50239
      },
      "3": {
        "label": "five",
        "languageId": 3,
        "comboValueId": 50240
      }
    }
  }
]

Get a specific combo value

URL: /digizuitecore/legacyservice/api/admin/combo-values/{id}

...

Expand
titleExample

Request

Code Block
GET https://<my-dam>/digizuitecore/legacyservice/api/admin/combo-values/50239
Authorization: AccessKey MIIC...dEK

Response

Code Block
languagejson
{
  "id": 50239,
  "optionValue": "five",
  "sortIndex": 0,
  "metaFieldId": 50398,
  "itemId": 20460,
  "itemGuid": "8129443f-be24-4c48-9579-b8c91be41385",
  "labels": {
    "1": {
      "label": "fem",
      "languageId": 1,
      "comboValueId": 50239
    },
    "3": {
      "label": "five",
      "languageId": 3,
      "comboValueId": 50240
    }
  }
}

Create a new combo value

URL: /digizuitecore/legacyservice/api/admin/combo-values

...

Expand
titleExample

Request

Code Block
POST https://<my-dam>/digizuitecore/legacyservice/api/admin/combo-values
Authorization: AccessKey MII...HVtw=
Content-Type: application/json

{
  "optionValue": "api-test",
  "sortIndex": 0,
  "labels": [
    {
      "label": "Api test - English",
      "languageId": 3
    },
    {
      "label": "Api test - Danish",
      "languageId": 1
    }
  ],
  "metaFieldId": 10192,
  "accessRightsMode": "CalculateAutomatically"
}

Response

Code Block
languagejson
{
  "id": 50243,
  "optionValue": "api-test",
  "sortIndex": 0,
  "metaFieldId": 10192,
  "itemId": 20500,
  "itemGuid": "9f2bfb9e-3d40-4940-be8e-d6d325c4c925",
  "labels": {
    "1": {
      "label": "Api test - Danish",
      "languageId": 1,
      "comboValueId": 50243
    },
    "3": {
      "label": "Api test - English",
      "languageId": 3,
      "comboValueId": 50244
    }
  }
}

Update a combo value

URL: /digizuitecore/legacyservice/api/admin/combo-values/{comboId}

...

Expand
titleExample

Request

Code Block
PUT https://<my-dam>/digizuitecore/legacyservice/api/admin/combo-values/50243
Authorization: AccessKey MII...HVtw=
Content-Type: application/json

{
  "optionValue": "api-test-updated",
  "sortIndex": 42,
  "comboId": 50243
}

Response

Code Block
{
  "id": 50243,
  "optionValue": "api-test-updated",
  "sortIndex": 42,
  "metaFieldId": 10192,
  "itemId": 20500,
  "itemGuid": "9f2bfb9e-3d40-4940-be8e-d6d325c4c925",
  "labels": {
    "1": {
      "label": "Api test - Danish",
      "languageId": 1,
      "comboValueId": 50243
    },
    "3": {
      "label": "Api test - English",
      "languageId": 3,
      "comboValueId": 50244
    }
  }
}

Update a combo value translation

URL: /digizuitecore/legacyservice/api/admin/combo-values/{comboId}/{languageId}

...

Expand
titleExample

Request

Code Block
PUT https://<my-dam>/digizuitecore/legacyservice/api/admin/combo-values/50243/3
Authorization: AccessKey MII...Vtw=
Content-Type: application/json

{
  "label": "Api test - English - updated"
}

Response

Code Block
languagejson
{
  "label": "Api test - English - updated",
  "languageId": 3,
  "comboId": 50243,
  "comboValueId": 50244
}

Delete a combo value

URL: /digizuitecore/legacyservice/api/admin/combo-values/{comboId}

...

Name

Type

Description

comboId (tick)

int

The language-independent id for this combo value.

synchronous

bool

If false or not passed, the value will be deleted in the background. This means you can still get the value back in the api and can still keep using it for a little while.

If true, the request will be held until the api is completely done cleaning up.

...