<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://docs.callproof.com/index.php?action=history&amp;feed=atom&amp;title=Check_Verification_Code</id>
	<title>Check Verification Code - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://docs.callproof.com/index.php?action=history&amp;feed=atom&amp;title=Check_Verification_Code"/>
	<link rel="alternate" type="text/html" href="http://docs.callproof.com/index.php?title=Check_Verification_Code&amp;action=history"/>
	<updated>2026-07-15T14:18:48Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>http://docs.callproof.com/index.php?title=Check_Verification_Code&amp;diff=1552&amp;oldid=prev</id>
		<title>Ashley DeBon: Created page with &quot;== Verify Two-Factor Authentication Code ==  === Base URL === https://apimobile.callproof.com  === Endpoint === /api/v1/check-verification-code  === Purpose === Validates a si...&quot;</title>
		<link rel="alternate" type="text/html" href="http://docs.callproof.com/index.php?title=Check_Verification_Code&amp;diff=1552&amp;oldid=prev"/>
		<updated>2026-07-15T12:25:03Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;== Verify Two-Factor Authentication Code ==  === Base URL === https://apimobile.callproof.com  === Endpoint === /api/v1/check-verification-code  === Purpose === Validates a si...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Verify Two-Factor Authentication Code ==&lt;br /&gt;
&lt;br /&gt;
=== Base URL ===&lt;br /&gt;
https://apimobile.callproof.com&lt;br /&gt;
&lt;br /&gt;
=== Endpoint ===&lt;br /&gt;
/api/v1/check-verification-code&lt;br /&gt;
&lt;br /&gt;
=== Purpose ===&lt;br /&gt;
Validates a six-digit verification code previously sent to a registered email address.&lt;br /&gt;
&lt;br /&gt;
When verification succeeds, the supplied mobile device is recognized as having completed two-factor authentication. This allows the user to access APIs protected by two-factor verification.&lt;br /&gt;
&lt;br /&gt;
The verification code remains valid for three minutes.&lt;br /&gt;
&lt;br /&gt;
=== HTTP Method ===&lt;br /&gt;
POST&lt;br /&gt;
&lt;br /&gt;
=== Headers ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Header !! Required !! Description&lt;br /&gt;
|-&lt;br /&gt;
| Authorization || Yes || Bearer access token.&lt;br /&gt;
|-&lt;br /&gt;
| Content-Type || Yes || &amp;lt;code&amp;gt;application/x-www-form-urlencoded&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;application/json&amp;lt;/code&amp;gt;.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Security ===&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Yes&amp;#039;&amp;#039;&amp;#039; – Requires Bearer Token authentication.&lt;br /&gt;
* The access token must be active and unexpired.&lt;br /&gt;
* The authenticated user and associated company account must be active.&lt;br /&gt;
* Completed two-factor verification is not required because this endpoint performs the verification.&lt;br /&gt;
&lt;br /&gt;
=== Parameters ===&lt;br /&gt;
==== Request Body Fields ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Parameter !! Type !! Required !! Description&lt;br /&gt;
|-&lt;br /&gt;
| email || string || Yes || The registered email address to which the verification code was sent.&lt;br /&gt;
|-&lt;br /&gt;
| verification_code || string || Yes || The six-digit verification code received by email.&lt;br /&gt;
|-&lt;br /&gt;
| device_id_app || string || Yes || The mobile device notification token used to associate successful verification with the device.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Successful Response (200) ===&lt;br /&gt;
Confirms that the verification code is valid and that two-factor authentication was completed successfully for the supplied device.&lt;br /&gt;
&lt;br /&gt;
The verified device may remain recognized for up to one year.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Response Field !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| clientStatusCode || integer || Business-level response status. Successful verification returns &amp;lt;code&amp;gt;200&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| user_id || integer || The authenticated user&amp;#039;s unique identifier.&lt;br /&gt;
|-&lt;br /&gt;
| company_id || integer || The company associated with the authenticated user.&lt;br /&gt;
|-&lt;br /&gt;
| message || string || Confirmation message. The successful value is &amp;lt;code&amp;gt;Code Verified Successfully&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| uri || string || The URL of the verification request.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Error Responses ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! HTTP Status Code !! Client Status Code !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
| 200 || 401 || The required &amp;lt;code&amp;gt;email&amp;lt;/code&amp;gt; field was not supplied.&lt;br /&gt;
|-&lt;br /&gt;
| 200 || 401 || The required &amp;lt;code&amp;gt;verification_code&amp;lt;/code&amp;gt; field was not supplied.&lt;br /&gt;
|-&lt;br /&gt;
| 200 || 401 || The required &amp;lt;code&amp;gt;device_id_app&amp;lt;/code&amp;gt; field was not supplied.&lt;br /&gt;
|-&lt;br /&gt;
| 200 || 401 || The supplied email address is not registered.&lt;br /&gt;
|-&lt;br /&gt;
| 200 || 401 || The verification code does not match the supplied email address.&lt;br /&gt;
|-&lt;br /&gt;
| 200 || 400 || The verification code is more than three minutes old.&lt;br /&gt;
|-&lt;br /&gt;
| 200 || 400 || The verification result could not be recorded.&lt;br /&gt;
|-&lt;br /&gt;
| 401 || 401 || The Bearer token is missing or invalid.&lt;br /&gt;
|-&lt;br /&gt;
| 401 || 401 || The access token has expired.&lt;br /&gt;
|-&lt;br /&gt;
| 401 || 401 || The authenticated user or company account is disabled.&lt;br /&gt;
|-&lt;br /&gt;
| 401 || 401 || A required client application update must be installed.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Error Response Fields ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Response Field !! Type !! Description&lt;br /&gt;
|-&lt;br /&gt;
| clientStatusCode || integer || The business-level error status, commonly &amp;lt;code&amp;gt;400&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;401&amp;lt;/code&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| error.code || integer || The business error code.&lt;br /&gt;
|-&lt;br /&gt;
| error.message || string || A plain-language explanation of the verification failure.&lt;br /&gt;
|-&lt;br /&gt;
| uri || string || The URL of the request.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Common Error Messages ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Message !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
| Email Does Not Exist || The supplied email address is not registered.&lt;br /&gt;
|-&lt;br /&gt;
| Invalid code. Please try again. || The supplied code does not match the email address.&lt;br /&gt;
|-&lt;br /&gt;
| Verification Code Expired! || The code is more than three minutes old.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==== Common Error Codes ====&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Error Code !! Meaning&lt;br /&gt;
|-&lt;br /&gt;
| 1500 || Authentication, validation, email lookup, or code verification failed.&lt;br /&gt;
|-&lt;br /&gt;
| 1800 || The user or company account is disabled.&lt;br /&gt;
|-&lt;br /&gt;
| 8000 || The access token has expired.&lt;br /&gt;
|-&lt;br /&gt;
| 9000 || A required client application update is available.&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Ashley DeBon</name></author>
		
	</entry>
</feed>