Integration Summary
When to use- View team members assigned to a deal.
- 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. This page documents these object schemas: Team Member 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 limitsSee /rate-limits. Page intentionally through list endpoints and apply backoff on 429 responses.
Examplescurl, TypeScript, Python
Starter example: GET /api/external/v2/deals/{deal_id}/team
bash
curl -X GET "https://api.levcapital.com/api/external/v2/deals/{deal_id}/team" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "X-Origin-App: my-integration"Deal Team
Last updated: March 2026
Each deal has a team of assigned users with specific roles (originator, deal lead, closer, etc.). You can fetch team members as a standalone endpoint or embed them directly in deal responses via ?include=team.
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}/teamdeal_id*limithttps://api.levcapital.com/api/external/v2/deals/{deal_id}/team?limit=10Team data can also be embedded directly in deal list and detail responses using?include=teamonGET /dealsorGET /deals/{deal_id}. See Deals for details.
List Team
GET
/api/external/v2/deals/{deal_id}/teamList all team members assigned to a deal
Path parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
deal_id | integer | Required | The deal ID |
Response (200):
json
{
"request_id": "...",
"timestamp": "2026-03-20T15:30:45Z",
"data": [
{
"id": 401,
"user_id": 1234,
"first_name": "Jane",
"last_name": "Smith",
"email": "jane@example.com",
"deal_role": "deal_lead",
"is_primary": true,
"permission": null,
"photo_url": 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": {}
}
}Team Member Object
| Field | Type | Description |
|---|---|---|
id | integer | Team assignment identifier |
user_id | integer|null | User ID |
first_name | string|null | First name |
last_name | string|null | Last name |
email | string|null | Email address |
deal_role | string|null | Team role (deal_lead, originator, closer, etc.) |
is_primary | boolean | Whether this is the primary team member |
permission | string|null | Permission level |
photo_url | string|null | Profile photo URL |