---
title: "Changes to Verify a challenge on a factor."
method: POST
path: "/factors/{factorId}/verify"
---

# Changes to Verify a challenge on a factor.

`POST /factors/{factorId}/verify`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 9 of 51 revisions.

- **2026-04-28** `d3f7d49a0bd6`: 2 warning
- **2025-09-24** `a222d9459767`: 1 warning, 2 info
- **2025-02-07** `4d0f1a6c1ad9`: 1 breaking, 1 info
- **2024-10-11** `f89bf040698f`: 1 breaking, 4 info
- **2024-08-01** `b33a9ea8493e`: 1 info
- **2024-05-08** `f46045187c80`: 10 info
- **2023-12-13** `77f9aeb9339a`: 2 info
- **2023-07-25** `cf0d742e0498`: 1 info
- **2023-02-01** `144a34ca6d74`: 20 warning

## Changes

- **2026-04-28** `d3f7d49a0bd6`: 2 warning
  - removed the request property `webauthn/rpId`
  - removed the request property `webauthn/rpOrigins`
- **2025-09-24** `a222d9459767`: 1 warning, 2 info
  - removed the optional property `user/factors/items/web_authn_credential` from the response with the `200` status
  - added the new optional request property `webauthn`
  - added the optional property `user/factors/items/webauthn_credential` to the response with the `200` status
- **2025-02-07** `4d0f1a6c1ad9`: 1 breaking, 1 info
  - the `user/factors/items/web_authn_credential` response's property type changed from `jsonb` to `string` for status `200`
  - added the optional property `error_code` to the response with the `400` status
- **2024-10-11** `f89bf040698f`: 1 breaking, 4 info
  - the response property `user/factors/items/phone` became nullable for the status `200`
  - added the optional property `user/factors/items/created_at` to the response with the `200` status
  - added the optional property `user/factors/items/last_challenged_at` to the response with the `200` status
  - added the optional property `user/factors/items/updated_at` to the response with the `200` status
  - added the optional property `user/factors/items/web_authn_credential` to the response with the `200` status
- **2024-08-01** `b33a9ea8493e`: 1 info
  - added the optional property `user/factors/items/phone` to the response with the `200` status
- **2024-05-08** `f46045187c80`: 10 info
  - added the optional property `user/identities/items/created_at` to the response with the `200` status
  - added the optional property `user/identities/items/email` to the response with the `200` status
  - added the optional property `user/identities/items/id` to the response with the `200` status
  - added the optional property `user/identities/items/identity_data` to the response with the `200` status
  - added the optional property `user/identities/items/identity_id` to the response with the `200` status
  - added the optional property `user/identities/items/last_sign_in_at` to the response with the `200` status
  - added the optional property `user/identities/items/provider` to the response with the `200` status
  - added the optional property `user/identities/items/updated_at` to the response with the `200` status
  - added the optional property `user/identities/items/user_id` to the response with the `200` status
  - added the optional property `user/is_anonymous` to the response with the `200` status
- **2023-12-13** `77f9aeb9339a`: 2 info
  - added the optional property `weak_password` to the response with the `200` status
  - added the optional property `weak_password` to the response with the `400` status
- **2023-07-25** `cf0d742e0498`: 1 info
  - added the optional property `expires_at` to the response with the `200` status
- **2023-02-01** `144a34ca6d74`: 20 warning
  - removed the request property `webauthn`
  - removed the optional property `error_code` from the response with the `400` status
  - removed the optional property `expires_at` from the response with the `200` status
  - removed the optional property `user/factors/items/created_at` from the response with the `200` status
  - removed the optional property `user/factors/items/last_challenged_at` from the response with the `200` status
  - removed the optional property `user/factors/items/phone` from the response with the `200` status
  - removed the optional property `user/factors/items/updated_at` from the response with the `200` status
  - removed the optional property `user/factors/items/webauthn_credential` from the response with the `200` status
  - removed the optional property `user/identities/items/created_at` from the response with the `200` status
  - removed the optional property `user/identities/items/email` from the response with the `200` status
  - removed the optional property `user/identities/items/id` from the response with the `200` status
  - removed the optional property `user/identities/items/identity_data` from the response with the `200` status
  - removed the optional property `user/identities/items/identity_id` from the response with the `200` status
  - removed the optional property `user/identities/items/last_sign_in_at` from the response with the `200` status
  - removed the optional property `user/identities/items/provider` from the response with the `200` status
  - removed the optional property `user/identities/items/updated_at` from the response with the `200` status
  - removed the optional property `user/identities/items/user_id` from the response with the `200` status
  - removed the optional property `user/is_anonymous` from the response with the `200` status
  - removed the optional property `weak_password` from the response with the `200` status
  - removed the optional property `weak_password` from the response with the `400` status

---

[Operation](https://skmtc.dev/supabase/apis/supabase-auth-rest-api/docs/factors/:factorId/verify/post.md) - [API](https://skmtc.dev/supabase/apis/supabase-auth-rest-api.md) - [Page](https://skmtc.dev/supabase/apis/supabase-auth-rest-api/changes/factors/:factorId/verify/post)
