Whitespace Activities API

The Activities API from Whitespace — 4 operation(s) for activities.

Operations 4

GET /api/activities/{riskID} A list of the activity documents that describe the history of one specific document instance
GET /api/activities/{rootID}/full A list of the activity documents that describe the full history of a root risk
GET /api/activities/filter/help A help file detailing use of the POST /activities/filter API
POST /api/activities/filter Fetch a list of all activity visible to the user matching a specific activity type and optional date range

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/whitespace-london-activities-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

whitespace-london-activities-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 0.1.0
  title: Whitespace Platform Activities API
  description: <div>Last update 29th May 2025</div> <p/> <div>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  <a href='https://apidocs.whitespace.co.uk/'>https://apidocs.whitespace.co.uk/</a>. 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.</div>  <p/> <div>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.</div> <div>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.</div> <div> Once your Integration is ready to go live, the URL for production is <b>https://www.whitespaceplatform.com</b></div>
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: Activities
paths:
  /api/activities/{riskID}:
    get:
      summary: A list of the activity documents that describe the history of one specific document instance
      description: This endpoint returns the activity associated with one specific version of a contract or another single document associated with a risk. In most cases, this will be less useful than GET /activities/{RootID}/full, which returns all the activities associated with a root risk.
      tags:
      - Activities
      parameters:
      - in: path
        name: riskID
        schema:
          type: string
        required: true
        description: The unique ID of the specific document/contract instance to retrieve the list of activity documents for
        example: IC213DA609-D6B5-4A05-86B8-3FD91E861F57::FO
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  description: The data associated with an individual activity document. Note that other, activity-specific objects may be present in some cases
                  properties:
                    _id:
                      type: string
                      description: 'The ID of the activity document that this object summarises '
                      example: IC70286F5F-9457-41D7-AE71-16222BECEF21::ACTI::CF3DD75F-AC80-4CEA-BD3E-3E307F17A8BD
                    activity:
                      type: string
                      description: The live description of the action that created this document (which sometimes extends the "hardcodedActivity" value to be more explicit). For a list of activities please refer to the /activities/filter/help endpoint
                      example: Created New Placement
                    channels:
                      type: array
                      description: A list of the user channels associated with the action that generated this activity document
                      items:
                        type: string
                        description: The name of each channel
                        example: carrier_MARINECASUALTY
                    _rev:
                      type: string
                      description: The system-generated version number of the activity document. The number before the - is generated sequentially, starting at 1
                      example: 1-a302cd4445e3d12c33fdabf467e2789b
                    userID:
                      type: string
                      description: The user ID of the user who took the action generating the activity document
                      example: MUD38EC011-780A-42D3-94DA-FD9063F5DAF9
                    hardcodedActivity:
                      type: string
                      description: The hardcoded description of the action that created this document (which is sometimes augmented by the "activity" value). For a full list of activities please refer to the /activities/filter/help endpoint
                      example: Created New Placement
                    provenance:
                      type: array
                      items:
                        $ref: '#/components/schemas/ExtendedMRC/properties/provenance'
                    parentDocID:
                      type: string
                      description: The ID of the risk or document that the activity document relates to
                      example: IC70286F5F-9457-41D7-AE71-16222BECEF21
                    type:
                      type: string
                      description: The internal system identifier for activity documents, which will always be RWActivity
                      example: RWActivity
                    createdAt:
                      type: string
                      description: The creation date of the activity document, in YYYY-MM-DD hh:mm:ss format
                      example: '2022-05-09 11:44:41'
                    apnsData:
                      $ref: '#/components/schemas/RWComment/properties/apnsData'
                    linkedArchiveID:
                      type: string
                      description: The archive copy of the risk or document that the action was applied to
                      example: IC70286F5F-9457-41D7-AE71-16222BECEF21::ARCH::96C8C81A-C8B6-44AA-BF4C-03FE2812AF56
        '401':
          $ref: '#/paths/~1api~1risks~1save/post/responses/401'
  /api/activities/{rootID}/full:
    get:
      summary: A list of the activity documents that describe the full history of a root risk
      description: This endpoint returns the activities that have been performed on all of the contract instances falling under a root risk and all of its associated attachments or other documents. The activity documents summarised by this endpoint record the complete history of that risk across its lifespan. To target one specific version of a contract, or one attachment, endorsement, or other document, use GET /activities/{RiskID}, or to target a specific activity type within a date range across all root risks visible to the user, use GET /activities/filter.
      tags:
      - Activities
      parameters:
      - in: path
        name: rootID
        schema:
          type: string
        required: true
        description: The unique ID of a root risk to retrieve the complete list of activity documents for
        example: IC213DA609-D6B5-4A05-86B8-3FD91E861F57
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/paths/~1api~1activities~1%7BriskID%7D/get/responses/200/content/application~1json/schema/items'
        '401':
          $ref: '#/paths/~1api~1risks~1save/post/responses/401'
  /api/activities/filter/help:
    get:
      tags:
      - Activities
      summary: A help file detailing use of the POST /activities/filter API
      description: This call returns instructions on using the POST /activities/filter API to return a list of activity documents visible to the user, filtered by activity type and, optionally, date and time. The instructions include a list of the most commonly filtered activities. For a complete and fully up-to-date list of activities, please email support@whitespace.co.uk
      responses:
        '200':
          description: OK
          content:
            application/json:
              example:
                messages:
                - These are the most useful activities.
                - The input to /activities/filter needs an exact match, including case, punctuation and whitespace.
                - For a complete list email support@whitespace.co.uk
                - The from input can be a date as 'YYYY-MM-DD' or 'YYYY-MM-DD hh:mm:ss', or 'N minutes / hours / days' to cover a timespan up to now
                Sample input 1:
                  from: '2019-11-29'
                  activity: Signed Lines
                  to: '2019-11-29 23:59:59'
                Sample input 2:
                  from: 2 hours
                  activity: Quoted
                Sample input 3:
                  activity: Signed Lines
                activities:
                - Accepted a Quote
                - Accepted a Quote Request
                - Accepted on behalf of Buyer
                - Added an Attachment
                - Added an Attachment from a Subjectivity Response
                - Changed or Added a Line item
                - Created New Placement
                - Declined Quote Request
                - Line Written
                - Offered Quote
                - Placing Updated
                - Quote Not Taken Up
                - Quote Requested
                - Quoted
                - Requested a Line
                - Sent to Broker
                - Showed to Following Market
                - Signed Lines
                - Subjectivities/Line Conditions Accepted
                - Subjectivities/Line Conditions Rejected
        '401':
          $ref: '#/paths/~1api~1risks~1save/post/responses/401'
  /api/activities/filter:
    post:
      tags:
      - Activities
      summary: Fetch a list of all activity visible to the user matching a specific activity type and optional date range
      description: A parameter matching a single activity is required for this call, but the 'from' and 'to' parameters are optional, and take a date/time block in yyyy-mm-dd hh:mm:ss format. If the date parameters are missing, all visible activity documents matching the activity will be returned. Note that the 'from' parameter can instead accept a duration. If a duration is used, it is calculated backwards from the present time, and the 'to' parameter should be omitted. See GET /activities/filter/help for example payloads and a list of commonly requested activities.
      requestBody:
        description: Array of filter criteria
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                activity:
                  type: string
                  description: Only activity documents containing an activity key-pair with a value identical to this parameter will be returned by the call.
                  example: Line Written
                from:
                  type: string
                  description: Match documents no older than (a) a date/time in yyyy-mm-dd hh:mm:ss format, or (b) a period of time in minutes, hours, or days, e.g. 5 minutes, 18 hours, 365 days. If omitted, all matching documents in the database up to the 'to' parameter will be returned.
                  example: '2019-11-29T23:59:59.000Z'
                to:
                  type: string
                  description: Match documents no more recent than a date/time in yyyy-mm-dd hh:mm:ss format. If omitted, all matching documents up to the present time will be returned.
                  example: '2022-07-31T23:59:59.000Z'
      responses:
        '200':
          description: A list of activity document summary arrays
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RWActivity'
        '401':
          $ref: '#/paths/~1api~1risks~1save/post/responses/401'
