Check a one-time code
Check the code a user typed against a verification.
POST
https://app.usenotix.dev/api/v1/verify/checkFull access and sending access keys can call this. Key permissions lists the extra rules some calls have.
Check the code a user typed against a verification. The response is the verification's state after this check.
Body parameters
idstringrequired
The verification id returned by /v1/verify/send
codestringrequired
The code the user typed
Headers
Authorizationstringrequired
Bearer followed by your API key.
Errors
400
id or code is missing
404
No verification with this id for the calling team
Every error has the same shape. See all error codes.
curl -X POST "https://app.usenotix.dev/api/v1/verify/check" \
-H "Authorization: Bearer $NOTIX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"id": "ver_abc123",
"code": "123456"
}'
import { Notix } from "notix-js";
const notix = new Notix(process.env.NOTIX_API_KEY);
const { data, error } = await notix.verify.check({ id: "ver_123", code: "123456" });
if (data?.verified) {
// The code matched.
}
from notix import Notix
notix = Notix() # reads NOTIX_API_KEY
result, _ = notix.verify.check({"id": "ver_123", "code": "123456"})
use Notix\Notix;
$notix = new Notix(getenv('NOTIX_API_KEY'));
$result = $notix->verify->check(['id' => 'ver_123', 'code' => '123456']);
Response200
{
"id": "ver_abc123",
"to": "user@example.com",
"status": "pending",
"expiresAt": "2026-09-06T12:10:00.000Z",
"attemptsRemaining": 5,
"emailId": "cm1x8f3k20001qz7v5b9d2e4a",
"channel": "email",
"providerMessageId": "cm1x8f3k20001qz7v5b9d2e4a",
"deliveryStatus": "queued",
"deliveryReason": "Recipient number not reachable."
}