PPL

PPL Events API

Retrieves informative and actionable notifications about an interested party's involvement in the placement process, plus the business transaction log for contract-related engagements. Pull-based only - notifications and transactions are polled over REST; PPL publishes no webhook, callback or AsyncAPI event-push surface. OpenAPI 3.0.1, 7 paths and 7 operations.

OpenAPI Specification

ppl-london-market-events.json Raw ↑
{
  "openapi": "3.0.1",
  "info": {
    "title": "event",
    "description": "This API collection provides the capability to retrieve informative and actionable information on an interested party's involvement within the differing activities of the insurance placement process. This also includes the business transactional log information for any Contract-related engagement between a Broker and an Underwriter that is transacted within the platform.\n\nProvides technical information relating to asynchronous processes and business notifications from the platform that are either informational or require some form of action to be taken by the recipient.",
    "version": "1"
  },
  "servers": [
    {
      "url": "https://sand-api.londonmarketgroup.co.uk/ppl/nextgen/events",
      "description": "Joint Integration testing (JIT2) environment"
    }
  ],
  "tags": [
    {
      "name": "health"
    },
    {
      "name": "version"
    },
    {
      "name": "notification"
    },
    {
      "name": "transaction"
    }
  ],
  "paths": {
    "/health": {
      "get": {
        "tags": [
          "health"
        ],
        "description": "Checks the health of this Notification Resource API.",
        "operationId": "Health",
        "responses": {
          "200": {
            "description": "UP if ok.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/health"
                }
              }
            }
          }
        }
      }
    },
    "/version": {
      "get": {
        "tags": [
          "version"
        ],
        "description": "Checks the version of this Notification Resource API.",
        "operationId": "Version",
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/version"
                }
              }
            }
          }
        }
      }
    },
    "/notifications": {
      "get": {
        "tags": [
          "notification"
        ],
        "description": "Returns a list of all Notification records, based upon various query parameters. Pagination functionality is supported on this operation.",
        "operationId": "Notification_GetAll_v1",
        "parameters": [
          {
            "name": "X-Auth-Impersonated-User",
            "in": "header",
            "description": "The email address of the Requesting User or the Impersonated User.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$"
            }
          },
          {
            "name": "X-Auth-Team",
            "in": "header",
            "description": "A list of system-generated unique identifiers for each Broker Team, with a format and structure defined by the technology used.",
            "required": true,
            "schema": {
              "pattern": "^(?:[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12})(?:,[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12})*$",
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "createdDate",
            "in": "query",
            "description": "The date and timestamp when the entity was created.\nSearch using range method, e.g. createdDate=range(date1,date2).",
            "schema": {
              "type": "string",
              "pattern": "^range\\(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z,\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z\\)$"
            }
          },
          {
            "name": "category",
            "in": "query",
            "description": "The code that represents the category of the notification.\nSearch using multiple exact match method, e.g. category=code1,code2,code3.",
            "schema": {
              "type": "string",
              "pattern": "^(.*)(,.*)*$"
            }
          },
          {
            "name": "type",
            "in": "query",
            "description": "The code that represents the type of notification.\nSearch using multiple exact match method, e.g. type=code1,code2,code3.",
            "schema": {
              "type": "string",
              "pattern": "^(.*)(,.*)*$"
            }
          },
          {
            "name": "senderEmail",
            "in": "query",
            "description": "The email address of the Sender.\nSearch using multiple exact match method, e.g. senderEmail=email1,email2,email3.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+(,[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+)*$"
            }
          },
          {
            "name": "senderFirstName",
            "in": "query",
            "description": "The first name of the Sender.\nSearch using contains method, e.g. senderFirstName=contains(astring).",
            "schema": {
              "type": "string",
              "pattern": "^contains\\(.{1,40}\\)$"
            }
          },
          {
            "name": "senderLastName",
            "in": "query",
            "description": "The last name of the Sender.\nSearch using contains method, e.g. senderLastName=contains(astring).",
            "schema": {
              "type": "string",
              "pattern": "^contains\\(.{1,40}\\)$"
            }
          },
          {
            "name": "companyName",
            "in": "query",
            "description": "Name of the company the Sender belongs to.\nSearch using contains method, e.g. companyName=contains(astring).",
            "schema": {
              "type": "string",
              "pattern": "^contains\\(.{1,256}\\)$"
            }
          },
          {
            "name": "recipientEmail",
            "in": "query",
            "description": "The email address of the Recipient.\nSearch using multiple exact match method, e.g. recipientEmail=email1,email2,email3.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+(,[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+)*$"
            }
          },
          {
            "name": "recipientFirstName",
            "in": "query",
            "description": "The first name of the Recipient.\nSearch using contains method, e.g. recipientFirstName=contains(astring).",
            "schema": {
              "type": "string",
              "pattern": "^contains\\(.{1,40}\\)$"
            }
          },
          {
            "name": "recipientLastName",
            "in": "query",
            "description": "The last name of the Recipient.\nSearch using contains method, e.g. recipientLastName=contains(astring).",
            "schema": {
              "type": "string",
              "pattern": "^contains\\(.{1,40}\\)$"
            }
          },
          {
            "name": "recipientTeamId",
            "in": "query",
            "description": "The Team ID of the team the Recipient belongs to. A system-generated unique identifier for a Team, with a format and structure defined by the technology used. \nSearch using multiple exact match method, e.g. recipientTeamId=team1,team2,team3.",
            "schema": {
              "type": "string",
              "pattern": "^(.*)(,.*)*$"
            }
          },
          {
            "name": "recipientTeamName",
            "in": "query",
            "description": "The name of the Team the Recipient belongs to.\nSearch using contains method, e.g. recipientTeamName=contains(astring).",
            "schema": {
              "type": "string",
              "pattern": "^contains\\(.{1,256}\\)$"
            }
          },
          {
            "name": "isTechnical",
            "in": "query",
            "description": "Indicates whether the Notification is related to a technical event  (true) or a business event (false).\nSearch using single exact match method, e.g. isTechnical=true/false.",
            "schema": {
              "type": "string",
              "pattern": "^([Tt][Rr][Uu][Ee]|[Ff][Aa][Ll][Ss][Ee])$"
            }
          },
          {
            "name": "processStatus",
            "in": "query",
            "description": "The code that represents the status of a technical, asynchronous event.\nSearch using multiple exact match method, e.g. processStatus=code1,code2,code3.",
            "schema": {
              "type": "string",
              "pattern": "^(.*)(,.*)*$"
            }
          },
          {
            "name": "expiryDate",
            "in": "query",
            "description": "The date and timestamp by which the Subjectivity needs to be met or the deadline date for the Report.\nSearch using range method, e.g. expiryDate=range(date1,date2).",
            "schema": {
              "type": "string",
              "pattern": "^range\\(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z,\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z\\)$"
            }
          },
          {
            "name": "clientName",
            "in": "query",
            "description": "The name by which the Broker User knows the client for the purposes of seeking insurance.\nSearch using contains method, e.g. clientName=contains(astring).",
            "schema": {
              "type": "string",
              "pattern": "^contains\\(.{1,256}\\)$"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sorting field and order (unique field only).\nUse + before the field name for ascending order, use - for descending order.",
            "schema": {
              "type": "string",
              "pattern": "^[+-]?\\w+$"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "Number of the page to be retrieved.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "minimum": 1
            },
            "example": 1
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Size of the page to be retrieved.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "minimum": 1,
              "maximum": 200
            },
            "example": 200
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/response_notifications"
                }
              }
            }
          },
          "400": {
            "description": "Mandatory header parameter is missing from the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "401": {
            "description": "Authentication error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "404": {
            "description": "Invalid team or user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "414": {
            "description": "The maximum field length of the URI provided for the request has been exceeded.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          }
        }
      }
    },
    "/notifications/{notificationId}": {
      "get": {
        "tags": [
          "notification"
        ],
        "description": "Returns a single Notification record. This record will contain attributes pertaining to the type of notification and any type of action that is required. The context information is the subject of the notification.",
        "operationId": "Notification_GetById_v1",
        "parameters": [
          {
            "name": "X-Auth-Impersonated-User",
            "in": "header",
            "description": "The email address of the Requesting User or the Impersonated User.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$"
            }
          },
          {
            "name": "X-Auth-Team",
            "in": "header",
            "description": "A system-generated unique identifier for a Broker Team, with a format and structure defined by the technology used.",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          },
          {
            "name": "notificationId",
            "in": "path",
            "description": "A system-generated unique identifier for a Notification, with a format and structure defined by the technology used.",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/response_notification_record"
                }
              }
            }
          },
          "400": {
            "description": "Mandatory header parameter is missing from the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "401": {
            "description": "Authentication error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "404": {
            "description": "Invalid team or user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "414": {
            "description": "The maximum field length of the URI provided for the request has been exceeded.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          }
        }
      }
    },
    "/notifications/markAllAsRead": {
      "post": {
        "tags": [
          "notification"
        ],
        "description": "Initiates the operation to update all non-technical Notification records as read from a defined date.",
        "operationId": "Notification_MarkAllAsRead_v1",
        "parameters": [
          {
            "name": "X-Auth-Impersonated-User",
            "in": "header",
            "description": "The email address of the Requesting User or the Impersonated User.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$"
            }
          },
          {
            "name": "X-Auth-Team",
            "in": "header",
            "description": "A system-generated unique identifier for a Broker Team, with a format and structure defined by the technology used.",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          }
        ],
        "requestBody": {
          "description": "Payload for the Mark All As Read endpoint.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/notification_markallasread"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/response_markallasread"
                }
              }
            }
          },
          "400": {
            "description": "Mandatory header parameter is missing from the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "401": {
            "description": "Authentication error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "404": {
            "description": "Invalid team or user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "414": {
            "description": "The maximum field length of the URI provided for the request has been exceeded.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          }
        },
        "x-codegen-request-body-name": "notifications"
      }
    },
    "/transactions": {
      "get": {
        "tags": [
          "transaction"
        ],
        "description": "Returns a list of all Transaction records, based upon various query parameters. Pagination functionality is supported on this operation.",
        "operationId": "Transaction_GetAll_v1",
        "parameters": [
          {
            "name": "X-Auth-Impersonated-User",
            "in": "header",
            "description": "The email address of the Requesting User or the Impersonated User.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$"
            }
          },
          {
            "name": "X-Auth-Team",
            "in": "header",
            "description": "A list of system-generated unique identifiers for each Broker Team, with a format and structure defined by the technology used.",
            "required": true,
            "schema": {
              "pattern": "^(?:[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12})(?:,[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12})*$",
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "placementId",
            "in": "query",
            "description": "A system-generated unique identifier for a Placement, with a format and structure defined by the technology used.\nSearch using single exact match method, e.g. placementId=guid.",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          },
          {
            "name": "createdDate",
            "in": "query",
            "description": "The date and timestamp when the entity was created.\nSearch using range method, e.g. createdDate=range(date1,date2).",
            "schema": {
              "type": "string",
              "pattern": "^range\\(\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z,\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z\\)$"
            }
          },
          {
            "name": "programmeId",
            "in": "query",
            "description": "A system-generated unique identifier for a Programme, with a format and structure defined by the technology used.\nSearch using single exact match method, e.g. programmeId=guid.",
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          },
          {
            "name": "contractId",
            "in": "query",
            "description": "A system-generated unique identifier for a Contract, with a format and structure defined by the technology used.\nSearch using single exact match method, e.g. contractId=guid.",
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          },
          {
            "name": "sectionId",
            "in": "query",
            "description": "A system-generated unique identifier for a Section, with a format and structure defined by the technology used.\nSearch using single exact match method, e.g. sectionId=guid.",
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          },
          {
            "name": "transactionType",
            "in": "query",
            "description": "The code that represents the transaction type.\nSearch using multiple exact match method, e.g. transactionType=code1,code2,code3.",
            "schema": {
              "type": "string",
              "pattern": "^(.*)(,.*)*$"
            }
          },
          {
            "name": "categoryType",
            "in": "query",
            "description": "The code that represents the transaction category type.\nSearch using multiple exact match method, e.g. categoryType=code1,code2,code3.",
            "schema": {
              "type": "string",
              "pattern": "^(.*)(,.*)*$"
            }
          },
          {
            "name": "contractVersion",
            "in": "query",
            "description": "Holds the version of the contract. That means this field will only be filled for transaction logs referring to a contract.\nSearch using multiple exact match method, e.g. contractVersion=ver1,ver2,ver3.",
            "schema": {
              "type": "string",
              "pattern": "^(.*)(,.*)*$"
            }
          },
          {
            "name": "authorEmail",
            "in": "query",
            "description": "The email address of the Author.\nSearch using multiple exact match method, e.g. authorEmail=email1,email2,email3.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+(,[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+)*$"
            }
          },
          {
            "name": "authorOnBehalfEmail",
            "in": "query",
            "description": "The email address of the Author On Behalf.\nSearch using multiple exact match method, e.g. authorOnBehalfEmail=email1,email2,email3.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+(,[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+)*$"
            }
          },
          {
            "name": "recipientEmail",
            "in": "query",
            "description": "The email address of the Recipient.\nSearch using multiple exact match method, e.g. recipientEmail=email1,email2,email3.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+(,[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+)*$"
            }
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Sorting field and order (unique field only).\nUse + before the field name for ascending order, use - for descending order.",
            "schema": {
              "type": "string",
              "pattern": "^[+-]?\\w+$"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "Number of the page to be retrieved.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "minimum": 1
            },
            "example": 1
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Size of the page to be retrieved.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "minimum": 1,
              "maximum": 200
            },
            "example": 200
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/response_transactions"
                }
              }
            }
          },
          "400": {
            "description": "Mandatory header parameter is missing from the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "401": {
            "description": "Authentication error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "404": {
            "description": "Invalid team or user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "414": {
            "description": "The maximum field length of the URI provided for the request has been exceeded.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          }
        }
      }
    },
    "/transactions/{transactionId}": {
      "get": {
        "tags": [
          "transaction"
        ],
        "description": "Returns a single Transaction record. This record will contain attributes pertaining to the category and type of transaction. The content is determined upon the type of the transaction.",
        "operationId": "Transaction_GetById_v1",
        "parameters": [
          {
            "name": "X-Auth-Impersonated-User",
            "in": "header",
            "description": "The email address of the Requesting User or the Impersonated User.",
            "schema": {
              "type": "string",
              "pattern": "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\\.[a-zA-Z0-9-.]+$"
            }
          },
          {
            "name": "X-Auth-Team",
            "in": "header",
            "description": "A system-generated unique identifier for a Broker Team, with a format and structure defined by the technology used.",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          },
          {
            "name": "transactionId",
            "in": "path",
            "description": "A system-generated unique identifier for a Transaction, with a format and structure defined by the technology used.",
            "required": true,
            "schema": {
              "type": "string",
              "pattern": "^[0-9a-fA-F]{8}-([0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/response_transaction_getbyid"
                }
              }
            }
          },
          "400": {
            "description": "Mandatory header parameter is missing from the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "401": {
            "description": "Authentication error.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "404": {
            "description": "Invalid team or user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "414": {
            "description": "The maximum field length of the URI provided for the request has been exceeded.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "429": {
            "description": "Too many requests.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_document"
                }
              }
            }
      

# --- truncated at 32 KB (75 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/ppl-london-market/refs/heads/main/openapi/ppl-london-market-events.json