v1
latestOpenAPI 3.1.02026-07-13154170539.0 KBLogs
Atomic Field Upsert
Atomic find-or-create with atomic field update (upsert mode).
This endpoint atomically:
- Ensures the context exists with correct unique_keys configuration
- Acquires an advisory lock on the unique key values (prevents race on first insert)
- Finds an existing log by unique_keys or creates it with initial_data
- Applies an atomic operation to the specified field
- If add_to_all_context=true, mirrors the log to the All/* archive context
Required body fields for upsert mode:
- project: Name of the project
- context: Context path for the log
- unique_keys: Key name to type mapping (e.g., {"_assistant_id": "str", "month": "str"})
- initial_data: Data for new log entry (must include all unique key values)
- operation: Atomic operation (+N, -N, *N, /N)
This is race-safe for concurrent first inserts - only one request will create the log, and all concurrent requests will correctly increment the field.
post/v0/logs/atomic
Request body
Example request
{
"operation": "+1",
"field": "cumulative_spend",
"project": "Assistants",
"context": "42/7/Spending/Monthly",
"unique_keys": {
"_assistant_id": "str",
"month": "str"
},
"initial_data": {
"_assistant_id": "123",
"_org_id": 456,
"month": "2026-01"
}
}Response
Atomic upsert applied successfully