Skip to content
Levr API Documentation
Download OpenAPI specOpenAPI

Hand off to an AI agent

Copy instructions to your AI agent

Copy this guide into your AI agent. It links to the current REST API and MCP documentation.

You are helping someone integrate their system with Levr. Use Levr's published documentation and machine-readable contracts as the source of truth. Do not invent endpoints, fields, or MCP tools.

  1. Start with the Levr API documentation to choose between a server-to-server REST integration and a user-authorized MCP connection.
  2. For REST, read the Markdown REST API guide, choose the user’s task, then fetch only the relevant resource guide and operation Markdown. Resource indexes include task guidance. For funding recommendations, start with the Matchmaking guide. Use the OpenAPI specification for exact paths, authentication, parameters, and envelope schemas.
  3. For REST client intake, Deal applications, or project Criteria, fetch that resource's contract_url. Its Application Contract is the authority for the current questions, stable keys, repeatable groups, file-transfer steps, accepted answer shapes, conditional visibility, supported operation URLs, and integration instructions. Repeatable fields require the returned item_id. File bytes use the expiring upload_url and multipart field named file; they never belong in JSON. Do not substitute a static example or the latest application definition.
  4. For an AI client acting with a signed-in user's access, read the MCP connection instructions in Markdown first, then the Model Context Protocol guide if needed. Let the connected MCP server expose its current tools and input contracts; do not infer tools from the REST API. Read the relevant MCP resource guide and follow the discovered tool’s revision, file-transfer, and confirmation requirements.
  5. Use URLs from the record handoff when supplied; otherwise use this documentation environment. Keep API keys and file-transfer credentials out of browser code, logs, prompts, and source control.
  6. Before implementing a write, verify authentication, required inputs, idempotency, error responses, and retry guidance in the current contract. If an operation is not documented, do not assume it exists.

Early access

Request an integration

Tell us what your integration needs to do. Add an email if you want a reply.

Matchmaking

Read as Markdown

Choose an action to read its inputs, results, and usage guidance. Your connection determines which tools are available to you.

Matchmaking compares a Project's Criteria with funding partners' requirements. Use it when you want recommendations; a recommendation does not submit an application.

Find and use recommendations

  1. Read the Project's matchmaking state and Criteria contract, then complete the relevant answers.
  2. Start matching with the current answers revision and check the run's status until it settles.
  3. List result summaries. Read an individual result when you need its assessment, missing information, or package evidence.
  4. Review recipient availability and uncertainty. Save selections if you want to keep a shortlist; use result IDs and package versions for selections.
  5. Call deals.create with provider_slug, a new UUID idempotency_key, the Business ID, the chosen result's recipient.id as recipient_id, and the Project ID. Creation uses the current published application and does not submit it.

Create one Deal per chosen recipient. Save the returned Deal and application IDs. Reuse the same idempotency key and inputs when retrying; use a new key only when you intend to create another Deal.

Complete the Criteria

  1. Read the application and its current question contract. Use the returned question keys, repeated-entry IDs, and supported tools.
  2. Read the current answers. Use their revision for answer changes; the application's own revision protects a different change.
  3. Update ordinary answers with the answer-update tool. Use dedicated tools for repeated entries and documents.
  4. Review missing or invalid Criteria before calculating matches. Use the matching result to identify information that needs clarification.

Attach documents

Call projects.prepare_matchmaking_answer_file_upload with the question key, latest answers revision, filename, byte count, and SHA-256 digest. Include the returned item ID for a repeated entry. POST the file to the returned URL as multipart field file, using transfer_token as a Bearer credential within five minutes. No separate API key is needed. Check the receipt, then list the files to confirm the upload. Files can be up to 25 MiB; application storage limits also apply.

Work with an uploaded document

List the application's files and use the returned file ID. Call projects.update_matchmaking_answer_file with a filename, the latest expected_answers_revision, and a UUID idempotency_key to rename it while preserving its contents and identity. Renaming does not convert its format.

