---
title: "Complete Password Provider Mfa"
method: POST
path: "/v2/link/provider/password/{provider}/complete_mfa"
tags: ["link"]
---

# Complete Password Provider Mfa

`POST /v2/link/provider/password/{provider}/complete_mfa`

This connects auth providers that are password based.

## Path parameters

- `provider` 'whoop' | 'renpho' | 'peloton' | 'zwift' | 'eight_sleep' | 'beurer_api' | 'dexcom' | 'hammerhead' | 'my_fitness_pal' | 'kardia' | 'abbott_libreview' | 'tandem_source', required — ℹ️ This enum is non-exhaustive.

## Headers

- `x-vital-link-token` string, nullable

## Request body

- CompletePasswordProviderMFABody
  - `mfa_code` string, required

## Response `200`

Successful Response

- ProviderLinkResponse
  - `state` 'success' | 'error' | 'pending_provider_mfa', required — ℹ️ This enum is non-exhaustive.
  - `redirect_url` string, nullable — The redirect URL you supplied when creating the Link Token (via `POST /v2/link/token`).
  - `error_type` 'invalid_token' | 'token_expired' | 'token_not_validated' | 'token_consumed' | 'provider_credential_error' | 'provider_password_expired' | 'provider_api_error' | 'unsupported_region' | 'duplicate_connection' | 'required_scopes_not_granted' | 'incorrect_mfa_code' | 'user_cancelled', nullable — The Link Error Type. This field is populated only when state is `error`. ℹ️ This enum is non-exhaustive.
  - `error` string, nullable — A developer-readable debug description of the Link Error. This field is populated only when state is `error`.
  - `provider_mfa` ProviderMFARequest
    - `method` 'sms' | 'email', required — The MFA method requested by the password provider to complete authentication. ℹ️ This enum is non-exhaustive.
    - `hint` string, required — The MFA hint provided by the password provider, e.g., the redacted phone number.
  - `provider` 'whoop' | 'renpho' | 'peloton' | 'zwift' | 'eight_sleep' | 'beurer_api' | 'dexcom' | 'hammerhead' | 'my_fitness_pal' | 'kardia' | 'abbott_libreview' | 'tandem_source', required — ℹ️ This enum is non-exhaustive.
  - `connected` boolean, required
  - `provider_id` string, nullable, required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/tryvital/apis/junction-api.md) · [All operations](https://skmtc.dev/tryvital/apis/junction-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/tryvital/junction-api/revisions/41d2df33953d/schema)
