The Skills Fest

Quickstart

From nothing to a successful call. You need to be an Owner or Admin of the workspace.

1. Turn the API on

The API is off until we enable it for your workspace. Ask us, then open Settings → API — you’ll see the key list instead of an invitation to get in touch.

2. Create a key

Choose Create a key. Tick only what the integration needs. Personal fields are a separate block called Data access, all off by default — leave them off until something breaks without them.

The key is shown once. Store it where you keep other secrets; if you lose it, roll the key rather than making a second one.

3. Prove it works

/v1/ping needs a valid key and no scopes at all, so it answers even for a key that can’t read anything yet.

curl https://api.theskillsfest.com/v1/ping \
  -H "Authorization: Bearer $SKILLSFEST_KEY"
{
  "object": "ping",
  "org": { "id": 42, "slug": "acme-district", "name": "Acme District" },
  "scopes": ["members:read"],
  "data_classes": [],
  "api_status": "comp",
  "request_id": "req_01K3XQ7YB4N2M"
}

Every response carries an X-Request-Id. Quote it if you ever need to ask us what happened to a specific call.

4. Read something

curl "https://api.theskillsfest.com/v1/members?limit=5" \
  -H "Authorization: Bearer $SKILLSFEST_KEY"

Add -H "Accept: text/csv" to the same URL for a spreadsheet instead of JSON.

If it doesn’t work

  • 401 — the key is missing, mistyped, revoked, or expired. The response is deliberately identical for all four.
  • 403 api_disabled — the API is off for the workspace, or an Owner switched it off in Settings → API.
  • 403 insufficient_scope — the key is real but lacks a scope. The body names which one.