Call projects.get_matchmaking_answer_file_download to retrieve the original. GET download.url with download.transfer_token as a Bearer credential within five minutes; no API key is needed. Downloads recheck current access and file availability. Unrelated answer edits do not invalidate the download. Keep credentials and bytes out of logs and messages. Uploading a processed copy adds another file; delete the original only if the user explicitly requests removal.

Use Autofill

Autofill proposes answers from evidence; it does not save them automatically. Read preparation to choose available evidence and add notes. Upload any new supporting documents before starting a run:

  1. Call projects.prepare_matchmaking_application_autofill_file_upload with the latest expected_preparation_revision, a new UUID idempotency_key, filename, byte count, and SHA-256 digest of the file.
  2. POST the document as multipart field file to the returned URL within five minutes. Set Authorization: Bearer <transfer_token>; your MCP connection authorizes the upload, so no API key is needed. The limit is 25 MiB per file.
  3. Check the upload receipt and read preparation again. Use its latest revision when adding another document or starting Autofill.

An identical retry with the same transfer credential returns the original receipt without adding another file. Keep the upload receipt and use preparation’s files list to confirm the document names and follow processing. If the credential expires before you confirm the upload, read preparation and check that list before uploading again. A document’s status is pending while queued, running while being read, success when ready for Autofill, or failed when it needs attention. Processing updates do not change the preparation revision; read preparation again to check progress. Supporting documents provide evidence for Autofill; they do not fill an application question by themselves.

Start a run using the latest preparation revision, check its status until it settles, and review its suggestions. Accept only approved suggestions using the latest expected_answers_revision. Keep the revision and idempotency key for an identical retry, then read the answers to confirm what was saved.

If a revision is stale, read again and reconcile the change before retrying. Keep file-transfer credentials and document bytes out of tool arguments, logs, and messages.

Available tools

projects.get_matchmaking_application_contractRead a Project matchmaking application contractprojects.get_matchmakingGet funding request matchesprojects.update_matchmaking_requestUpdate matching request detailsprojects.get_matchmaking_application_answersRead matchmaking application answersprojects.update_matchmaking_application_answersUpdate matchmaking application answersprojects.list_matchmaking_repeatable_itemsList a Project matchmaking application repeatable itemsprojects.add_matchmaking_repeatable_itemAdd a Project matchmaking application repeatable itemprojects.update_matchmaking_repeatable_itemUpdate a Project matchmaking application repeatable itemprojects.delete_matchmaking_repeatable_itemDelete a Project matchmaking application repeatable itemprojects.get_matchmaking_answer_file_downloadGet a Project matchmaking application original fileprojects.list_matchmaking_answer_filesList a Project matchmaking application answer filesprojects.prepare_matchmaking_answer_file_uploadPrepare a Project matchmaking application answer file uploadprojects.update_matchmaking_answer_fileUpdate a Project matchmaking application file metadataprojects.delete_matchmaking_answer_fileDelete a Project matchmaking application answer fileprojects.get_matchmaking_application_autofill_preparationRead matchmaking application autofill preparationprojects.prepare_matchmaking_application_autofill_file_uploadPrepare Criteria Autofill supporting-file uploadprojects.prepare_matchmaking_application_autofillPrepare matchmaking application autofillprojects.start_matchmaking_application_autofillStart matchmaking application autofillprojects.get_matchmaking_application_autofillGet matchmaking application autofillprojects.list_matchmaking_application_autofill_suggestionsList matchmaking application autofill suggestionsprojects.accept_matchmaking_application_autofill_suggestionAccept a Project matchmaking application autofill suggestionprojects.retry_matchmaking_application_autofillRetry matchmaking application autofillprojects.calculate_matchesCalculate funding matchesprojects.get_matchmaking_resultGet funding match detailsprojects.list_matchmaking_result_summariesList funding matchesprojects.update_matchmaking_selectionsUpdate recipient choicesprojects.retry_matchmakingRetry unfinished funding matchesprojects.cancel_matchmakingCancel funding match calculation