Skip to main content
The Replyke REST API is a project-scoped HTTP API. All endpoints follow the same base structure and share common conventions for authentication, pagination, and error reporting.

Base URL

All API requests are made to:
https://api.replyke.com/v7/:projectId
Replace :projectId with the UUID of your Replyke project, which you can find in the Replyke dashboard. So every endpoint takes the form:
https://api.replyke.com/v7/:projectId/<endpoint>

Request Format

Most endpoints accept application/json. Endpoints that support file uploads accept multipart/form-data. The Content-Type header should be set accordingly.
POST /v7/:projectId/auth/sign-in
Content-Type: application/json

{
  "email": "user@example.com",
  "password": "secret"
}

Authentication

Protected endpoints require a Bearer token in the Authorization header:
GET /v7/:projectId/app-notifications
Authorization: Bearer <accessToken>
See Authentication for full details on obtaining and refreshing tokens.

Pagination

Endpoints that return lists use cursor-free offset pagination. Pass page and limit as query parameters:
ParameterDefaultMaxDescription
page1Page number (1-indexed)
limitvariesvariesResults per page (endpoint-specific)
Paginated responses always return the same envelope:
{
  "data": [...],
  "pagination": {
    "page": 1,
    "pageSize": 20,
    "totalPages": 5,
    "totalItems": 97,
    "hasMore": true
  }
}

Error Format

All error responses follow a consistent structure:
{
  "error": "Human-readable error message.",
  "code": "feature/error-slug"
}
Some errors include an additional field key (e.g., validation errors on a specific input field):
{
  "error": "Username already taken",
  "field": "username",
  "code": "DUPLICATE_USERNAME"
}

Common HTTP Status Codes

StatusMeaning
200Success
201Resource created
400Bad request — invalid input or missing required fields
401Unauthorized — missing or expired token
403Forbidden — valid token but insufficient permissions
404Not found
409Conflict — duplicate resource (e.g., email already in use)
429Rate limit exceeded
500Internal server error

Rate Limiting

Each endpoint has its own rate limit, applied per project and per IP. When a limit is exceeded, the API returns 429 Too Many Requests. Limits are noted per endpoint in this reference.