API Documentation
Integrate Rindexa with your SaaS.
Base URL
https://api.rindexa.com /signup No Auth Create Tenant
Create a new tenant account and receive an initial API key.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
tenant_id | string | Yes | Unique identifier (max 100 chars, alphanumeric, -, _) |
email | string | Yes | A valid email address |
password | string | Yes | Secure password (min 8 characters) |
marketing_consent | boolean | No | Opt-in for marketing emails (default: false) |
Responses
cURL Example
curl -X POST https://api.rindexa.com/signup \
-H "Content-Type: application/json" \
-d '{
"tenant_id": "myapp",
"email": "me@example.com",
"password": "securepassword123",
"marketing_consent": false
}' /auth/login No Auth Dashboard Login
Authenticate with email and password to receive a JWT token.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
email | string | Yes | Your registered email address |
password | string | Yes | Your account password |
cURL Example
curl -X POST https://api.rindexa.com/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "me@example.com",
"password": "securepassword123"
}' /tenants/me JWT
Get Tenant Stats
Retrieve detailed statistics for your tenant, including document count and search usage. Requires JWT authentication.
cURL Example
curl https://api.rindexa.com/tenants/me \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." /documents API Key
Add Document
Add a new document to the tenant's search index. If a document with the same id exists, it will be overwritten.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
title | string | Yes* | Document title. Required if body is empty. |
body | string | Yes* | Document body text. Required if title is empty. |
id | string | No | Unique ID. Auto-generated as UUID v4 if omitted. |
tags | string[] | No | Array of tags for filtering. |
cURL Example
curl -X POST https://api.rindexa.com/documents \
-H "Authorization: Bearer rx_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"id": "doc1",
"doc_type": "post",
"title": "Hello World",
"body": "This is my first post about Rust",
"tags": ["rust", "tutorial"]
}' /documents/bulk API Key
Bulk Index Documents
Index multiple documents in a single request. Maximum 1,000 documents per batch.
cURL Example
curl -X POST https://api.rindexa.com/documents/bulk \
-H "Authorization: Bearer rx_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"documents": [
{
"title": "First Document",
"body": "Content of first doc",
"tags": ["intro"]
},
{
"title": "Second Document",
"body": "Content of second doc",
"tags": ["tutorial"]
}
]
}' /documents/:id API Key
Delete Document
Delete an existing document from the search index using its unique identifier.
cURL Example
curl -X DELETE https://api.rindexa.com/documents/doc1 \
-H "Authorization: Bearer rx_live_xxx" /search API Key
Search Documents
Execute a sub-millisecond search query across your tenant's indexed documents.
cURL Example
curl -X POST https://api.rindexa.com/search \
-H "Authorization: Bearer rx_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"query": "Rust",
"tags": ["tutorial"],
"limit": 10,
"offset": 0
}' /keys/rotate JWT
Rotate API Key
Rotate the API key for your tenant. The old key is invalidated immediately. Requires JWT authentication.
cURL Example
curl -X POST https://api.rindexa.com/keys/rotate \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..." \
-H "Content-Type: application/json" /health No Auth Health Check
Quick health check endpoint to monitor application uptime.
cURL Example
curl https://api.rindexa.com/health