Collection resource properties

Add MCP server to your AI tool

Allow AI tools and LLMs to interact with the API documentation portal through MCP.

MCP server URL

https://developer.pexipengage.com/mcp

Standard setup for AI tools providing an mcp.json file

mcp.json
"Pexip Engage MCP server": {
  "url": "https://developer.pexipengage.com/mcp"
}
Close

When a resource has a property that is a collection, this collection can also be modified. Although making a PATCH request allows to pass only specific properties that need to be changed, passing such a collection property in a PATCH request will replace the entire collection. This means that it is not possible to add/update/remove specific items in the collection.

Taking the Form questions endpoints as an example, a GET /forms/123/questions/456 response might look as follows:

{
  "data": {
    "id": "456",
    "inputType": "SELECT",
    "order": 5,
    "required": true,
    "label": {
      "language": "en",
      "value": "Marital status"
    },
    ...
    "answerOptions": [
      {
        "label": {
          "language": "en",
          "value": "Single"
        },
        "value": "single",
        "externalId": null,
        "order": 0,
        "translations": {
          "label": [
            {
              "language": "en",
              "value": "Single"
            },
            {
              "language": "nl",
              "value": "Alleenstaand"
            }
          ]
        }
      },
      {
        "label": {
          "language": "en",
          "value": "Married"
        },
        "value": "married",
        "externalId": null,
        "order": 1,
        "translations": {
          "label": [
            {
              "language": "en",
              "value": "Married"
            },
            {
              "language": "nl",
              "value": "Getrouwd"
            }
          ]
        }
      }
    ]
  }
}

A PATCH /forms/123/questions/456 request body to make the question optional and add an answer option should be made as follows:

{
  "required": false,
  "answerOptions": [
    {
      "label": {
        "language": "en",
        "value": "Single"
      },
      "value": "single",
      "externalId": null,
      "order": 0,
      "translations": {
        "label": [
          {
            "language": "en",
            "value": "Single"
          },
          {
            "language": "nl",
            "value": "Alleenstaand"
          }
        ]
      }
    },
    {
      "label": {
        "language": "en",
        "value": "Married"
      },
      "value": "married",
      "externalId": null,
      "order": 1,
      "translations": {
        "label": [
          {
            "language": "en",
            "value": "Married"
          },
          {
            "language": "nl",
            "value": "Getrouwd"
          }
        ]
      }
    },
    {
      "label": {
        "language": "en",
        "value": "Widowed"
      },
      "value": "widowed",
      "externalId": null,
      "order": 2,
      "translations": {
        "label": [
          {
            "language": "en",
            "value": "Widowed"
          },
          {
            "language": "nl",
            "value": "Verweduwd"
          }
        ]
      }
    }
  ]
}

Note that even though the first two answer options remained untouched, they still need to be provided in the request because of the behavior of the PATCH operation on collection properties (replacement of the entire collection).