Integration Summary

When to use
  • List and view term sheets for deals.
  • Use this page as the source of truth for reads, filters, pagination, and object shape.
Required scopes
  • Access is inherited from the connected user or JWT session.
  • Inspect GET /me or the validate-api-key response to confirm the scopes available to the current token.
Headers
  • Authorization: Bearer <token>
  • X-Origin-App: <client-name>
  • Content-Type: application/json when the endpoint accepts a body
Request schema
Use the path and query parameter tables below or /platform/openapi.json for the machine-readable schema surface.
Response schema
Responses use the standard request_id/timestamp/data envelope. This page documents these object schemas: Term Sheet Object.
Enums & values
  • Enum-like values and filter operators are documented inline on the page where available.
  • When a value set is account- or tier-dependent, validate against live responses before hard-coding assumptions.
Rate limits
See /rate-limits. Page intentionally through list endpoints and apply backoff on 429 responses.
Examples
curl, TypeScript, Python

Starter example: GET /api/external/v2/deals/{deal_id}/term-sheets

bash
curl -X GET "https://api.levcapital.com/api/external/v2/deals/{deal_id}/term-sheets" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "X-Origin-App: my-integration"

Term Sheets

Last updated: March 2026

Term sheets contain the lending terms offered by lenders on a deal — rate, spread, LTV, recourse, and more. These are read-only endpoints for accessing term sheet data.
Connect your API key to explore

Stored in your browser session only. Never sent to our docs server.

GET/api/external/v2/deals/{deal_id}/term-sheets
deal_id*
limit
https://api.levcapital.com/api/external/v2/deals/{deal_id}/term-sheets?limit=10

Overview

Term sheets are associated with deals and represent offers from lenders. The API currently provides read-only access.
EndpointDescription
GET /deals/{deal_id}/term-sheetsList term sheets for a deal
GET /deals/{deal_id}/term-sheets/{id}Get a single term sheet

List Term Sheets

GET/api/external/v2/deals/{deal_id}/term-sheets
List term sheets for a deal

Path parameters

ParameterTypeRequiredDescription
deal_idintegerRequiredThe deal ID

Query parameters

ParameterTypeRequiredDescription
limitintegerOptionalResults per page (1–200, default 50)
cursorstringOptionalCursor for next page
Response (200):
json
{
  "request_id": "e7f8a9b0-c1d2-3456-0123-567890123456",
  "timestamp": "2026-03-20T15:30:45Z",
  "data": [
    {
      "id": 15,
      "title": "JPMorgan Chase — Stabilized Multifamily",
      "quote_type": "soft_quote",
      "rate_type": "fixed",
      "total_rate": 5.85,
      "base_rate": "CMT",
      "initial_funding": 5000000,
      "io_period": 24,
      "max_ltv": 0.70,
      "max_ltc": null,
      "origination_fee": 0.01,
      "term": 120,
      "recourse": "non_recourse",
      "org_id": 3200,
      "placement_id": 310,
      "winning": false,
      "created_at": "2026-02-10T14:00:00Z",
      "updated_at": "2026-03-01T09:15:00Z"
    }
  ],
  "pagination": {
    "total": 3,
    "limit": 50,
    "has_more": false,
    "next_cursor": null
  }
}

Error responses

401unauthorized

When: Missing or invalid Authorization header

{
  "request_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "error": {
    "status": 401,
    "type": "unauthorized",
    "message": "Authentication required",
    "details": {}
  }
}
404not_found

When: The deal_id doesn't exist or isn't accessible to the authenticated user

{
  "request_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "error": {
    "status": 404,
    "type": "not_found",
    "message": "Deal not found",
    "details": {}
  }
}

Get Term Sheet

GET/api/external/v2/deals/{deal_id}/term-sheets/{term_sheet_id}
Get a single term sheet

Path parameters

