Mint a sign-in link for a draft
Mints a single-use sign-in link that opens the claim flow for one draft inside your app. The link is valid for 5 minutes, and a new link invalidates the previous one. An active draft gets a link only to resume an empty account.
Partner API key, sent as Authorization: Bearer <key>. Production keys start with jpk_live_ and work only on https://api.joulo.nl. Sandbox keys start with jpk_test_ and work only on https://api-staging.joulo.nl. Sandbox keys minted before September 2026 also start with jpk_live_. A key used on the wrong host returns 401 with a detail. A key is bound to one partner and reaches only the Partner API routes. Any other route returns 404 when it does not exist. A route that needs a scope the key lacks, such as GET /sessions, returns 403 with error: Insufficient scope and a required_scope. Every other route returns 403 with error: partner_api_key_scope. Mint and revoke keys in the partner portal. A partner has one active key at a time.
In: header
Draft id, from created in the upload response or from GET /partner/drafts.
uuidEmail address of the draft. Trimmed and lowercased.
Where the flow sends the customer at the end. It must start with the return URL registered in the partner portal, followed by /, ? or nothing. No fragment, at most 500 characters. Without it, the registered URL applies.
Response Body
curl -X POST "https://api.joulo.nl/functions/v1/api/partner/drafts/auth-link" \
-H "Content-Type: application/json" \
-d '{
"draft_id": "8f2c1d4e-5b6a-4c3d-9e8f-0a1b2c3d4e5f",
"return_url": "bluebird://joulo/done"
}'{
"ok": true,
"auth_url": "http://example.com",
"expires_in": 300,
"resume": true,
"return_url": "string"
}{
"error": "return_url_not_allowed",
"message": "return_url must start with the return URL registered in the partner portal."
}{
"error": "Missing or invalid API token"
}{
"error": "draft_not_found"
}{
"error": "draft_not_claimable",
"status": "active",
"reason": "registration_submitted"
}{
"error": "Too many requests",
"retry_after_seconds": 3
}{
"error": "Failed to mint auth link"
}{
"error": "Authentication is temporarily unavailable, try again shortly"
}