Authentication required
If an API request is rejected because authentication is required:- confirm that the
Authorizationheader is included, - confirm that the value uses
Bearer, - confirm that the API key begins with
fidel80_.
Invalid or expired API key
Check that:- the key has not been revoked,
- the key has not expired,
- the correct key value is being used.
Workflow not found or not accessible
Confirm that the workflow ID:- exists,
- belongs to the same organization as the authenticated API key,
- is the workflow you intended to use.
Workflow is not active
Verification tokens can only be generated for an active workflow. Confirm the workflow status in Fidel80 before retrying the request.Invalid workflow version
The workflow version must belong to the selected workflow. Check bothworkflowId and workflowVersionId before submitting the mutation.
Subscription or usage limit
Fidel80 may prevent a verification from being generated when subscription or usage limits apply. If authentication and workflow configuration are correct but the request is still rejected, check the organization subscription and verification usage status.Invalid verification link
A verification link may no longer be valid if the token is:- expired,
- completed,
- cancelled,
- invalid.
Webhook delivery issues
If your webhook endpoint is not receiving completion events:- confirm the webhook is enabled,
- confirm the destination URL is correct,
- confirm the endpoint accepts HTTP
POST, - confirm the endpoint accepts JSON,
- confirm the endpoint is reachable from outside your local network,
- open Developers → Webhook logs and inspect the delivery status and attempts.
408, HTTP 429, and HTTP 5xx responses.
The verified retry schedule is:
- initial attempt immediately,
- second attempt after 60 seconds,
- final attempt after another 300 seconds.
4xx responses are not retried.
If signature verification is failing:
- confirm you are using the correct webhook signing secret,
- read
X-Fidel80-Timestamp, - read
X-Fidel80-Signature, - calculate HMAC-SHA256 over
{timestamp}.{raw-request-body}, - ensure the calculated signature uses the
sha256=<hex-digest>format, - verify the exact raw body rather than re-serialized JSON.
.png?fit=max&auto=format&n=2M7ffCRGZlIgzhjw&q=85&s=a56a6ebd09043651f8a506ac5040a1a9)
.png?fit=max&auto=format&n=2M7ffCRGZlIgzhjw&q=85&s=63ced04dc2af2d5958aba3d863a8c9aa)