Skip to main content

Base URL

https://app.getlima.ai/api/v1
All endpoints are relative to this base URL. HTTPS is required on all requests.

Authentication

Pass your API key as a Bearer token in the Authorization header:
Authorization: Bearer pk_live_abc123...
See Authentication for key generation and security guidance.

Errors

All errors follow a consistent JSON structure:
{
  "error": {
    "code": "error_code_string",
    "message": "Human-readable description of the error."
  }
}

HTTP Status Codes

StatusMeaningWhen It Happens
200OKSuccessful GET, PATCH, PUT, or POST that returns data
201CreatedSuccessful resource creation (POST)
204No ContentSuccessful deletion or action with no response body
400Bad RequestInvalid body, missing required fields, or constraint violation
401UnauthorizedMissing or invalid Bearer token / session
403ForbiddenValid auth but insufficient permissions
404Not FoundResource does not exist or does not belong to your account
409ConflictResource already exists (e.g., duplicate signal type name)
422Unprocessable EntityWell-formed but semantically invalid request
429Too Many RequestsRate limit exceeded — see Rate Limits
500Internal Server ErrorUnexpected server error

Error Codes

CodeDescription
unauthorizedMissing or invalid authentication credentials
not_foundThe requested resource does not exist
invalid_requestBody or parameters are invalid, or a constraint was violated
rate_limitedExceeded the 100 req/min rate limit
conflictResource already exists
internal_errorUnexpected server error

Pagination

List endpoints use cursor-based pagination.

Query Parameters

ParameterTypeDescription
limitintegerItems to return. Maximum 100. Default varies by endpoint.
cursorstringID of the last item from the previous page.

Response Shape

{
  "signals": [ "..." ],
  "pagination": {
    "cursor": "660e8400-e29b-41d4-a716-446655440099",
    "has_more": true,
    "count": 100
  }
}
When cursor is null and has_more is false, you have reached the last page.

Iterating All Pages

# First page
curl -s -H "Authorization: Bearer pk_live_abc123" \
  "https://app.getlima.ai/api/v1/signals?limit=100"

# Subsequent pages — pass cursor from previous response
curl -s -H "Authorization: Bearer pk_live_abc123" \
  "https://app.getlima.ai/api/v1/signals?limit=100&cursor=660e8400-e29b-41d4-a716-446655440099"