List signing secrets
GET
/providers/{providerID}/signing-secrets
List your active signing secrets, newest first. Only metadata is returned; the secret value is never included.
A signing secret is the shared 256-bit key that encrypts the ledger
request and response JWEs between Moov Money and you. The plaintext value
is returned exactly once, in the response from
POST /providers/{providerID}/signing-secrets, and is never retrievable
again. Multiple secrets can be active at the same time, which is how you
rotate: create the new secret, deploy it, then revoke the old one.
Pagination is cursor-based. Omit cursor to fetch the first page; use
nextCursor from each response to fetch the next page.
Auth: API key or bearer token. The providerID in the path must be your
account.
Request
curl -X GET https://api.moov.money/providers/{providerID}/signing-secrets \
-u "$MOOV_API_KEY_ID:$MOOV_API_KEY_SECRET" \
-H "X-Moov-Version: v2026.10.00"Responses
The request completed successfully.
{
"signingSecrets": [
{
"createdOn": "2026-08-31T12:00:00Z",
"revokedOn": null,
"secretID": "sec_01HF5J9ZKQT4RXP8M2VYBN3D"
}
]
}Malformed request: the body or headers failed validation.
Response body application/problem+json
RFC 9457 Problem Details error body, served as
application/problem+json.
From v2026.10.00, every error response that has a body uses this schema.type
string
requiredURI that tells you which problem occurred. Branch on this value; it never
changes. Moov problem types look like
https://api.moov.money/errors#<code> (for
example invalid-request, idempotency-key-reused, or
idempotency-request-in-progress). Treat the value as
an opaque constant and do not fetch it. about:blank means the HTTP
status code says everything there is to know.title
string
requiredShort human-readable name of the problem type. Fixed per type; defaults to the HTTP status text.
status
integer<int32>
requiredThe HTTP status code of this response.
detail
stringHuman-readable explanation of this specific occurrence.
instance
stringURI reference that identifies this specific occurrence.
errors
array<object>The request-body fields that failed validation. Present on validation errors only.
Show child attributes
errors[]
pointer
string
requiredRFC 6901 JSON Pointer to the field, using the public JSON field names. If the field is missing, the pointer shows where it belongs.
detail
string
requiredWhat is wrong with the field.
Authentication missing, invalid, or insufficient.
Authentication present but the action is forbidden for this principal/claim.
Headers
X-Moov-Version
stringSet this header to the API version being targeted (e.g.
v2026.10.00). When omitted, the server applies its default version.Path parameters
providerID
string
requiredYour provider account ID.
Query parameters
cursor
stringOpaque pagination cursor from a previous response’s
nextCursor. Omit to fetch the first page.limit
integer
<int32>Maximum number of secrets to return. Defaults to 25; values outside 1-100 return 400.
Response
Response envelope for list signing secrets.
signingSecrets
array<object>
requiredThe page of active signing secrets, newest first.
Show child attributes
signingSecrets[]
secretID
string
requiredUnique identifier for the signing secret.
createdOn
string<date-time>
requiredWhen the secret was created.
revokedOn
string<date-time> | null
requiredWhen the secret was revoked, or null while active.
nextCursor
stringOpaque cursor for the next page; absent on the last page.
hasMore
boolean
requiredWhether another page of results follows this one.