Skip to content
Apier.no

Error reference

The canonical Apier error reference: the standard error envelope, the explanation and handover schemas, and the full structured error_code catalogue.

[Cite this as: Apier.no Docs v0.1.0 — last updated 2026-08-21]

Every Apier API error returns the same structured envelope, so your agent can branch on a machine-readable error_code instead of string-matching prose. This page is the canonical reference for that envelope, the explanation object it carries, and every error_code the API can emit.

The error envelope

Every 4xx and 5xx response from /api/v1/* has the same top-level shape, { success: false, error_code, explanation, _meta }:

{
  "success": false,
  "error_code": "AUTH_NO_DELEGATION",
  "explanation": {
    "summary": "Ingen aktiv systembruker-delegering finnes for 999999999.",
    "why": "Konsumenten har ingen aktiv systembruker-delegering hos Altinn for 999999999.",
    "fix_steps": [
      "Opprett en systembruker via altinn.no/hjelp/systemtilgang og knytt den til integrasjonen.",
      "Be en signaturberettiget godkjenne delegeringen i Altinn.",
      "Gjenta forespørselen når delegeringen vises som aktiv."
    ],
    "summary_en": "No active system-user delegation exists for 999999999.",
    "why_en": "The consumer has no active system-user delegation in Altinn for 999999999.",
    "fix_steps_en": [
      "Create a system user via altinn.no/hjelp/systemtilgang and connect it to the integration.",
      "Ask a person with signing authority to approve the delegation in Altinn.",
      "Retry the request once the delegation shows as active."
    ],
    "relevant_link": "https://info.altinn.no/hjelp/systemtilgang/om-systemtilgang/",
    "legal_basis": null,
    "handover": {
      "who": "company_admin",
      "where": "https://info.altinn.no/hjelp/systemtilgang/om-systemtilgang/",
      "what": "Opprette systembruker og godkjenne delegering for 999999999.",
      "why": "Uten delegering har systembrukeren ingen rettigheter på vegne av organisasjonen."
    }
  },
  "_meta": {
    "rulebook_version": "2026.6.0",
    "data_freshness": "2026-06-23T08:00:00Z"
  }
}

success is always false on an error. error_code is a stable machine string from the catalogue below. explanation is human-and-agent readable: its summary / why / fix_steps prose is Norwegian bokmål, carried alongside English summary_en / why_en / fix_steps_en siblings (see below). _meta rides on errors too, so your agent can diff the rulebook_version it last saw against the one that just failed. Every value above is synthetic; 999999999 is the documentation fixture organisation number.

The explanation object

explanation always carries a summary; every other field is optional and present only when it applies. The type is ApiErrorExplanation in src/types/api.ts.

The Norwegian summary / why / fix_steps come with English summary_en / why_en / fix_steps_en siblings carrying the same guidance, so an English-language agent gets actionable text without translating the bokmål. The handover and legal_basis fields stay Norwegian / Lovdata-native.

FieldRequiredMeaning
summaryRequiredOne-sentence statement of what went wrong (Norwegian bokmål).
summary_enOptionalEnglish translation of summary.
whyOptionalLonger explanation of the cause, in Norwegian bokmål.
why_enOptionalEnglish translation of why.
fix_stepsOptionalOrdered, imperative next steps the caller can take (Norwegian bokmål).
fix_steps_enOptionalEnglish translation of fix_steps — same steps, in the same order.
relevant_linkOptionalPublic Altinn / Skatteetaten / Brønnøysund / Apier-docs URL for this error.
legal_basisOptionalLovdata-style legal reference when the error maps to a statute.
detailsOptionalField-level validation problems as [{ field, message }].
handoverOptionalPresent when a human must act before the agent can proceed (see below).

The handover object

When an agent reaches a boundary it cannot cross on its own (an Altinn role that isn't delegated, a Maskinporten scope that isn't granted, or an error that needs Apier triage), explanation.handover names who must step in. It is absent for errors the agent can resolve itself by retrying, adjusting input, or waiting.

FieldMeaning
whoThe human role to escalate to — one of company_admin, accountant, altinn_user, apier_support.
whereA stable URL or location where that person performs the action.
whatThe concrete action they must take.
whyWhy the agent itself cannot complete it.

Machine-actionable fields

Alongside explanation, every error carries six top-level machine-actionable fields, siblings of error_code rather than nested inside explanation. They let an agent decide whether to retry and what to change without parsing prose:

FieldTypeMeaning
retryablebooleantrue → repeating the same request after a short backoff can plausibly succeed (transient upstream, rate limit). false → an identical retry is wasted; change the input, the credential, or hand over to a human first.
fix_hintstringA single terse imperative remediation for error_code — the one-line form of explanation.fix_steps, safe to branch on without walking an array. Written in English (the machine-facing lingua franca, like the MCP remediation strings), unlike the Norwegian-primary summary / why / fix_steps.
fix_hint_enstringGuaranteed-English accessor for the fix hint; present whenever fix_hint is. Because fix_hint is already English today, fix_hint_en equals it — it is the stable seam that lets a future localized (bokmål) fix_hint land without breaking agents that pinned to the English text.
fix_hint_nbstringNorwegian bokmål sibling of fix_hint_en — the same remediation for Norwegian-language agents and humans. First-pass translations, awaiting native-speaker review.
docs_urlstringStable documentation URL for this error: the code's own anchor on this page (#<code in lower case>), uniformly for every code. Follow the value verbatim.
categorystringCoarse failure-class bucket, one of the closed set auth, scope, validation, not_found, rate_limit, upstream, internal, billing. Route on the class first (anything upstream or rate_limit → back off; anything auth or scope → stop and hand over), then read the per-code retryable / fix_hint.

These fields are additive (Rule 10): existing consumers that read only error_code / explanation are unaffected. Since the error registry landed, they are populated for every code the API can emit; the catalogue below is complete by construction, and a code that somehow reached the envelope builder without an entry is collapsed to INTERNAL_ERROR rather than leaking an undocumented string. There is still no retryable-by-default: never infer "safe to retry" from anything but an explicit retryable: true.

The whole registry is also served as JSON, keylessly, at GET /api/v1/errors: { schema_version, count, categories, retryable_contract, errors: [{ code, category, retryable, fix_hint_en, fix_hint_nb, docs_url }], docs_url, explain_endpoint } (retryable_contract restates what retryable means; docs_url points here; explain_endpoint is the path of POST /api/v1/explain), with errors sorted by code, so an agent can load its recovery policy once at startup instead of discovering the vocabulary one failure at a time.

Note the language contract: fix_hint is machine-facing and therefore English by default, so fix_hint and fix_hint_en carry the same English text today. This differs from the summary / summary_en pair, where summary is Norwegian bokmål and summary_en is its translation.

A transient upstream failure, for example, tells an agent to back off and retry the identical call:

{
  "success": false,
  "error_code": "UPSTREAM_UNAVAILABLE",
  "explanation": {
    "summary": "Kilden er midlertidig utilgjengelig.",
    "summary_en": "The upstream source is temporarily unavailable."
  },
  "retryable": true,
  "fix_hint": "The upstream service is unavailable or timed out — retry the identical call after a short backoff (seconds). See also https://www.apier.no/docs/guides/error-handling.",
  "fix_hint_en": "The upstream service is unavailable or timed out — retry the identical call after a short backoff (seconds). See also https://www.apier.no/docs/guides/error-handling.",
  "fix_hint_nb": "Oppstrømstjenesten er utilgjengelig eller tidsavbrutt — gjenta det identiske kallet etter en kort pause (sekunder). Se også https://www.apier.no/docs/guides/error-handling.",
  "docs_url": "https://www.apier.no/docs/errors#upstream_unavailable",
  "category": "upstream",
  "_meta": {
    "rulebook_version": "2026.6.0"
  }
}

A validation failure, by contrast, carries retryable: false — resending the same body fails identically, so the agent must correct the field named in explanation.details first.

error_code catalogue

Every code below is rendered at build time from the error catalog (ERROR_CATALOG in src/lib/api/error-catalog.ts), the same table errorResponse stamps onto a live envelope and the keyless GET /api/v1/errors registry serves. There is no hand-maintained list: a code is documented here if and only if it can reach the wire, and the machine registry, this page and the ErrorCode enum in openapi.json are gated to stay the same set.

Each entry shows the code's category, its retryable verdict, the English and bokmål one-line remediation (fix_hint_en / fix_hint_nb) and its docs_url. Every code has its own anchor on this page (#<code in lower case>) and every row's docs_url points at it; where a fuller recovery loop lives in a guide (error-handling, idempotency, agent-payments, authentication), the fix hint ends with a "See also" link to it. Follow the served value rather than deriving it from the code. The bokmål hints are first-pass translations awaiting native-speaker review.

For the fuller explanation object (summary, why, ordered fix steps, handover) that a subset of these codes also carries, see Get a live explanation below.

Authentication, tokens & sessions (auth · 28)

APPROVAL_TOKEN_EXPIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The approval token expired — a human must approve the action again to mint a fresh token; the agent cannot self-recover.
fix_hint_nb
Godkjenningstokenet har utløpt — et menneske må godkjenne handlingen på nytt for å få et nytt token; agenten kan ikke løse dette selv.
docs_url
https://www.apier.no/docs/errors#approval_token_expired

APPROVAL_TOKEN_INVALID

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The approval token was not recognised — request a fresh approval from the human approver; an identical retry fails identically.
fix_hint_nb
Godkjenningstokenet ble ikke gjenkjent — be om en ny godkjenning fra den som godkjenner; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#approval_token_invalid

APPROVAL_TOKEN_MISMATCH

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The approval token is bound to a different org_number, action or consumer — request a token for exactly this request; do not reuse a token across actions.
fix_hint_nb
Godkjenningstokenet er knyttet til et annet org_number, en annen handling eller en annen konsument — be om et token for nøyaktig denne forespørselen; ikke gjenbruk token på tvers av handlinger.
docs_url
https://www.apier.no/docs/errors#approval_token_mismatch

APPROVAL_TOKEN_REQUIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
This action needs a one-time human approval token — obtain one via the approval flow and resend with the X-Approval-Token header; retrying without it fails identically.
fix_hint_nb
Denne handlingen krever et engangs-godkjenningstoken fra et menneske — skaff ett via godkjenningsflyten og send på nytt med X-Approval-Token-headeren; et nytt forsøk uten token feiler identisk.
docs_url
https://www.apier.no/docs/errors#approval_token_required

APPROVAL_TOKEN_USED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The approval token was already consumed (one-time use) — request a fresh approval before resending; do not replay the same token.
fix_hint_nb
Godkjenningstokenet er allerede brukt (engangsbruk) — be om en ny godkjenning før du sender på nytt; ikke gjenbruk samme token.
docs_url
https://www.apier.no/docs/errors#approval_token_used

AUTH_CONSUMER_INACTIVE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The consumer account is inactive — a human must reactivate it in the Apier dashboard before this key works.
fix_hint_nb
Konsumentkontoen er inaktiv — et menneske må reaktivere den i Apier-dashbordet før denne nøkkelen virker.
docs_url
https://www.apier.no/docs/errors#auth_consumer_inactive

AUTH_EXPIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The credential was rejected as expired after one transparent retry — refresh or re-issue the API key, then repeat the call; do not loop on the same key.
fix_hint_nb
Legitimasjonen ble avvist som utløpt etter ett automatisk nytt forsøk — forny eller utsted API-nøkkelen på nytt, og gjenta kallet; ikke loop på samme nøkkel.
docs_url
https://www.apier.no/docs/errors#auth_expired

AUTH_EXPIRED_KEY

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The credential expired — refresh or re-issue it, then repeat the call; do not loop on the same token.
fix_hint_nb
Legitimasjonen har utløpt — forny eller utsted den på nytt, og gjenta kallet; ikke loop på samme token.
docs_url
https://www.apier.no/docs/errors#auth_expired_key

AUTH_EXPIRED_TOKEN

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The one-time approval token expired — a human must approve the action again to mint a fresh token; the agent cannot self-recover, and an identical retry fails identically.
fix_hint_nb
Engangs-godkjenningstokenet har utløpt — et menneske må godkjenne handlingen på nytt for å få et nytt token; agenten kan ikke løse dette selv, og et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#auth_expired_token

AUTH_INVALID_KEY

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The API key was rejected — obtain a valid key and retry with the new credential.
fix_hint_nb
API-nøkkelen ble avvist — skaff en gyldig nøkkel og prøv på nytt med den nye legitimasjonen.
docs_url
https://www.apier.no/docs/errors#auth_invalid_key

AUTH_KEY_REVOKED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The API key has been revoked — issue a new key from the dashboard and retry with it; the revoked key never works again.
fix_hint_nb
API-nøkkelen er tilbakekalt — utsted en ny nøkkel fra dashbordet og prøv på nytt med den; den tilbakekalte nøkkelen virker aldri igjen.
docs_url
https://www.apier.no/docs/errors#auth_key_revoked

AUTH_MALFORMED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The Authorization header is malformed — send exactly `Authorization: Bearer <key>` with no extra whitespace or prefixes, then resend.
fix_hint_nb
Authorization-headeren er feilformatert — send nøyaktig `Authorization: Bearer <nøkkel>` uten ekstra mellomrom eller prefikser, og send på nytt.
docs_url
https://www.apier.no/docs/errors#auth_malformed

AUTH_MISSING

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
Send a valid API key in the Authorization: Bearer header; retrying without one fails identically.
fix_hint_nb
Send en gyldig API-nøkkel i Authorization: Bearer-headeren; et nytt forsøk uten nøkkel feiler identisk.
docs_url
https://www.apier.no/docs/errors#auth_missing

FORBIDDEN

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The signed-in session is not allowed to use this operator tool — an identical retry fails identically; ask an operator with access.
fix_hint_nb
Den innloggede økten har ikke tilgang til dette operatørverktøyet — et identisk forsøk feiler identisk; be en operatør med tilgang.
docs_url
https://www.apier.no/docs/errors#forbidden

HITL_ALREADY_RESOLVED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The pending action was already approved or rejected — read its status instead of resolving it again.
fix_hint_nb
Den ventende handlingen er allerede godkjent eller avvist — les statusen i stedet for å avgjøre den på nytt.
docs_url
https://www.apier.no/docs/errors#hitl_already_resolved

HITL_EXPIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The pending action expired before a human decided — submit the action again to open a new approval window.
fix_hint_nb
Den ventende handlingen utløp før et menneske tok stilling — send handlingen på nytt for å åpne et nytt godkjenningsvindu.
docs_url
https://www.apier.no/docs/errors#hitl_expired

HITL_PENDING_APPROVAL

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The action is suspended pending human approval — poll the pending_action status or wait for the webhook; do not resubmit the action.
fix_hint_nb
Handlingen er satt på vent i påvente av menneskelig godkjenning — poll statusen på pending_action eller vent på webhooken; ikke send handlingen på nytt.
docs_url
https://www.apier.no/docs/errors#hitl_pending_approval

ISSUANCE_TOKEN_INVALID

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The issuance token cannot be redeemed — ask the account owner to mint a new one in the dashboard and retry with it; an identical retry fails identically. See also https://www.apier.no/docs/authentication.
fix_hint_nb
Utstedelsestokenet kan ikke innløses — be kontoeieren lage et nytt i dashbordet og prøv på nytt med det; et identisk forsøk feiler identisk. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#issuance_token_invalid

KEY_ALREADY_REVOKED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The key is already revoked — nothing to do; list keys to confirm the current state rather than revoking again.
fix_hint_nb
Nøkkelen er allerede tilbakekalt — ingenting å gjøre; list nøklene for å bekrefte tilstanden i stedet for å tilbakekalle på nytt.
docs_url
https://www.apier.no/docs/errors#key_already_revoked

MASKINPORTEN_AUTH_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
Maskinporten rejected Apier's machine credential — this is an operator-side configuration fault; do not loop, report the X-Correlation-ID to Apier support.
fix_hint_nb
Maskinporten avviste Apiers maskinlegitimasjon — dette er en konfigurasjonsfeil på operatørsiden; ikke loop, oppgi X-Correlation-ID til Apier-support.
docs_url
https://www.apier.no/docs/errors#maskinporten_auth_failed

OAUTH_AUDIENCE_MISMATCH

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The token's aud does not name this resource — request a token whose audience is the `resource` value published at /.well-known/oauth-protected-resource/api/mcp (RFC 8707 resource indicator); an identical retry fails identically. See also https://www.apier.no/docs/authentication.
fix_hint_nb
Tokenets aud navngir ikke denne ressursen — be om et token med `resource`-verdien publisert på /.well-known/oauth-protected-resource/api/mcp som audience (RFC 8707 ressursindikator); et identisk forsøk feiler identisk. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#oauth_audience_mismatch

OAUTH_DISABLED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
OAuth 2.1 sign-in is not enabled on this deployment — authenticate with an Apier API key in the Authorization: Bearer header instead; retrying the OAuth discovery document fails identically until the operator enables it. See also https://www.apier.no/docs/authentication.
fix_hint_nb
OAuth 2.1-pålogging er ikke aktivert i denne utrullingen — autentiser med en Apier-API-nøkkel i Authorization: Bearer-headeren i stedet; å prøve OAuth-oppdagelsesdokumentet på nytt feiler identisk inntil operatøren aktiverer det. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#oauth_disabled

OAUTH_SUBJECT_UNMAPPED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The token verified but its (issuer, sub) has no live link to an Apier API key - usually because the connection was disconnected in the dashboard, or was never approved. The fix is self-service: the account owner signs in and approves the app again on /oauth/consent, which provisions a fresh dedicated key for the identity; an identical retry without reconnecting fails identically. See also https://www.apier.no/docs/authentication.
fix_hint_nb
Tokenet ble verifisert, men (utsteder, sub) har ingen aktiv kobling til en Apier-API-nøkkel - vanligvis fordi tilkoblingen ble koblet fra i dashbordet, eller aldri ble godkjent. Løsningen er selvbetjent: kontoeieren logger inn og godkjenner appen på nytt på /oauth/consent, som oppretter en ny dedikert nøkkel for identiteten; et identisk forsøk uten ny tilkobling feiler identisk. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#oauth_subject_unmapped

OAUTH_TOKEN_EXPIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The bearer JWT's exp is in the past — request a new access token from the authorization server and retry with it; retrying the expired token fails identically. See also https://www.apier.no/docs/authentication.
fix_hint_nb
Bearer-JWT-ens exp er passert — be om et nytt tilgangstoken fra autorisasjonsserveren og prøv på nytt med det; å prøve det utløpte tokenet på nytt feiler identisk. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#oauth_token_expired

OAUTH_TOKEN_INVALID

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
The bearer JWT failed verification (signature, issuer, algorithm, nbf or shape) — obtain a fresh access token for this resource from the authorization server listed at /.well-known/oauth-protected-resource/api/mcp; an identical retry fails identically. See also https://www.apier.no/docs/authentication.
fix_hint_nb
Bearer-JWT-en feilet verifisering (signatur, utsteder, algoritme, nbf eller form) — hent et nytt tilgangstoken for denne ressursen fra autorisasjonsserveren oppført på /.well-known/oauth-protected-resource/api/mcp; et identisk forsøk feiler identisk. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#oauth_token_invalid

SANDBOX_TEST_KEY_REQUIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
This sandbox surface needs a sandbox bearer of the form apier_sandbox_test_<suffix> — send one instead of a live key; an identical retry fails identically.
fix_hint_nb
Denne sandkasseflaten krever en sandkasse-bearer på formen apier_sandbox_test_<suffix> — send en slik i stedet for en live-nøkkel; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#sandbox_test_key_required

SESSION_REQUIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
This dashboard route needs a signed-in browser session — sign in via the magic link first; API keys do not grant access here.
fix_hint_nb
Denne dashbord-ruten krever en innlogget nettleserøkt — logg inn via magisk lenke først; API-nøkler gir ikke tilgang her.
docs_url
https://www.apier.no/docs/errors#session_required

UNAUTHENTICATED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
auth
fix_hint_en
This operator route needs a signed-in dashboard session — sign in first; API keys do not grant access here.
fix_hint_nb
Denne operatørruten krever en innlogget dashbord-økt — logg inn først; API-nøkler gir ikke tilgang her.
docs_url
https://www.apier.no/docs/errors#unauthenticated

Scope & delegation (scope · 16)

ALTINN_DELEGATION_MISSING

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
Altinn reports no active delegation for Apier's system user on this organisation — a human must (re-)grant it in Altinn; non-retryable until then.
fix_hint_nb
Altinn melder ingen aktiv delegering for Apiers systembruker på denne organisasjonen — et menneske må tildele den (på nytt) i Altinn; kan ikke prøves på nytt før det.
docs_url
https://www.apier.no/docs/errors#altinn_delegation_missing

API_KEY_NO_SCOPES

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The API key carries no scopes at all — issue a key with the required read scopes; an identical retry fails identically.
fix_hint_nb
API-nøkkelen har ingen scopes i det hele tatt — utsted en nøkkel med nødvendige lese-scopes; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#api_key_no_scopes

API_KEY_RESERVED_SCOPE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The API key carries a reserved scope (write:/act:/delegate:) that is not issuable — use a key holding only assignable read scopes.
fix_hint_nb
API-nøkkelen har et reservert scope (write:/act:/delegate:) som ikke kan utstedes — bruk en nøkkel med kun tildelbare lese-scopes.
docs_url
https://www.apier.no/docs/errors#api_key_reserved_scope

AUTH_INSUFFICIENT_ROLE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The system user lacks the Altinn role this action requires — a human must assign the role in Altinn; an identical retry fails identically.
fix_hint_nb
Systembrukeren mangler Altinn-rollen denne handlingen krever — et menneske må tildele rollen i Altinn; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#auth_insufficient_role

AUTH_MISSING_DELEGATION

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
No active Altinn delegation exists for this organisation (alias of AUTH_NO_DELEGATION) — a human must grant it in Altinn before retrying.
fix_hint_nb
Det finnes ingen aktiv Altinn-delegering for denne organisasjonen (alias for AUTH_NO_DELEGATION) — et menneske må tildele den i Altinn før du prøver på nytt.
docs_url
https://www.apier.no/docs/errors#auth_missing_delegation

AUTH_NO_DELEGATION

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
No active Altinn system-user delegation exists for this organisation — a person with signing authority must create/approve it in Altinn, then retry.
fix_hint_nb
Det finnes ingen aktiv systembruker-delegering i Altinn for denne organisasjonen — en signaturberettiget må opprette/godkjenne den i Altinn før du prøver på nytt.
docs_url
https://www.apier.no/docs/errors#auth_no_delegation

DELEGATION_MISSING

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The Tier-2 source requires an Altinn delegation that is not in place — a human must grant it; the field stays unavailable until then.
fix_hint_nb
Tier 2-kilden krever en Altinn-delegering som ikke er på plass — et menneske må tildele den; feltet forblir utilgjengelig inntil da.
docs_url
https://www.apier.no/docs/errors#delegation_missing

DELEGATION_MISSING_NAV_AAREG

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The NAV Aa-registeret employee-count source needs a delegation that is not in place — a human must grant it in Altinn; non-retryable until then.
fix_hint_nb
NAV Aa-registeret (ansattetall) krever en delegering som ikke er på plass — et menneske må tildele den i Altinn; kan ikke prøves på nytt før det.
docs_url
https://www.apier.no/docs/errors#delegation_missing_nav_aareg

DELEGATION_REVOKED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The delegation was revoked — a human with authority must re-grant it in Altinn before this call can ever succeed; do not retry.
fix_hint_nb
Delegeringen er trukket tilbake — et menneske med myndighet må tildele den på nytt i Altinn før dette kallet kan lykkes; ikke prøv på nytt.
docs_url
https://www.apier.no/docs/errors#delegation_revoked

FULLMAKT_PACKAGE_NOT_GRANTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The delegation lacks the Altinn access package this action needs — a human must add the package in Altinn before retrying.
fix_hint_nb
Delegeringen mangler Altinn-tilgangspakken denne handlingen krever — et menneske må legge til pakken i Altinn før du prøver på nytt.
docs_url
https://www.apier.no/docs/errors#fullmakt_package_not_granted

FULLMAKT_PRINCIPAL_NOT_ELIGIBLE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The agent principal is not in a state that can hold a delegation (e.g. not active) — activate or re-bind the principal first.
fix_hint_nb
Agent-principalen er ikke i en tilstand som kan holde en delegering (f.eks. ikke aktiv) — aktiver eller knytt principalen på nytt først.
docs_url
https://www.apier.no/docs/errors#fullmakt_principal_not_eligible

SCOPE_INSUFFICIENT

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The API key lacks the required scope — issue or use a key with the scope named in the message.
fix_hint_nb
API-nøkkelen mangler nødvendig scope — utsted eller bruk en nøkkel med scopet som er navngitt i meldingen.
docs_url
https://www.apier.no/docs/errors#scope_insufficient

SCOPE_INSUFFICIENT_FOR_ACTION

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The delegation does not cover this action type — a human must widen the Altinn delegation before retrying.
fix_hint_nb
Delegeringen dekker ikke denne handlingstypen — et menneske må utvide Altinn-delegeringen før du prøver på nytt.
docs_url
https://www.apier.no/docs/errors#scope_insufficient_for_action

SCOPE_MISSING

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The Altinn system user lacks a required scope/right for this resource — a human with authority must grant it in Altinn before this call can succeed.
fix_hint_nb
Altinn-systembrukeren mangler et nødvendig scope/en rettighet for denne ressursen — et menneske med myndighet må tildele den i Altinn før dette kallet kan lykkes.
docs_url
https://www.apier.no/docs/errors#scope_missing

SCOPE_NOT_YET_APPROVED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
The Maskinporten scope for this source is not yet approved for Apier in this environment — the data arrives when the scope is approved; do not retry.
fix_hint_nb
Maskinporten-scopet for denne kilden er ennå ikke godkjent for Apier i dette miljøet — dataene kommer når scopet er godkjent; ikke prøv på nytt.
docs_url
https://www.apier.no/docs/errors#scope_not_yet_approved

SCOPE_RESERVED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
scope
fix_hint_en
This endpoint needs a reserved scope (write:/act:/delegate:) that is not issuable yet — the surface is human-gated; do not retry.
fix_hint_nb
Dette endepunktet krever et reservert scope (write:/act:/delegate:) som ennå ikke kan utstedes — flaten er menneskestyrt; ikke prøv på nytt.
docs_url
https://www.apier.no/docs/errors#scope_reserved

Input & validation (validation · 33)

CURSOR_INVALID

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The pagination cursor is malformed or was not issued by this API — restart from the first page and pass cursors back verbatim.
fix_hint_nb
Pagineringsmarkøren er feilformatert eller ikke utstedt av dette API-et — start fra første side og send markører tilbake uendret.
docs_url
https://www.apier.no/docs/errors#cursor_invalid

DEADLINE_PASSED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The filing deadline for this period has passed — the action cannot be submitted as-is; hand over to a human for late filing.
fix_hint_nb
Innleveringsfristen for denne perioden er passert — handlingen kan ikke sendes som den er; overlat til et menneske for forsinket levering.
docs_url
https://www.apier.no/docs/errors#deadline_passed

FOLLOWUP_REQUIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The write was accepted but a follow-up action is required — read explanation.fix_steps and perform the named follow-up; do not resubmit.
fix_hint_nb
Skrivingen ble akseptert, men en oppfølgingshandling kreves — les explanation.fix_steps og utfør oppfølgingen; ikke send på nytt.
docs_url
https://www.apier.no/docs/errors#followup_required

GOVERNMENT_VALIDATION_REJECTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The government system rejected the payload on validation — correct the fields named in the explanation before resubmitting; an identical retry fails identically.
fix_hint_nb
Det offentlige systemet avviste innholdet ved validering — rett feltene som er navngitt i forklaringen før du sender på nytt; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#government_validation_rejected

IDEMPOTENCY_IN_PROGRESS

retryable
true: an identical retry after a short backoff can plausibly succeed
category
validation
fix_hint_en
An identical request is still executing — wait, then retry with the SAME Idempotency-Key to fetch the stored outcome. See also https://www.apier.no/docs/guides/idempotency.
fix_hint_nb
En identisk forespørsel kjører fortsatt — vent, og prøv deretter på nytt med SAMME Idempotency-Key for å hente det lagrede resultatet. Se også https://www.apier.no/docs/guides/idempotency.
docs_url
https://www.apier.no/docs/errors#idempotency_in_progress

IDEMPOTENCY_KEY_INVALID_FORMAT

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The Idempotency-Key header is malformed. Any unique string of 1-255 printable ASCII characters is accepted; a UUID v4 or ULID is a good choice. Fix the value and resend. See also https://www.apier.no/docs/guides/idempotency.
fix_hint_nb
Idempotency-Key-headeren er feilformatert. Enhver unik streng på 1-255 skrivbare ASCII-tegn godtas; en UUID v4 eller ULID er et godt valg. Rett verdien og send på nytt. Se også https://www.apier.no/docs/guides/idempotency.
docs_url
https://www.apier.no/docs/errors#idempotency_key_invalid_format

IDEMPOTENCY_KEY_MISMATCH

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The Idempotency-Key was reused with a DIFFERENT body — send a fresh key for a new request, or the original body to replay the stored outcome.
fix_hint_nb
Idempotency-Key ble gjenbrukt med et ANNET innhold — send en ny nøkkel for en ny forespørsel, eller det opprinnelige innholdet for å gjenta det lagrede resultatet.
docs_url
https://www.apier.no/docs/errors#idempotency_key_mismatch

IDEMPOTENCY_KEY_REQUIRED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
This write requires an Idempotency-Key header. Send any unique string of 1-255 printable ASCII characters (a UUID v4 or ULID is a good choice) and reuse it on retries.
fix_hint_nb
Denne skrivingen krever en Idempotency-Key-header. Send en hvilken som helst unik streng på 1-255 skrivbare ASCII-tegn (en UUID v4 eller ULID er et godt valg) og gjenbruk den ved nye forsøk.
docs_url
https://www.apier.no/docs/errors#idempotency_key_required

INVALID_CODE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The Altinn service code is not in the migration map — check the code against the Altinn 2 service catalogue; do not retry the same value.
fix_hint_nb
Altinn-tjenestekoden finnes ikke i migreringskartet — kontroller koden mot Altinn 2-tjenestekatalogen; ikke prøv samme verdi på nytt.
docs_url
https://www.apier.no/docs/errors#invalid_code

INVALID_CURRENCY

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
Use an ISO-4217 currency code Norges Bank tracks (EUR, USD, GBP, SEK, DKK, …); do not retry the same value.
fix_hint_nb
Bruk en ISO 4217-valutakode som Norges Bank fører (EUR, USD, GBP, SEK, DKK, …); ikke prøv samme verdi på nytt.
docs_url
https://www.apier.no/docs/errors#invalid_currency

INVALID_DATE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The date is not a valid YYYY-MM-DD calendar date — correct it and resend.
fix_hint_nb
Datoen er ikke en gyldig kalenderdato på formen ÅÅÅÅ-MM-DD — rett den og send på nytt.
docs_url
https://www.apier.no/docs/errors#invalid_date

INVALID_SIGNATURE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
Stripe signature verification failed — the payload or secret does not match; an identical retry fails identically.
fix_hint_nb
Verifiseringen av Stripe-signaturen feilet — innholdet eller hemmeligheten samsvarer ikke; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#invalid_signature

JSONRPC_INVALID_PARAMS

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The JSON-RPC params did not match the method's schema — correct the params object and resend; an identical retry fails identically.
fix_hint_nb
JSON-RPC-parametrene samsvarte ikke med metodens skjema — rett params-objektet og send på nytt; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#jsonrpc_invalid_params

JSONRPC_INVALID_REQUEST

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The JSON-RPC envelope is malformed — send a valid {jsonrpc:"2.0", id, method, params} object.
fix_hint_nb
JSON-RPC-konvolutten er feilformatert — send et gyldig {jsonrpc:"2.0", id, method, params}-objekt.
docs_url
https://www.apier.no/docs/errors#jsonrpc_invalid_request

METHOD_NOT_ALLOWED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
This route accepts POST only — resend with the POST method.
fix_hint_nb
Denne ruten aksepterer bare POST — send på nytt med POST-metoden.
docs_url
https://www.apier.no/docs/errors#method_not_allowed

MISSING_SIGNATURE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The Stripe-Signature header is missing — this route accepts Stripe webhook deliveries only; an identical retry fails identically.
fix_hint_nb
Stripe-Signature-headeren mangler — denne ruten aksepterer bare Stripe-webhook-leveranser; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#missing_signature

ORG_NUMBER_INVALID_CHECKSUM

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The org number failed the MOD-11 checksum — verify the 9 digits against Brønnøysund instead of retrying.
fix_hint_nb
Organisasjonsnummeret feilet MOD-11-kontrollsifferet — kontroller de 9 sifrene mot Brønnøysund i stedet for å prøve på nytt.
docs_url
https://www.apier.no/docs/errors#org_number_invalid_checksum

PAYLOAD_TOO_LARGE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The request body exceeds the route's size cap — trim the payload; resending the same body fails identically.
fix_hint_nb
Forespørselskroppen overskrider rutens størrelsesgrense — kutt ned innholdet; samme innhold feiler identisk.
docs_url
https://www.apier.no/docs/errors#payload_too_large

PLAN_INSUFFICIENT

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The dry-run plan does not satisfy the action's preconditions — fix the named precondition (delegation, deadline, payload) before executing.
fix_hint_nb
Tørrkjøringsplanen oppfyller ikke handlingens forutsetninger — rett den navngitte forutsetningen (delegering, frist, innhold) før du utfører.
docs_url
https://www.apier.no/docs/errors#plan_insufficient

PROFILE_NAME_TAKEN

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
A profile with this name already exists on the account — choose a different name or update the existing profile.
fix_hint_nb
En profil med dette navnet finnes allerede på kontoen — velg et annet navn eller oppdater den eksisterende profilen.
docs_url
https://www.apier.no/docs/errors#profile_name_taken

PUBLIC_SANDBOX_BODY_TOO_LARGE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The public-sandbox request body exceeds the size cap — trim it; the same body fails identically.
fix_hint_nb
Forespørselskroppen til den offentlige sandkassen overskrider størrelsesgrensen — kutt den ned; samme innhold feiler identisk.
docs_url
https://www.apier.no/docs/errors#public_sandbox_body_too_large

PUBLIC_SANDBOX_ORG_NOT_PERMITTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
Only the documented fixture org numbers (e.g. 999999999) are served by the public sandbox — use a fixture org; a real org fails identically here.
fix_hint_nb
Bare de dokumenterte fixture-organisasjonsnumrene (f.eks. 999999999) betjenes av den offentlige sandkassen — bruk en fixture-org; en ekte org feiler identisk her.
docs_url
https://www.apier.no/docs/errors#public_sandbox_org_not_permitted

REQUEST_REJECTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The forwarded route answered 4xx without a structured code — check authorization and the input before calling again; an identical retry fails identically.
fix_hint_nb
Den videresendte ruten svarte 4xx uten strukturert kode — kontroller autorisasjon og input før du kaller igjen; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#request_rejected

REQUEST_TOO_LARGE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The request exceeds the accepted size — reduce the body; resending the same request fails identically.
fix_hint_nb
Forespørselen overskrider akseptert størrelse — reduser innholdet; samme forespørsel feiler identisk.
docs_url
https://www.apier.no/docs/errors#request_too_large

RISK_ELEVATED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The anomaly detector blocked this write as elevated-risk — a human must review and release it; do not resubmit automatically.
fix_hint_nb
Anomalidetektoren blokkerte denne skrivingen som forhøyet risiko — et menneske må gjennomgå og frigi den; ikke send på nytt automatisk.
docs_url
https://www.apier.no/docs/errors#risk_elevated

SANDBOX_LOG_SUFFIX_MISMATCH

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The session-log suffix does not match the sandbox bearer — query the log for the suffix embedded in your own apier_sandbox_test_<suffix> key.
fix_hint_nb
Suffikset i øktloggen samsvarer ikke med sandkasse-beareren — spør loggen etter suffikset som ligger i din egen apier_sandbox_test_<suffix>-nøkkel.
docs_url
https://www.apier.no/docs/errors#sandbox_log_suffix_mismatch

SANDBOX_TOOL_UNAVAILABLE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
This tool has no sandbox mirror for a sandbox bearer — use a sandbox-routed tool or authenticate with a real key.
fix_hint_nb
Dette verktøyet har ikke et sandkasse-speil for en sandkasse-bearer — bruk et sandkasse-rutet verktøy eller autentiser med en ekte nøkkel.
docs_url
https://www.apier.no/docs/errors#sandbox_tool_unavailable

SHOWCASE_ORG_NOT_PERMITTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The keyless showcase serves only its documented allowlist of org numbers — use the full API with a key for other organisations.
fix_hint_nb
Den nøkkelfrie utstillingsflaten betjener bare sin dokumenterte liste over organisasjonsnumre — bruk hele API-et med nøkkel for andre organisasjoner.
docs_url
https://www.apier.no/docs/errors#showcase_org_not_permitted

SSE_NOT_SUPPORTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The MCP endpoint does not serve Server-Sent Events — use plain JSON-RPC over POST with Accept: application/json.
fix_hint_nb
MCP-endepunktet serverer ikke Server-Sent Events — bruk ren JSON-RPC over POST med Accept: application/json.
docs_url
https://www.apier.no/docs/errors#sse_not_supported

UNSUPPORTED_CURRENCY_PAIR

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
Exactly one of base/quote must be NOK (Norges Bank rates are NOK-anchored) — fetch both NOK legs and divide for a cross rate.
fix_hint_nb
Nøyaktig én av base/quote må være NOK (Norges Banks kurser er NOK-forankret) — hent begge NOK-benene og del for en krysskurs.
docs_url
https://www.apier.no/docs/errors#unsupported_currency_pair

VALIDATION_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
Correct the field(s) named in explanation.details, then resend — an identical request fails identically.
fix_hint_nb
Rett feltene som er navngitt i explanation.details, og send på nytt — en identisk forespørsel feiler identisk.
docs_url
https://www.apier.no/docs/errors#validation_failed

VALIDATION_PRECONDITION_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
A precondition of the action payload is unmet — satisfy the condition named in the dry-run result before executing.
fix_hint_nb
En forutsetning i handlingsinnholdet er ikke oppfylt — oppfyll betingelsen som er navngitt i tørrkjøringsresultatet før du utfører.
docs_url
https://www.apier.no/docs/errors#validation_precondition_failed

WEBHOOK_URL_INVALID

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
validation
fix_hint_en
The webhook URL is not an accepted https endpoint — use a public https URL (no localhost/private ranges) and resend.
fix_hint_nb
Webhook-URL-en er ikke et akseptert https-endepunkt — bruk en offentlig https-URL (ikke localhost/private områder) og send på nytt.
docs_url
https://www.apier.no/docs/errors#webhook_url_invalid

Lookup & not-found (not_found · 14)

API_KEY_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
The API key named in the request does not belong to this account — pick a key from your own key list.
fix_hint_nb
API-nøkkelen som er navngitt i forespørselen tilhører ikke denne kontoen — velg en nøkkel fra din egen nøkkelliste.
docs_url
https://www.apier.no/docs/errors#api_key_not_found

COMPANY_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
The org number is not in Brønnøysund (deregistered, not yet registered, or wrong) — verify it before retrying.
fix_hint_nb
Organisasjonsnummeret finnes ikke i Brønnøysund (slettet, ikke registrert ennå, eller feil) — kontroller det før du prøver på nytt.
docs_url
https://www.apier.no/docs/errors#company_not_found

CONSUMER_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
No consumer matches the given id — verify the consumer id before retrying.
fix_hint_nb
Ingen konsument samsvarer med oppgitt id — kontroller konsument-id-en før du prøver på nytt.
docs_url
https://www.apier.no/docs/errors#consumer_not_found

FULLMAKT_PRINCIPAL_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
No agent principal matches the given id on this account — list principals to find the right id.
fix_hint_nb
Ingen agent-principal samsvarer med oppgitt id på denne kontoen — list principaler for å finne riktig id.
docs_url
https://www.apier.no/docs/errors#fullmakt_principal_not_found

HITL_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
No pending action with that id is visible to this API key — verify the id; existence is not disclosed across keys.
fix_hint_nb
Ingen ventende handling med den id-en er synlig for denne API-nøkkelen — kontroller id-en; eksistens avsløres ikke på tvers av nøkler.
docs_url
https://www.apier.no/docs/errors#hitl_not_found

ISSUANCE_TOKEN_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
No issuance token with that id exists on this account — list tokens to find the right id.
fix_hint_nb
Ingen utstedelsestoken med den id-en finnes på denne kontoen — list tokens for å finne riktig id.
docs_url
https://www.apier.no/docs/errors#issuance_token_not_found

JSONRPC_METHOD_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
The JSON-RPC method is not supported by this MCP server — use initialize, tools/list, tools/call, resources/list or resources/read.
fix_hint_nb
JSON-RPC-metoden støttes ikke av denne MCP-serveren — bruk initialize, tools/list, tools/call, resources/list eller resources/read.
docs_url
https://www.apier.no/docs/errors#jsonrpc_method_not_found

KEY_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
No API key with that id exists on this account — list keys to find the right id.
fix_hint_nb
Ingen API-nøkkel med den id-en finnes på denne kontoen — list nøklene for å finne riktig id.
docs_url
https://www.apier.no/docs/errors#key_not_found

NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
The resource does not exist in the source register — verify the identifier rather than retrying.
fix_hint_nb
Ressursen finnes ikke i kilderegisteret — kontroller identifikatoren i stedet for å prøve på nytt.
docs_url
https://www.apier.no/docs/errors#not_found

NO_RATE_AVAILABLE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
Norges Bank publishes no rate for this currency/date — pick a tracked currency or a more recent date.
fix_hint_nb
Norges Bank publiserer ingen kurs for denne valutaen/datoen — velg en valuta som føres, eller en nyere dato.
docs_url
https://www.apier.no/docs/errors#no_rate_available

PROFILE_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
No profile with that id exists on this account — list profiles to find the right id.
fix_hint_nb
Ingen profil med den id-en finnes på denne kontoen — list profilene for å finne riktig id.
docs_url
https://www.apier.no/docs/errors#profile_not_found

RESOURCE_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
The MCP resource URI is unknown — call resources/list for the available apier:// URIs.
fix_hint_nb
MCP-ressurs-URI-en er ukjent — kall resources/list for tilgjengelige apier://-URI-er.
docs_url
https://www.apier.no/docs/errors#resource_not_found

SANDBOX_ORG_NOT_IN_FIXTURE_SET

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
The org number is not in the sandbox fixture set — use a documented fixture org (e.g. 999999999).
fix_hint_nb
Organisasjonsnummeret er ikke i sandkassens fixture-sett — bruk en dokumentert fixture-org (f.eks. 999999999).
docs_url
https://www.apier.no/docs/errors#sandbox_org_not_in_fixture_set

SUBSCRIPTION_NOT_FOUND

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
not_found
fix_hint_en
No webhook subscription with that id exists on this key — list subscriptions to find the right id.
fix_hint_nb
Ingen webhook-abonnement med den id-en finnes på denne nøkkelen — list abonnementene for å finne riktig id.
docs_url
https://www.apier.no/docs/errors#subscription_not_found

Rate limits & quota ceilings (rate_limit · 15)

AGENT_LOOP_DETECTED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
The sandbox loop breaker tripped: the same call repeated too often inside the window — wait for the Retry-After window and change the input or tool rather than repeating the identical call.
fix_hint_nb
Sandkassens løkkebryter slo inn: samme kall ble gjentatt for ofte innenfor vinduet — vent ut Retry-After-vinduet og endre input eller verktøy i stedet for å gjenta det identiske kallet.
docs_url
https://www.apier.no/docs/errors#agent_loop_detected

CONCURRENT_WRITE_IN_FLIGHT

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
Another write for the same target is in flight — wait for the Retry-After window, then retry; never run parallel writes against one target.
fix_hint_nb
En annen skriving mot samme mål pågår — vent ut Retry-After-vinduet og prøv på nytt; kjør aldri parallelle skrivinger mot ett mål.
docs_url
https://www.apier.no/docs/errors#concurrent_write_in_flight

GOVERNMENT_RATE_LIMITED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
The government API rate-limited Apier — back off for the advertised window before retrying the identical call.
fix_hint_nb
Det offentlige API-et ratebegrenset Apier — trapp ned i det annonserte vinduet før du gjentar det identiske kallet.
docs_url
https://www.apier.no/docs/errors#government_rate_limited

JSONRPC_RATE_LIMITED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
The MCP transport rate limit was hit — wait for retry_after_seconds before retrying; back off, do not hammer.
fix_hint_nb
Ratebegrensningen for MCP-transporten er nådd — vent retry_after_seconds før du prøver på nytt; trapp ned, ikke hamre.
docs_url
https://www.apier.no/docs/errors#jsonrpc_rate_limited

KEY_LIMIT_REACHED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
rate_limit
fix_hint_en
The consumer already holds the maximum number of active API keys — revoke an unused key before creating another.
fix_hint_nb
Konsumenten har allerede maksimalt antall aktive API-nøkler — tilbakekall en ubrukt nøkkel før du oppretter en ny.
docs_url
https://www.apier.no/docs/errors#key_limit_reached

MAX_ISSUANCE_TOKENS_REACHED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
rate_limit
fix_hint_en
The account holds the maximum number of unredeemed issuance tokens — revoke or redeem one before minting another.
fix_hint_nb
Kontoen har maksimalt antall uinnløste utstedelsestokens — tilbakekall eller innløs ett før du lager et nytt.
docs_url
https://www.apier.no/docs/errors#max_issuance_tokens_reached

MAX_KEYS_REACHED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
rate_limit
fix_hint_en
The account already holds the maximum number of active API keys — revoke an unused key, then retry; an identical retry fails identically. See also https://www.apier.no/docs/authentication.
fix_hint_nb
Kontoen har allerede maksimalt antall aktive API-nøkler — tilbakekall en ubrukt nøkkel og prøv på nytt; et identisk forsøk feiler identisk. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#max_keys_reached

MCP_LOOP_DETECTED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
The same tool failed repeatedly with identical input and is cooling down — wait retry_after_seconds, and change the input or tool rather than repeating the call.
fix_hint_nb
Samme verktøy feilet gjentatte ganger med identisk input og er i nedkjøling — vent retry_after_seconds, og endre input eller verktøy i stedet for å gjenta kallet.
docs_url
https://www.apier.no/docs/errors#mcp_loop_detected

PROFILE_LIMIT_REACHED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
rate_limit
fix_hint_en
The account holds the maximum number of profiles — delete an unused profile before creating another.
fix_hint_nb
Kontoen har maksimalt antall profiler — slett en ubrukt profil før du oppretter en ny.
docs_url
https://www.apier.no/docs/errors#profile_limit_reached

RATE_LIMITED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
Too many write attempts in the current window — wait the number of seconds in the Retry-After header before retrying; back off, do not hammer.
fix_hint_nb
For mange skriveforsøk i gjeldende vindu — vent antall sekunder i Retry-After-headeren før du prøver på nytt; trapp ned, ikke hamre.
docs_url
https://www.apier.no/docs/errors#rate_limited

RATE_LIMIT_CHECK_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
The rate-limit check is temporarily unavailable and the call was refused fail-closed — the token was NOT consumed; wait the Retry-After window (seconds) and retry the identical call. See also https://www.apier.no/docs/guides/error-handling.
fix_hint_nb
Ratebegrensningssjekken er midlertidig utilgjengelig og kallet ble avvist (fail-closed) — tokenet ble IKKE brukt; vent ut Retry-After-vinduet (sekunder) og gjenta det identiske kallet. Se også https://www.apier.no/docs/guides/error-handling.
docs_url
https://www.apier.no/docs/errors#rate_limit_check_unavailable

RATE_LIMIT_EXCEEDED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
Rate limit hit — wait for the Retry-After window before retrying; back off, do not hammer.
fix_hint_nb
Ratebegrensning nådd — vent ut Retry-After-vinduet før du prøver på nytt; trapp ned, ikke hamre.
docs_url
https://www.apier.no/docs/errors#rate_limit_exceeded

RETRY_BUDGET_EXHAUSTED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
Apier's internal retry budget for this write was spent — wait for the Retry-After window, then submit once more with the same Idempotency-Key.
fix_hint_nb
Apiers interne budsjett for nye forsøk på denne skrivingen er brukt opp — vent ut Retry-After-vinduet, og send én gang til med samme Idempotency-Key.
docs_url
https://www.apier.no/docs/errors#retry_budget_exhausted

SANDBOX_TEMPORARILY_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
rate_limit
fix_hint_en
The sandbox circuit breaker is open (shedding load) — wait for the Retry-After window before retrying; production routes are unaffected.
fix_hint_nb
Sandkassens strømbryter er åpen (avlaster trafikk) — vent ut Retry-After-vinduet før du prøver på nytt; produksjonsrutene er ikke berørt.
docs_url
https://www.apier.no/docs/errors#sandbox_temporarily_unavailable

SUBSCRIPTION_LIMIT_REACHED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
rate_limit
fix_hint_en
This key holds the maximum number of webhook subscriptions — delete one before creating another.
fix_hint_nb
Denne nøkkelen har maksimalt antall webhook-abonnementer — slett ett før du oppretter et nytt.
docs_url
https://www.apier.no/docs/errors#subscription_limit_reached

Upstream, government & transport (upstream · 35)

ALTINN_ACK_UNPARSEABLE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
Altinn acknowledged the write at HTTP 2xx but the receipt was unparseable — the commit is uncertain; do NOT retry, reconcile manually via filing-history before any resubmission.
fix_hint_nb
Altinn bekreftet skrivingen med HTTP 2xx, men kvitteringen kunne ikke tolkes — innsendingen er usikker; IKKE prøv på nytt, avstem manuelt via filing-history før eventuell ny innsending.
docs_url
https://www.apier.no/docs/errors#altinn_ack_unparseable

ALTINN_DOWN

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
Altinn is temporarily unavailable — retry the identical call after a short backoff.
fix_hint_nb
Altinn er midlertidig utilgjengelig — gjenta det identiske kallet etter en kort pause.
docs_url
https://www.apier.no/docs/errors#altinn_down

ALTINN_LIVE_SUBMITTER_NOT_IMPLEMENTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
Live Altinn submission is not enabled in this environment — use the sandbox surface; retrying does not change this.
fix_hint_nb
Live Altinn-innsending er ikke aktivert i dette miljøet — bruk sandkasseflaten; nye forsøk endrer ikke dette.
docs_url
https://www.apier.no/docs/errors#altinn_live_submitter_not_implemented

ALTINN_NOT_CONFIGURED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
The Altinn integration is not configured in this environment — an operator-side gap, not a caller error; use the sandbox or contact Apier support.
fix_hint_nb
Altinn-integrasjonen er ikke konfigurert i dette miljøet — en mangel på operatørsiden, ikke en kallerfeil; bruk sandkassen eller kontakt Apier-support.
docs_url
https://www.apier.no/docs/errors#altinn_not_configured

ALTINN_NOT_IMPLEMENTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
This Altinn capability is not implemented yet (501) — do not retry; use the sandbox equivalent or wait for the capability to ship.
fix_hint_nb
Denne Altinn-funksjonen er ikke implementert ennå (501) — ikke prøv på nytt; bruk sandkasse-ekvivalenten eller vent til funksjonen lanseres.
docs_url
https://www.apier.no/docs/errors#altinn_not_implemented

ALTINN_SANDBOX_SUBMIT_NOT_IMPLEMENTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
Sandbox Altinn submission is not implemented for this action — use the documented sandbox rehearsal flow instead.
fix_hint_nb
Sandkasse-innsending til Altinn er ikke implementert for denne handlingen — bruk den dokumenterte rehearsal-flyten i sandkassen i stedet.
docs_url
https://www.apier.no/docs/errors#altinn_sandbox_submit_not_implemented

ALTINN_UPSTREAM_ERROR

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
Altinn answered with an unexpected error — retry the identical call after a short backoff; report the correlation id if it persists.
fix_hint_nb
Altinn svarte med en uventet feil — gjenta det identiske kallet etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#altinn_upstream_error

ALTINN_UPSTREAM_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
Altinn did not respond or timed out — retry the identical call after a short backoff (seconds).
fix_hint_nb
Altinn svarte ikke eller ble tidsavbrutt — gjenta det identiske kallet etter en kort pause (sekunder).
docs_url
https://www.apier.no/docs/errors#altinn_upstream_unavailable

BRREG_DOWN

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
Brønnøysund is temporarily unavailable — retry the identical call after a short backoff. See also https://www.apier.no/docs/guides/error-handling.
fix_hint_nb
Brønnøysund er midlertidig utilgjengelig — gjenta det identiske kallet etter en kort pause. Se også https://www.apier.no/docs/guides/error-handling.
docs_url
https://www.apier.no/docs/errors#brreg_down

BRREG_PROFILE_INTERNAL

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The company-profile lookup failed on Apier's side — retry once after a short backoff; report the correlation id if it persists.
fix_hint_nb
Oppslaget på selskapsprofil feilet på Apiers side — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#brreg_profile_internal

CERTIFICATE_SIGNING_UNAVAILABLE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
The signing key for ?certificate=true is not configured in this environment — call without the parameter for the unsigned answer.
fix_hint_nb
Signeringsnøkkelen for ?certificate=true er ikke konfigurert i dette miljøet — kall uten parameteren for å få det usignerte svaret.
docs_url
https://www.apier.no/docs/errors#certificate_signing_unavailable

COMPANIES_LOOKUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The company-entity lookup failed transiently — retry the identical call after a short backoff.
fix_hint_nb
Oppslaget på selskapsentiteten feilet forbigående — gjenta det identiske kallet etter en kort pause.
docs_url
https://www.apier.no/docs/errors#companies_lookup_failed

COMPANY_LOOKUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The company lookup failed transiently — retry the identical call after a short backoff. See also https://www.apier.no/docs/guides/error-handling.
fix_hint_nb
Selskapsoppslaget feilet forbigående — gjenta det identiske kallet etter en kort pause. Se også https://www.apier.no/docs/guides/error-handling.
docs_url
https://www.apier.no/docs/errors#company_lookup_failed

EXECUTION_CIRCUIT_OPEN

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The circuit breaker for this upstream is open — wait for the Retry-After window before retrying; do not hammer a failing upstream.
fix_hint_nb
Strømbryteren for denne oppstrømstjenesten er åpen — vent ut Retry-After-vinduet før du prøver på nytt; ikke hamre på en tjeneste som feiler.
docs_url
https://www.apier.no/docs/errors#execution_circuit_open

EXECUTION_DEADLINE_EXCEEDED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The action did not complete within its execution deadline — retry with the SAME Idempotency-Key after a short backoff so a late commit is deduplicated.
fix_hint_nb
Handlingen ble ikke fullført innen utføringsfristen — prøv på nytt med SAMME Idempotency-Key etter en kort pause, slik at en sen innsending dedupliseres.
docs_url
https://www.apier.no/docs/errors#execution_deadline_exceeded

EXECUTION_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
The action failed before the government write committed — read explanation for the cause, fix it, then resubmit with the same Idempotency-Key.
fix_hint_nb
Handlingen feilet før den offentlige skrivingen ble gjennomført — les explanation for årsaken, rett den, og send på nytt med samme Idempotency-Key.
docs_url
https://www.apier.no/docs/errors#execution_failed

EXECUTION_TIMEOUT

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The government write timed out — retry with the SAME Idempotency-Key after a short backoff; never resubmit with a new key.
fix_hint_nb
Den offentlige skrivingen ble tidsavbrutt — prøv på nytt med SAMME Idempotency-Key etter en kort pause; send aldri på nytt med ny nøkkel.
docs_url
https://www.apier.no/docs/errors#execution_timeout

FULLMAKT_UPSTREAM_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The delegation request could not reach Altinn — retry after a short backoff; the request was not recorded.
fix_hint_nb
Delegeringsforespørselen nådde ikke Altinn — prøv på nytt etter en kort pause; forespørselen ble ikke registrert.
docs_url
https://www.apier.no/docs/errors#fullmakt_upstream_failed

GOVERNMENT_API_ERROR

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The government API returned an error — retry the identical call after a short backoff; report the correlation id if it persists.
fix_hint_nb
Det offentlige API-et returnerte en feil — gjenta det identiske kallet etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#government_api_error

GOVERNMENT_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The government API is unavailable — retry the identical call after a short backoff (seconds, not milliseconds).
fix_hint_nb
Det offentlige API-et er utilgjengelig — gjenta det identiske kallet etter en kort pause (sekunder, ikke millisekunder).
docs_url
https://www.apier.no/docs/errors#government_unavailable

MASKINPORTEN_MALFORMED_RESPONSE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
Maskinporten returned a response Apier could not parse — retry after a short backoff; report the correlation id if it persists.
fix_hint_nb
Maskinporten returnerte et svar Apier ikke kunne tolke — prøv på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#maskinporten_malformed_response

MASKINPORTEN_TOKEN_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
Apier could not obtain a Maskinporten token — retry after a short backoff; if it persists the operator credential needs attention, not your request.
fix_hint_nb
Apier fikk ikke hentet et Maskinporten-token — prøv på nytt etter en kort pause; vedvarer det, er det operatørlegitimasjonen som trenger oppfølging, ikke forespørselen din.
docs_url
https://www.apier.no/docs/errors#maskinporten_token_failed

OAUTH_JWKS_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The authorization server's JWKS could not be fetched so the token could not be verified (Apier fails closed) — wait briefly and retry the same token; if it persists, the issuer's key endpoint is down. See also https://www.apier.no/docs/authentication.
fix_hint_nb
Autorisasjonsserverens JWKS kunne ikke hentes, så tokenet kunne ikke verifiseres (Apier feiler lukket) — vent litt og prøv samme token på nytt; vedvarer det, er utstederens nøkkelendepunkt nede. Se også https://www.apier.no/docs/authentication.
docs_url
https://www.apier.no/docs/errors#oauth_jwks_unavailable

PERSONS_LOOKUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The person-entity lookup failed transiently — retry the identical call after a short backoff.
fix_hint_nb
Oppslaget på personentiteten feilet forbigående — gjenta det identiske kallet etter en kort pause.
docs_url
https://www.apier.no/docs/errors#persons_lookup_failed

ROLES_LOOKUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The role lookup failed transiently — retry the identical call after a short backoff.
fix_hint_nb
Rolleoppslaget feilet forbigående — gjenta det identiske kallet etter en kort pause.
docs_url
https://www.apier.no/docs/errors#roles_lookup_failed

SERVICE_NOT_YET_AVAILABLE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
The live integration behind this route is not enabled in this environment — use the sandbox surface or wait for the capability to go live; do not retry.
fix_hint_nb
Live-integrasjonen bak denne ruten er ikke aktivert i dette miljøet — bruk sandkasseflaten eller vent til funksjonen går live; ikke prøv på nytt.
docs_url
https://www.apier.no/docs/errors#service_not_yet_available

UPSTREAM_BODY_READ_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The forwarded route's body could not be read to completion — retry after a short backoff.
fix_hint_nb
Kroppen fra den videresendte ruten kunne ikke leses ferdig — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#upstream_body_read_failed

UPSTREAM_ERROR

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The forwarded route answered 5xx without a structured code — retry after a short backoff; report the correlation id if it persists.
fix_hint_nb
Den videresendte ruten svarte 5xx uten strukturert kode — prøv på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#upstream_error

UPSTREAM_FETCH_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The forward request could not be completed at the network level — retry after a short backoff.
fix_hint_nb
Videresendingsforespørselen kunne ikke fullføres på nettverksnivå — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#upstream_fetch_failed

UPSTREAM_NON_JSON

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The forwarded route answered with a non-JSON body — retry after a short backoff.
fix_hint_nb
Den videresendte ruten svarte med en kropp som ikke er JSON — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#upstream_non_json

UPSTREAM_NON_UTF8

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The forwarded route's body was not valid UTF-8 — retry after a short backoff.
fix_hint_nb
Kroppen fra den videresendte ruten var ikke gyldig UTF-8 — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#upstream_non_utf8

UPSTREAM_RESPONSE_TOO_LARGE

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
The forwarded response exceeded the 1 MB cap — narrow the query (fewer periods, shorter horizon); the same query fails identically.
fix_hint_nb
Det videresendte svaret overskred grensen på 1 MB — snevre inn spørringen (færre perioder, kortere horisont); samme spørring feiler identisk.
docs_url
https://www.apier.no/docs/errors#upstream_response_too_large

UPSTREAM_TIMEOUT

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The forwarded route did not answer within the forward timeout — retry after a short backoff.
fix_hint_nb
Den videresendte ruten svarte ikke innen tidsfristen — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#upstream_timeout

UPSTREAM_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
upstream
fix_hint_en
The upstream service is unavailable or timed out — retry the identical call after a short backoff (seconds). See also https://www.apier.no/docs/guides/error-handling.
fix_hint_nb
Oppstrømstjenesten er utilgjengelig eller tidsavbrutt — gjenta det identiske kallet etter en kort pause (sekunder). Se også https://www.apier.no/docs/guides/error-handling.
docs_url
https://www.apier.no/docs/errors#upstream_unavailable

UPSTREAM_UNMAPPED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
upstream
fix_hint_en
The upstream returned a code outside Apier's stable MCP vocabulary — inspect metadata.upstream_code; treat as non-retryable unless it clearly names a transient fault.
fix_hint_nb
Oppstrømstjenesten returnerte en kode utenfor Apiers stabile MCP-vokabular — undersøk metadata.upstream_code; behandle som ikke-gjentakbar med mindre den tydelig beskriver en forbigående feil.
docs_url
https://www.apier.no/docs/errors#upstream_unmapped

Internal & infrastructure (internal · 48)

ACCOUNT_DELETION_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
Account deletion failed on Apier's side and nothing was deleted — retry after a short backoff; report the correlation id if it persists.
fix_hint_nb
Sletting av kontoen feilet på Apiers side og ingenting ble slettet — prøv på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#account_deletion_failed

AUDIT_QUERY_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The audit-log query failed transiently — retry after a short backoff.
fix_hint_nb
Spørringen mot revisjonsloggen feilet forbigående — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#audit_query_failed

AUTH_CONSUMER_INVALID_TIER

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The consumer record carries an unrecognised pricing tier — a server-side configuration fault; do not retry, contact Apier support with the X-Correlation-ID.
fix_hint_nb
Konsumentposten har en ukjent prisnivå-verdi — en konfigurasjonsfeil på serversiden; ikke prøv på nytt, kontakt Apier-support med X-Correlation-ID.
docs_url
https://www.apier.no/docs/errors#auth_consumer_invalid_tier

AUTH_LOOKUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The delegation lookup itself failed transiently (not a definite 'no delegation') — retry after a short backoff.
fix_hint_nb
Selve delegeringsoppslaget feilet forbigående (ikke et sikkert «ingen delegering») — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#auth_lookup_failed

CHANGES_QUERY_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The change-feed query failed transiently — retry the identical call (same cursor) after a short backoff.
fix_hint_nb
Spørringen mot endringsstrømmen feilet forbigående — gjenta det identiske kallet (samme markør) etter en kort pause.
docs_url
https://www.apier.no/docs/errors#changes_query_failed

COMPANIES_INSERT_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
Persisting the company entity failed transiently — retry after a short backoff.
fix_hint_nb
Lagring av selskapsentiteten feilet forbigående — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#companies_insert_failed

COMPANY_CONTEXT_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The company context could not be assembled — retry once after a short backoff; report the correlation id if it persists.
fix_hint_nb
Selskapskonteksten kunne ikke settes sammen — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#company_context_failed

COMPANY_DEADLINES_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The deadline evaluation failed unexpectedly — retry once after a short backoff; report the correlation id if it persists.
fix_hint_nb
Fristevalueringen feilet uventet — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#company_deadlines_failed

COMPANY_OBLIGATIONS_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The obligation evaluation failed unexpectedly — retry once after a short backoff; report the correlation id if it persists.
fix_hint_nb
Pliktevalueringen feilet uventet — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#company_obligations_failed

COMPANY_SUMMARY_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The company summary failed unexpectedly — retry once after a short backoff; report the correlation id if it persists.
fix_hint_nb
Selskapssammendraget feilet uventet — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#company_summary_failed

CRON_RETENTION_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The retention cron run failed — operator surface; the next scheduled run retries automatically.
fix_hint_nb
Kjøringen av oppbevarings-cronen feilet — operatørflate; neste planlagte kjøring prøver automatisk på nytt.
docs_url
https://www.apier.no/docs/errors#cron_retention_failed

CRON_STATUS_CHECK_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The status-check cron run failed — operator surface; the next scheduled run retries automatically.
fix_hint_nb
Kjøringen av statussjekk-cronen feilet — operatørflate; neste planlagte kjøring prøver automatisk på nytt.
docs_url
https://www.apier.no/docs/errors#cron_status_check_failed

CRON_STATUS_CHECK_TABLES_NOT_READY

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The status tables are not migrated yet — operator surface; apply the pending migration, the next run then succeeds.
fix_hint_nb
Statustabellene er ikke migrert ennå — operatørflate; kjør den ventende migrasjonen, så lykkes neste kjøring.
docs_url
https://www.apier.no/docs/errors#cron_status_check_tables_not_ready

CRON_VISIBILITY_ROLLUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The visibility roll-up cron run failed — operator surface; the next scheduled run retries automatically.
fix_hint_nb
Kjøringen av synlighets-rollup-cronen feilet — operatørflate; neste planlagte kjøring prøver automatisk på nytt.
docs_url
https://www.apier.no/docs/errors#cron_visibility_rollup_failed

DEADLINE_ADJUSTMENT_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The business-day adjustment could not converge (holiday configuration fault) — do not retry; report the correlation id to Apier support.
fix_hint_nb
Justeringen til virkedag konvergerte ikke (feil i helligdagskonfigurasjonen) — ikke prøv på nytt; oppgi korrelasjons-ID-en til Apier-support.
docs_url
https://www.apier.no/docs/errors#deadline_adjustment_failed

DEADLINE_LOOKUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The deadline lookup inside the dry run failed transiently — retry the dry run after a short backoff.
fix_hint_nb
Fristoppslaget i tørrkjøringen feilet forbigående — gjenta tørrkjøringen etter en kort pause.
docs_url
https://www.apier.no/docs/errors#deadline_lookup_failed

DRY_RUN_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The pre-flight dry run did not pass, so nothing was submitted — fix the check named in the result before executing again.
fix_hint_nb
Tørrkjøringen før utføring feilet, så ingenting ble sendt — rett kontrollen som er navngitt i resultatet før du utfører igjen.
docs_url
https://www.apier.no/docs/errors#dry_run_failed

EVENT_RECLAIM_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The in-flight webhook event could not be reclaimed — answered non-2xx so Stripe redelivers; retry is automatic.
fix_hint_nb
Den pågående webhook-hendelsen kunne ikke tas over — svart med ikke-2xx slik at Stripe leverer på nytt; nytt forsøk skjer automatisk.
docs_url
https://www.apier.no/docs/errors#event_reclaim_failed

EVENT_RECORD_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The webhook event could not be recorded — answered non-2xx so Stripe redelivers; retry is automatic.
fix_hint_nb
Webhook-hendelsen kunne ikke registreres — svart med ikke-2xx slik at Stripe leverer på nytt; nytt forsøk skjer automatisk.
docs_url
https://www.apier.no/docs/errors#event_record_failed

FILING_HISTORY_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The filing-history read failed transiently — retry the identical call after a short backoff.
fix_hint_nb
Lesingen av innleveringshistorikken feilet forbigående — gjenta det identiske kallet etter en kort pause.
docs_url
https://www.apier.no/docs/errors#filing_history_failed

FORWARD_ORIGIN_MISMATCH

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
MCP forwarder safety gate: the forward origin did not match the configured app origin — internal; do not loop, report the query_id.
fix_hint_nb
Sikkerhetssperre i MCP-videresenderen: videresendingsopprinnelsen samsvarte ikke med konfigurert app-opprinnelse — internt; ikke loop, oppgi query_id.
docs_url
https://www.apier.no/docs/errors#forward_origin_mismatch

FORWARD_PATH_REJECTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
MCP forwarder safety gate: the computed forward path was outside the allowed /api/v1 surface — internal; do not loop, report the query_id.
fix_hint_nb
Sikkerhetssperre i MCP-videresenderen: den beregnede videresendingsstien lå utenfor tillatt /api/v1-flate — internt; ikke loop, oppgi query_id.
docs_url
https://www.apier.no/docs/errors#forward_path_rejected

FORWARD_REDIRECT_REJECTED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
MCP forwarder safety gate: the route attempted a redirect, which the forwarder never follows — internal; do not loop, report the query_id.
fix_hint_nb
Sikkerhetssperre i MCP-videresenderen: ruten forsøkte en omdirigering, som videresenderen aldri følger — internt; ikke loop, oppgi query_id.
docs_url
https://www.apier.no/docs/errors#forward_redirect_rejected

GOV_COMMIT_PAYLOAD_MISMATCH

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The payload Apier committed upstream does not match the validated one — the write is uncertain; do NOT retry, reconcile via filing-history and report the correlation id.
fix_hint_nb
Innholdet Apier sendte oppstrøms samsvarer ikke med det validerte — skrivingen er usikker; IKKE prøv på nytt, avstem via filing-history og oppgi korrelasjons-ID-en.
docs_url
https://www.apier.no/docs/errors#gov_commit_payload_mismatch

HITL_RELEASE_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
Releasing the approved action failed after the claim — do not re-approve; read the pending action's status and reconcile from the idempotency record.
fix_hint_nb
Frigivelsen av den godkjente handlingen feilet etter reservasjonen — ikke godkjenn på nytt; les statusen på den ventende handlingen og avstem fra idempotensposten.
docs_url
https://www.apier.no/docs/errors#hitl_release_failed

INTERNAL_ERROR

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
An unexpected internal error — do not loop; report the X-Correlation-ID to Apier support if it persists. See also https://www.apier.no/docs/guides/error-handling.
fix_hint_nb
En uventet intern feil — ikke loop; oppgi X-Correlation-ID til Apier-support hvis det vedvarer. Se også https://www.apier.no/docs/guides/error-handling.
docs_url
https://www.apier.no/docs/errors#internal_error

INTERNAL_SERVER_ERROR

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
An unexpected server-side error occurred while reading the request body — the failure is not caused by your request; do not loop, report the X-Correlation-ID to Apier support.
fix_hint_nb
En uventet feil på serversiden oppstod under lesing av forespørselskroppen — feilen skyldes ikke forespørselen din; ikke loop, oppgi X-Correlation-ID til Apier-support.
docs_url
https://www.apier.no/docs/errors#internal_server_error

INVALID_TRANSITION

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The requested compliance-state transition is illegal from the current state — read the current state first; an identical retry fails identically.
fix_hint_nb
Den forespurte overgangen i compliance-tilstand er ulovlig fra nåværende tilstand — les nåværende tilstand først; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#invalid_transition

JSONRPC_PROTOCOL_ERROR

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The JSON-RPC request violated the protocol — correct the envelope per the error message; an identical retry fails identically.
fix_hint_nb
JSON-RPC-forespørselen brøt protokollen — rett konvolutten i henhold til feilmeldingen; et identisk forsøk feiler identisk.
docs_url
https://www.apier.no/docs/errors#jsonrpc_protocol_error

JWKS_DERIVATION_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The JWKS could not be derived from the configured key material — operator fault; do not retry, report to Apier support.
fix_hint_nb
JWKS kunne ikke utledes fra konfigurert nøkkelmateriale — operatørfeil; ikke prøv på nytt, meld fra til Apier-support.
docs_url
https://www.apier.no/docs/errors#jwks_derivation_failed

LOOKUP_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The consumer lookup failed transiently — retry after a short backoff.
fix_hint_nb
Konsumentoppslaget feilet forbigående — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#lookup_failed

LOVDATA_CHECK_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The Lovdata drift check cron run failed — operator surface; the next scheduled run retries automatically.
fix_hint_nb
Kjøringen av Lovdata-driftsjekken feilet — operatørflate; neste planlagte kjøring prøver automatisk på nytt.
docs_url
https://www.apier.no/docs/errors#lovdata_check_failed

MASKINPORTEN_JWT_BUILD_FAILED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The Maskinporten client assertion could not be built from the configured key — operator fault; do not retry, fix the credential configuration.
fix_hint_nb
Maskinporten-klientpåstanden kunne ikke bygges fra konfigurert nøkkel — operatørfeil; ikke prøv på nytt, rett legitimasjonskonfigurasjonen.
docs_url
https://www.apier.no/docs/errors#maskinporten_jwt_build_failed

PERMISSION_STATE_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The permission state could not be assembled — retry after a short backoff.
fix_hint_nb
Tillatelsestilstanden kunne ikke settes sammen — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#permission_state_failed

PERSONS_INSERT_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
Persisting the person entity failed transiently — retry after a short backoff.
fix_hint_nb
Lagring av personentiteten feilet forbigående — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#persons_insert_failed

PUBLIC_DEADLINES_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The public deadline evaluation failed unexpectedly — retry once after a short backoff; report the correlation id if it persists.
fix_hint_nb
Den offentlige fristevalueringen feilet uventet — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#public_deadlines_failed

PUBLIC_OBLIGATIONS_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The public obligation evaluation failed unexpectedly — retry once after a short backoff; report the correlation id if it persists.
fix_hint_nb
Den offentlige pliktevalueringen feilet uventet — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#public_obligations_failed

ROLES_INSERT_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
Persisting the role rows failed transiently — retry after a short backoff.
fix_hint_nb
Lagring av rolleradene feilet forbigående — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#roles_insert_failed

SAFETY_SYSTEM_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The conflict-lock safety system could not be consulted and the write was refused fail-closed — nothing was submitted; retry after a short backoff.
fix_hint_nb
Konfliktlås-sikkerhetssystemet kunne ikke konsulteres og skrivingen ble avvist (fail-closed) — ingenting ble sendt; prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#safety_system_unavailable

SERVER_ERROR

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
A transient server-side fault — retry once after a short backoff; report the correlation id if it persists. See also https://www.apier.no/docs/guides/error-handling.
fix_hint_nb
En forbigående feil på serversiden — prøv én gang på nytt etter en kort pause; oppgi korrelasjons-ID-en hvis det vedvarer. Se også https://www.apier.no/docs/guides/error-handling.
docs_url
https://www.apier.no/docs/errors#server_error

SERVER_MISCONFIGURED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
A required server-side setting is missing in this environment — operator fault; do not retry, contact Apier support with the X-Correlation-ID.
fix_hint_nb
En nødvendig innstilling på serversiden mangler i dette miljøet — operatørfeil; ikke prøv på nytt, kontakt Apier-support med X-Correlation-ID.
docs_url
https://www.apier.no/docs/errors#server_misconfigured

SESSION_RESOLUTION_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
The operator session could not be resolved transiently — retry after a short backoff; sign in again if it persists.
fix_hint_nb
Operatørøkten kunne ikke løses opp (forbigående) — prøv på nytt etter en kort pause; logg inn på nytt hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#session_resolution_failed

STATUS_URL_MISSING

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The status-page redirect target is not configured — operator fault; use https://www.apier.no/trust for upstream status in the meantime.
fix_hint_nb
Omdirigeringsmålet for statussiden er ikke konfigurert — operatørfeil; bruk https://www.apier.no/trust for oppstrømsstatus i mellomtiden.
docs_url
https://www.apier.no/docs/errors#status_url_missing

SUBSCRIPTION_CREATE_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
Creating the webhook subscription failed transiently and nothing was stored — retry after a short backoff.
fix_hint_nb
Opprettelsen av webhook-abonnementet feilet forbigående og ingenting ble lagret — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#subscription_create_failed

SUBSCRIPTION_DELETE_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
Deleting the webhook subscription failed transiently — retry after a short backoff; list subscriptions to confirm the state.
fix_hint_nb
Slettingen av webhook-abonnementet feilet forbigående — prøv på nytt etter en kort pause; list abonnementene for å bekrefte tilstanden.
docs_url
https://www.apier.no/docs/errors#subscription_delete_failed

SUBSCRIPTION_LIST_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
internal
fix_hint_en
Listing webhook subscriptions failed transiently — retry after a short backoff.
fix_hint_nb
Listing av webhook-abonnementer feilet forbigående — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#subscription_list_failed

UNKNOWN

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
internal
fix_hint_en
The error could not be classified against a known code — do not loop; report the X-Correlation-ID to Apier support.
fix_hint_nb
Feilen kunne ikke klassifiseres mot en kjent kode — ikke loop; oppgi X-Correlation-ID til Apier-support.
docs_url
https://www.apier.no/docs/errors#unknown

Billing & credits (billing · 16)

ALREADY_SUBSCRIBED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
The account already has an active subscription — manage it from the billing portal instead of starting a new checkout.
fix_hint_nb
Kontoen har allerede et aktivt abonnement — administrer det fra faktureringsportalen i stedet for å starte en ny utsjekking.
docs_url
https://www.apier.no/docs/errors#already_subscribed

BILLING_CHECKOUT_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
Checkout could not be started — retry after a short backoff; nothing was charged.
fix_hint_nb
Utsjekkingen kunne ikke startes — prøv på nytt etter en kort pause; ingenting ble belastet.
docs_url
https://www.apier.no/docs/errors#billing_checkout_failed

BILLING_NOT_CONFIGURED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
Billing is not configured in this environment — nothing was charged; retry later or contact Apier support if it persists.
fix_hint_nb
Fakturering er ikke konfigurert i dette miljøet — ingenting ble belastet; prøv igjen senere, eller kontakt Apier-support hvis det vedvarer.
docs_url
https://www.apier.no/docs/errors#billing_not_configured

BILLING_NOT_LIVE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
Billing is not yet live in this environment — nothing was charged; retry later or contact Apier support.
fix_hint_nb
Fakturering er ennå ikke live i dette miljøet — ingenting ble belastet; prøv igjen senere eller kontakt Apier-support.
docs_url
https://www.apier.no/docs/errors#billing_not_live

BILLING_PORTAL_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
The billing portal session could not be created — retry after a short backoff.
fix_hint_nb
Faktureringsportal-økten kunne ikke opprettes — prøv på nytt etter en kort pause.
docs_url
https://www.apier.no/docs/errors#billing_portal_failed

CREDIT_BALANCE_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
The credit balance could not be read and nothing was charged — retry after the Retry-After window; never substitute an assumed balance.
fix_hint_nb
Kredittsaldoen kunne ikke leses og ingenting ble belastet — prøv på nytt etter Retry-After-vinduet; anta aldri en saldo.
docs_url
https://www.apier.no/docs/errors#credit_balance_unavailable

CREDIT_CHECK_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
The credit check is temporarily unavailable and nothing was charged — wait a few seconds and retry. See also https://www.apier.no/docs/guides/agent-payments.
fix_hint_nb
Kredittsjekken er midlertidig utilgjengelig og ingenting ble belastet — vent noen sekunder og prøv på nytt. Se også https://www.apier.no/docs/guides/agent-payments.
docs_url
https://www.apier.no/docs/errors#credit_check_unavailable

INSUFFICIENT_CREDITS

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
Prepaid balance too low — top up (see top_up_url), then retry the request. See also https://www.apier.no/docs/guides/agent-payments.
fix_hint_nb
Forhåndsbetalt saldo er for lav — fyll på (se top_up_url), og prøv forespørselen på nytt. Se også https://www.apier.no/docs/guides/agent-payments.
docs_url
https://www.apier.no/docs/errors#insufficient_credits

MAX_PENDING_TOPUP_REQUESTS

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
Too many top-up requests are pending human approval — wait for one to be resolved before requesting another.
fix_hint_nb
For mange påfyllingsforespørsler venter på menneskelig godkjenning — vent til én er avgjort før du ber om en ny.
docs_url
https://www.apier.no/docs/errors#max_pending_topup_requests

NO_BILLING_ACCOUNT

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
The account has no billing customer yet — complete a first checkout before opening the billing portal.
fix_hint_nb
Kontoen har ingen faktureringskunde ennå — fullfør en første utsjekking før du åpner faktureringsportalen.
docs_url
https://www.apier.no/docs/errors#no_billing_account

TOPUP_BELOW_MINIMUM

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
The requested amount_ore is under the minimum top-up — raise amount_ore to at least the minimum named in the response, then resend. See also https://www.apier.no/docs/guides/agent-payments.
fix_hint_nb
Ønsket amount_ore er under minste påfylling — øk amount_ore til minst minimumet som er oppgitt i svaret, og send på nytt. Se også https://www.apier.no/docs/guides/agent-payments.
docs_url
https://www.apier.no/docs/errors#topup_below_minimum

TOPUP_CEILING_EXCEEDED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
The requested amount_ore is above the agent top-up ceiling — lower amount_ore to at most the ceiling named in the response, or ask a human to top up without a ceiling from the billing dashboard. See also https://www.apier.no/docs/guides/agent-payments.
fix_hint_nb
Ønsket amount_ore er over agent-taket for påfylling — senk amount_ore til høyst taket som er oppgitt i svaret, eller be et menneske fylle på uten tak fra fakturerings-dashbordet. Se også https://www.apier.no/docs/guides/agent-payments.
docs_url
https://www.apier.no/docs/errors#topup_ceiling_exceeded

TOPUP_CEILING_UNAVAILABLE

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
The agent top-up ceiling could not be read — retry after a short backoff; the request was not recorded.
fix_hint_nb
Agent-taket for påfylling kunne ikke leses — prøv på nytt etter en kort pause; forespørselen ble ikke registrert.
docs_url
https://www.apier.no/docs/errors#topup_ceiling_unavailable

TOPUP_KEY_REVOKED

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
The API key this top-up request targets has been revoked — request a top-up for an active key instead.
fix_hint_nb
API-nøkkelen denne påfyllingsforespørselen gjelder er tilbakekalt — be om påfylling for en aktiv nøkkel i stedet.
docs_url
https://www.apier.no/docs/errors#topup_key_revoked

TOPUP_REQUEST_NOT_PENDING

retryable
false: an identical retry fails identically; change the input, the credential, or hand over to a human
category
billing
fix_hint_en
The top-up request is no longer pending (already approved, rejected or expired) — read its status instead of resolving it again.
fix_hint_nb
Påfyllingsforespørselen er ikke lenger ventende (allerede godkjent, avvist eller utløpt) — les statusen i stedet for å avgjøre den på nytt.
docs_url
https://www.apier.no/docs/errors#topup_request_not_pending

TOPUP_RESOLVE_FAILED

retryable
true: an identical retry after a short backoff can plausibly succeed
category
billing
fix_hint_en
Resolving the top-up request failed transiently — retry after a short backoff; the request is still pending.
fix_hint_nb
Avgjørelsen av påfyllingsforespørselen feilet forbigående — prøv på nytt etter en kort pause; forespørselen er fortsatt ventende.
docs_url
https://www.apier.no/docs/errors#topup_resolve_failed

Get a live explanation

The codes that carry a Compliance Explainer template (EXPLAINER_ERROR_CODES in src/types/explainer.ts, a subset of the registry above; the full list is published in the Explanation schema's error_code enum in openapi.json) can be expanded into a full explanation object on demand. POST /api/v1/explain is a zero-auth endpoint (no API key needed) that takes an error_code plus an optional context and returns the canonical explanation, the same object the API attaches to a real error. It makes no upstream calls and stores no data.

curl -X POST https://www.apier.no/api/v1/explain \
  -H "Content-Type: application/json" \
  -d '{ "error_code": "AUTH_NO_DELEGATION", "context": { "org_number": "999999999" } }'

The response wraps the explanation in the standard success envelope:

{
  "success": true,
  "data": {
    "explanation": {
      "error_code": "AUTH_NO_DELEGATION",
      "summary": "Ingen aktiv systembruker-delegering finnes for 999999999.",
      "why": "Konsumenten har ingen aktiv systembruker-delegering hos Altinn for 999999999.",
      "fix_steps": [
        "Opprett en systembruker via altinn.no/hjelp/systemtilgang og knytt den til integrasjonen.",
        "Be en signaturberettiget godkjenne delegeringen i Altinn.",
        "Gjenta forespørselen når delegeringen vises som aktiv."
      ],
      "summary_en": "No active system-user delegation exists for 999999999.",
      "why_en": "The consumer has no active system-user delegation in Altinn for 999999999.",
      "fix_steps_en": [
        "Create a system user via altinn.no/hjelp/systemtilgang and connect it to the integration.",
        "Ask a person with signing authority to approve the delegation in Altinn.",
        "Retry the request once the delegation shows as active."
      ],
      "relevant_link": "https://info.altinn.no/hjelp/systemtilgang/om-systemtilgang/",
      "legal_basis": null,
      "handover": {
        "who": "company_admin",
        "where": "https://info.altinn.no/hjelp/systemtilgang/om-systemtilgang/",
        "what": "Opprette systembruker og godkjenne delegering for 999999999.",
        "why": "Uten delegering har systembrukeren ingen rettigheter på vegne av organisasjonen."
      }
    }
  },
  "_meta": {
    "rulebook_version": "2026.6.0"
  }
}

The context fields (org_number, scope, role, field, upstream_system) are interpolated into both the Norwegian and English text wherever the template references them; omit them and the explanation falls back to a neutral noun in each language. The standard trust _meta block rides on the response alongside rulebook_version.

Going deeper

This page is the canonical index. For a walkthrough of handling these errors in agent code — retry strategy, the human-handover boundary, and worked examples — see Error handling and the Compliance Explainer.

Building with an LLM? Read llms.txt for agent-oriented integration guidance.