Skip to content

Play routes: apply

The Play Verbs apply as api.sb routes, with inputs, result, refusals and an example.

Reference for Play, one group of Play routes.

Play.apply

Apply runs a Play across a Portfolio cohort, one wave at a time, measured as an Experiment. Verb page.

Text
POST /{namespace}/plays/{play}/apply

Path: play. Body, as JSON: the other inputs. Emits Play.applied.

Inputs

InputTypeRequiredDescription
playPlayrequiredThe Play to run.
cohortstringrequiredThe Portfolio query that selects the Startups.

Returns

OutputTypeRequiredDescription
experimentExperimentrequiredThe Experiment that measures the rollout.
playPlayrequiredThe Play applied.

Refuses when

CheckErrorFixThen call
The input does not match the schema of the operation.invalid-inputRead the schema of the operation, then send every required field with the right type.None.
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X POST https://api.sb/leaseline.app/plays/play_hr4WTcrAyZ/apply \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"cohort":"Example cohort"}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "experiment": {
    "$id": "https://api.sb/leaseline.app/experiments/experiment_IyIJJPngKt",
    "$type": "Experiment",
    "variants": {}
  },
  "play": {
    "$id": "https://api.sb/leaseline.app/plays/play_hr4WTcrAyZ",
    "$type": "Play",
    "family": "demand"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Play.apply",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}