Integration Summary
When to use- Access base rates and asset type reference data.
- 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 schemaUse the path and query parameter tables below or /platform/openapi.json for the machine-readable schema surface.
Response schemaResponses use the standard request_id/timestamp/data envelope documented in the API overview.
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 limitsSee /rate-limits. Page intentionally through list endpoints and apply backoff on 429 responses.
Examplescurl, TypeScript, Python
Starter example: GET /api/external/v2/market/base-rates
bash
curl -X GET "https://api.levcapital.com/api/external/v2/market/base-rates" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "X-Origin-App: my-integration"Market Data
Last updated: March 2026
Market data endpoints provide reference data including current base rates (SOFR, CMT) and asset type definitions used across the platform.
Connect your API key to explore
Stored in your browser session only. Never sent to our docs server.
GET
/api/external/v2/market/base-rateshttps://api.levcapital.com/api/external/v2/market/base-ratesBase Rates
GET
/api/external/v2/market/base-ratesGet current base rates (SOFR, CMT, Prime, etc.)
Response (200):
json
{
"request_id": "...",
"timestamp": "2026-03-20T15:30:45Z",
"data": [
{
"code": "sofr_30",
"name": "SOFR 30-Day",
"rate": 4.33
},
{
"code": "cmt_5y",
"name": "5-Year CMT",
"rate": 3.95
},
{
"code": "cmt_10y",
"name": "10-Year CMT",
"rate": 4.15
}
]
}Each base rate object contains:
| Field | Type | Description |
|---|---|---|
code | string | Rate identifier code |
name | string | Display name |
rate | number|null | Current rate value |
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": {}
}
}Asset Types
GET
/api/external/v2/market/asset-typesGet available asset type definitions
Response (200):
json
{
"request_id": "...",
"timestamp": "2026-03-20T15:30:45Z",
"data": [
{
"id": 1,
"description": "Multifamily",
"property_sub_types": ["garden", "mid-rise", "high-rise"]
},
{
"id": 2,
"description": "Office",
"property_sub_types": ["CBD", "suburban"]
},
{
"id": 3,
"description": "Retail",
"property_sub_types": ["strip_center", "mall", "single_tenant"]
},
{
"id": 4,
"description": "Industrial",
"property_sub_types": ["warehouse", "flex"]
},
{
"id": 5,
"description": "Mixed-Use",
"property_sub_types": null
}
]
}Each asset type object contains:
| Field | Type | Description |
|---|---|---|
id | integer | Asset type identifier |
description | string|null | Asset type name/description |
property_sub_types | array|null | Sub-type classifications |
Asset type IDs are used when creating deal properties (
asset_type_id field).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": {}
}
}