OTP 验证系统
 OTP 驗證系統提供一個 API,包括 發送 OTP 和 驗證 OTP,以將 OTP 驗證應用於遊戲。
 網址
  
 認證方法
 要實現OTP發送系統提供的API,需要一個授權令牌(API KEY)。在您的遊戲在AppCenter註冊後,身份驗證令牌會自動發放。授權令牌遵循JWT(JSON Web Token: https://jwt.io)規範,不限制過期時間,因此可以繼續使用此令牌。
 
 發送 OTP
 發送 OTP 短信
       | 欄位 |  類型 |  
    | 內容類型 |  application/json |  
  | 授權 |  bearer |  
  | 主題 |  Hive 控制台 > 通知 > 簡訊 OTP > 發送資訊設定 > 註冊或修改 > 發送 ID |  
  
  如果 OTP 短信不是直接由 OTP 發送,而是由您自己發送,您可以通過回調接收發送 OTP 短信所需的信息。在 Hive 控制台 > 通知 > 短信 OTP > 發送信息設置 中,選擇 直接發送,以下數據將以 JSON 格式發送到註冊的回調 URL 的請求主體中。請參考 回調請求示例 和 回調數據。
     | 字段 |  类型 |  必需 |  描述 |  
    | to |  字符串 |  O |  接收者的电话号码 |  
  | toCountryNo |  字符串 |  O |  接收者的国家代码 |  
  | retry |  布尔值 |  X |  此字段指示您尝试通过此 API 向同一接收者发送 OTP 短信的存在。如果此字段留空,则如果在过去 5 分钟内对同一接收者调用此 API 超过一次,则设置为 true,否则设置为 false。 |  
  | lookup |  布尔值 |  X |  此字段指示是否验证 to 是否为有效的电话号码格式,默认值为 false。如果为 true,则由于验证过程,API 响应时间大约为 250 毫秒 ~ 2000 毫秒,如果为 false,通常在 200 毫秒内。 |  
  | lang |  字符串 |  X |  这是语言代码,默认值为 en。   有效的语言代码:   -  ko 
   -  en 
   -  ja 
   -  zh-cn 
   -  zh-tw 
   -  zh-hans 
   -  zh-hant 
   -  de 
   -  fr 
   -  ru 
   -  es 
   -  pt 
   -  id 
   -  th 
   -  vi 
   -  it 
   -  tr 
   -  ar 
 
  |  
  
     | 欄位 |  類型 |  
    | 內容類型 |  application/json |  
  
     | 欄位 |  類型 |  描述 |  
    | otp |  字串 |  OTP號碼 |  
  | provider |  字串 |  簡訊提供者 |  
  | expiry |  字串 |  OTP有效時間 |  
  
  //sample 1
curl --location 'https://otp.qpyou.cn/otp/send' 
--header 'Authorization: Bearer AUTH_TOKNE_VALUE' 
--header 'Topic: testTopicName' 
--header 'Content-Type: application/json' 
--data '{
    "to" : "01012345678",
    "toCountryNo" : "82",
    "lang" : "ko"
}'
//sample 2
curl --location 'https://otp.qpyou.cn/otp/send' 
--header 'Authorization: Bearer AUTH_TOKNE_VALUE' 
--header 'Topic: testTopicName' 
--header 'Content-Type: application/json' 
--data '{
    "to" : "01012345678",
    "toCountryNo" : "82",
    "lang" : "ko",
    "retry" : true,
    "lookup" : true
}'
   {
    "otp" : "123456",
    "provider" : "YOUR SMS PROVIDER",
    "expiry" : "2022-07-20T15:18:06.885195100+09:00[Asia/Seoul]"
}
  回調範例
 curl --location 'https://{your_callback_url}' 
