API Reference

Complete reference for the EnGarde REST API

Base URL

https://api.engardehq.com/v1

Authentication

All API requests require authentication using an OAuth 2.0 access token. Include the token in the Authorization header:

Authorization: Bearer YOUR_ACCESS_TOKEN

Endpoints

GET

/analytics/conversations

Retrieve conversational analytics logs for the authenticated tenant.

Query Parameters

ParameterTypeDescription
session_idstringFilter by session ID (optional)
limitintegerMax results (default: 50, max: 100)
offsetintegerPagination offset (default: 0)

Example Request

curl -X GET "https://api.engardehq.com/v1/analytics/conversations?limit=10" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GET

/users

Retrieve user data for the authenticated tenant.

Query Parameters

ParameterTypeDescription
emailstringFilter by email address (optional)
limitintegerMax results (default: 50, max: 100)

Example Request

curl -X GET "https://api.engardehq.com/v1/users" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GET

/metrics/usage

Retrieve usage metrics and analytics for the authenticated tenant.

Query Parameters

ParameterTypeDescription
start_datestringISO 8601 date (required)
end_datestringISO 8601 date (required)
granularitystringday | week | month (default: day)

Example Request

curl -X GET "https://api.engardehq.com/v1/metrics/usage?start_date=2026-07-01&end_date=2026-07-19" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
GET

/oauth/clients/:client_id

Retrieve information about an OAuth client.

Example Request

curl -X GET "https://api.engardehq.com/v1/oauth/clients/YOUR_CLIENT_ID" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Error Responses

The API uses standard HTTP status codes and returns errors in JSON format:

{
  "error": {
    "code": "unauthorized",
    "message": "Invalid or expired access token"
  }
}

Common Status Codes

Status CodeDescription
200Request successful
401Unauthorized - invalid or missing access token
403Forbidden - insufficient permissions
404Resource not found
429Too many requests - rate limit exceeded
500Internal server error

Rate Limiting

API requests are rate limited to 1000 requests per hour per access token. Rate limit information is included in response headers:

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 950
X-RateLimit-Reset: 1720123456