openapi: 3.0.3 info: title: Blend Public Borrowers & Parties API description: 'The Blend Public API is the documented REST surface of the Blend Labs digital lending and account-opening platform (developers.blend.com). It lets lenders and certified technology partners programmatically create and manage lending applications across home lending (mortgage), consumer lending, and deposit account opening; manage borrowers/parties, documents and disclosures, pricing, closings and eSignature packages, follow-ups (tasks), lenders and assignments; subscribe to webhook event notifications; and export industry-standard loan files (Fannie Mae 3.2, MISMO 3.3.1/3.4) into a loan origination system (LOS). endpointsModeled: The paths, methods, and resource names in this document are modeled from Blend''s public developer documentation and reference at developers.blend.com (llms.txt endpoint index, Quick Start Guide, LOS Guide, and the create/export home-loan guides). Blend does not publish a fully open self-service OpenAPI - the reference is credential-gated and access tokens are issued to Blend customers and certified partners. Request/response schemas below are representative rather than field-complete; obtain the authoritative machine spec at https://developers.blend.com/blend/openapi once you hold API credentials.' version: 12.0.0 contact: name: Blend Labs url: https://developers.blend.com/blend termsOfService: https://blend.com/legal/terms-of-service/ servers: - url: https://api.blendlabs.com description: Production - url: https://api.beta.blendlabs.com description: Beta / integration environment (used in Blend's documentation examples) security: - bearerAuth: [] tags: - name: Borrowers & Parties description: Borrowers, coborrowers, realtors, employers, incomes, and positions. paths: /applications/{id}/parties: parameters: - $ref: '#/components/parameters/ApplicationId' get: operationId: listParties tags: - Borrowers & Parties summary: List parties for an application responses: '200': description: The parties on the application. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/Party' post: operationId: createParty tags: - Borrowers & Parties summary: Add a party (coborrower, etc.) to an application requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartyInput' responses: '201': description: The created party. content: application/json: schema: $ref: '#/components/schemas/Party' /applications/{id}/parties/{partyId}: parameters: - $ref: '#/components/parameters/ApplicationId' - $ref: '#/components/parameters/PartyId' patch: operationId: patchParty tags: - Borrowers & Parties summary: Update a party requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/PartyInput' responses: '200': description: The updated party. content: application/json: schema: $ref: '#/components/schemas/Party' delete: operationId: deleteParty tags: - Borrowers & Parties summary: Remove a party responses: '204': description: Removed. /applications/{id}/borrower-positions: parameters: - $ref: '#/components/parameters/ApplicationId' get: operationId: getBorrowerPositions tags: - Borrowers & Parties summary: Get borrower positions responses: '200': description: Borrower positions. put: operationId: putBorrowerPositions tags: - Borrowers & Parties summary: Set borrower positions requestBody: required: true content: application/json: schema: type: object responses: '200': description: Updated borrower positions. components: schemas: Party: type: object properties: id: type: string name: type: object properties: firstName: type: string lastName: type: string email: type: string format: email econsent: type: string PartyInput: type: object properties: name: type: object properties: firstName: type: string lastName: type: string email: type: string format: email role: type: string parameters: PartyId: name: partyId in: path required: true schema: type: string description: The party ID. ApplicationId: name: id in: path required: true schema: type: string description: The application ID. securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: Blend authenticates requests with an authorization Bearer token. Each call must also send blend-api-version (to pin the API version) and blend-target-instance (tenant~instance) headers. API Secret Keys are exchanged for short-lived, request-scoped JWTs at Blend's API Gateway. Credentials are issued to Blend customers and certified partners - contact your Blend account team or partnerships to obtain them.