PPL

PPL Submission API

Enables the retrieval of Submissions for Underwriters.

Operations 3

GET /submissions #
GET /submissions/{submissionId} #
POST /submissions/{submissionId}/send #

Documentation

📖
Documentation
https://developer.pplnextgen.com/placements
📖
APIReference
https://developer.pplnextgen.com/Placements/Technical-Model
📖
Documentation
https://developer.pplnextgen.com/Placements/Key-Details-On-API
📖
Documentation
https://developer.pplnextgen.com/Placements/Information-Model
📖
Documentation
https://developer.pplnextgen.com/Placements/Business-Process-Model
📖
Documentation
https://developer.pplnextgen.com/submissions
📖
APIReference
https://developer.pplnextgen.com/Submissions/Technical-Model
📖
Documentation
https://developer.pplnextgen.com/Submissions/Key-Details-On-API
📖
Documentation
https://developer.pplnextgen.com/Submissions/Information-Model
📖
Documentation
https://developer.pplnextgen.com/organisations
📖
APIReference
https://developer.pplnextgen.com/Organisations/Technical-Model
📖
Documentation
https://developer.pplnextgen.com/Organisations/Key-Details-On-API
📖
Documentation
https://developer.pplnextgen.com/Organisations/Information-Model
📖
Documentation
https://developer.pplnextgen.com/documents
📖
APIReference
https://developer.pplnextgen.com/Documents/Technical-Model
📖
Documentation
https://developer.pplnextgen.com/Documents/Key-Details-On-API
📖
Documentation
https://developer.pplnextgen.com/Documents/Information-Model
📖
Documentation
https://developer.pplnextgen.com/events
📖
APIReference
https://developer.pplnextgen.com/Events/Technical-Model
📖
Documentation
https://developer.pplnextgen.com/Events/Key-Details-On-API
📖
Documentation
https://developer.pplnextgen.com/Events/Information-Model

Specifications

Other Resources

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/ppl-london-market-submission-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

ppl-london-market-submission-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Submission API
  description: This API collection enables Underwriters to retrieve information about Submission requests that have been supplied by a Broker as well as manage their negotiation of terms of cover.
  version: '1'
servers:
- url: https://sand-api.londonmarketgroup.co.uk/ppl/nextgen/submissions
  description: Joint Integration testing (JIT2) environment
tags:
- name: submission
  description: Enables the retrieval of Submissions for Underwriters.
