---
title: "List CI bindings for a project"
method: GET
path: "/ci/v1/bindings"
tags: ["CI Federation"]
---

# List CI bindings for a project

`GET /ci/v1/bindings`

## Request

- Base URL: `https://api.run402.com`
- URL: `https://api.run402.com/ci/v1/bindings`
- Auth: API key in header `SIGN-IN-WITH-X`

List all bindings (including revoked) for a project. SIWE wallet must own the project.

## Query parameters

- `project_id` string, required

## Headers

- `SIGN-IN-WITH-X` string, required

## Response `200`

List of bindings.

- object
  - `bindings` CiBindingRow[]
    - `id` string: Binding id, prefixed `bnd_`.
    - `project_id` string
    - `issuer` string: OIDC issuer URL (FK to internal.trusted_oidc_issuers). v1 only: https://token.actions.githubusercontent.com.
    - `subject_match` string
    - `allowed_actions` string[]
    - `allowed_events` string[]: Sorted-deduped on insert. Default `['push','workflow_dispatch']`.
    - `route_scopes` string[]: Sorted-deduped explicit route patterns CI may alter. Empty array means CI cannot ship non-null `spec.routes`.
    - `asset_key_scopes` string[], nullable: Per-binding allowlist for the `spec.assets` slice. NULL means no asset authority (default for bindings created via `POST /ci/v1/bindings`). Each entry is an exact asset key or `prefix/*` wildcard. Mutated via `POST /ci/v1/bindings/{binding_id}/asset-scopes`.
    - `github_repository_id` string, nullable
    - `created_by` string: Lowercase EVM wallet address.
    - `nonce` string
    - `created_sig` object: Parsed delegation: { payload, raw, signer, verified_at }. Stored verbatim for forensic re-verification.
    - `created_at` string, date-time
    - `expires_at` string, date-time, nullable
    - `revoked_at` string, date-time, nullable
    - `last_used_at` string, date-time, nullable
    - `use_count` integer

## Other responses

- `400`: Missing `project` query parameter.
- `403`: SIWE wallet does not own the project.

---

[API](https://skmtc.dev/run402/apis/run402-api.md) · [All operations](https://skmtc.dev/run402/apis/run402-api/llms.txt) · [OpenAPI document](https://skmtc.dev/run402/apis/run402-api/revisions/893607557f50?raw)
