API Endpoints Reference
API Endpoints Reference
Quick-reference table for all SearchJet Engine API endpoints. Base URL: https://app.searchjetengine.com
All endpoints require authentication via Authorization: Bearer {api_key} header unless noted otherwise.
Search
| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /v1/search |
sj_srch_, sj_prv_ | Search indexed content |
Parameters: q (required), site_id, limit, offset, page, filters, sort, facets
See Search API for full parameter details and examples.
Client Info
| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /v1/client-info |
Bearer token | Get Meilisearch config for authorized key |
Returns: meilisearch_host, meilisearch_key, meilisearch_public_key, active, index, domain, plan, limits, usage_limits
Index Management
| Method | Path | Auth | Description |
|---|---|---|---|
| POST | /api/v1/index/bulk |
sj_prv_ | Bulk index documents |
| DELETE | /api/v1/index/destroy |
sj_prv_ | Delete a document |
POST /api/v1/index/bulk
{
"documents": [
{
"id": "doc-123",
"title": "Page Title",
"content": "Full content...",
"url": "https://example.com/page",
"excerpt": "Short description",
"author": "Author Name",
"date": "2025-01-15"
}
]
}
DELETE /api/v1/index/destroy
{
"id": "doc-123"
}
Search Logging
| Method | Path | Auth | Description |
|---|---|---|---|
| POST | /api/v1/search-log |
Bearer token | Store search log entry |
{
"query": "react tutorial",
"results_count": 15,
"session_id": "abc-123",
"timestamp": "2025-01-15T10:30:00Z"
}
Usage Reporting
| Method | Path | Auth | Description |
|---|---|---|---|
| POST | /v1/report-usage |
Bearer token | Report API usage |
{
"operation": "search",
"count": 1,
"index": "site_123"
}
Analytics
| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /api/analytics |
Sanctum | Get search analytics |
Parameters: period (7d/30d/90d), site_id
Returns: total_searches, unique_queries, avg_response_time_ms, top_queries, zero_result_queries
API Keys
| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /api/sites/{site}/keys |
Bearer token | List keys for a site |
| POST | /api/sites/{site}/keys |
Bearer token | Create a new key |
| PUT | /api/sites/{site}/keys/{key} |
Bearer token | Update a key |
| DELETE | /api/sites/{site}/keys/{key} |
Bearer token | Delete a key |
| POST | /api/keys/{key}/toggle |
Bearer token | Toggle key status |
Path Parameters:
| Parameter | Type | Description |
|---|---|---|
site |
integer | Site ID |
key |
string | Key identifier |
Sites
| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /sites |
Bearer token | List all sites |
| POST | /sites |
Bearer token | Create a new site |
| PUT | /sites/{id} |
Bearer token | Update a site |
| DELETE | /sites/{id} |
Bearer token | Delete a site |
Create Site Body:
{
"name": "My Blog",
"url": "https://example.com"
}
Dashboard
| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /dashboard |
Bearer token | Get dashboard metrics |
Returns: siteCount, apiKeyCount, plan, usage, limits
Profile
| Method | Path | Auth | Description |
|---|---|---|---|
| PUT | /profile |
Bearer token | Update profile |
| DELETE | /profile |
Bearer token | Delete account |
Update Profile Body:
{
"name": "John Doe",
"email": "john@example.com"
}
Delete Account Body:
{
"password": "your_password",
"reason": "No longer needed"
}
Authentication Summary
| Key Prefix | Access |
|---|---|
sj_pub_ |
Search only (client-side safe) |
sj_srch_ |
Search only (optimized) |
sj_prv_ |
Full access (sites, keys, index, analytics) |
See Also
- API Documentation — Full API guide
- Error Handling — Error response details
- SDK Reference — Client library docs