TrustLayer party-types API

The party-types API from TrustLayer — 1 operation(s) for party-types.

OpenAPI Specification

trustlayer-party-types-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: TrustLayer Platform Auth party-types API
  version: '1.0'
  contact:
    name: TrustLayer Support
    email: support@trustlayer.io
  termsOfService: https://trustlayer.io/terms-of-service
  externalDocs:
    description: OpenAPI specification
    url: /v1/platform-api.yaml
  description: '3rd-party API for the TrustLayer platform.


    **Deprecated.** Platform API v1 is deprecated as of 01 June 2026 and is

    scheduled for sunset (end-of-life) on 31 March 2027. It remains fully

    available until the sunset date but will not receive new features. Please

    migrate to Platform API v2 for new integrations.


    All v1 responses carry the standard deprecation response headers

    ([RFC 8594](https://www.rfc-editor.org/rfc/rfc8594)):


    ```http

    Deprecation: @1780272000

    Sunset: Wed, 31 Mar 2027 23:59:59 GMT

    Link: <https://developers.trustlayer.io/>; rel="deprecation", <https://developers.trustlayer.io/>; rel="sunset"

    ```


    `Deprecation: @1780272000` is the Unix timestamp for 2026-06-01T00:00:00Z;

    sunset (end-of-life) is 2027-03-31T23:59:59 GMT.'
  x-deprecated: true
  x-deprecation-date: '2026-06-01'
  x-sunset: '2027-03-31'
  license:
    name: Apache 2.0
    url: https://apache.org/licenses/LICENSE-2.0
servers:
- url: http://localhost:4000/v1
  description: Local
- url: https://api.trustlayer.io/v1
  description: Production
security:
- API Key: []
tags:
- name: party-types
paths:
  /party-types:
    get:
      summary: List party types
      tags:
      - party-types
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    $ref: '#/components/schemas/response-status'
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/party-type'
                  meta:
                    $ref: '#/components/schemas/collection-meta'
      operationId: get-party-types
      deprecated: true
      description: Note that this will return all party types, sorted by name
    post:
      summary: Create a party type
      operationId: post-party-types
      deprecated: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: object
                properties:
                  status:
                    $ref: '#/components/schemas/response-status'
                  data:
                    $ref: '#/components/schemas/party-type'
      tags:
      - party-types
      description: Note that you _must_ provide both the singular and plural names.
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                partyType:
                  $ref: '#/components/schemas/party-type-input'
              required:
              - partyType
components:
  schemas:
    compliance-profile:
      title: Compliance Profile
      type: object
      x-examples:
        Example compliance profile:
          id: 60a27c51fcd891823568ed27
          type: compliance-profiles
          name: Default compliance profile
          rules:
          - moduleId: evidenceOfInsurance
            moduleLabel: Evidence of Insurance
            subjectId: commercialGeneralLiability
            subjectLabel: Commercial General Liability
            attributeId: evidenceOfInsuranceCommercialGeneralLiabilityEachOccurrence
            attributeLabel: Each Occurrence
            attributeType: number
            attributeDescription: ''
            masterDocumentAttributeId: commercialGeneralLiabilityLimitsGeneralAggregate
            operator: must be greater or equal to
            targetValue: '2000000'
          context: global
      properties:
        id:
          type: string
        type:
          type: string
          default: compliance-profiles
        name:
          type: string
          example: Default compliance profile
        rules:
          type: array
          items:
            type: object
            properties:
              moduleId:
                type: string
                minLength: 1
                example: evidenceOfInsurance
              moduleLabel:
                type: string
                minLength: 1
                example: Evidence of Insurance
              subjectId:
                type: string
                minLength: 1
                example: commercialGeneralLiability
              subjectLabel:
                type: string
                minLength: 1
                example: Commercial General Liability
              attributeId:
                type: string
                minLength: 1
                example: evidenceOfInsuranceCommercialGeneralLiabilityEachOccurrence
              attributeLabel:
                type: string
                minLength: 1
                example: Each Occurrence
              attributeType:
                type: string
                minLength: 1
                example: number
              attributeDescription:
                type: string
              masterDocumentAttributeId:
                type: string
                minLength: 1
                example: commercialGeneralLiabilityLimitsGeneralAggregate
              operator:
                type: string
                minLength: 1
                example: must be greater or equal to
              targetValue:
                type: string
                minLength: 1
                example: '2000000'
        context:
          type: string
          enum:
          - global
          - project
          - custom-field
        documentChecklists:
          type: array
          items:
            type: object
            properties:
              attributeId:
                type: string
              attributeLabel:
                type: string
              active:
                type: boolean
    party-type-input:
      title: party-type-input
      type: object
      properties:
        name:
          type: string
          minLength: 1
        pluralName:
          type: string
          minLength: 1
        defaultComplianceProfile:
          $ref: '#/components/schemas/reference-input'
      required:
      - name
      - pluralName
      x-internal: true
      x-tags:
      - input
    reference-input:
      title: reference-input
      type: object
      properties:
        id:
          type: string
          minLength: 24
          maxLength: 24
          pattern: ^[a-z0-9]{24}$
      required:
      - id
      x-internal: true
      x-tags:
      - input
    response-status:
      type: string
      title: Response Status
      enum:
      - success
      - fail
      - error
      readOnly: true
      x-examples:
        Success: success
      description: The possible values are "success", "fail", and "error".
      x-internal: true
    party-type:
      title: Party Type
      type: object
      properties:
        id:
          type: string
        type:
          type: string
          default: party-types
        name:
          type: string
        pluralName:
          type: string
        defaultComplianceProfile:
          oneOf:
          - $ref: '#/components/schemas/reference'
          - $ref: '#/components/schemas/compliance-profile'
      x-examples:
        Vendor:
          id: 60a27c51fcd891823568ed28
          type: party-types
          name: Vendor
          pluralName: Vendors
          defaultComplianceProfile:
            id: 60a27c51fcd891823568ed27
            type: compliance-profiles
    collection-meta:
      title: collection-meta
      type: object
      properties:
        count:
          type: number
          description: The number of documents according to the specified filters
        pages:
          type: number
        totalCount:
          type: number
          description: The total number of documents in the collection
        totalPages:
          type: number
      x-internal: true
    reference:
      title: Reference
      type: object
      properties:
        id:
          type: string
        type:
          type: string
      description: Generic object reference
      x-internal: false
      x-examples:
        Generic reference example:
          id: 60896067dd86e01e90199f43
          type: widgets
  securitySchemes:
    Token:
      name: Authorization
      type: apiKey
      in: header
      description: ''