Open Documentation Menu

Public API

Authentication for the public API is carried out using the API keys. To create an API key, see API key.

Calling endpoints

The x-api-key header requires the API key when calling endpoints.

Endpoints 

Input value

Return value

Rejection

Apply permission rule set to contract 

POST  

/_api/v1/:tenantId/:instanceId/permissions/rules/apply/:contractId 

zero

{
    "status": "ok",
    "data": null,
    "error": null
}

HTTP status code 429

{
    "status": "error",
    "data": null,
    "error": {
        "message": "Permissions update for contract \":contractId\" was requested before. Please retry after (0-300) seconds.",
        "retryAfter": 0-300 (number)
    }
}

Generate contract ID 

POST  

/_api/v1/:tenantId/:instanceId/id-gen/id/generate 

Optional

{
    "configName": "config-name-goes-here"
}
{
    "status": "ok",
    "data": {
        "generatedId": "CM-00123" (string)
    },
    "error": null
}

HTTP status code 500

{
    "status": "error",
    "data": null,
    "error": {
        "message": "An error occurred while generating id for instance \":instanceId\" (looking for configName: \"foobar\")"
    }
}

Calculate contract term 

GET 

/_api/v1/:tenantId/:instanceId/contracts/term/calculate 

Query parameter

Query parameter

Example value (type)

contractStart

(mandatory value)

20230101 (number, format: YYYYMMDD)

dateOfObservation

20240617 (number, format: YYYYMMDD, default is current day)

periodAmount

12 (number)

periodUnit

m (d,w,m,y)

periodFixEndDate

20231231 (number, format: YYYYMMDD)

extensionAmount

12 (number)

extensionUnit

m (d,w,m,y)

openEnded

true (boolean)

cancellationAmount

12 (number)

cancellationUnit

m (d,w,m,y)

endOption

EndOfMonth (EndOfContract, EndOfMonth, EndOfQuarter, EndOfHalfYear, EndOfYear)

{
    "status": "ok",
    "data": {
        "nextEnd": "2025-12-31",
        "nextTermination": "2024-12-31"
    },
    "error": null
}

HTTP status code 422

{
    "status": "error",
    "data": null,
    "error": {
      "message": "Validation Failed",
        "details": {
            "queryParameterName": {
                "message": "'queryParameterName' is required"
        	}
    	}
    }
}
{
    "status": "error",
    "data": null,
    "error": {
      "message": "Validation Failed",
        "details": {
            "queryParameterName": {
                "message": "should be one of the following; ['d','w','m','y']",
                "value": "n"
            }
        }
    }
}