Create a new trigger for automated cluster execution.
Supports multiple trigger types:
REQUIRED: Bearer token authentication using your API key. Format: 'Bearer sk_xxxxxxxxxxxxx'. You can create API keys in the Mixpeek dashboard under Organization Settings.
REQUIRED: Namespace identifier for scoping this request. All resources (collections, buckets, taxonomies, etc.) are scoped to a namespace. You can provide either the namespace name or namespace ID. Format: ns_xxxxxxxxxxxxx (ID) or a custom name like 'my-namespace'
Request to create a new cluster trigger.
Creates an automated trigger that executes clustering based on schedules, events, or conditions.
Requirements: - trigger_type: REQUIRED - Determines which schedule_config fields are needed - schedule_config: REQUIRED - Configuration specific to trigger_type - execution_config OR cluster_id: REQUIRED - Either provide config directly or reference existing cluster
Trigger Types and schedule_config: - cron: Requires {"cron_expression": str, "timezone": str} - interval: Requires {"interval_seconds": int, "start_immediately": bool} - event: Requires {"event_type": str, "event_threshold": int, "collection_id": str, "cooldown_seconds": int} - conditional: Requires {"condition_type": str, "threshold": float, "metric": str, "check_interval_seconds": int}
Use Cases: - Scheduled maintenance: Use cron or interval triggers - Reactive clustering: Use event triggers to cluster when data changes - Intelligent clustering: Use conditional triggers based on metrics
Examples: Cron trigger (daily at 2am UTC): { "trigger_type": "cron", "schedule_config": { "cron_expression": "0 2 * * *", "timezone": "UTC" }, "execution_config": { "collection_ids": ["col_abc123"], "config": { "algorithm": "kmeans", "n_clusters": 5 } }, "description": "Daily clustering at 2am" }
Interval trigger (every 6 hours):
{
"trigger_type": "interval",
"schedule_config": {
"interval_seconds": 21600,
"start_immediately": false
},
"execution_config": {
"collection_ids": ["col_products"],
"config": {
"algorithm": "hdbscan",
"min_cluster_size": 10
}
},
"description": "Cluster every 6 hours"
}
Event trigger (after 100 documents added):
{
"trigger_type": "event",
"schedule_config": {
"event_type": "documents_added",
"event_threshold": 100,
"collection_id": "col_abc123",
"cooldown_seconds": 300
},
"execution_config": {
"collection_ids": ["col_abc123"],
"config": {
"algorithm": "kmeans",
"n_clusters": 3
}
},
"description": "Cluster after 100 new documents"
}
Conditional trigger (when drift exceeds 30%):
{
"trigger_type": "conditional",
"schedule_config": {
"condition_type": "drift",
"threshold": 0.3,
"metric": "cosine_drift",
"check_interval_seconds": 3600
},
"execution_config": {
"collection_ids": ["col_abc123"],
"config": {
"algorithm": "hdbscan",
"min_cluster_size": 5
}
},
"description": "Re-cluster when drift > 30%"
}
Using existing cluster definition:
{
"trigger_type": "interval",
"schedule_config": {
"interval_seconds": 3600,
"start_immediately": true
},
"cluster_id": "cluster_xyz789",
"description": "Hourly clustering using cluster_xyz789"
}REQUIRED. Type of trigger to create. Determines which schedule_config fields are required. Options: 'cron', 'interval', 'event', 'conditional'.
cron, interval, event, conditional REQUIRED. Type-specific schedule configuration. Contents depend on trigger_type. See trigger type examples above for required fields.
OPTIONAL. Reference to existing cluster definition. If provided, execution_config is inherited from the cluster. Either cluster_id OR execution_config must be provided.
"cluster_abc123"
OPTIONAL. Clustering configuration for this trigger. Specifies collections and algorithm to use when trigger fires. Required if cluster_id is not provided.
OPTIONAL. Human-readable description of what this trigger does. Helpful for identifying triggers in dashboards.
"Daily clustering at 2am UTC"
OPTIONAL. Initial status of trigger. Defaults to 'active' (enabled). Can be set to 'paused' to create disabled trigger.
active, paused, disabled, failed Successful Response
Model for cluster trigger.
Namespace ID
Organization internal ID
Configuration for cluster execution
Type of trigger
cron, interval, event, conditional Type-specific schedule configuration
Unique trigger ID
Optional link to cluster definition
Current status
active, paused, disabled, failed Last time trigger fired
Job ID of last execution
Next scheduled execution time
Total executions
Consecutive execution failures
Status of last execution
Error from last execution
Current event count since last trigger
Last time cooldown was applied
Creation timestamp
Last update timestamp
User who created trigger
Trigger description