{"id":"511277f5-6175-422f-8922-d66da2418319","shortId":"EcHPas","kind":"skill","title":"telnyx-verify-javascript","tagline":">-","description":"<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->\n\n# Telnyx Verify - JavaScript\n\n## Installation\n\n```bash\nnpm install telnyx\n```\n\n## Setup\n\n```javascript\nimport Telnyx from 'telnyx';\n\nconst client = new Telnyx({\n  apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted\n});\n```\n\nAll examples below assume `client` is already initialized as shown above.\n\n## Error Handling\n\nAll API calls can fail with network errors, rate limits (429), validation errors (422),\nor authentication errors (401). Always handle errors in production code:\n\n```javascript\ntry {\n  const result = await client.messages.send({ to: '+13125550001', from: '+13125550002', text: 'Hello' });\n} catch (err) {\n  if (err instanceof Telnyx.APIConnectionError) {\n    console.error('Network error — check connectivity and retry');\n  } else if (err instanceof Telnyx.RateLimitError) {\n    // 429: rate limited — wait and retry with exponential backoff\n    const retryAfter = err.headers?.['retry-after'] || 1;\n    await new Promise(r => setTimeout(r, retryAfter * 1000));\n  } else if (err instanceof Telnyx.APIError) {\n    console.error(`API error ${err.status}: ${err.message}`);\n    if (err.status === 422) {\n      console.error('Validation error — check required fields and formats');\n    }\n  }\n}\n```\n\nCommon error codes: `401` invalid API key, `403` insufficient permissions,\n`404` resource not found, `422` validation error (check field formats),\n`429` rate limited (retry with exponential backoff).\n\n## Important Notes\n\n- **Phone numbers** must be in E.164 format (e.g., `+13125550001`). Include the `+` prefix and country code. No spaces, dashes, or parentheses.\n- **Pagination:** List methods return an auto-paginating iterator. Use `for await (const item of result) { ... }` to iterate through all pages automatically.\n\n## Lookup phone number data\n\nReturns information about the provided phone number.\n\n`GET /number_lookup/{phone_number}`\n\n```javascript\nconst numberLookup = await client.numberLookup.retrieve('+18665552368');\n\nconsole.log(numberLookup.data);\n```\n\nReturns: `caller_name` (object), `carrier` (object), `country_code` (string), `fraud` (string | null), `national_format` (string), `phone_number` (string), `portability` (object), `record_type` (string)\n\n## List verifications by phone number\n\n`GET /verifications/by_phone_number/{phone_number}`\n\n```javascript\nconst byPhoneNumbers = await client.verifications.byPhoneNumber.list('+13035551234');\n\nconsole.log(byPhoneNumbers.data);\n```\n\nReturns: `created_at` (string), `custom_code` (string | null), `id` (uuid), `phone_number` (string), `record_type` (enum: verification), `status` (enum: pending, accepted, invalid, expired, error), `timeout_secs` (integer), `type` (enum: sms, call, flashcall), `updated_at` (string), `verify_profile_id` (uuid)\n\n## Verify verification code by phone number\n\n`POST /verifications/by_phone_number/{phone_number}/actions/verify` — Required: `code`, `verify_profile_id`\n\n```javascript\nconst verifyVerificationCodeResponse = await client.verifications.byPhoneNumber.actions.verify(\n  '+13035551234',\n  { code: '17686', verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292' },\n);\n\nconsole.log(verifyVerificationCodeResponse.data);\n```\n\nReturns: `phone_number` (string), `response_code` (enum: accepted, rejected)\n\n## Trigger Call verification\n\n`POST /verifications/call` — Required: `phone_number`, `verify_profile_id`\n\nOptional: `custom_code` (string | null), `extension` (string | null), `timeout_secs` (integer)\n\n```javascript\nconst createVerificationResponse = await client.verifications.triggerCall({\n  phone_number: '+13035551234',\n  verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292',\n});\n\nconsole.log(createVerificationResponse.data);\n```\n\nReturns: `created_at` (string), `custom_code` (string | null), `id` (uuid), `phone_number` (string), `record_type` (enum: verification), `status` (enum: pending, accepted, invalid, expired, error), `timeout_secs` (integer), `type` (enum: sms, call, flashcall), `updated_at` (string), `verify_profile_id` (uuid)\n\n## Trigger Flash call verification\n\n`POST /verifications/flashcall` — Required: `phone_number`, `verify_profile_id`\n\nOptional: `timeout_secs` (integer)\n\n```javascript\nconst createVerificationResponse = await client.verifications.triggerFlashcall({\n  phone_number: '+13035551234',\n  verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292',\n});\n\nconsole.log(createVerificationResponse.data);\n```\n\nReturns: `created_at` (string), `custom_code` (string | null), `id` (uuid), `phone_number` (string), `record_type` (enum: verification), `status` (enum: pending, accepted, invalid, expired, error), `timeout_secs` (integer), `type` (enum: sms, call, flashcall), `updated_at` (string), `verify_profile_id` (uuid)\n\n## Trigger SMS verification\n\n`POST /verifications/sms` — Required: `phone_number`, `verify_profile_id`\n\nOptional: `custom_code` (string | null), `timeout_secs` (integer)\n\n```javascript\nconst createVerificationResponse = await client.verifications.triggerSMS({\n  phone_number: '+13035551234',\n  verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292',\n});\n\nconsole.log(createVerificationResponse.data);\n```\n\nReturns: `created_at` (string), `custom_code` (string | null), `id` (uuid), `phone_number` (string), `record_type` (enum: verification), `status` (enum: pending, accepted, invalid, expired, error), `timeout_secs` (integer), `type` (enum: sms, call, flashcall), `updated_at` (string), `verify_profile_id` (uuid)\n\n## Retrieve verification\n\n`GET /verifications/{verification_id}`\n\n```javascript\nconst verification = await client.verifications.retrieve('12ade33a-21c0-473b-b055-b3c836e1c292');\n\nconsole.log(verification.data);\n```\n\nReturns: `created_at` (string), `custom_code` (string | null), `id` (uuid), `phone_number` (string), `record_type` (enum: verification), `status` (enum: pending, accepted, invalid, expired, error), `timeout_secs` (integer), `type` (enum: sms, call, flashcall), `updated_at` (string), `verify_profile_id` (uuid)\n\n## Verify verification code by ID\n\n`POST /verifications/{verification_id}/actions/verify`\n\nOptional: `code` (string), `status` (enum: accepted, rejected)\n\n```javascript\nconst verifyVerificationCodeResponse = await client.verifications.actions.verify(\n  '12ade33a-21c0-473b-b055-b3c836e1c292',\n);\n\nconsole.log(verifyVerificationCodeResponse.data);\n```\n\nReturns: `phone_number` (string), `response_code` (enum: accepted, rejected)\n\n## List all Verify profiles\n\nGets a paginated list of Verify profiles.\n\n`GET /verify_profiles`\n\n```javascript\n// Automatically fetches more pages as needed.\nfor await (const verifyProfile of client.verifyProfiles.list()) {\n  console.log(verifyProfile.id);\n}\n```\n\nReturns: `call` (object), `created_at` (string), `flashcall` (object), `id` (uuid), `language` (string), `name` (string), `rcs` (object), `record_type` (enum: verification_profile), `sms` (object), `updated_at` (string), `webhook_failover_url` (string), `webhook_url` (string)\n\n## Create a Verify profile\n\nCreates a new Verify profile to associate verifications with.\n\n`POST /verify_profiles` — Required: `name`\n\nOptional: `call` (object), `flashcall` (object), `language` (string), `rcs` (object), `sms` (object), `webhook_failover_url` (string), `webhook_url` (string)\n\n```javascript\nconst verifyProfileData = await client.verifyProfiles.create({ name: 'Test Profile' });\n\nconsole.log(verifyProfileData.data);\n```\n\nReturns: `call` (object), `created_at` (string), `flashcall` (object), `id` (uuid), `language` (string), `name` (string), `rcs` (object), `record_type` (enum: verification_profile), `sms` (object), `updated_at` (string), `webhook_failover_url` (string), `webhook_url` (string)\n\n## Retrieve Verify profile message templates\n\nList all Verify profile message templates.\n\n`GET /verify_profiles/templates`\n\n```javascript\nconst response = await client.verifyProfiles.retrieveTemplates();\n\nconsole.log(response.data);\n```\n\nReturns: `id` (uuid), `text` (string)\n\n## Create message template\n\nCreate a new Verify profile message template.\n\n`POST /verify_profiles/templates` — Required: `text`\n\n```javascript\nconst messageTemplate = await client.verifyProfiles.createTemplate({\n  text: 'Your {{app_name}} verification code is: {{code}}.',\n});\n\nconsole.log(messageTemplate.data);\n```\n\nReturns: `id` (uuid), `text` (string)\n\n## Update message template\n\nUpdate an existing Verify profile message template.\n\n`PATCH /verify_profiles/templates/{template_id}` — Required: `text`\n\n```javascript\nconst messageTemplate = await client.verifyProfiles.updateTemplate(\n  '12ade33a-21c0-473b-b055-b3c836e1c292',\n  { text: 'Your {{app_name}} verification code is: {{code}}.' },\n);\n\nconsole.log(messageTemplate.data);\n```\n\nReturns: `id` (uuid), `text` (string)\n\n## Retrieve Verify profile\n\nGets a single Verify profile.\n\n`GET /verify_profiles/{verify_profile_id}`\n\n```javascript\nconst verifyProfileData = await client.verifyProfiles.retrieve(\n  '12ade33a-21c0-473b-b055-b3c836e1c292',\n);\n\nconsole.log(verifyProfileData.data);\n```\n\nReturns: `call` (object), `created_at` (string), `flashcall` (object), `id` (uuid), `language` (string), `name` (string), `rcs` (object), `record_type` (enum: verification_profile), `sms` (object), `updated_at` (string), `webhook_failover_url` (string), `webhook_url` (string)\n\n## Update Verify profile\n\n`PATCH /verify_profiles/{verify_profile_id}`\n\nOptional: `call` (object), `flashcall` (object), `language` (string), `name` (string), `rcs` (object), `sms` (object), `webhook_failover_url` (string), `webhook_url` (string)\n\n```javascript\nconst verifyProfileData = await client.verifyProfiles.update(\n  '12ade33a-21c0-473b-b055-b3c836e1c292',\n);\n\nconsole.log(verifyProfileData.data);\n```\n\nReturns: `call` (object), `created_at` (string), `flashcall` (object), `id` (uuid), `language` (string), `name` (string), `rcs` (object), `record_type` (enum: verification_profile), `sms` (object), `updated_at` (string), `webhook_failover_url` (string), `webhook_url` (string)\n\n## Delete Verify profile\n\n`DELETE /verify_profiles/{verify_profile_id}`\n\n```javascript\nconst verifyProfileData = await client.verifyProfiles.delete(\n  '12ade33a-21c0-473b-b055-b3c836e1c292',\n);\n\nconsole.log(verifyProfileData.data);\n```\n\nReturns: `call` (object), `created_at` (string), `flashcall` (object), `id` (uuid), `language` (string), `name` (string), `rcs` (object), `record_type` (enum: verification_profile), `sms` (object), `updated_at` (string), `webhook_failover_url` (string), `webhook_url` (string)","tags":["telnyx","verify","javascript","team-telnyx","agent-skills","ai-coding-agent","claude-code","cpaas","cursor","iot","llm","sdk"],"capabilities":["skill","source-team-telnyx","skill-telnyx-verify-javascript","topic-agent-skills","topic-ai-coding-agent","topic-claude-code","topic-cpaas","topic-cursor","topic-iot","topic-llm","topic-sdk","topic-sip","topic-sms","topic-speech-to-text","topic-telephony"],"categories":["ai"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/team-telnyx/ai/telnyx-verify-javascript","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add team-telnyx/ai","source_repo":"https://github.com/team-telnyx/ai","install_from":"skills.sh"}},"qualityScore":"0.533","qualityRationale":"deterministic score 0.53 from registry signals: · indexed on github topic:agent-skills · 167 github stars · SKILL.md body (10,527 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T00:54:49.866Z","embedding":null,"createdAt":"2026-04-18T22:08:05.695Z","updatedAt":"2026-04-22T00:54:49.866Z","lastSeenAt":"2026-04-22T00:54:49.866Z","tsv":"'+13035551234':279,342,394,468,545 '+13125550001':80,185 '+13125550002':82 '+18665552368':239 '/actions/verify':331,663 '/number_lookup':231 '/verifications':599,660 '/verifications/by_phone_number':271,328 '/verifications/call':369 '/verifications/flashcall':450 '/verifications/sms':523 '/verify_profiles':705,768,942,996,1070 '/verify_profiles/templates':844,868,902 '1':118 '1000':126 '12ade33a':349,399,473,550,608,677,913,952,1026,1080 '12ade33a-21c0-473b-b055-b3c836e1c292':348,398,472,549,607,676,912,951,1025,1079 '17686':344 '21c0':350,400,474,551,609,678,914,953,1027,1081 '401':66,151 '403':155 '404':158 '422':62,139,162 '429':59,103,168 '473b':351,401,475,552,610,679,915,954,1028,1082 'accept':302,363,426,500,577,635,669,691 'alreadi':42 'alway':67 'api':26,50,133,153 'apikey':23 'app':878,920 'associ':764 'assum':39 'authent':64 'auto':203 'auto-pagin':202 'automat':218,707 'await':77,119,208,237,277,340,390,464,541,605,674,714,792,848,874,910,949,1023,1077 'b055':352,402,476,553,611,680,916,955,1029,1083 'b3c836e1c292':353,403,477,554,612,681,917,956,1030,1084 'backoff':111,174 'bash':9 'byphonenumb':276 'byphonenumbers.data':281 'call':51,312,366,436,447,510,587,645,722,772,800,960,1001,1034,1088 'caller':243 'carrier':246 'catch':85 'check':94,143,165 'client':20,40 'client.messages.send':78 'client.numberlookup.retrieve':238 'client.verifications.actions.verify':675 'client.verifications.byphonenumber.actions.verify':341 'client.verifications.byphonenumber.list':278 'client.verifications.retrieve':606 'client.verifications.triggercall':391 'client.verifications.triggerflashcall':465 'client.verifications.triggersms':542 'client.verifyprofiles.create':793 'client.verifyprofiles.createtemplate':875 'client.verifyprofiles.delete':1078 'client.verifyprofiles.list':718 'client.verifyprofiles.retrieve':950 'client.verifyprofiles.retrievetemplates':849 'client.verifyprofiles.update':1024 'client.verifyprofiles.updatetemplate':911 'code':72,150,191,249,287,323,333,343,361,378,411,485,532,562,620,656,665,689,881,883,923,925 'common':148 'connect':95 'console.error':91,132,140 'console.log':240,280,354,404,478,555,613,682,719,797,850,884,926,957,1031,1085 'const':19,75,112,209,235,275,338,388,462,539,603,672,715,790,846,872,908,947,1021,1075 'countri':190,248 'creat':283,407,481,558,616,724,754,758,802,857,860,962,1036,1090 'createverificationrespons':389,463,540 'createverificationresponse.data':405,479,556 'custom':286,377,410,484,531,561,619 'dash':194 'data':222 'default':31 'delet':1066,1069 'e.164':182 'e.g':184 'els':98,127 'enum':297,300,310,362,421,424,434,495,498,508,572,575,585,630,633,643,668,690,739,817,977,1051,1105 'err':86,88,100,129 'err.headers':114 'err.message':136 'err.status':135,138 'error':47,56,61,65,69,93,134,142,149,164,305,429,503,580,638 'exampl':37 'exist':896 'expir':304,428,502,579,637 'exponenti':110,173 'extens':381 'fail':53 'failov':748,783,826,986,1014,1060,1114 'fetch':708 'field':145,166 'flash':446 'flashcal':313,437,511,588,646,727,774,805,965,1003,1039,1093 'format':147,167,183,255 'found':161 'fraud':251 'get':230,270,598,697,704,843,936,941 'handl':48,68 'hello':84 'id':290,319,336,347,375,397,414,443,456,471,488,517,529,548,565,594,601,623,652,658,662,729,807,853,887,904,929,945,967,999,1041,1073,1095 'import':15,175 'includ':186 'inform':224 'initi':43 'instal':8,11 'instanceof':89,101,130 'insuffici':156 'integ':308,386,432,460,506,537,583,641 'invalid':152,303,427,501,578,636 'item':210 'iter':205,214 'javascript':4,7,14,73,234,274,337,387,461,538,602,671,706,789,845,871,907,946,1020,1074 'key':27,154 'languag':731,776,809,969,1005,1043,1097 'limit':58,105,170 'list':198,265,693,700,837 'lookup':219 'messag':835,841,858,865,892,899 'messagetempl':873,909 'messagetemplate.data':885,927 'method':199 'must':179 'name':244,733,770,794,811,879,921,971,1007,1045,1099 'nation':254 'need':712 'network':55,92 'new':21,120,760,862 'note':176 'npm':10 'null':253,289,380,383,413,487,534,564,622 'number':178,221,229,233,258,269,273,293,326,330,358,372,393,417,453,467,491,526,544,568,626,686 'numberlookup':236 'numberlookup.data':241 'object':245,247,261,723,728,736,743,773,775,779,781,801,806,814,821,961,966,974,981,1002,1004,1010,1012,1035,1040,1048,1055,1089,1094,1102,1109 'omit':35 'option':376,457,530,664,771,1000 'page':217,710 'pagin':197,204,699 'parenthes':196 'patch':901,995 'pend':301,425,499,576,634 'permiss':157 'phone':177,220,228,232,257,268,272,292,325,329,357,371,392,416,452,466,490,525,543,567,625,685 'portabl':260 'post':327,368,449,522,659,767,867 'prefix':188 'process.env':24 'product':71 'profil':318,335,346,374,396,442,455,470,516,528,547,593,651,696,703,741,757,762,796,819,834,840,864,898,935,940,944,979,994,998,1053,1068,1072,1107 'promis':121 'provid':227 'r':122,124 'rate':57,104,169 'rcs':735,778,813,973,1009,1047,1101 'record':262,295,419,493,570,628,737,815,975,1049,1103 'reject':364,670,692 'requir':144,332,370,451,524,769,869,905 'resourc':159 'respons':360,688,847 'response.data':851 'result':76,212 'retri':97,108,116,171 'retriev':596,832,933 'retry-aft':115 'retryaft':113,125 'return':200,223,242,282,356,406,480,557,615,684,721,799,852,886,928,959,1033,1087 'sec':307,385,431,459,505,536,582,640 'settimeout':123 'setup':13 'shown':45 'singl':938 'skill' 'skill-telnyx-verify-javascript' 'sms':311,435,509,520,586,644,742,780,820,980,1011,1054,1108 'source-team-telnyx' 'space':193 'status':299,423,497,574,632,667 'string':250,252,256,259,264,285,288,294,316,359,379,382,409,412,418,440,483,486,492,514,533,560,563,569,591,618,621,627,649,666,687,726,732,734,746,750,753,777,785,788,804,810,812,824,828,831,856,890,932,964,970,972,984,988,991,1006,1008,1016,1019,1038,1044,1046,1058,1062,1065,1092,1098,1100,1112,1116,1119 'telnyx':2,5,12,16,18,22,25 'telnyx-verify-javascript':1 'telnyx.apiconnectionerror':90 'telnyx.apierror':131 'telnyx.ratelimiterror':102 'templat':836,842,859,866,893,900,903 'test':795 'text':83,855,870,876,889,906,918,931 'timeout':306,384,430,458,504,535,581,639 'topic-agent-skills' 'topic-ai-coding-agent' 'topic-claude-code' 'topic-cpaas' 'topic-cursor' 'topic-iot' 'topic-llm' 'topic-sdk' 'topic-sip' 'topic-sms' 'topic-speech-to-text' 'topic-telephony' 'tri':74 'trigger':365,445,519 'type':263,296,309,420,433,494,507,571,584,629,642,738,816,976,1050,1104 'updat':314,438,512,589,647,744,822,891,894,982,992,1056,1110 'url':749,752,784,787,827,830,987,990,1015,1018,1061,1064,1115,1118 'use':206 'uuid':291,320,415,444,489,518,566,595,624,653,730,808,854,888,930,968,1042,1096 'valid':60,141,163 'verif':266,298,322,367,422,448,496,521,573,597,600,604,631,655,661,740,765,818,880,922,978,1052,1106 'verifi':3,6,317,321,334,345,373,395,441,454,469,515,527,546,592,650,654,695,702,756,761,833,839,863,897,934,939,943,993,997,1067,1071 'verification.data':614 'verifyprofil':716 'verifyprofile.id':720 'verifyprofiledata':791,948,1022,1076 'verifyprofiledata.data':798,958,1032,1086 'verifyverificationcoderespons':339,673 'verifyverificationcoderesponse.data':355,683 'wait':106 'webhook':747,751,782,786,825,829,985,989,1013,1017,1059,1063,1113,1117","prices":[{"id":"c306e69d-a728-4990-91f1-c3749e377429","listingId":"511277f5-6175-422f-8922-d66da2418319","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"team-telnyx","category":"ai","install_from":"skills.sh"},"createdAt":"2026-04-18T22:08:05.695Z"}],"sources":[{"listingId":"511277f5-6175-422f-8922-d66da2418319","source":"github","sourceId":"team-telnyx/ai/telnyx-verify-javascript","sourceUrl":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-verify-javascript","isPrimary":false,"firstSeenAt":"2026-04-18T22:08:05.695Z","lastSeenAt":"2026-04-22T00:54:49.866Z"}],"details":{"listingId":"511277f5-6175-422f-8922-d66da2418319","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"team-telnyx","slug":"telnyx-verify-javascript","github":{"repo":"team-telnyx/ai","stars":167,"topics":["agent-skills","ai","ai-coding-agent","claude-code","cpaas","cursor","iot","llm","sdk","sip","sms","speech-to-text","telephony","telnyx","tts","twilio-migration","voice-agents","voice-ai","webrtc","windsurf"],"license":"mit","html_url":"https://github.com/team-telnyx/ai","pushed_at":"2026-04-21T22:09:49Z","description":"Official one-stop shop for AI Agents and developers building with Telnyx.","skill_md_sha":"2537b45f06703477907d46d8e107002a2f161c46","skill_md_path":"skills/telnyx-verify-javascript/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/team-telnyx/ai/tree/main/skills/telnyx-verify-javascript"},"layout":"multi","source":"github","category":"ai","frontmatter":{"name":"telnyx-verify-javascript","description":">-"},"skills_sh_url":"https://skills.sh/team-telnyx/ai/telnyx-verify-javascript"},"updatedAt":"2026-04-22T00:54:49.866Z"}}