components:
  schemas:
    ExtendedMRC:
      type: object
      description: JSON returned by getExtendedMRC including the Risk and a broader range of data
      properties:
        createdAt:
          type: string
          example: '2021-08-04T15:18:02.000Z'
        updatedAt:
          type: string
          example: '2021-08-04T15:18:02.000Z'
        type:
          type: string
          example: RWPlacing
          description: RWPlacing in all cases
        control:
          $ref: '#/components/schemas/RWPlacing/properties/control'
        channels:
          type: array
          items:
            type: string
            example: ajc_ALL
        MRCContract:
          $ref: '#/components/schemas/RWPlacing/properties/MRCContract'
        questionnaire:
          type: object
          properties:
            questionnaire:
              type: object
              properties:
                questions:
                  type: array
                  items:
                    type: object
                    properties:
                      tag:
                        type: string
                        example: Pension_Or_Benefits_Plan_Company_Sponsor
                        description: name of the tag
                      text:
                        type: string
                        example: Does the company sponsor any pension or benefits plan?
                        description: The Question text
                      id:
                        type: string
                        example: Pension or Benefits Plan - Company Sponsor
                        description: the id of the question
                      hidden:
                        type: boolean
                        example: true
                        description: If the question is hidden or not, usually because the dependant question has not been answered
                      table:
                        type: array
                        items:
                          type: object
                          properties:
                            tag:
                              type: string
                              example: Asset_Amount_Year
                            text:
                              type: string
                              example: Year
                        required:
                        - tag
                        - text
                    required:
                    - text
                    - id
                    - tag
              required:
              - questions
          required:
          - questionnaire
        proposedEndorsementFollowers:
          type: object
          description: an object where the keys are the carrier team ids and the values are 'unchosen', 'leader', 'agreementParty', 'notifyParty', 'nonNotifyParty'
          properties:
            palermo_ALL:
              description: as an example, the follower status for the Palermo All Risks team
              type: string
              example: leader
        provenance:
          type: object
          description: Meta-data about the document to aid with auditing
          properties:
            version:
              type: string
              description: Version message of the platform system that created the document
              example: 2022-04-11@15:04:48
            dataHash:
              type: string
              description: Data hash of the activity document
              example: 485241de4e5bfc76a0e2ef8bab79350c02d3aa06846fd2996cbf9fc9a7840eb0
            system:
              type: string
              description: The internal name of the platform system
              example: LavAPI
            userID:
              type: string
              description: The user ID of the user whose action generated the document
              example: MUB980AB60-1C96-4092-A1B4-B8FB183360D1
            writtenAt:
              type: string
              description: The creation date of the document, in YYYY-MM-DD hh:mm:ss format
              example: '2022-05-09T11:44:41.000Z'
            provHash:
              type: string
              description: Provisioning hash of the document
              example: 76a209a16d8b9214e7a33483d78718cc1a7e7aed7047282d2c94417404558e2d
        accountDocID:
          type: string
          example: ''
        writtenLineSets:
          type: array
          description: the written lines on the contract
          items:
            $ref: '#/components/schemas/RWWrittenLineSet'
        signedLineSets:
          type: array
          description: the signed lines on the contract
          items:
            $ref: '#/components/schemas/RWSignedLineSet'
        platformReferences:
          type: object
          description: document and revision of the risk
          properties:
            RiskID:
              type: string
              description: the document ID of the risk
              example: IC08B5EC17-5486-4323-82FC-62CC8C410EA0::FO::EN1
            Revision:
              type: string
              description: the revision of the risk
              example: 4-b63141573da07d5316b7a2b4585fbd2b
    RWActivity:
      type: object
      description: The summary data associated with an individual activity document.
      properties:
        _id:
          type: string
          description: The RiskID of the activity document that this JSON object summarises
          example: IC213DA609-D6B5-4A05-86B8-3FD91E861F57::FO::ACTI::CARRIER::MARINECASUALTY::LGUS
        activity:
          type: string
          description: The live description of the action that created this document (which sometimes extends the "hardcodedActivity" value to be more explicit)
          example: Requested a Line
        apnsData:
          type: object
          $ref: '#/components/schemas/RWComment/properties/apnsData'
        channels:
          type: array
          description: A list of the user channels associated with the action that generated this activity document
          items:
            type: string
            description: The name of each channel
            example: carrier_MARINECASUALTY
        parentDocID:
          type: string
          description: The RiskID of the specific contract version associated with the activity document
          example: IC213DA609-D6B5-4A05-86B8-3FD91E861F57::FO
        hardcodedActivity:
          type: string
          description: The hardcoded description of the action that created this document (which sometimes is augmented by the "activity" value)
          example: Line Written
        linkedArchiveID:
          type: string
          description: ID of the Archived document
        RWSignedLineSet:
          type: array
          items:
            type: object
            description: The data for the signed line
            properties:
              sectionIdentifiers:
                type: array
                description: the sections of the risk to which the signed line is attached
                items:
                  type: object
              businessUnit:
                type: string
                example: Catania Insurers Ltd
                description: the business unit for the underwriter who put down the line
              stampedAt:
                type: string
                description: The moment when the line was put down in YYYY-MM-DD hh:mm:ss format'
                example: '2019-10-01 09:31:43'
              subjectivities:
                type: array
                description: detail of any subjectivities added by the underwriter
                items:
                  type: object
              stamperChannel:
                type: string
                description: channel for the underwriter who put down the line
                example: catania_ALL
              contractArchiveID:
                type: string
                description: the archive of the risk document at the moment the line was put down
                example: IC9642312E-D0E2-46FE-8B08-9C3002C1DEC9::FO::CATANIA::ALL::ARCH::5A734DCC-98CC-4C41-A42F-3A43A5E44EE0
              toStand:
                type: boolean
                description: true if the underwriter has put down the stamp To Stand, i.e. may not be signed down
              impressions:
                type: array
                description: each item represents the use of an inked stamp to indicate the line being put down
                items:
                  type: object
                  properties:
                    riskCodes:
                      type: array
                      items:
                        type: object
                        properties:
                          code:
                            type: string
                            example: H3
                            description: the risk code allocated to the written line
                          index:
                            type: string
                            description: the index order of the risk code
                            example: '0'
                    signedLinePercentageString:
                      type: string
                      description: the percentage signed by the broker, which may be less than the written line
                      example: '44.0272'
                    writtenLinePercentageString:
                      type: string
                      description: the percentage written by the underwriter
                      example: '45'
                    uwRefs:
                      type: array
                      items:
                        type: string
                        description: the code allocated by the underwriter, frequently limited to 12 letters and numbers
                        example: FHSDJFSDHFSD
                    tiltAngleString:
                      type: string
                      description: the angle of the stamp on the printed page, to give the appearance of manually stamped paper
                      example: '0.04264535201250923'
                    stamp:
                      type: object
                      properties:
                        bureauMarket:
                          type: string
                          description: the bureau market for the underwriting 'paper' used to provide cover
                          example: Lloyd's
                        uniqueID:
                          type: string
                          description: the platform's internal unique code for this stamp
                          example: STBA841D6D-EB9F-4729-96BA-67BE91C73CE8
                        businessUnit:
                          type: string
                          description: the business unit for the underwriting 'paper' used to provide cover
                          example: Lloyd's Syndicate 1314
                        stampType:
                          type: string
                          description: to distinguish between Lloyd's and the Company Market
                          example: lloyds
                        bureauMarketCode:
                          type: string
                          description: the bureau market code, which is the Syndicate Number within Lloyd's
                          example: '1314'
                        bureauSubMarket:
                          description: the bureau sub market for the underwriting 'paper' used to provide cover
                          type: string
                    stampIdentifiers:
                      type: array
                      items:
                        properties:
                          category:
                            type: string
                            description: the originating market that the bureau or syndicate belongs to
                            example: LloydsSyndicate
                          categoryNumber:
                            type: string
                            description: the bureau market code, Syndicate Number, or other unique identifier
                            example: '1314'
                          categoryExtra:
                            type: string
                            description: returned only for Lloyd's Syndicates and Lloyd's Brussels underwriters, listing their three-letter pseudonym
                            example: ASC
                          splitPercentage:
                            type: string
                            description: returned only for stamps that have a fixed split between multiple syndicates, listing the percentage falling under this syndicate. Split stamps have a separate stampIdentifiers block for each syndicate, and the combined splitPercentage totals 100%
                            example: 82%
              contractHash:
                type: string
                example: 81b7151e30ba40f098ab50cc3828e5ff6f5a725dbb76910416f018d3ca23638a
                description: a hash of the contract data to verify the text being agreed to
              stamperUserID:
                type: string
                example: MUB6090366-B15D-4C2B-BA54-EABE5F638FDF
                description: the unique platform code for the individual underwriter
              conditionsEnabled:
                description: true if conditions were attached to the written line
                type: boolean
              mode:
                type: string
                example: written
              lineConditions:
                type: array
                description: the set of line conditions added by the underwriter
                items:
                  type: object
              conditionsApproved:
                type: boolean
                description: true if the conditions applied have been approved
        createdAt:
          type: string
          description: The creation date of the activity document, in YYYY-MM-DD hh:mm:ss format
          example: '2021-07-28T13:15:12.000Z'
        userID:
          type: string
          description: The user ID of the user who took the action generating the activity document
          example: MUE516933D-D0B9-46C5-8D99-A4D5A6D9D37B
    RWComment:
      type: object
      description: A document that represents one comment in a chat
      properties:
        _id:
          type: string
          description: unique document id for the comment
          example: IC2C2C364A-F483-48F3-A927-05BC703CFCE3::CHAT::901F20D1-6BC8-46C6-BAA4-92B64507D7A2
        apnsData:
          type: object
          description: data for notifications to be sent alerting users about the activity. NOTE - this is for internal Whitespace usage and so the data can be subject to change. Please do use this object for integration purposes
          properties:
            channels:
              type: array
              description: A list of the channels for users to receive the notification
              items:
                type: string
                description: the team channel
                example: carrier_MARINECASUALTY
            data:
              type: object
              properties:
                docId:
                  type: string
                  description: the risk root ID associated with the activity
                  example: IC6A318B90-C319-4D2A-9088-98AD1B313556
            dataForEmail:
              type: object
              properties:
                riskInformation:
                  type: array
                  items:
                    type: string
                    description: an array of text strings to be displayed in the notification message
                    example: Acme Widgets Inc USD 25,000,000 B0999JC2311220803
                userID:
                  type: string
                  description: the ID of the user whose action triggered the activity
                  example: MUB70853CF-3221-4FD4-8A30-12B05EAD2EA5
            subscriptionRootID:
              type: string
              description: the risk root ID associated with the activity
              example: IC6A318B90-C319-4D2A-9088-98AD1B313556
            subtitle:
              type: string
              description: text subtitle for the message
              example: 'Messina Insurance Co

                Aviation Hull and Liability Insurance'
            title:
              type: string
              description: text title for the message
              example: Declined Quote Request
        _rev:
          type: string
          example: 1-141df67df9e5eaacd0830c65e47a0bf9
        createdAt:
          type: string
          example: '2021-08-04 15:18:02'
        updatedAt:
          type: string
          example: '2021-08-04 15:18:02'
        type:
          type: string
          example: RWComment
          description: RWComment in all cases
        associatedRootID:
          type: string
          example: IC2C2C364A-F483-48F3-A927-05BC703CFCE3
          description: The root ID for the risk which the chat relates to
        channels:
          type: array
          description: The team channels of users allowed to see the document
          items:
            type: string
            example: blackpool_TERRORISM
        comment:
          type: string
          description: The text of the comment
          example: Is this within your risk criteria?
        brokerMessageDocID:
          example: IC09F74B05-AC0C-4FCA-A0C0-1FD94D4BEA2A::FO::BrokerMessage::tomyunderwriting_ALL
          type: string
          description: The ID of the broker message, if the comment was a broker message
        brokerMessageStage:
          type: string
          example: FirmOrder
          description: The stage of the risk when the broker message was shown
        user:
          type: string
          description: The ID of the user who sent the message
          example: MU9FCFC64E-7694-420A-BE61-2ABEDB3E8F52
        createdAtMilliseconds:
          type: integer
          example: 1709213501333
          description: The value of createdAt in miliseconds
        isInternal:
          type: boolean
          example: false
          description: True if the message is internal
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT