experiments

Embed
Preview of the card
<a href="https://hermetica.15.204.158.166.sslip.io/docs/ref-experiments"><img src="https://hermetica.15.204.158.166.sslip.io/docs/_api/public/orgs/5fcd8b3c-a27c-4688-972f-de710125592f/spaces/caf5dc05-15f7-4e0c-bdb8-ab29ede6211e/pages/0822d341-d2db-4817-b8a1-8090095c2267/social-card.svg?v=3e7ae33eec8b" alt="experiments" width="600" height="315"></a>
GEThttps://hermetica.15.204.158.166.sslip.io/v1/experiments

Parameters

limitintegerquery
= 50
cursorstringquery
statusstringquery
draft | running | concluded
scopeIdstringquery

Code samples

cURL
curl -X GET "https://hermetica.15.204.158.166.sslip.io/v1/experiments" \
  -H "Authorization: Bearer $SSLIP_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "items": [
    {
      "id": "string"
    }
  ],
  "nextCursor": "string"
}
Schema
itemsobject[]required
Show child parameters
idstringrequired
nextCursorstringrequired
4XX Default Response
Example
{
  "error": {
    "code": "string",
    "message": "string",
    "details": {}
  }
}
Schema
errorobjectrequired
Show child parameters
codestringrequired
messagestringrequired
detailsobject
5XX Default Response

Same as 4XX · GET /v1/experiments

POSThttps://hermetica.15.204.158.166.sslip.io/v1/experiments

Request body

application/json
namestringrequired
kindstring
message_variant | path_split | holdout | send_time = message_variant
scopeTypestringrequired
campaign | workflow | form | workspace
scopeIdstring
keystring
variantsobject[]required
Show child parameters
keystringrequired
weightintegerrequired
controlstring
metricobject
= {"primary":"clicks","guardrails":[]}
Show child parameters
primarystring
clicks | replies | conversions | revenue | opens = clicks
guardrailsobject[]
= []
Show child parameters
metricstringrequired
unsubscribe | complaint | bounce
thresholdnumberrequired
methodstring
bayesian_beta | frequentist_ztest = bayesian_beta
autoSelectobject
Show child parameters
enabledboolean
= false
afterHoursinteger
= 4
pBestnumber
= 0.95
stopAtstring
shiftboolean
minRecipientsinteger
= 100
minConversionsinteger
= 20
{
  "name": "string",
  "kind": "message_variant",
  "scopeType": "campaign",
  "scopeId": "string",
  "key": "",
  "variants": [
    {
      "key": "string",
      "weight": 0
    }
  ],
  "control": "string",
  "metric": {
    "primary": "clicks",
    "guardrails": []
  },
  "method": "bayesian_beta",
  "autoSelect": {
    "enabled": false,
    "afterHours": 4,
    "pBest": 0.95,
    "stopAt": "2024-01-01T00:00:00Z",
    "shift": true
  },
  "minRecipients": 100,
  "minConversions": 20
}

Code samples

cURL
curl -X POST "https://hermetica.15.204.158.166.sslip.io/v1/experiments" \
  -H "Authorization: Bearer $SSLIP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","kind":"message_variant","scopeType":"campaign","scopeId":"string","key":"","variants":[{"key":"string","weight":0}],"control":"string","metric":{"primary":"clicks","guardrails":[]},"method":"bayesian_beta","autoSelect":{"enabled":false,"afterHours":4,"pBest":0.95,"stopAt":"2024-01-01T00:00:00Z","shift":true},"minRecipients":100,"minConversions":20}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

201 Default Response
Example
{
  "id": "string"
}
Schema
idstringrequired
4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

GEThttps://hermetica.15.204.158.166.sslip.io/v1/experiments/{id}

Parameters

idstringpathrequired

Code samples

cURL
curl -X GET "https://hermetica.15.204.158.166.sslip.io/v1/experiments/{id}" \
  -H "Authorization: Bearer $SSLIP_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 201 · POST /v1/experiments

4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

GEThttps://hermetica.15.204.158.166.sslip.io/v1/experiments/{id}/report

Parameters

idstringpathrequired

Code samples