paths:
  /submissions:
    get:
      tags:
      - submission
      description: Returns a list of all Submission records based upon various query parameters. Pagination functionality is supported on this operation.
      operationId: Submission_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 Underwriter 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 timestamp when the entity was created.

          Search 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: modifiedDate
        in: query
        description: 'The date timestamp when the entity was modified.

          Search using range method, e.g. modifiedDate=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,40}\)$
      - name: brokerTeamName
        in: query
        description: "The name of the Broker Team, as defined by the broker organisation. \nSearch using contains method, e.g. brokerTeamName=contains(astring)."
        schema:
          type: string
          pattern: ^contains\(.{1,256}\)$
      - name: brokerOrganisationName
        in: query
        description: 'Name of the Organisation the User belongs to.

          Search using contains method, e.g. brokerOrganisationName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,256}\)$
      - name: brokerCompanyName
        in: query
        description: 'Name of the Company the User belongs to.

          Search using contains method, e.g. brokerCompanyName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,256}\)$
      - name: brokerUserEmail
        in: query
        description: 'The User email of the broker User.

          Search using multiple exact match method, e.g. brokerUserEmail=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: brokerFirstName
        in: query
        description: 'The first name of the Broker User.

          Search using contains method, e.g. brokerFirstName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,30}\)$
      - name: brokerLastName
        in: query
        description: 'The last name of the Broker User.

          Search using contains method, e.g. brokerLastName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,30}\)$
      - name: underwriterTeamId
        in: query
        description: 'A system-generated unique identifier for an Underwriter Team, with a format and structure defined by the technology used.

          Search using multiple exact match method, e.g. underwriterTeamId=id1,id2,id3.'
        schema:
          type: string
          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})*$
      - name: underwriterTeamName
        in: query
        description: 'The name of the Underwriter Team, as defined by the underwriter organisation.

          Search using contains method, e.g. underwriterTeamName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,256}\)$
      - name: underwriterCompanyName
        in: query
        description: 'Name of the Company the User belongs to.

          Search using contains method, e.g. underwriterCompanyName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,256}\)$
      - name: underwriterUserEmail
        in: query
        description: 'The User email of the underwriter User.

          Search using multiple exact match method, e.g. underwriterUserEmail=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: underwriterFirstName
        in: query
        description: 'The first name of the Underwriter User.

          Search using contains method, e.g. underwriterFirstName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,30}\)$
      - name: underwriterLastName
        in: query
        description: 'The last name of the Underwriter User.

          Search using contains method, e.g. underwriterLastName=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,30}\)$
      - name: type
        in: query
        description: 'The type of the Submission.

          Search using multiple exact match method, e.g. type=code1,code2,code3.'
        schema:
          type: string
          pattern: ^(.*)(,.*)*$
      - name: status
        in: query
        description: 'The status of the Submission.

          Search using multiple exact match method, e.g. status=code1,code2,code3.'
        schema:
          type: string
          pattern: ^(.*)(,.*)*$
      - name: receivedDate
        in: query
        description: 'The date and timestamp when the Submission.

          Search using range method, e.g. receivedDate=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: description
        in: query
        description: 'A description of the Contract supplied by the Broker.

          Search using contains method, e.g. description=contains(astring).'
        schema:
          type: string
          pattern: ^contains\(.{1,256}\)$
      - name: uniqueMarketReference
        in: query
        description: 'The reference allocated by the broker to identify the Contract for use within the placement process, as a concatenation of the Broker Code and Broker Contract Reference.

          Search using multiple exact match method, e.g. uniqueMarketReference=umr1,umr2,umr3.'
        schema:
          type: string
          pattern: ^(B\d{4}[A-Z0-9]{1,12})(,B\d{4}[A-Z0-9]{1,12})*$
      - name: sectionStatus
        in: query
        description: 'The code that represents the Section status.

          Search using multiple exact match method, e.g. sectionStatus=code1,code2,code3.'
        schema:
          type: string
          pattern: ^(.*)(,.*)*$
      - name: inceptionDate
        in: query
        description: 'The date on which the (re)insurance contract/section comes into force.

          Search using range method, e.g. inceptionDate=range(date1,date2).'
        schema:
          type: string
          pattern: ^range\(\d{4}-\d{2}-\d{2},\d{4}-\d{2}-\d{2}\)$
      - name: expiryDate
        in: query
        description: 'The date on which the (re)insurance Contract or Section ceases cover.

          Search using range method, e.g. expiryDate=range(date1,date2).'
        schema:
          type: string
          pattern: ^range\(\d{4}-\d{2}-\d{2},\d{4}-\d{2}-\d{2}\)$
      - name: sort
        in: query
        description: 'Sorting field and order (unique field only).

          Use + 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
      - name: submissionId
        in: query
        description: 'A system-generated unique identifier for a Submission, with a format and structure defined by the technology used.

          Search using multiple exact match method, e.g. submissionId=id1,id2,id3.'
        schema:
          type: string
          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}){0,9}$
      - name: contractId
        in: query
        description: 'A system-generated unique identifier for a Contract, with a format and structure defined by the technology used.

          Search using multiple exact match method, e.g. contractId=id1,id2,id3.'
        schema:
          type: string
          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}){0,9}$
      - name: sectionId
        in: query
        description: 'A system-generated unique identifier for a Section, with a format and structure defined by the technology used.

          Search using multiple exact match method, e.g. sectionId=id1,id2,id3.'
        schema:
          type: string
          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}){0,9}$
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/response_submissions_getall'
        '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'
  /submissions/{submissionId}:
    get:
      tags:
      - submission
      description: Returns a single Submission record. This record includes structured data pertaining to a single Contract offering (and any subsequent Sections, if applicable) as well as references to download (1) the Market Reform Contract (MRC) document; and (2) any associated Supporting Documents. Collectively the information presents an offer for consideration.
      operationId: Submission_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 Underwriter 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: submissionId
        in: path
        description: A system-generated unique identifier for a Submission, 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/submission_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'
  /submissions/{submissionId}/send:
    post:
      tags:
      - submission
      description: Initiates the operation to send the latest Underwriter responses as part of a response to a Submission back to the Broker. The outcome of each Negotiation will either (1) agree unconditionally to the terms; (2) conditionally agree upon a change of terms; or (3) decline the offer.
      operationId: Submission_Send_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 Underwriter 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: submissionId
        in: path
        description: A system-generated unique identifier for a Submission, 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:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/submission_send_input'
        required: true
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/submission_send_output'
        '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'
