Solutions

Solutions APIs are components of our comprehensive suite of endpoints designed to automate Software Development Life Cycle (SDLC) processes for embedded integrations. For a complete SDLC pipeline implementation, start with our Projects APIs documentation, as Projects APIs handle the core integration logic and configuration. Solutions APIs then manage how changes are applied to solution instances.

After importing a project into the target environment:

  1. Use the Get Publish Preview API to validate the impact of publishing the draft solution. This step highlights any potential breaking changes.
  2. Use the Publish Solution API to publish the solution draft. Solution instances will automatically upgrade if no breaking changes are detected.
  3. When breaking changes are present, additional steps are required to upgrade existing solution instances. For managing these upgrades, refer to the Solution Instances APIs documentation.

Embedded Deployment:

  • Project import updates the draft solution
  • Publishing solution required to apply changes to existing solution instances
  • May require manual solution instance upgrades in case of breaking changes

Get publish preview

post/core/v1/solutions/{solutionId}/releases/previews

Check impact on destination solution ahead of publishing

SecuritybearerAuth
Request
path Parameters
solutionId
required
string <uuid>

ID of the solution for which the release is meant to be previewed

Responses
200

success

Response Schema: application/json
releaseId
string <uuid>

ID of the solution release (not present in case of preview endpoint)

breakingChanges
required
boolean

Informs if new version of the solution is introducing breaking changes

requiresNewUserInput
required
boolean

Informs if new version of the solution required new end user input

requiresNewSystemInput
required
boolean

Informs if new version of the solution required new system input

required
object (solution.release.PublishSolutionImpactView.AuthSlotChangesView)

Auth slots changes

required
object (solution.release.PublishSolutionImpactView.ConfigSlotChangesView)

Config slots changes

400

Invalid Input

401

Unauthorized

403

Forbidden

404

Not Found

429

Limit exceeded

500

Internal Error

Request samples
Response samples
application/json
{
  • "releaseId": "829d5913-a352-42a5-be6f-1526f30c0c85",
  • "breakingChanges": true,
  • "requiresNewUserInput": true,
  • "requiresNewSystemInput": true,
  • "authSlots": {
    • "created": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
        • "title": "string",
        • "description": "string",
        • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
        • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
        • "scopes": [
          • "string"
          ],
        • "externalId": "string",
        • "static": true,
        • "hidden": true,
        • "skipCTA": true,
        • "requireUnique": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "recreated": true,
        • "slotRecreationReasons": [
          • {
            • "code": "AuthenticationIdChanged",
            • "message": "string"
            }
          ],
        • "recreatedFromSlotId": "8a240360-7587-4734-bdc5-74d5f0cc6e8c"
        }
      ],
    • "updated": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "title": "string",
        • "description": "string",
        • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
        • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
        • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
        • "scopes": [
          • "string"
          ],
        • "externalId": "string",
        • "static": true,
        • "hidden": true,
        • "skipCTA": true,
        • "requireUnique": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "previously": {
          • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          • "title": "string",
          • "description": "string",
          • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
          • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
          • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
          • "scopes": [
            • "string"
            ],
          • "externalId": "string",
          • "static": true,
          • "hidden": true,
          • "skipCTA": true,
          • "requireUnique": true
          }
        }
      ],
    • "removed": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "title": "string",
        • "description": "string",
        • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
        • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
        • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
        • "scopes": [
          • "string"
          ],
        • "externalId": "string",
        • "static": true,
        • "hidden": true,
        • "skipCTA": true,
        • "requireUnique": true
        }
      ]
    },
  • "configSlots": {
    • "created": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "key": "string",
        • "title": "string",
        • "description": "string",
        • "externalId": "string",
        • "valueType": "string",
        • "ddl": true,
        • "ddlConfiguration": {
          • "allowSetCustomValue": true
          },
        • "required": true,
        • "useDefaultValue": true,
        • "defaultValue": "string",
        • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
        • "static": true,
        • "hidden": true,
        • "hasCustomJs": true,
        • "hasDataMapping": true,
        • "disabledResetType": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "recreated": true,
        • "slotRecreationReasons": [
          • {
            • "code": "ConfigVariableKeyChanged",
            • "message": "string"
            }
          ],
        • "recreatedFromSlotId": "8a240360-7587-4734-bdc5-74d5f0cc6e8c"
        }
      ],
    • "updated": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "key": "string",
        • "title": "string",
        • "description": "string",
        • "externalId": "string",
        • "valueType": "string",
        • "ddl": true,
        • "ddlConfiguration": {
          • "allowSetCustomValue": true
          },
        • "required": true,
        • "useDefaultValue": true,
        • "defaultValue": "string",
        • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
        • "static": true,
        • "hidden": true,
        • "hasCustomJs": true,
        • "hasDataMapping": true,
        • "disabledResetType": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "previously": {
          • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          • "key": "string",
          • "title": "string",
          • "description": "string",
          • "externalId": "string",
          • "valueType": "string",
          • "ddl": true,
          • "ddlConfiguration": {
            • "allowSetCustomValue": true
            },
          • "required": true,
          • "useDefaultValue": true,
          • "defaultValue": "string",
          • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
          • "static": true,
          • "hidden": true,
          • "hasCustomJs": true,
          • "hasDataMapping": true,
          • "disabledResetType": true
          }
        }
      ],
    • "removed": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "key": "string",
        • "title": "string",
        • "description": "string",
        • "externalId": "string",
        • "valueType": "string",
        • "ddl": true,
        • "ddlConfiguration": {
          • "allowSetCustomValue": true
          },
        • "required": true,
        • "useDefaultValue": true,
        • "defaultValue": "string",
        • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
        • "static": true,
        • "hidden": true,
        • "hasCustomJs": true,
        • "hasDataMapping": true,
        • "disabledResetType": true
        }
      ]
    }
}

