Skip to main content

앱 등록 전화번호 검증 생성

Endpoint

POST https://api.verifik.co/v2/phone-validations/app-registration

전화번호 검증은 앱 등록 과정에서 전화번호를 처리하고 검증할 수 있게 해주는 Verifik 시스템의 인스턴스입니다. 이 프로세스는 사용자 전화번호의 진위를 보장하며 SMS 또는 WhatsApp 전달 방식을 통해 안전한 확인을 제공합니다.

warning

App Registration Phone Validations를 생성할 때 사용해야 하는 JWT 토큰은 App Registration 생성 시 제공됩니다. 이 요청을 인증하려면 App Registration을 생성할 때 반환된 토큰을 사용해야 합니다.

Headers

NameValue
Content-Typeapplication/json
AuthorizationBearer <token>

Params

NameTypeRequiredDescription
projectstringYes이 전화번호 검증이 사용될 프로젝트의 고유 식별자
validationMethodstringYes검증 방법. verificationCode여야 함
phonestringYes검증할 전화번호. 처리 중 공백은 자동으로 제거됨
countryCodestringYes+XXX 형식의 전화번호 국가 코드(예: 파나마 +507, 미국 +1). + 뒤에 1~3자리 숫자 형식과 일치해야 함
typestringYes검증 유형. 다음 중 하나여야 함: validation, login, onboarding, 또는 oneTimeLink
expiresAtstringNo검증 코드의 선택적 만료일. 제공하지 않으면 기본 만료 시간이 설정됨. 형식: ISO 8601(예: 2024-12-31T23:59:59.000Z)
redirectUrlstringNo검증 후 리디렉션을 위한 선택적 URL
webhookUrlstringNo검증 알림을 위한 선택적 웹훅 URL
identityUrlstringNo선택적 신원 확인 URL
requires2FAbooleanNo2단계 인증이 필요한지 여부를 나타내는 선택적 플래그. 기본값 false
ipAddressstringNo사용자의 선택적 IP 주소

Validation Method Values

ValueDescription
verificationCode확인을 위해 전화번호로 일회용 비밀번호(OTP)를 전송합니다

Type Values

ValueDescription
onboarding사용자 등록 중 전화 확인(앱 등록에 권장)
validation일반 전화번호 검증
login사용자 로그인 중 전화 확인
oneTimeLink일회용 링크 검증

Request

const fetch = require("node-fetch");

async function run() {
const res = await fetch("https://api.verifik.co/v2/phone-validations/app-registration", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${process.env.VERIFIK_TOKEN}`,
},
body: JSON.stringify({
project: "507f1f77bcf86cd799439011",
validationMethod: "verificationCode",
phone: "62647737",
countryCode: "+507",
type: "onboarding"
}),
});
console.log(await res.json());
}

run();

Response

{
"data": {
"client": "507f1f77bcf86cd799439013",
"project": "507f1f77bcf86cd799439011",
"projectFlow": "507f1f77bcf86cd799439015",
"status": "sent",
"countryCode": "+507",
"phone": "62647737",
"phoneGateway": "whatsapp",
"otp": "$2a$10$/v55.1QmwlCdX6zD1jy51OF87POIDZzj30.UmTtp13pZv6uKm.a.m",
"expiresAt": "2024-12-02T17:15:35.000Z",
"phoneData": {},
"type": "validation",
"redirectUrl": "https://api.verifik.co",
"requires2FA": false,
"ipAddress": "172.17.0.1",
"language": "en",
"_id": "674de8df21c72be3cc42b8a7",
"updatedAt": "2024-12-02T17:05:36.788Z",
"createdAt": "2024-12-02T17:05:36.788Z",
"__v": 0,
"new": true
}
}

Notes

  • 국가 코드 형식: countryCode+XXX 형식이어야 하며, X는 숫자입니다(최대 1–3자리). 예: +1, +507, +52.
  • 전화번호: 전화번호의 공백은 처리 중 자동으로 제거됩니다.
  • OTP 보안: OTP는 보안을 위해 저장 전 bcrypt로 암호화됩니다.
  • 기본 게이트웨이: 전화 검증은 프로젝트 플로우 구성에 따라 기본적으로 WhatsApp 전달 방식을 사용합니다.
  • 자동 연결: app-registration 엔드포인트를 통해 생성되면 전화 검증이 사용자의 앱 등록 레코드에 자동으로 연결됩니다.
  • 크레딧 청구: 이 엔드포인트는 SmartEnroll 플랜에서 크레딧을 자동으로 차감합니다.
  • App Registration 필요: 이 엔드포인트에는 활성 앱 등록 세션이 필요합니다. App Registration 생성 시 반환된 토큰을 사용해야 합니다.