query
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/correlation_exclusions Parameters
project_idstringpathrequiredCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/correlation_exclusions"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200
Example
{
"events": [
"string"
],
"properties": [
"string"
]
}Schema
eventsstring[]Event names left out of event correlation.
propertiesstring[]Property keys left out of property correlation.
404
PUT
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/correlation_exclusions Parameters
project_idstringpathrequiredRequest body
application/json
eventsstring[]Event names left out of event correlation.
propertiesstring[]Property keys left out of property correlation.
{
"events": [
"string"
],
"properties": [
"string"
]
}Code samples
cURL
curl -X PUT "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/correlation_exclusions" \
-H "Content-Type: application/json" \
-d '{"events":["string"],"properties":["string"]}'TypeScript
Python
Go
PHP
Ruby
Java
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoint-usage Parameters
project_idstringpathrequiredfromstringquerytostringqueryendpointstringquerymodestringquerycache | direct | materialized | rejected
breakdownstringqueryendpoint | key | mode
Code samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoint-usage"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200
{data: UsageRow[]} per day and breakdown value (last 30 days by default)404
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints Parameters
project_idstringpathrequiredlimitintegerquerycursorstringqueryCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Page of QueryEndpoint, newest first
404
POST
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints Parameters
project_idstringpathrequiredRequest body
application/json
descriptionstringnamestringrequirednotestringqueryobjectrequiredAny Query IR document; becomes version 1.
refresh_every_minutesintegerRecompute this often (5 to 10080 minutes); omit for on-demand only.
slugstringrequiredLowercase letters, digits and dashes, 1 to 63 characters.
variablesobject[]Variable definitions
[{name, type, default?, required?, description?}] for {variables.name} in a SQL query; type is string, number, boolean, date, uuid or string_list.{
"description": "string",
"name": "string",
"note": "string",
"query": {},
"refresh_every_minutes": 0,
"slug": "string",
"variables": [
{}
]
}Code samples
cURL
curl -X POST "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints" \
-H "Content-Type: application/json" \
-d '{"description":"string","name":"string","note":"string","query":{},"refresh_every_minutes":0,"slug":"string","variables":[{}]}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
201
Example
{
"active": true,
"created_at": "2024-01-01T00:00:00Z",
"created_by": "string",
"current_version": 0,
"description": "string",
"id": "string",
"last_error": "string",
"last_refresh_at": "2024-01-01T00:00:00Z",
"materialization_error": "string",
"materialization_status": "string",
"materialized": true,
"materialized_at": "2024-01-01T00:00:00Z",
"materialized_version": 0,
"name": "string",
"refresh_every_minutes": 0,
"slug": "string",
"updated_at": "2024-01-01T00:00:00Z"
}Schema
activebooleanrequiredInactive endpoints answer 404 to callers.
created_atstringrequiredcreated_bystringcurrent_versionintegerrequiredVersion served when a caller names none.
descriptionstringrequiredidstringrequiredlast_errorstringlast_refresh_atstringmaterialization_errorstringmaterialization_statusstringpending | running | completed | failed; null when never materialized.materializedbooleanrequiredServe from precomputed rows (refreshed on the schedule) instead of running the query.
materialized_atstringmaterialized_versionintegernamestringrequiredrefresh_every_minutesintegerRefresh the current version this often; null = only on request.
slugstringrequiredupdated_atstringrequired400
403
404
409 Slug taken
422
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints/{slug} Parameters
project_idstringpathrequiredslugstringpathrequiredCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints/{slug}"TypeScript
Python
Go
PHP
Ruby
Java
DELETE
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints/{slug} Parameters
project_idstringpathrequiredslugstringpathrequiredCode samples
cURL
curl -X DELETE "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints/{slug}"TypeScript
Python
Go
PHP
Ruby
Java
Responses
204
403
404
PATCH
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints/{slug} Parameters
project_idstringpathrequiredslugstringpathrequiredRequest body
application/json
descriptionstringnamestringrequiredrefresh_every_minutesinteger{
"description": "string",
"name": "string",
"refresh_every_minutes": 0
}Code samples
cURL
curl -X PATCH "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints/{slug}" \
-H "Content-Type: application/json" \
-d '{"description":"string","name":"string","refresh_every_minutes":0}'TypeScript
Python
Go
PHP
Ruby
Java
PUT
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints/{slug}/active Parameters
project_idstringpathrequiredslugstringpathrequiredRequest body
application/json
activebooleanrequired{
"active": true
}Code samples
cURL
curl -X PUT "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints/{slug}/active" \
-H "Content-Type: application/json" \
-d '{"active":true}'TypeScript
Python
Go
PHP
Ruby
Java
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints/{slug}/history Parameters
project_idstringpathrequiredslugstringpathrequiredCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints/{slug}/history"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200
{data: AuditEntry[]}, newest 200 changes404
GET
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints/{slug}/logs Parameters
project_idstringpathrequiredslugstringpathrequiredlevelstringqueryinfo | error
qstringqueryText in the error, path or execution id
limitintegerquerycursorstringqueryCode samples
cURL
curl -X GET "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints/{slug}/logs"TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Page of EndpointRun, newest first
404
PUT
https://lucida.15-204-158-166.sslip.io /v1/projects/{project_id}/endpoints/{slug}/materialization Parameters
project_idstringpathrequiredslugstringpathrequiredRequest body
application/json
enabledbooleanrequired{
"enabled": true
}Code samples
cURL
curl -X PUT "https://lucida.15-204-158-166.sslip.io/v1/projects/{project_id}/endpoints/{slug}/materialization" \
-H "Content-Type: application/json" \
-d '{"enabled":true}'TypeScript
Python
Go
PHP
Ruby
Java
Responses
200 Switched; the first materialization starts immediately
400 Query not eligible (the detail says why)
403
404
Updated