Start verifying the account's email
Asks the banking provider to verify the account's registered email and sends an OTP to it. Requires an authenticated, active user. If a verification is already in progress, the call returns that verification instead of starting a new one. Returns 404 when the caller has no ACTIVE current account.
Authorization
oauth2 Create a client with POST /v1/oauth/clients, then exchange its credentials for an access token. AUTHORIZATION_CODE clients act on behalf of a signed-in user and always use PKCE; CLIENT_CREDENTIALS clients act as themselves. A client may only be granted scopes its creator already holds — read the grantable list from GET /v1/oauth/clients/scopes.
In: header
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v1/user/accounts/current/email/verifications"{ "id": "550e8400-e29b-41d4-a716-446655440000", "url": "https://api.cowdi.co/v1/user/accounts/current/email/verifications/550e8400-e29b-41d4-a716-446655440000", "status": "INITIALIZING", "created_at": "2026-09-01T10:15:30Z", "verified_at": "2026-01-15T09:32:00Z", "confirm_url": "https://api.cowdi.co/v1/user/accounts/current/email/verifications/550e8400-e29b-41d4-a716-446655440000/confirm", "resource_id": "string"}{ "code": "BAD_REQUEST", "description": "Bad Request"}{ "code": "UNAUTHORISED", "description": "Unauthorised"}{ "code": "FORBIDDEN", "description": "Forbidden"}{ "code": "RATE_LIMIT_EXCEEDED", "description": "Too Many Requests"}{ "code": "INTERNAL_ERROR", "description": "Internal Server Error"}Resend the OTP for the in-flight closure POST
Sends a new OTP for the closure that is still `AWAITING_OTP`. Requires an authenticated, active user. When the OTP session expired at the custodian bank, this call registers a new closure with the same reasons. It then sends the new closure's OTP. Call `GET /v1/user/accounts/current/closure` afterward to read the current closure id. Returns 404 when no closure is in progress.
Get an email verification GET
Returns one email verification by its id. The caller must be authenticated. Returns 404 when the id does not exist, or belongs to another caller.