ParameterTypeRequiredDescription
deal_idintegerRequiredThe deal ID
term_sheet_idintegerRequiredThe term sheet ID
Response (200):
json
{
  "request_id": "f8a9b0c1-d2e3-4567-1234-678901234567",
  "timestamp": "2026-03-20T15:30:45Z",
  "data": {
    "id": 15,
    "title": "JPMorgan Chase — Stabilized Multifamily",
    "quote_type": "soft_quote",
    "rate_type": "fixed",
    "total_rate": 5.85,
    "base_rate": "CMT",
    "initial_funding": 5000000,
    "io_period": 24,
    "max_ltv": 0.70,
    "max_ltc": null,
    "origination_fee": 0.01,
    "term": 120,
    "recourse": "non_recourse",
    "org_id": 3200,
    "placement_id": 310,
    "winning": false,
    "created_at": "2026-02-10T14:00:00Z",
    "updated_at": "2026-03-01T09:15:00Z",
    "capital_source_type": "balance_sheet",
    "base_rate_value": 4.35,
    "effective_spread": 1.50,
    "recourse_type": "non_recourse",
    "payment_method": "actual_360",
    "prepayment_penalty": "yield_maintenance",
    "prepayment_penalty_details": "Yield maintenance for first 7 years, 1% thereafter",
    "amortization": 360,
    "extension_one": 12,
    "extension_two": null,
    "extension_three": null,
    "floor": 5.00,
    "floor_type": "total_rate",
    "good_faith_deposit": 50000.0,
    "min_dscr": 1.25,
    "min_debt_yield": 0.08,
    "ir_details": null,
    "notes": "Subject to property inspection and environmental review"
  }
}

Error responses

401unauthorized

When: Missing or invalid Authorization header

{
  "request_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "error": {
    "status": 401,
    "type": "unauthorized",
    "message": "Authentication required",
    "details": {}
  }
}
404not_found

When: The term_sheet_id or deal_id doesn't exist or isn't accessible to the authenticated user

{
  "request_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "error": {
    "status": 404,
    "type": "not_found",
    "message": "Term sheet not found",
    "details": {}
  }
}

Term Sheet Object

The list endpoint returns a summary response, while the detail endpoint returns additional fields.

Summary Fields (List + Detail)

FieldTypeDescription
idintegerTerm sheet identifier
titlestring|nullTerm sheet title
quote_typestring|nullQuote type (indication, soft_quote, hard_quote)
initial_fundinginteger|nullInitial funding amount
total_ratenumber|nullAll-in total rate
base_ratestring|nullBase rate name (e.g., SOFR, CMT)
rate_typestring|nullRate type (fixed, floating)
terminteger|nullLoan term in months
io_periodinteger|nullInterest-only period in months
recoursestring|nullRecourse type
max_ltvnumber|nullMaximum Loan-to-Value ratio
max_ltcnumber|nullMaximum Loan-to-Cost ratio
origination_feenumber|nullOrigination fee
org_idinteger|nullLender organization ID
placement_idinteger|nullAssociated placement ID
winningboolean|nullWhether this is the winning term sheet
created_atstring|nullCreation timestamp
updated_atstring|nullLast update timestamp

Additional Detail Fields (Detail Only)

These fields are only returned by the GET /deals/{deal_id}/term-sheets/{id} endpoint:
FieldTypeDescription
capital_source_typestring|nullCapital source type
base_rate_valuenumber|nullBase rate numeric value
effective_spreadnumber|nullEffective spread over index
recourse_typestring|nullRecourse type detail
payment_methodstring|nullPayment method
prepayment_penaltystring|nullPrepayment penalty type
prepayment_penalty_detailsstring|nullPrepayment penalty details
amortizationinteger|nullAmortization period in months
extension_oneinteger|nullFirst extension option (months)
extension_twointeger|nullSecond extension option (months)
extension_threeinteger|nullThird extension option (months)
floornumber|nullRate floor
floor_typestring|nullFloor type
good_faith_depositnumber|nullGood faith deposit amount
min_dscrnumber|nullMinimum DSCR requirement
min_debt_yieldnumber|nullMinimum debt yield requirement
ir_detailsstring|nullInterest reserve details
notesstring|nullAdditional notes