openapi: 3.2.0 info: version: 0.1.0 title: Whitespace Platform Labels API description:
Last update 29th May 2025

Our intention is to cover the API calls most of use to those wanting to integrate external systems to the Whitespace Platform. We will give some descriptions about usage, but put full detail in standalone documents at https://apidocs.whitespace.co.uk/. We intend to have the published endpoints and schemas documented to the level that the code generated can be used safely and without modification to call our APIs safely.

Calls exclusive to brokers or underwriters have a comment of Broker Only and Underwriter Only respectively. All other calls work for both, but functionality might depend on the stage the risk is at, or other contextual factors.
Where certain properties refer to RootID or similar, they are actually referring to the ID of the entire slip, encompassing all stages and instances of the contract. This is a unique 38-character reference starting with the letters IC. If they mention riskID or docID or placingID, these are refering to the ID of a specific document or contract instance within the slip. This is always the RootID of the base slip followed by a double colon, ::, and further characters.
Once your Integration is ready to go live, the URL for production is https://www.whitespaceplatform.com
servers: - description: Sandbox Environment url: https://sandbox.whitespace.co.uk/ - description: Tess Environment url: https://tess.whitespace.co.uk/ - description: Beta Environment url: https://beta.whitespace.co.uk/ - description: Staging Environment url: https://staging.whitespace.co.uk/ security: - bearerAuth: [] tags: - name: Labels paths: /api/labels/{root_or_label_ID}: delete: summary: Delete a label from a risk tags: - Labels parameters: - in: path name: root_or_label_ID schema: type: string required: true description: The full document ID for the label document example: IC7B4C4ECF-5340-4A88-B5BE-A4ECE8859B61::LBL::BLACKROBOT::AUTOAPIJENKINS201021::High-Priority::2021-11-23::08:36:55 responses: '200': description: A confirmation of the deletion content: application/json: schema: type: object properties: ok: type: boolean example: true description: true if the label was deleted id: type: string description: The full document ID for the label document example: IC7B4C4ECF-5340-4A88-B5BE-A4ECE8859B61::LBL::BLACKROBOT::AUTOAPIJENKINS201021::High-Priority::2021-11-23::08:36:55 rev: type: string description: the revision for the document example: 2-4412b4f96247795da30b19250bbf5e00 get: summary: Gets an array of labels for the risk tags: - Labels parameters: - in: path name: root_or_label_ID schema: type: string required: true description: The first part of the riskID, starting IC and stopping before any '::' delimiters. NEW in 2.20 - You can not add the same label multiple times on the same risk. example: IC213DA609-D6B5-4A05-86B8-3FD91E861F57 responses: '200': description: An array of label documents for the risk content: application/json: schema: type: array items: $ref: '#/components/schemas/RWLabel' post: summary: Adds a label to a risk description: The payload covers the label text and team tags: - Labels parameters: - in: path name: root_or_label_ID schema: type: string required: true description: The first part of the riskID, starting IC and stopping before any '::' delimiters example: IC213DA609-D6B5-4A05-86B8-3FD91E861F57 requestBody: content: application/json: schema: type: object properties: channel: description: the team channel for the label example: carrier_MARINECASUALTY type: string title: description: the text of the label example: High Priority type: string responses: '200': description: Response for adding a label succesfully content: application/json: schema: type: object properties: id: type: string description: the document ID for the added label example: IC7B4C4ECF-5340-4A88-B5BE-A4ECE8859B61::LBL::BLACKROBOT::AUTOAPIJENKINS201021::High-Priority::2021-11-23::08:36:55 rev: type: string description: the revision for the document example: 1-9eb01c8b711503293b57aafa63aa70c4 ok: type: boolean description: true if the labels was saved example: true /api/labels/suggested: get: summary: A list of frequently used labels to prompt the user§ tags: - Labels responses: '200': description: array of label strings content: application/json: schema: type: array items: type: string example: High Priority /api/labels/teamLabels: get: summary: A list of all labels applied to risks for the team tags: - Labels responses: '200': description: An array of label documents across multiple risk content: application/json: schema: type: array items: $ref: '#/components/schemas/RWLabel' components: schemas: RWLabel: type: object properties: _id: type: string description: the unique id of the label document example: IC7B4C4ECF-5340-4A88-B5BE-A4ECE8859B61::LBL::BLACKROBOT::AUTOAPIJENKINS201021::High-Priority::2021-11-23::08:36:55 _rev: type: string description: the revision number of the document example: 1-9eb01c8b711503293b57aafa63aa70c4 channels: type: array items: type: string description: channels for teams able to see the document example: carrier_MARINECASUALTY companyID: type: string description: the ID of the company example: BLACKROBOT createdAt: type: string description: the date and time the document was created example: '2021-11-23 08:36:55' rootID: type: string description: the rootID of the related risk example: IC7B4C4ECF-5340-4A88-B5BE-A4ECE8859B61 teamID: type: string description: the ID of the team example: AUTOAPIJENKINS201021 title: type: string description: the text of the label example: High Priority type: type: string description: the type of document example: RWLabel securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT