Skip to content
Stepwik

Labs

Create lab

Creates a private draft codelab. Section content is markdown. Publishing stays in Studio.

POST/v1/eapi/labsTry it

Authorizations

stepwik-api-keystringheaderrequired

API key secret. Requires scope `labs:write`. Create keys in Studio → Developer → API Keys.

Burst limit: 30 / 15 min per key · Scope: labs:write

Body

bodyobjectbodyrequired

JSON with title, description, level, sections (markdown), and optional tags.

Request

curl -X POST "https://api.stepwik.com/v1/eapi/labs" \
  -H "stepwik-api-key: stepwik_<id>_<secret>" \
  -H "Content-Type: application/json" \
  -d '{"title":"Getting Started with Redis","level":"Beginner","sections":[{"title":"Introduction","order":1,"content":"## What is Redis?"}]}'

Response

201 · application/json

slugstring

Created lab slug

draft_urlstring

Studio URL to open the draft

201

{
  "slug": "getting-started-with-redis-abc123",
  "draft_url": "https://studio.stepwik.com/..."
}