Publish solution

post/core/v1/solutions/{solutionId}/releases

Publishes the draft solution. If no breaking changes are detected, solution instances are automatically upgraded to the published version. Otherwise, a manual upgrade is required.

SecuritybearerAuth
Request
path Parameters
solutionId
required
string <uuid>

ID of the solution to publish

Responses
200

success

Response Schema: application/json
releaseId
string <uuid>

ID of the solution release (not present in case of preview endpoint)

breakingChanges
required
boolean

Informs if new version of the solution is introducing breaking changes

requiresNewUserInput
required
boolean

Informs if new version of the solution required new end user input

requiresNewSystemInput
required
boolean

Informs if new version of the solution required new system input

required
object (solution.release.PublishSolutionImpactView.AuthSlotChangesView)

Auth slots changes

required
object (solution.release.PublishSolutionImpactView.ConfigSlotChangesView)

Config slots changes

400

Invalid Input

401

Unauthorized

403

Forbidden

404

Not Found

429

Limit exceeded

500

Internal Error

Request samples
Response samples
application/json
{
  • "releaseId": "829d5913-a352-42a5-be6f-1526f30c0c85",
  • "breakingChanges": true,
  • "requiresNewUserInput": true,
  • "requiresNewSystemInput": true,
  • "authSlots": {
    • "created": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
        • "title": "string",
        • "description": "string",
        • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
        • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
        • "scopes": [
          • "string"
          ],
        • "externalId": "string",
        • "static": true,
        • "hidden": true,
        • "skipCTA": true,
        • "requireUnique": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "recreated": true,
        • "slotRecreationReasons": [
          • {
            • "code": "AuthenticationIdChanged",
            • "message": "string"
            }
          ],
        • "recreatedFromSlotId": "8a240360-7587-4734-bdc5-74d5f0cc6e8c"
        }
      ],
    • "updated": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "title": "string",
        • "description": "string",
        • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
        • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
        • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
        • "scopes": [
          • "string"
          ],
        • "externalId": "string",
        • "static": true,
        • "hidden": true,
        • "skipCTA": true,
        • "requireUnique": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "previously": {
          • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          • "title": "string",
          • "description": "string",
          • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
          • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
          • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
          • "scopes": [
            • "string"
            ],
          • "externalId": "string",
          • "static": true,
          • "hidden": true,
          • "skipCTA": true,
          • "requireUnique": true
          }
        }
      ],
    • "removed": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "title": "string",
        • "description": "string",
        • "authenticationId": "c97ede01-dc79-4cb7-8ae8-9e2457649b27",
        • "serviceId": "8f8bb40f-b96b-40fe-9064-5031fbe483f9",
        • "serviceEnvironmentId": "a6e07c5a-ab15-47f2-8575-5bb51b45c412",
        • "scopes": [
          • "string"
          ],
        • "externalId": "string",
        • "static": true,
        • "hidden": true,
        • "skipCTA": true,
        • "requireUnique": true
        }
      ]
    },
  • "configSlots": {
    • "created": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "key": "string",
        • "title": "string",
        • "description": "string",
        • "externalId": "string",
        • "valueType": "string",
        • "ddl": true,
        • "ddlConfiguration": {
          • "allowSetCustomValue": true
          },
        • "required": true,
        • "useDefaultValue": true,
        • "defaultValue": "string",
        • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
        • "static": true,
        • "hidden": true,
        • "hasCustomJs": true,
        • "hasDataMapping": true,
        • "disabledResetType": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "recreated": true,
        • "slotRecreationReasons": [
          • {
            • "code": "ConfigVariableKeyChanged",
            • "message": "string"
            }
          ],
        • "recreatedFromSlotId": "8a240360-7587-4734-bdc5-74d5f0cc6e8c"
        }
      ],
    • "updated": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "key": "string",
        • "title": "string",
        • "description": "string",
        • "externalId": "string",
        • "valueType": "string",
        • "ddl": true,
        • "ddlConfiguration": {
          • "allowSetCustomValue": true
          },
        • "required": true,
        • "useDefaultValue": true,
        • "defaultValue": "string",
        • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
        • "static": true,
        • "hidden": true,
        • "hasCustomJs": true,
        • "hasDataMapping": true,
        • "disabledResetType": true,
        • "hasBreakingChange": true,
        • "changes": [
          • {
            • "message": "string",
            • "code": "CreatedMandatorySlot",
            • "breakingChange": true
            }
          ],
        • "previously": {
          • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
          • "key": "string",
          • "title": "string",
          • "description": "string",
          • "externalId": "string",
          • "valueType": "string",
          • "ddl": true,
          • "ddlConfiguration": {
            • "allowSetCustomValue": true
            },
          • "required": true,
          • "useDefaultValue": true,
          • "defaultValue": "string",
          • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
          • "static": true,
          • "hidden": true,
          • "hasCustomJs": true,
          • "hasDataMapping": true,
          • "disabledResetType": true
          }
        }
      ],
    • "removed": [
      • {
        • "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        • "key": "string",
        • "title": "string",
        • "description": "string",
        • "externalId": "string",
        • "valueType": "string",
        • "ddl": true,
        • "ddlConfiguration": {
          • "allowSetCustomValue": true
          },
        • "required": true,
        • "useDefaultValue": true,
        • "defaultValue": "string",
        • "referencedAuthSlotId": "f5f8ae2d-fc82-4ec7-b1c9-f37f031f3d33",
        • "static": true,
        • "hidden": true,
        • "hasCustomJs": true,
        • "hasDataMapping": true,
        • "disabledResetType": true
        }
      ]
    }
}