Docs / Connectors
API ingestion
For pipelines and scripts: push aggregate and segment results straight into an experiment with an API key. Same canonical evidence model and source lineage as every other method.
1. Create an API key
- 1
Open the API keys page
Go to
app.converise.io/w/<workspace>/api-keys(admin or owner role required) and create a key with a descriptive name. - 2
Copy the key immediately
The plaintext key (
umk_…) is shown once — it is stored hashed and cannot be recovered later. Rotate by creating a new key and revoking the old one.
Keys can read, create experiments, and upload evidence — they cannot record decisions or manage the workspace.
2. Push evidence
Authenticate with Authorization: Bearer umk_… and POST to the experiment's evidence endpoint:
shell
curl -X POST "https://app.converise.io/api/workspaces/<workspaceId>/experiments/<experimentId>/evidence" \
-H "Authorization: Bearer umk_..." \
-H "Content-Type: application/json" \
-d '{
"sourceReference": "nightly-pipeline",
"idempotencyKey": "run-2026-08-14",
"aggregateResults": [
{ "variantKey": "control", "kpiName": "checkout_conversion", "numerator": 480, "denominator": 10000 },
{ "variantKey": "variant_a", "kpiName": "checkout_conversion", "numerator": 560, "denominator": 10000 }
],
"segmentResults": []
}'- Row fields are camelCase:
variantKey, kpiName, numerator, denominator, value, sampleSize, stdDev, segmentDimension, segmentValue— same rules as the CSV format. - Limits per request: 10,000 aggregate rows and 50,000 segment rows; at least one row.
- Idempotent by design: resending the same payload (same
idempotencyKey, or the same content when the key is omitted) returns200with the existing import batch instead of creating a duplicate — safe to retry from pipelines. - A successful import returns
201with the created import batch; validation problems return a structured error listing the exact rows and fields.