cURL
curl -X GET "https://hermetica.15.204.158.166.sslip.io/v1/experiments/{id}/report" \
  -H "Authorization: Bearer $SSLIP_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "arms": [
    {
      "key": "string",
      "n": 0,
      "conversions": 0,
      "rate": 0,
      "ci": [
        0
      ],
      "pBest": 0,
      "expectedLoss": 0,
      "pValue": 0,
      "guardrails": [
        {
          "metric": "unsubscribe",
          "rate": 0,
          "pWorse": 0,
          "failed": true
        }
      ],
      "orders": 0,
      "revenueMinor": 0
    }
  ],
  "recommendation": {
    "kind": "winner",
    "key": "string"
  },
  "reason": "string",
  "method": "bayesian_beta",
  "metric": "clicks",
  "significant": true,
  "sampleSufficient": true,
  "caveat": "string"
}
Schema
armsobject[]required
Show child parameters
keystringrequired
nintegerrequired
conversionsintegerrequired
ratenumberrequired
cinumber[]required
pBestnumberrequired
expectedLossnumberrequired
pValuenumberrequired
guardrailsobject[]required
Show child parameters
metricstringrequired
unsubscribe | complaint | bounce
ratenumberrequired
pWorsenumberrequired
failedbooleanrequired
ordersinteger
revenueMinornumber
recommendationobjectrequired
Show child parameters
kindstringrequired
winner | keep_running | no_winner
keystringrequired
reasonstringrequired
methodstringrequired
bayesian_beta | frequentist_ztest
metricstringrequired
clicks | replies | conversions | revenue | opens
significantbooleanrequired
sampleSufficientbooleanrequired
caveatstringrequired
4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

POSThttps://hermetica.15.204.158.166.sslip.io/v1/experiments/{id}/conclude

Parameters

idstringpathrequired

Request body

application/json
winnerKeystringrequired
{
  "winnerKey": "string"
}

Code samples

cURL
curl -X POST "https://hermetica.15.204.158.166.sslip.io/v1/experiments/{id}/conclude" \
  -H "Authorization: Bearer $SSLIP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"winnerKey":"string"}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 201 · POST /v1/experiments

4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

GEThttps://hermetica.15.204.158.166.sslip.io/v1/holdouts

Parameters

limitintegerquery
= 50
cursorstringquery

Code samples

cURL
curl -X GET "https://hermetica.15.204.158.166.sslip.io/v1/holdouts" \
  -H "Authorization: Bearer $SSLIP_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · GET /v1/experiments

4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

POSThttps://hermetica.15.204.158.166.sslip.io/v1/holdouts

Request body

application/json
namestringrequired
percentnumberrequired
scopeTypestring
workspace | campaign | workflow = workspace
scopeIdstring
{
  "name": "string",
  "percent": 0,
  "scopeType": "workspace",
  "scopeId": "string"
}

Code samples

cURL
curl -X POST "https://hermetica.15.204.158.166.sslip.io/v1/holdouts" \
  -H "Authorization: Bearer $SSLIP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"string","percent":0,"scopeType":"workspace","scopeId":"string"}'
TypeScript
Python
Go
PHP
Ruby
Java

Responses

201 Default Response

Same as 201 · POST /v1/experiments

4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

DELETEhttps://hermetica.15.204.158.166.sslip.io/v1/holdouts/{id}

Parameters

idstringpathrequired

Code samples

cURL
curl -X DELETE "https://hermetica.15.204.158.166.sslip.io/v1/holdouts/{id}" \
  -H "Authorization: Bearer $SSLIP_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response
Example
{
  "ok": true
}
Schema
okbooleanrequired
true
4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

GEThttps://hermetica.15.204.158.166.sslip.io/v1/frequency-settings

Parameters

limitintegerquery
Page size; omitted returns the whole list
cursorstringquery
Opaque: the nextCursor of the previous page

Code samples

cURL
curl -X GET "https://hermetica.15.204.158.166.sslip.io/v1/frequency-settings" \
  -H "Authorization: Bearer $SSLIP_API_KEY"
TypeScript
Python
Go
PHP
Ruby
Java

Responses

200 Default Response

Same as 200 · GET /v1/experiments

4XX Default Response

Same as 4XX · GET /v1/experiments

5XX Default Response

Same as 4XX · GET /v1/experiments

Updated