components:
  schemas:
    section_excess:
      required:
      - amount
      - basis_type
      - currency_code
      - type
      type: object
      properties:
        type:
          type: string
          description: The code that represents the type of excess.
          default: ''
        currency_code:
          type: string
          description: The 3-character code that represents the currency in ISO 4217 standard.
          default: ''
        amount:
          type: number
          description: The excess amount applicable prior to any liability the insurer has agreed to cover under the terms of the insurance Contract or Section.
          example: 0.1
        basis_type:
          type: string
          description: The code that represents the basis of the excess.
          default: ''
        type_description:
          type: string
          description: A bespoke description of the excess type, where not provisioned under the existing reference data type codes.
          default: ''
        basis_description:
          type: string
          description: A bespoke description of the excess basis type, where not provisioned under the existing reference data basis type codes.
          default: ''
      additionalProperties: false
      description: A collection of data items that represents the Excess(es) applicable prior to any liability the insurer has agreed to cover under the terms of the insurance Contract or Section.
    response_submissions_getall:
      required:
      - count
      - page_number
      - page_size
      - submissions
      - total_results
      type: object
      properties:
        submissions:
          type: array
          description: List of submission retrieved
          items:
            $ref: '#/components/schemas/submission_getall'
        page_number:
          type: integer
          description: Number of the page retrieved
          format: int32
          example: 0
        page_size:
          type: integer
          description: Size of the page retrieved
          format: int32
          example: 0
        count:
          type: integer
          description: The number of records on the current page
          format: int32
          example: 0
        total_results:
          type: integer
          description: Total number of results
          format: int64
          example: 1234567891234567
      additionalProperties: false
      description: ''
    submission_contract_getall:
      required:
      - broker_code
      - broker_contract_reference
      - contract_id
      - description
      - sections
      - unique_market_reference
      type: object
      properties:
        contract_id:
          type: string
          description: A system-generated unique identifier for a Contract, with a format and structure defined by the technology used.
          default: ''
        description:
          type: string
          description: A description of the Contract supplied by the Broker.
          default: ''
        broker_code:
          type: string
          description: A 4-digit Broker code that represents a broker organisation.
          default: ''
        broker_contract_reference:
          type: string
          description: The reference allocated by the broker to identify the Contract.
          default: ''
        unique_market_reference:
          type: string
          description: The reference allocated by the broker to identify the Contract for use within the placement process, as a concatenation of the Broker Code and Broker Contract Reference.
          default: ''
        sections:
          type: array
          description: A representation of a specific partition of the overall risk to be insured. A section can be based upon the cover type, coverage (e.g. class of business) and/or layer (limit of liability).
          items:
            $ref: '#/components/schemas/submission_section_getall'
      additionalProperties: false
      description: A collection of insurance Contracts.
    underwriter_user:
      required:
      - user_email
      type: object
      properties:
        user_email:
          type: string
          description: The email address of the User.
          default: ''
        first_name:
          type: string
          description: The first name of the User.
          default: ''
        last_name:
          type: string
          description: The last name of the User.
          default: ''
      additionalProperties: false
      description: The User information of the Underwriter User responsible for the Participation.
    period_date:
      required:
      - expiry_date
      - inception_date
      type: object
      properties:
        inception_date:
          type: string
          description: The date on which the (re)insurance Contract or Section comes into force.
          format: date
          example: '2014-12-31T00:00:00.000Z'
        expiry_date:
          type: string
          description: The date on which the (re)insurance Contract or Section ceases cover.
          format: date
          example: '2014-12-31T00:00:00.000Z'
        qualifier_type:
          type: string
          description: The code that represents the period qualifier type.
          default: ''
        qualifier_description:
          type: string
          description: A description of the period qualifier, captured when there is a no alignment to the reference data code.
          default: ''
      additionalProperties: false
      description: A collection of data items to denote the Contract or Section period using specific dates.
    section_binding_information:
      type: object
      properties:
        signed_line_basis:
          type: string
          description: The basis upon which all signed lines are applied to the Order of a Contract or Section.
          default: ''
      additionalProperties: false
      description: The Binding Information relevant to a Contract or Section.
    section_risk:
      required:
      - allocation_percentage
      - risk_code
      type: object
      properties:
        risk_code:
          type: string
          description: The regulatory code that represents the risk for a risk classification.
          default: ''
        allocation_percentage:
          type: number
          description: The percentage of the total premium that is deemed to be the allocation of covering a particular risk code.
          example: 0.1
      additionalProperties: false
      description: A collection of data items to represent the regulatory risk classification for a Contract or Section. Only supports Lloyds Agency Type Risk Codes.
    submission_getall:
      required:
      - broker_team
      - broker_user
      - client_name
      - description
      - general_message
      - metadata
      - placement_type
      - programme
      - received_date
      - status
      - submission_id
      - submission_type
      - underwriter_team
      - underwriter_user
      type: object
      properties:
        submission_id:
          type: string
          description: A system-generated unique identifier for a Submission, with a format and structure defined by the technology used.
          default: ''
        metadata:
          $ref: '#/components/schemas/metadata'
        placement_type:
          type: string
          description: The code that represents the Placement type.
          default: ''
        client_name:
          type: string
          description: The name by which the Broker User knows the client for the purposes of seeking insurance.
          default: ''
        description:
          type: string
          description: A description of the Placement supplied by the Broker.
          default: ''
        general_message:
          type: string
          description: A general message sent to all participating underwriters included in this Submission Pack.
          default: ''
        broker_team:
          $ref: '#/components/schemas/broker_team_org_company_no_id'
        broker_user:
          $ref: '#/components/schemas/broker_user'
        underwriter_team:
          $ref: '#/components/schemas/underwriter_team_no_org'
        underwriter_user:
          $ref: '#/components/schemas/underwriter_user'
        submission_type:
          type: string
          description: The type of the Submission.
          default: ''
        status:
          type: string
          description: The status of the Submission.
          default: ''
        received_date:
          type: string
          description: The date and timestamp when the Submission.
          format: date-time
          example: '2014-12-31T00:00:00.000Z'
        programme:
          $ref: '#/components/schemas/submission_programme_getall'
      additionalProperties: false
      description: Submission structure for Get All
    underwriter_team_no_org:
      required:
      - company_name
      - team_id
      - team_name
      type: object
      properties:
        team_id:
          type: string
          description: A system-generated unique identifier for a Underwriter Team, with a format and structure defined by the technology used.
          default: ''
        team_name:
          type: string
          description: The name of the Underwriter Team, as defined by the carrier organisation.
          default: ''
        company_name:
          type: string
          description: Name of the Company the User belongs to.
          default: ''
      additionalProperties: false
      description: The Team information of the Underwriter Team responsible for the Participation.
    notification:
      required:
      - category_type
      - notification_id
      - status
      - type
      type: object
      properties:
        notification_id:
          type: string
          description: A system-generated unique identifier for a Notification, with a format and structure defined by the technology used.
          default: ''
        category_type:
          type: string
          description: Identifies the category type of the notification that is being processed in an asynchronous manner.
          default: ''
        type:
          type: string
          description: Identifies the type of notification that is being processed in an asynchronous manner.
          default: ''
        status:
          type: string
          description: The code that represents the Notification status.
          default: ''
      additionalProperties: false
      description: 'The Notification information relating to the Document. '
    submission_section_send:
      required:
      - section_id
      - status
      type: object
      properties:
        section_id:
          type: string
          description: A system-generated unique identifier for a Section, with a format and structure defined by the technology used.
          default: ''
        reference:
          type: string
          description: A reference of the Section supplied by the Broker.
          default: ''
        description:
          type: string
          description: A description of the Section supplied by the Broker.
          default: ''
        status:
          type: string
          description: The code that represents the Section status.
          default: ''
      additionalProperties: false
      description: A representation of a specific partition of the overall risk to be insured. A section can be based upon the cover type, coverage (e.g. class of business) and/or layer (limit of liability).
    submission_contract_getbyid:
      required:
      - broker_code
      - broker_contract_reference
      - broker_team
      - broker_user
      - contract_id
      - contract_type
      - cover_type
      - description
      - insureds
      - sections
      - sequence_number
      - status
      - unique_market_reference
      - version
      type: object
      properties:
        contract_id:
          type: string
          description: A system-generated unique identifier for a Contract, with a format and structure defined by the technology used.
          default: ''
        broker_team:
          $ref: '#/components/schemas/broker_team_company_no_id'
        broker_user:
          $ref: '#/components/schemas/broker_user'
        sequence_number:
          type: integer
          description: The sequence number in which the Contracts are ordered.
          format: int32
          example: 0
        description:
          type: string
          description: A description of the Contract supplied by the Broker.
          default: ''
        broker_code:
          type: string
          description: A 4-digit Broker code that represents a broker organisation.
          default: ''
        broker_contract_reference:
          type: string
          description: The reference allocated by the broker to identify the Contract.
          default: ''
        unique_market_reference:
          type: string
          description: The reference allocated by the broker to identify the Contract for use within the placement process, as a concatenation of the Broker Code and Broker Contract Reference.
          default: ''
        version:
          type: integer
          description: The current version of the Contract.
          format: int32
          example: 0
        contract_type:
          type: string
          description: The code that represents the contract type.
          default: ''
        cover_type:
          type: string
          description: The code that represents the cover type.
          default: ''
        status:
          type: string
          description: The code that represents the Contract status.
          default: ''
        insureds:
          type: array
          description: A collection of individuals or organisations, and their relationship within a contract of insurance.
          items:
            $ref: '#/components/schemas/contract_insured'
        sections:
          type: array
          description: A representation of a specific partition of the overall risk to be insured. A section can be based upon the cover type, coverage (e.g. class of business) and/or layer (limit of liability).
          items:
            $ref: '#/components/schemas/submission_section_getbyid'
      additionalProperties: false
      description: A collection of insurance Contracts.
    geographic_coverage:
      required:
      - code
      - type
      type: object
      properties:
        type:
          type: string
          description: indicates the type of the geographic coverage, either as a single country or a geographic region.
          default: ''
        code:
          type: string
          description: The code that represents the value of the country or region based on the geographic coverage type.
          

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