--header 'Content-Type: application/json' 
--data '{
"to":"01012345678",
"toCountryNo":"82",
"lang":"en",
"retry":null,
"lookup":false,
"serviceName":"LocalTest",
"otp":"809881",
"provider":"DIRECTSEND",
"expiry":"2024-06-26T11:36:29.680680500+09:00[Asia/Seoul]",
"expiryTimestamp":1719369389680
}'
  回調數據資訊
    | 名稱 |  類型 |  必填 |  描述 |  
    | expiry |  字串 |  是 |  OTP 有效期(例如:2024-06-25T11:39:43.076573600+09:00[Asia/Seoul]) |  
  | expiryTimestamp |  長整數 |  是 |  OTP 有效時間戳(例如:1719283183076) |  
  | lang |  字串 |  否 |  語言代碼,默認為 en |  
  | lookup |  布林值 |  否 |  驗證 to 值是否為有效的電話號碼格式,默認為 false |  
  | otp |  字串 |  是 |  OTP 數字 |  
  | provider |  字串 |  是 |  短信提供者,固定值 DIRECTSEND 用於直接發送 |  
  | retry |  布林值 |  否 |  重試選項 |  
  | serviceName |  字串 |  是 |  在發送信息設置菜單中設置的服務名稱(英文) |  
  | to |  字串 |  是 |  收件人電話號碼 |  
  | toCountryNo |  字串 |  是 |  收件人國家代碼 |  
  
 發送 OTP 電郵
      | 欄位 |  類型 |  
    | 內容類型 |  application/json |  
  | 授權 |  bearer |  
  | 主題 |  Hive 控制台 > 通知 > 短信 OTP > 發送信息設置 > 註冊或修改 > 發送 ID |  
  
     | 字段 |  类型 |  必需 |  描述 |  
    | sender |  字符串 |  O |  发件人的电子邮件地址 |  
  | senderName |  字符串 |  O |  发件人在电子邮件上的名称 |  
  | receiver |  字符串 |  O |  收件人的电子邮件地址 |  
  | subject |  字符串 |  O |  电子邮件标题 |  
  | lang |  字符串 |  X |  这是语言代码,默认值为 en。   有效的语言代码:   -  ko 
   -  en 
   -  ja 
   -  zh-cn 
   -  zh-tw 
   -  zh-hans 
   -  zh-hant 
   -  de 
   -  fr 
   -  ru 
   -  es 
   -  pt 
   -  id 
   -  th 
   -  vi 
   -  it 
   -  tr 
   -  ar 
 
  |  
  
     | 欄位 |  類型 |  
    | 內容類型 |  application/json |  
  
     | 欄位 |  類型 |  描述 |  
    | otp |  字串 |  OTP號碼 |  
  | expiry |  字串 |  OTP有效時間 |  
  
  //sample
curl --location 'https://otp.qpyou.cn/otp/email/send' 
--header 'Authorization: bearer AUTH_TOKEN_VALUE' 
--header 'Topic: testTopicName' 
--header 'Content-Type: application/json' 
--data-raw '{
    "sender" : "staging-no-reply@withhive.com",
    "senderName" : "YOUR SERVICE NAME",
    "receiver" : "com2us@com2us.com",
    "subject" : "OTP EMAIL SEND",
    "lang" : "ko"
}'
   {
    "otp" : "123456",
    "expiry" : "2022-07-20T15:19:19.305116+09:00[Asia/Seoul]"
}
  
 驗證 OTP
      | 欄位 |  類型 |  
    | 內容類型 |  application/json |  
  | 授權 |  bearer |  
  | 主題 |  Hive 控制台 > 通知 > 簡訊 OTP > 發送資訊設定 > 註冊或修改 > 發送 ID |  
  
     | 欄位 |  類型 |  必需 |  描述 |  
    | toCountryNo |  字串 |  X |  收到的國家代碼(如果通過 SMS 接收 OTP,則必需) |  
  | to |  字串 |  X |  收到的電話號碼(如果通過 SMS 接收 OTP,則必需) |  
  | receiver |  字串 |  X |  收到的電子郵件地址(如果通過電子郵件接收 OTP,則必需) |  
  | otp |  字串 |  O |  收到的 OTP |  
  
     | 欄位 |  類型 |  
    | 內容類型 |  application/json |  
  
     | 欄位 |  類型 |  描述 |  
    | result |  布林值 |  OTP 驗證結果 |  
  
  // sample 1
curl --location 'https://otp.qpyou.cn/otp/verify' 
--header 'Authorization: bearer AUTH_TOKEN_VALUE' 
--header 'Topic: testTopicName' 
--header 'Content-Type: application/json' 
--data '{
    "toCountryNo" : "82",
    "to" : "01036012891",
    "otp" : "123456"
}'
   //sample 2
curl --location 'https://otp.qpyou.cn/otp/verify' 
--header 'Authorization: bearer AUTH_TOKEN_VALUE' 
--header 'Topic: testTopicName' 
--header 'Content-Type: application/json' 
--data-raw '{
    "receiver" : "com2us@com2us.com",
    "otp" : "123456"
}'
   {
    "result" : true (or false)
}