List the project's keys (ids, labels, timestamps). Secrets are not stored and cannot be listed.
GET
/v0/projects/{id}/keys
const url = 'https://infra-hyphae.run/v0/projects/example/keys';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://infra-hyphae.run/v0/projects/example/keys \ --header 'Authorization: Bearer <token>'Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters”id
required
string
Responses
Section titled “ Responses ”All keys ever issued for the project, revoked ones included.
Media typeapplication/json
object
Examplegenerated
{ "keys": [ { "key_id": "example", "label": "example", "created_at": "2026-04-15T12:00:00Z", "revoked_at": "2026-04-15T12:00:00Z" } ]}Missing, malformed, duplicate, or unknown credential (authentication_required).
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
Example
{ "error": { "code": "invalid_request" }}Headers
Section titled “Headers”WWW-Authenticate
string
Unknown route, or a project the caller does not own (not_found).
Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
Example
{ "error": { "code": "invalid_request" }}