# Start reset by email link

Starts a password reset flow by sending an email magic link. Once clicked, the User Agent will be redirected to the URI specified in this request. This URI will include a code required to reset the password. Required permissions: apps:execute, [appId]:execute, auth:execute.

Endpoint: POST /v1/auth/password/reset/email/link
Security: ClientAccessToken

## Request fields (application/json):

  - `prev_reset_token` (string)
    Reset token that contains mfa_required as true. Should be passed when initiating a second factor authentication, in case MFA is required for password reset flows.

  - `ignore_mfa` (boolean)
    Allows resetting the password without MFA in case MFA is required for password reset flows

  - `email` (string)
    The user's primary email address. Pass either username or email, but not both.

  - `username` (string)
    The username to send the magic link to. Pass either username or email, but not both.

  - `redirect_uri` (string, required)
    URI where the email link will redirect to. This is the server GET endpoint used to call the password reset endpoint, and should accept "code" as a query parameter. This URI must also be configured as an allowed redirect URI in the Transmit Admin Portal.
    Example: "https://www.example.com/reset-password"

  - `email_content` (object)
    Texts, logo and color to render email template with

  - `email_content.subject` (string, required)
    The subject of the email

  - `email_content.primaryColor` (string)
    Primary color of the email, specified as a Hex color
    Example: "#6981FF"

  - `email_content.base64logo` (string)
    Base64 encoded image for email logo. The string length must be less than or equal to 20000 characters

  - `email_content.headerText` (string)
    The header of the email

  - `email_content.bodyText` (string)
    The body of the email

  - `email_content.linkText` (string)
    The text of the link button in the email

  - `email_content.infoText` (string)
    Any extra information in the email

  - `email_content.footerText` (string)
    The footer of the email
    Example: "If you didn't request this email, you can safely ignore it."

  - `email_content.senderName` (string)
    Name of the sender of the email

## Response 200 fields (application/json):

  - `message` (string, required)
    Example: "Reset password email sent"

## Response 400 fields (application/json):

  - `error_code` (string)
    Enum: "auth_invalid_redirect_uri"

  - `message` (string)

## Response 403 fields (application/json):

  - `error_code` (string)
    Enum: "system_forbidden"

  - `message` (string)

## Response 404 fields (application/json):

  - `error_code` (string)
    Enum: "client_not_exist", "user_not_found", "user_email_address_missing"

  - `message` (string)

## Response 503 fields (application/json):

  - `error_code` (string)
    Enum: "system_service_unavailable"

  - `message` (string)


