Wingspan Client Management API

Encompasses endpoints for banking-related operations such as managing bank cards, statements, instant payouts, and banking institutions..

OpenAPI Specification

wingspan-client-management-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Wingspan Payments 1099 Operations Client Management API
  description: Payments
  termsOfService: https://www.wingspan.app
  contact:
    name: Wingspan API Support
    url: https://www.wingspan.app
    email: support@wingspan.app
  license:
    name: UNLICENSED
    url: https://UNLICENSED
  version: 1.0.0-oas3.1
servers:
- url: https://api.wingspan.app
  description: Wingspan's Payments API in Production
  x-speakeasy-server-id: prod
- url: https://stagingapi.wingspan.app
  description: Wingspan's Payments API in Staging
  x-speakeasy-server-id: staging
security:
- BearerAuth: []
tags:
- name: Client Management
  description: Encompasses endpoints for banking-related operations such as managing bank cards, statements, instant payouts, and banking institutions..
paths:
  /payments/memberClient:
    get:
      summary: Fetch a list of member and client associations
      operationId: listMemberClientAssociations
      x-speakeasy-name-override: list_associations
      tags:
      - Client Management
      description: Retrieve a detailed list showcasing all the existing associations between members and clients in the system.
      responses:
        '200':
          description: A list of memberClient objects
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MemberClientSchema'
    post:
      summary: Establish a new association between a member and client
      operationId: establishMemberClientAssociation
      x-speakeasy-name-override: establish
      tags:
      - Client Management
      description: Use this endpoint to create a new linkage between a member and client in the system, allowing for better relationship management.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MemberClientCreateRequest'
      responses:
        '200':
          description: Describes details of member and client
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemberClientSchema'
  /payments/memberClient/{id}:
    get:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Retrieve detailed information of a specific member-client relationship
      operationId: getMemberClientAssociation
      x-speakeasy-name-override: get_association
      tags:
      - Client Management
      description: Fetches comprehensive details of the association between a member and a client using the provided unique identifier.
      responses:
        '200':
          description: Describes details of member and client
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemberClientSchema'
    patch:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Update information of a specific member-client relationship
      operationId: updateMemberClientAssociation
      x-speakeasy-name-override: update_association
      tags:
      - Client Management
      description: Modifies details of the association between a member and a client based on the provided data.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MemberClientUpdateRequest'
      responses:
        '200':
          description: Describes details of member and client
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemberClientSchema'
    delete:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Remove a specific member-client relationship from the system
      operationId: deleteMemberClientAssociation
      x-speakeasy-name-override: delete_association
      tags:
      - Client Management
      description: Deletes the association between a member and a client using the provided unique identifier. Once deleted, this relationship data can't be recovered.
      responses:
        '200':
          description: Describes details of member and client
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MemberClientSchema'
  /payments/client-deduction:
    post:
      summary: Register a New Client Deduction
      operationId: createClientDeduction
      x-speakeasy-name-override: create
      tags:
      - Client Management
      description: Allows for the creation of a new client deduction based on the provided details.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeductionCreateRequest'
      responses:
        '200':
          description: A deduction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeductionResponse'
    get:
      summary: Retrieve All Client Deductions
      operationId: listClientDeductions
      x-speakeasy-name-override: list_client_deduction
      tags:
      - Client Management
      description: Fetches a comprehensive list of all client deductions present in the system.
      responses:
        '200':
          description: A list of deductions
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DeductionResponse'
  /payments/client-deduction/{id}:
    get:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Fetch Specific Client Deduction Details
      operationId: getClientDeduction
      x-speakeasy-name-override: get_client_deduction
      tags:
      - Client Management
      description: Provides detailed information for a client deduction based on its unique identifier.
      responses:
        '200':
          description: A deduction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeductionResponse'
    patch:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Modify a Client Deduction
      operationId: updateClientDeduction
      x-speakeasy-name-override: update_client_deduction
      tags:
      - Client Management
      description: Allows for updating specific details or attributes of an existing client deduction.
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeductionUpdateRequest'
      responses:
        '200':
          description: A deduction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeductionResponse'
    delete:
      parameters:
      - in: path
        required: true
        name: id
        description: Unique identifier
        schema:
          type: string
      summary: Remove a Client Deduction
      operationId: deleteClientDeduction
      x-speakeasy-name-override: delete_client_deduction
      tags:
      - Client Management
      description: Allows for the deletion of a client deduction based on its unique identifier, removing it permanently from the system.
      responses:
        '200':
          description: A deduction
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeductionResponse'
  /payments/v2/client:
    get:
      summary: Retrieve All Clients (Version 2)
      operationId: listClients
      x-speakeasy-name-override: list
      tags:
      - Client Management
      description: Fetches a comprehensive list of clients formatted in the V2 standard, providing an overview of all client data.
      responses:
        '200':
          description: List of V2 Collaborators
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CollaboratorV2'
  /payments/v2/client/{clientId}:
    get:
      parameters:
      - in: path
        required: true
        name: clientId
        description: Unique identifier of a client
        schema:
          type: string
      summary: Retrieve Specific Client Details (Version 2)
      operationId: listSpecificClientDetails
      x-speakeasy-name-override: list_specific_client_detail
      tags:
      - Client Management
      description: Fetches detailed information of a specific client, identified by the clientId, in the V2 format.
      responses:
        '200':
          description: A single V2 Collaborator
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CollaboratorV2'
components:
  schemas:
    CompanyLinks:
      type: object
      properties:
        instagramUrl:
          type:
          - string
          - 'null'
        linkedInUrl:
          type:
          - string
          - 'null'
        otherUrl:
          type:
          - string
          - 'null'
        twitterUrl:
          type:
          - string
          - 'null'
        websiteUrl:
          type:
          - string
          - 'null'
    3d33fba3f009de957b3be92fba006d6383af7e39f823cc1fd213506f6205100f:
      type: object
      properties:
        quickbooks:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/d86c1fba5267ac3d9ce2954a6e46b70e471c0f91a44abbe94565ae50e6e9e863'
    Form1099Correction:
      type: object
      properties:
        address:
          oneOf:
          - type: 'null'
          - type: object
        companyStructure:
          type:
          - string
          - 'null'
          enum:
          - None
          - SoleProprietorship
          - LlcSingleMember
          - LlcMultiMember
          - CorporationS
          - LLCCorporationS
          - LLCCorporationC
          - LLCPartnership
          - CorporationC
          - Partnership
          - null
        ein:
          type:
          - string
          - 'null'
        firstName:
          type:
          - string
          - 'null'
        lastName:
          type:
          - string
          - 'null'
        legalBusinessName:
          type:
          - string
          - 'null'
        ssn:
          type:
          - string
          - 'null'
        totalAmount:
          type:
          - number
          - 'null'
    87539cb97aa7616e350fc0d23c5a49177ea4c4a8bd00ec2a2cfd2a9a5c4e648a:
      type: object
      additionalProperties:
        type: string
    8a9c6cb49482a98cdd603ff09858cdc3e5ef6ad9807c876c4161d925a96694a5:
      type: object
      properties:
        amount:
          type:
          - number
          - 'null'
        comment:
          type:
          - string
          - 'null'
        status:
          type:
          - string
          - 'null'
          enum:
          - Open
          - Accepted
          - Rejected
          - null
    DeductionResponse:
      type: object
      properties:
        amount:
          type: number
        application:
          type: array
          items:
            $ref: '#/components/schemas/DeductionApplication'
        clientId:
          type: string
        createdAt:
          type: string
        currency:
          type: string
          enum:
          - USD
          - CAD
        deductionId:
          type: string
        eventActors:
          $ref: '#/components/schemas/87539cb97aa7616e350fc0d23c5a49177ea4c4a8bd00ec2a2cfd2a9a5c4e648a'
        labels:
          $ref: '#/components/schemas/LabelsDictionary'
        memberId:
          type: string
        name:
          type: string
        priority:
          type: number
        startDate:
          type: string
        status:
          type: string
          enum:
          - Pending
          - PartiallyApplied
          - Complete
        type:
          type: string
          enum:
          - PrePayment
          - PostPayment
        updatedAt:
          type: string
        userRoles:
          $ref: '#/components/schemas/UserRoles'
        deductionTemplateId:
          type:
          - string
          - 'null'
        disbursement:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/PostPaymentDeductionDisbursement'
        sourceInvoiceId:
          type:
          - string
          - 'null'
      required:
      - amount
      - application
      - clientId
      - createdAt
      - currency
      - deductionId
      - eventActors
      - labels
      - memberId
      - name
      - priority
      - startDate
      - status
      - type
      - updatedAt
      - userRoles
    6a65bb5a9fe6d1135b7182baff68e9bc6612ee2c1ab942926fe2804c58663cf4:
      type: object
      properties:
        expenseAccountId:
          type:
          - string
          - 'null'
        vendorId:
          type:
          - string
          - 'null'
    MemberClientForm1099Balances:
      type: object
      properties:
        adjustments:
          type: number
        deliveryMethod:
          type: string
          enum:
          - Electronic
          - Mail
        exclusionReason:
          type: string
          enum:
          - BelowThreshold
          - CompanyStructure
          - NonUsEntity
        form1099Generated:
          type: boolean
        paymentProcessingFees:
          type: number
        platformIncome:
          type: number
        status:
          type: string
          enum:
          - Ready
          - NeedsActionInfo
          - NeedsActionDispute
          - Submitted
          - Rejected
          - Accepted
          - Excluded
        type:
          type: string
          enum:
          - NEC
        correction:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Form1099Correction'
        dispute:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/8a9c6cb49482a98cdd603ff09858cdc3e5ef6ad9807c876c4161d925a96694a5'
        events:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Form1099Events'
        taxForm:
          oneOf:
          - type: 'null'
          - type: object
        taxFormId:
          type:
          - string
          - 'null'
      required:
      - adjustments
      - deliveryMethod
      - exclusionReason
      - form1099Generated
      - paymentProcessingFees
      - platformIncome
      - status
      - type
    ClientData:
      type: object
      properties:
        autoPayStrategy:
          type:
          - string
          - 'null'
          enum:
          - All
          - None
          - null
        externalId:
          type:
          - string
          - 'null'
        verificationStratgy:
          type:
          - string
          - 'null'
          enum:
          - None
          - All
          - null
    CollaboratorV2:
      type: object
      properties:
        achCreditAccount:
          $ref: '#/components/schemas/MemberClientWireAccount'
        clientId:
          type: string
        collaborations:
          type: array
          items:
            $ref: '#/components/schemas/Collaboration'
        createdAt:
          type: string
        eventActors:
          $ref: '#/components/schemas/87539cb97aa7616e350fc0d23c5a49177ea4c4a8bd00ec2a2cfd2a9a5c4e648a'
        firstCollaborationId:
          type: string
        form1099Balances:
          $ref: '#/components/schemas/b9789f45f8c8070ff38a64d80c2e4a8732ddaf329e46546474400d26f84c0f1c'
        formW9Data:
          $ref: '#/components/schemas/CollaboratorV2FormW9Info'
        internationalWireAccount:
          $ref: '#/components/schemas/MemberClientWireAccount'
        labels:
          $ref: '#/components/schemas/LabelsDictionary'
        member:
          $ref: '#/components/schemas/RedactedMember'
        memberId:
          type: string
        primaryCollaborationId:
          type: string
        status:
          type: string
          enum:
          - Active
          - Inactive
          - Pending
        taxStatus:
          type: string
          enum:
          - Complete
          - Failed
          - Pending
          - Incomplete
        updatedAt:
          type: string
        userRoles:
          $ref: '#/components/schemas/UserRoles'
        clientData:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/ClientData'
        memberData:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/MemberData'
        memberEvents:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/CollaboratorEvents'
      required:
      - achCreditAccount
      - clientId
      - collaborations
      - createdAt
      - eventActors
      - firstCollaborationId
      - form1099Balances
      - formW9Data
      - internal
      - internationalWireAccount
      - labels
      - member
      - memberId
      - primaryCollaborationId
      - status
      - taxStatus
      - updatedAt
      - userRoles
    MemberClientWireAccount:
      type: object
      properties:
        accountNumber:
          type: string
        bankName:
          type: string
        routingNumber:
          type:
          - string
          - 'null'
        swiftCode:
          type:
          - string
          - 'null'
      required:
      - accountNumber
      - bankName
    MemberClientRequirementResponse:
      type: object
      properties:
        clientId:
          type: string
        collaboratorGroupId:
          type: string
        eligibilityRequirementId:
          type: string
        requirementType:
          type: string
          enum:
          - Signature
        document:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/DocumentResponse'
        documentId:
          type:
          - string
          - 'null'
        status:
          type:
          - string
          - 'null'
          enum:
          - New
          - Sent
          - Pending
          - Complete
          - null
        templateId:
          type:
          - string
          - 'null'
        validFor:
          type:
          - number
          - 'null'
      required:
      - clientId
      - collaboratorGroupId
      - eligibilityRequirementId
      - requirementType
    RedactedMember:
      type: object
      properties:
        user:
          $ref: '#/components/schemas/RedactedUser'
        profile:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/23d776fc12e56286a20f36065e4f942c43a28218a62eb2f211116c130deb74eb'
      required:
      - user
    b9789f45f8c8070ff38a64d80c2e4a8732ddaf329e46546474400d26f84c0f1c:
      type: object
      properties:
        '2021':
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/MemberClientForm1099Balances'
        '2022':
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/MemberClientForm1099Balances'
    UserRoles:
      type: object
      properties:
        ownerIds:
          type: array
          items:
            type: string
        viewerIds:
          type: array
          items:
            type: string
      required:
      - ownerIds
      - viewerIds
    d750b2d9403b5bcbdb3c96c89f1cc713df563d587f16e5f39f5ab546c08a20a0:
      type: object
      properties:
        quickbooks:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/64846136a354aa510825c1f23c3a978f4c816d8d4184311e7294a570f73727dc'
    CollaboratorV2FormW9Info:
      type: object
      properties:
        addressLine1:
          type: string
        city:
          type: string
        companyStructure:
          type: string
          enum:
          - None
          - SoleProprietorship
          - LlcSingleMember
          - LlcMultiMember
          - CorporationS
          - LLCCorporationS
          - LLCCorporationC
          - LLCPartnership
          - CorporationC
          - Partnership
        country:
          type: string
        postalCode:
          type: string
        state:
          type: string
        addressLine2:
          type:
          - string
          - 'null'
        dob:
          type:
          - string
          - 'null'
        ein:
          type:
          - string
          - 'null'
        firstName:
          type:
          - string
          - 'null'
        lastName:
          type:
          - string
          - 'null'
        legalBusinessName:
          type:
          - string
          - 'null'
        ssnLastFour:
          type:
          - string
          - 'null'
      required:
      - addressLine1
      - city
      - companyStructure
      - country
      - postalCode
      - state
    26e8ea23ccb1e007e7d6560175c7e75c768dac34727b7fe1d834ca24b8221ef4:
      type: object
      properties:
        quickbooks:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/6a65bb5a9fe6d1135b7182baff68e9bc6612ee2c1ab942926fe2804c58663cf4'
    ce853dbef33b2b91880690c84bc5314340c1301fd7b3503dd6ce79c844e2a481:
      type: object
      properties:
        address:
          oneOf:
          - type: 'null'
          - type: object
        companyStructure:
          type:
          - string
          - 'null'
          enum:
          - None
          - SoleProprietorship
          - LlcSingleMember
          - LlcMultiMember
          - CorporationS
          - LLCCorporationS
          - LLCCorporationC
          - LLCPartnership
          - CorporationC
          - Partnership
          - null
        ein:
          type:
          - string
          - 'null'
        firstName:
          type:
          - string
          - 'null'
        lastName:
          type:
          - string
          - 'null'
        legalBusinessName:
          type:
          - string
          - 'null'
        ssn:
          type:
          - string
          - 'null'
        totalAmount:
          type:
          - number
          - 'null'
    Form1099Events:
      type: object
      properties:
        acceptedByCollaboratorAt:
          type:
          - string
          - 'null'
        createdAt:
          type:
          - string
          - 'null'
        postFilingSuggestionMadeAt:
          type:
          - string
          - 'null'
        postFilingSuggestionResolvedAt:
          type:
          - string
          - 'null'
        submittedForCollaboratorReviewAt:
          type:
          - string
          - 'null'
        suggestionMadeAt:
          type:
          - string
          - 'null'
        suggestionResolvedAt:
          type:
          - string
          - 'null'
        updatedAt:
          type:
          - string
          - 'null'
    DocumentResponse:
      type: object
      properties:
        clientId:
          type: string
        documentId:
          type: string
        memberId:
          type: string
        status:
          type: string
          enum:
          - Required
          - Approved
          - Invalid
          - ReceivedFront
          - ReceivedBack
          - PendingReview
        templateId:
          type: string
        title:
          type: string
        userRoles:
          $ref: '#/components/schemas/UserRoles'
        events:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/DocumentEvents'
        files:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/DocumentFiles'
      required:
      - clientId
      - documentId
      - memberId
      - status
      - templateId
      - title
      - userRoles
    DocumentFiles:
      type: object
      properties:
        client:
          type:
          - string
          - 'null'
        member:
          type:
          - string
          - 'null'
    DeductionCreateRequest:
      type: object
      properties:
        amount:
          type: number
        clientId:
          type: string
        currency:
          type: string
          enum:
          - USD
          - CAD
        memberId:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
          - PrePayment
          - PostPayment
        priority:
          type:
          - number
          - 'null'
        sourceInvoiceId:
          type:
          - string
          - 'null'
        startDate:
          type:
          - string
          - 'null'
      required:
      - amount
      - clientId
      - currency
      - memberId
      - name
      - type
    CompanyPerson:
      type: object
      properties:
        memberId:
          type: string
        ownershipPercentage:
          type:
          - number
          - 'null'
      required:
      - memberId
    Company:
      type: object
      properties:
        banking:
          type:
          - boolean
          - 'null'
        companyOwners:
          type:
          - array
          - 'null'
          items:
            oneOf:
            - type: 'null'
            - $ref: '#/components/schemas/CompanyPerson'
        description:
          type:
          - string
          - 'null'
        disregardedEntityName:
          type:
          - string
          - 'null'
        legalBusinessName:
          type:
          - string
          - 'null'
        links:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/CompanyLinks'
        name:
          type:
          - string
          - 'null'
        stateOfIncorporation:
          type:
          - string
          - 'null'
        structure:
          type:
          - string
          - 'null'
          enum:
          - None
          - SoleProprietorship
          - LlcSingleMember
          - LlcMultiMember
          - CorporationS
          - LLCCorporationS
          - LLCCorporationC
          - LLCPartnership
          - CorporationC
          - Partnership
          - null
        supportEmail:
          type:
          - string
          - 'null'
        taxId:
          type:
          - string
          - 'null'
        website:
          type:
          - string
          - 'null'
        yearOfIncorporation:
          type:
          - string
          - 'null'
    DocumentEvents:
      type: object
      properties:
        clientSignedAt:
          type:
          - string
          - 'null'
        memberSignedAt:
          type:
          - string
          - 'null'
    64846136a354aa510825c1f23c3a978f4c816d8d4184311e7294a570f73727dc:
      type: object
      properties:
        customerId:
          type:
          - string
          - 'null'
        itemId:
          type:
          - string
          - 'null'
    PostPaymentDeductionDisbursement:
      type: object
      properties:
        inputs:
          $ref: '#/components/schemas/87539cb97aa7616e350fc0d23c5a49177ea4c4a8bd00ec2a2cfd2a9a5c4e648a'
        strategy:
          type: string
      required:
      - inputs
      - strategy
    MemberClientUpdateRequest:
      type: object
      properties:
        clientData:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/ClientData'
        clientId:
          type:
          - string
          - 'null'
        company:
          type:
          - string
          - 'null'
        emailCC:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
        emailTo:
          type:
          - string
          - 'null'
        form1099Balances:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/90f96495b02c2509fff131505484d46479a91b7d23ed2b0f438ca117d0bccad7'
        formW9Data:
          oneOf:
          - type: 'null'
          - type: object
        integration:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/3d33fba3f009de957b3be92fba006d6383af7e39f823cc1fd213506f6205100f'
        labels:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/LabelsDictionary'
        memberData:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/MemberData'
        name:
          type:
          - string
          - 'null'
        status:
          type:
          - string
          - 'null'
          enum:
          - Active
          - Inactive
          - Pending
          - null
    CollaboratorForm1099BalancesUpdateRequest:
      type: object
      properties:
        adjustments:
          type:
          - number
          - 'null'
        correction:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/ce853dbef33b2b91880690c84bc5314340c1301fd7b3503dd6ce79c844e2a481'
        deliveryMethod:
          type:
          - string
          - 'null'
          enum:
          - Electronic
          - Mail
          - Both
          - null
        dispute:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/8a9c6cb49482a98cdd603ff09858cdc3e5ef6ad9807c876c4161d925a96694a5'
        events:
          oneOf:
          - type: 'null'
          - type: object
        status:
          type:
          - string
          - 'null'
          enum:
          - Ready
          - NeedsActionInfo
          - NeedsActionDispute
          - Submitted
          - Rejected
          - Accepted
          - Excluded
          - null
    LabelsDictionary:
      type: object
      additionalProperties:
        type: string
    f6f2bd1a2fc7bad4e0d8f22345fc5f6699d096b7797b93575869c544a4fc5cef:
      type: object
      properties:
        firstName:
          type:
          - string
          - 'null'
        lastName:
          type:
          - string
          - 'null'
    CollaboratorEvents:
      type: object
      properties:
        knowYourCustomerVerifiedAt:
          type: string
        payoutMethodFirstAddedAt:
          type: string
        taxDocumentationVerifiedAt:
          type: string
        signedUpAt:
          type:
          - string
          - 'null'
      required:
      - knowYourCustomerVerifiedAt
      - payoutMethodFirstAddedAt
      - taxDocumentationVerifiedAt
    RedactedUser:
      type: object
      properties:
        email:
          type:
          - string
          - 'null'
        phone:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/7996a6815c717c0e93865680b5cd47dec90314e97e4e7282bed7fc2f367bc051'
        profile:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/f6f2bd1a2fc7bad4e0d8f22345fc5f6699d096b7797b93575869c544a4fc5cef'
        settings:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/9e97e63e736df301658ebeeab7f4fe84f3aeaa73800d3e4863801a3eb026df4b'
        status:
          type:
          - string
          - 'null'
          enum:
          - Pending
          - Active
          - Disabled
          - null
        tag:
          type:
          - string
          - 'null'
    23d776fc12e56286a20f36065e4f942c43a28218a62eb2f211116c130deb74eb:
      type: object
      properties:
        address:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Address'
        company:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/Company'
        logoUrl:
          type:
          - string
          - 'null'
        ssnLastFour:
          type:
          - string
          - 'null'
    Collaboration:
      type: object
      properties:
        collaboratorId:
          type: string
        status:
          type: string
          enum:
          - Active
          - Inactive
          - Pending
        clientData:
          oneOf:
          - type: 'null'
          - $ref: '#/components/schemas/ClientData'
        collaboratorGroupIds:
          type:
          - array
          - 'null'
          items:
            type:
            - string
            - 'null'
        eligibilityRequirements:
          t

# --- truncated at 32 KB (38 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/wingspan/refs/heads/main/openapi/wingspan-client-management-api-openapi.yml