LeadCallers API är ett REST-API över HTTPS som svarar med JSON. Med det kan
du skapa kunder och lägga till teammedlemmar programmatiskt. Samma säkra
funktioner finns som MCP-verktyg för AI-agenter. Det kompletta maskinläsbara
kontraktet finns på /v1/openapi.json.
Autentisering
Skapa en OAuth-klient under Inställningar → API & MCP. Klienthemligheten visas en gång och används endast för att hämta en kortlivad access-token:
curl -u "$LEADCALLER_CLIENT_ID:$LEADCALLER_CLIENT_SECRET" \
-H "Content-Type: application/x-www-form-urlencoded" \
-d "grant_type=client_credentials" \
-d "resource=https://api.leadcaller.com" \
https://api.leadcaller.com/oauth/token
Svarets access_token skickas som
Authorization: Bearer …. Token gäller i 15 minuter och är bunden
till den begärda resursen.
Behörigheter
Profilen bestäms av den användare som skapar klienten. Admin kan hantera kunder och team. Återförsäljare kan bara hantera sina egna kunder. Vanliga användare får endast läsa och lägga till vanliga medlemmar i sitt eget team; API:et accepterar inget rollfält som kan ge högre behörighet.
REST-endpoints
GET /v1/customersochGET /v1/customers/{id}POST /v1/customersGET /v1/team-membersPOST /v1/team-membersGET /v1/operations/{id}för status på asynkron onboarding
Listor använder ?cursor= och ?limit=. Alla
POST-anrop kräver en unik Idempotency-Key, så samma
säkra retry inte skapar dubletter.
curl https://api.leadcaller.com/v1/customers \
-H "Authorization: Bearer $LEADCALLER_ACCESS_TOKEN" MCP
MCP använder Streamable HTTP på POST /mcp. Begär token med
resource=https://api.leadcaller.com/mcp. Servern annonserar bara
de verktyg klientens scopes tillåter, och REST och MCP använder exakt samma
validering, tenantgränser, idempotens och audit log.
Verktyget operations.get följer status på välkomstmail och andra
asynkrona onboardingsteg utan att lämna MCP-tokenens audience.
Status failed är terminal och innebär att support behöver granska
den säkert sparade operationen.
MCP-version 2026-07-28 är stateless. Varje anrop skickar
MCP-Protocol-Version, Mcp-Method och vid tool calls
även Mcp-Name. Samma protokollversion och klientens capabilities
ska finnas i params._meta; header och body måste matcha.
curl https://api.leadcaller.com/mcp \
-H "Authorization: Bearer $LEADCALLER_MCP_TOKEN" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-H "MCP-Protocol-Version: 2026-07-28" \
-H "Mcp-Method: tools/list" \
--data '{"jsonrpc":"2.0","id":1,"method":"tools/list","params":{"_meta":{"io.modelcontextprotocol/protocolVersion":"2026-07-28","io.modelcontextprotocol/clientCapabilities":{}}}}' Felhantering
REST- och OAuth-API:et använder vanliga HTTP-statuskoder: 2xx vid lyckat anrop,
4xx vid fel i din förfrågan och 5xx vid fel hos oss.
Felsvar följer application/problem+json och innehåller ett
maskinläsbart code, request-ID och en läsbar detalj:
{
"type": "https://api.leadcaller.com/problems/unauthorized",
"status": 401,
"code": "unauthorized",
"detail": "En giltig Bearer-token krävs.",
"request_id": "…"
}
MCP följer i stället JSON-RPC 2.0 och använder standardiserade MCP-felkoder,
exempelvis -32020 när routingheaders och body inte matchar.
Rate limits
Anrop är hastighetsbegränsade per OAuth-klient för att skydda tjänsten. Når du
gränsen svarar API:et med 429 Too Many Requests — vänta så
länge Retry-After anger innan du försöker igen.