Documentation for a newer release is available. View Latest

Settings Schemas

The Schemas functionality defines the structure and attributes of all settings managed by the API. By providing detailed schemas for payloads and searchable fields, it ensures data consistency and integrity.

The API provides three schema endpoints:

GET/settings-objects/schemas: Retrieves searchable field and payload schemas for all setting types.

GET/settings-objects/{settingType}/examples/payload: Returns the payload schema specific to a given setting type.

GET/settings-objects/{settingType}/examples/searchableFields: Retrieves the searchable fields associated with a specific setting type.

Each schema outlines the data type of every field and specifies the mandatory fields required in the payload.

GET/settings-objects/schemas Response Example

{
  "settings": [
    {
      "settingType": "testType",
      "searchableFieldsSchema": {
        "type": "object",
        "properties": {
          "uniqueId": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "processingEntity": {
            "type": "string"
          },
          "source": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "idList": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "atTime": {
            "type": "string",
            "format": "date-time"
          }
        }
      },
      "payloadSchema": {
        "TestSubSetting": {
          "required": [
            "uniqueId"
          ],
          "type": "object",
          "properties": {
            "uniqueId": {
              "type": "string"
            }
          }
        },
        "CommonTestSubSetting": {
          "required": [
            "uniqueId"
          ],
          "type": "object",
          "properties": {
            "uniqueId": {
              "type": "string"
            },
            "commonField": {
              "type": "string"
            }
          }
        },
        "TestSetting": {
          "required": [
            "testSubSetting",
            "testSubSettings",
            "uniqueId"
          ],
          "type": "object",
          "properties": {
            "uniqueId": {
              "maxLength": 70,
              "minLength": 0,
              "type": "string"
            },
            "anotherField": {
              "maxLength": 70,
              "minLength": 1,
              "pattern": "[0-9A-Z]{11}",
              "type": "string"
            },
            "testSubSetting": {
              "$ref": "#/components/schemas/TestSubSetting"
            },
            "testSubSettings": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/TestSubSetting"
              }
            },
            "testEnum": {
              "type": "string",
              "enum": [
                "VALUE_1",
                "VALUE_2"
              ]
            },
            "commonTestSubSetting": {
              "$ref": "#/components/schemas/CommonTestSubSetting"
            }
          }
        }
      }
    }
  ]
}