IonWarp logoIonWarp
Get started
IonWarp Docs
Collections

Scorecard Levels

The ladder a repo climbs, level by level.

Base path /api/v1/scorecard-levels on https://ionwarp.com. Authenticate with Authorization: Bearer $DASH_API_KEY and name the project with the Project-ID header. Writes are validated in declared mode; an operation this resource does not declare answers 405 operation_not_supported.

List scorecard levels

GET /api/v1/scorecard-levels

curl "https://ionwarp.com/api/v1/scorecard-levels?scorecard_id=ai-readiness" \
  -H "Authorization: Bearer $DASH_API_KEY" \
  -H "Project-ID: pr_acme"
Show me the scorecard levels filtered by scorecard id
data_query {
  "collection": "scorecard_levels",
  "where": {
    "scorecard_id": "ai-readiness"
  }
}

Returns a paginated list of scorecard-level objects, newest first.

{
  "object": "list",
  "data": [
    {
      "object": "scorecard-level",
      "id": "obj_123",
      "scorecard_id": "ai-readiness",
      "level": "ci-cd",
      "name": "CI/CD",
      "score": 4,
      "max_score": 10,
      "ai_unlocked": "Agents can open PRs knowing the suite gates every merge.",
      "status": "pending",
      "display_order": 30,
      "created_at": "2026-07-25T12:00:00.000Z",
      "updated_at": "2026-07-25T12:00:00.000Z"
    }
  ],
  "has_more": false,
  "next_cursor": null
}

Parameters

ParameterTypeKindDescription
scorecard_idstringfilterSlug of the scorecard this rung belongs to (e.g. ai-readiness).
levelstringfilterStable id of the rung (e.g. security-foundation).
statusstringfilterAlways pending today: a rung's progress is read from score/max_score, and no scan writes a level status. One of pending.
qstringsearchFree-text search across name.
sortstringsortOne of display_order, score; prefix with - to reverse.
limitnumberpageRows to return, 1–100. Defaults to 20.
cursorstringpagenext_cursor from the previous page.

Retrieve a scorecard-level

GET /api/v1/scorecard-levels/learning-tests-run-under-bun

curl "https://ionwarp.com/api/v1/scorecard-levels/learning-tests-run-under-bun" \
  -H "Authorization: Bearer $DASH_API_KEY" \
  -H "Project-ID: pr_acme"
What does the {id} rung unlock once it is satisfied?
data_get {
  "collection": "scorecard_levels",
  "object_id": "learning-tests-run-under-bun"
}

Returns the scorecard-level object.

{
  "object": "scorecard-level",
  "id": "obj_123",
  "scorecard_id": "ai-readiness",
  "level": "ci-cd",
  "name": "CI/CD",
  "score": 4,
  "max_score": 10,
  "ai_unlocked": "Agents can open PRs knowing the suite gates every merge.",
  "status": "pending",
  "display_order": 30,
  "created_at": "2026-07-25T12:00:00.000Z",
  "updated_at": "2026-07-25T12:00:00.000Z"
}

Parameters

ParameterTypeKindDescription
idstringpathThe scorecard-level's id or slug.

What comes back (read-only)

Every scorecard-level carries the envelope below. The fields under it are computed or stamped by the platform — they are returned, never sent.

FieldTypeDescription
objectstringAlways scorecard-level.
idstringStable object id. Also accepted in place of slug on any path.
slugstringURL-safe name, unique within the collection.
created_atstringISO-8601 timestamp of the first write.
updated_atstringISO-8601 timestamp of the most recent write. The cursor sorts on this.
scorecard_idstringSlug of the scorecard this rung belongs to (e.g. ai-readiness).
levelstringStable id of the rung (e.g. security-foundation).
namestringName of the rung as it reads on the ladder.
scorenumberPoints earned on this rung at the last scan — the total of its checks.
max_scorenumberPoints this rung is worth when every check on it passes.
ai_unlockedstringWhat an agent can safely do in this repository once this rung is satisfied. Markdown.
statusstringAlways pending today: a rung's progress is read from score/max_score, and no scan writes a level status.
display_ordernumberPosition of the rung on the ladder, lowest first.

Errors

Failures use { error: { type, code, message, param } }. The full code table is generated at Error Codes.

On this page

IonWarp logoIonWarp

Ready to build? Connect an agent and go — no credit card needed to start.

Get startedSee our plans