canonical: https://jentic.com/apis/lev.com/lev

# Lev API

The Lev API runs commercial real estate debt deals from origination to term sheet: it creates and updates deals, moves them through pipeline stages, and records lender placements and the term sheets lenders quote against them. It also searches a lender directory by name, headquarters state, and lender type, returns current base rates such as SOFR, CMT, and Prime, and exposes each deal's documents, checklists, generated memos, and indexed financial facts. Companies, contacts, and notes on deals, placements, and checklist tasks round out the relationship record.

## For AI agents

Create and advance commercial real estate financing deals, search the lender directory, log placements and term sheets, and query a deal's documents, memos, and indexed facts.

## Scope

Does not originate or fund loans, process payments, or e-sign closing documents. Use for managing commercial real estate debt deals, lender placements, and term sheets only.

## Capabilities

- Create a financing deal with loan amount, loan type, and transaction type, then move it to a pipeline stage
- Search the lender directory by name, headquarters state, or lender type and open a lender's profile
- Record a lender placement against a deal and track its status and outreach date
- Log a term sheet quote with total rate, initial funding, quote type, and rate type, then mark the winning one
- Search a deal's indexed facts by natural-language context and record new metric values on it
- List a deal's uploaded documents and fetch a short-lived signed download link for one
- Read current market base rates such as SOFR, CMT, and Prime

## Use cases

### Agent-run deal desk through Jentic

A capital advisor's AI agent can take a new financing request, create the deal in Lev, search the lender directory for matching lenders, and open a placement for each lender company already in the account. Through Jentic the agent finds the deal, lender-directory, company, and placement operations by intent and loads their schemas, so it works the Lev pipeline without the developer wiring each call by hand.

Example prompt: Create a deal titled '123 Main St Acquisition' with a loan_amount of 12000000, search the lender directory with filter[state]=NY, then create a placement using the new deal_id and the matching lender's private_company_id from the companies list.

### Term sheet comparison

When several lenders quote on one deal, the Lev API stores each quote as a term sheet tied to a placement, with fields such as total_rate, initial_funding, max_ltv, max_ltc, and term. Listing a deal's term sheets lets an agent or analyst compare quotes side by side and flag the winning one with a partial update.

Example prompt: List the term sheets on a deal, find the one with the lowest total_rate, and patch it with winning set to true.

### Deal fact lookup for underwriting

Lev indexes the facts extracted from a deal's documents. An underwriting assistant can search those facts with a natural-language context string, inspect the per-document observations behind a value, and record a user-supplied metric when a figure is missing, using metric ids from the deal's metric definitions.

Example prompt: Search the indexed facts of a deal with the context 'net operating income', then list the observations behind the top result's sot_id.

### Market rate snapshot for pricing

Pricing a floating-rate loan needs today's index. The Lev API returns current base rates such as SOFR, CMT, and Prime, plus the asset type definitions it uses, so an agent can quote an all-in rate or populate a deal's base_rate before a term sheet is written.

Example prompt: Fetch the current base rates and report the SOFR value alongside the list of asset types.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/api/external/v2/deals` | Create a new deal |
| GET | `/api/external/v2/deals` | List deals with filtering and sorting |
| POST | `/api/external/v2/deals/{deal_id}/pipeline` | Move a deal to a pipeline stage |
| GET | `/api/external/v2/lenders/directory` | Search the lender directory |
| POST | `/api/external/v2/placements` | Create a placement against a deal |
| POST | `/api/external/v2/deals/{deal_id}/term-sheets` | Create a term sheet against a placement |
| POST | `/api/external/v2/deals/{deal_id}/index/search` | Search indexed deal facts |
| GET | `/api/external/v2/market/base-rates` | Get current base rates |

## Key resources

- **Deals** — Financing deals with loan details, financials, properties, team, notes, and pipeline stage
- **Placements** — A lender's engagement on a deal, with status, visibility, outreach date, and notes
- **Term sheets** — Lender quotes against a placement, with rate, funding, leverage, and term fields
- **Lenders** — Directory search and lender profiles keyed by org_id
- **Deal index** — Indexed deal facts, observations, metric definitions, and entities
- **Documents and memos** — A deal's vaults, uploaded documents with signed download links, checklists, and generated memos
- **Companies and contacts** — Relationship records with notes, including AI-recommended lender contacts that can be unlocked

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 56 / 100
- **Maturity:** Non-Ready
- **Dimensions:**
  - Foundational Compliance: 35 / 100
  - Developer Experience & Jentic Compatibility: 63 / 100
  - AI-Readiness & Agent Experience: 52 / 100
  - Agent Usability: 89 / 100
  - Security: 60 / 100
  - AI Discoverability: 67 / 100
- **View full report:** https://jentic.com/apis/lev.com/lev/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring Lev by hand means sending its bearer token on the right operations, threading deal, placement, and term sheet ids between calls, and paging with cursors. Through Jentic you install once, import Lev from the API Directory, store the token once, and your agent calls it.
- **Permission scoping:** Lev puts the deal id in the URL path (`/api/external/v2/deals/{deal_id}/...`), so a rule can pin your agent to one deal and the operations you pick on it. You choose the operations it may call, so destructive ones like archiving a deal or revoking an API key are not included unless you add them.
- **Credential handling:** Your Lev token is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'search the lender directory' or 'log a term sheet', and Jentic returns the matching Lev operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Affinity CRM API** — Relationship-intelligence CRM for dealmaking teams
- **Pipedrive API** — General sales pipeline CRM with deals and stages
- **FRED API** — Historical economic and interest rate series

## FAQ

### What authentication does the Lev API use?

The Lev API uses HTTP bearer authentication per its OpenAPI spec: you send an API key or JWT in the Authorization header as a bearer token. Two operations are open without a token, the health check and the API key validation call, which accepts a key and returns its authentication details. Through Jentic the token is stored encrypted by your own Jentic One instance and injected at request time.

### Is there a Lev API MCP server?

You don't need an MCP server to give your agent the Lev API. Jentic connects it directly from the API Directory: import it, store your credential once, and your agent calls it, discovering deal, lender, and term sheet operations on demand instead of loading a full set of tool definitions into its context.

### Can I search for lenders with the Lev API?

Yes. The lender directory operation searches by lender name with partial and close-spelling matches, and filters by headquarters state as an uppercase two-letter code such as NY and by lender type, with comma-separated values to match several. Each result's org_id opens the lender's full directory profile.

### What are the rate limits for the Lev API?

The OpenAPI spec does not specify rate limits. Check the Lev developer documentation at https://www.lev.com/docs for current limits on your account.

### Can I limit what my agent is allowed to do with the Lev API?

Yes. For example, write a rule that allows the term sheet list and read operations and the term sheet update under `/api/external/v2/deals/123`/, so the agent can compare quotes and mark a winner on that one deal while deal archiving, note deletion, and API key creation stay outside its reach. Every call it makes is logged.

### How do I move a deal through the pipeline with the Lev API through Jentic?

Search Jentic for 'move a deal to a pipeline stage', load the operation, and pass the deal_id in the path with the pipeline_id and pipeline_status_id in the body; the pipelines list returns the available ids and statuses. Jentic injects your bearer token at call time. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Does unlocking a lender contact cost credits?

Yes. The unlock action on a contact reveals an AI-recommended lender contact, charges credits, and requires the ai:actions scope. You can check the active account's remaining credits with the billing credit balance operation before calling it.
