Agent skill

Telnyx Verify Javascript

by team-telnyx in team-telnyx/ai

Look up phone number information (carrier, type, caller name) and verify users via SMS/voice OTP.

MITAuto-check passed

Install Telnyx Verify Javascript

skills CLI
$ npx skills add team-telnyx/ai --skill telnyx-verify-javascript -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install team-telnyx/ai telnyx-verify-javascript --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/team-telnyx/ai.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/telnyx-verify-javascript .claude/skills/telnyx-verify-javascript && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
telnyx-verify-javascript
GitHub stars
220
Token cost
~3k tokens
SKILL.md length
735 words
Files
1
Skills in repo
26
Repo updated
First seen
Licence
MIT

At a glance

Look up phone number information (carrier, type, caller name) and verify users via SMS/voice OTP.

  • Phone verification and data enrichment
  • SKILL.md covers Installation, Setup, Error Handling and Important Notes, plus 17 more sections
  • Calls npm; needs TELNYX_API_KEY

What it does

Telnyx Verify Javascript is an agent skill from team-telnyx/ai. Look up phone number information (carrier, type, caller name) and verify users via SMS/voice OTP. Use for phone verification and data enrichment. This skill provides JavaScript SDK examples.

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It works with JavaScript. The repository describes itself as: Official one-stop shop for AI Agents and developers building with Telnyx. The licence is MIT.

When your agent uses it

  • Phone verification and data enrichment

Example prompts

  • “/telnyx-verify-javascript”

Requirements

  • Node.js
  • A credential in TELNYX_API_KEY

What it can do on your machine

Read from SKILL.md and the folder at commit 4d2ace0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • TELNYX_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Telnyx Verify Javascript loads about 3k tokens when it runs. Until then it costs about 54 tokens; SKILL.md has 735 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~54
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from team-telnyx/ai at commit 4d2ace0, republished under its MIT licence (© team-telnyx). 735 words, ~3,050 tokens.

Download SKILL.mdSave it as .claude/skills/telnyx-verify-javascript/SKILL.md (or your agent's skills folder).
name
telnyx-verify-javascript
description
Look up phone number information (carrier, type, caller name) and verify users via SMS/voice OTP. Use for phone verification and data enrichment. This skill provides JavaScript SDK examples.
metadata.author
telnyx
metadata.product
verify
metadata.language
javascript
metadata.generated_by
telnyx-openapi-pipeline
<!-- Auto-generated from Telnyx OpenAPI specs. Do not edit. -->

Telnyx Verify - JavaScript

Installation

bash
npm install telnyx@6.74.2

Setup

javascript
import Telnyx from 'telnyx';

const client = new Telnyx({
  apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});

All examples below assume client is already initialized as shown above.

Error Handling

All API calls can fail with network errors, rate limits (429), validation errors (422), or authentication errors (401). Always handle errors in production code:

javascript
try {
  const result = await client.messages.send({ to: '+13125550001', from: '+13125550002', text: 'Hello' });
} catch (err) {
  if (err instanceof Telnyx.APIConnectionError) {
    console.error('Network error — check connectivity and retry');
  } else if (err instanceof Telnyx.RateLimitError) {
    // 429: rate limited — wait and retry with exponential backoff
    const retryAfter = err.headers?.['retry-after'] || 1;
    await new Promise(r => setTimeout(r, retryAfter * 1000));
  } else if (err instanceof Telnyx.APIError) {
    console.error(`API error ${err.status}: ${err.message}`);
    if (err.status === 422) {
      console.error('Validation error — check required fields and formats');
    }
  }
}

Common error codes: 401 invalid API key, 403 insufficient permissions, 404 resource not found, 422 validation error (check field formats), 429 rate limited (retry with exponential backoff).

Important Notes

  • Phone numbers must be in E.164 format (e.g., +13125550001). Include the + prefix and country code. No spaces, dashes, or parentheses.
  • Pagination: List methods return an auto-paginating iterator. Use for await (const item of result) { ... } to iterate through all pages automatically.

Lookup phone number data

Returns information about the provided phone number.

GET /number_lookup/{phone_number}

javascript
const numberLookup = await client.numberLookup.retrieve('+18665552368');

console.log(numberLookup.data);

Returns: caller_name (object), carrier (object), country_code (string), fraud (string | null), national_format (string), phone_number (string), portability (object), record_type (string)

List verifications by phone number

GET /verifications/by_phone_number/{phone_number}

javascript
const byPhoneNumbers = await client.verifications.byPhoneNumber.list('+13035551234');

console.log(byPhoneNumbers.data);

Returns: 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, whatsapp), updated_at (string), verify_profile_id (uuid)

Verify verification code by phone number

POST /verifications/by_phone_number/{phone_number}/actions/verify — Required: code, verify_profile_id

javascript
const verifyVerificationCodeResponse = await client.verifications.byPhoneNumber.actions.verify(
  '+13035551234',
  { code: '17686', verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292' },
);

console.log(verifyVerificationCodeResponse.data);

Returns: phone_number (string), response_code (enum: accepted, rejected)

Trigger Call verification

POST /verifications/call — Required: phone_number, verify_profile_id

Optional: custom_code (string | null), extension (string | null), timeout_secs (integer)

javascript
const createVerificationResponse = await client.verifications.triggerCall({
  phone_number: '+13035551234',
  verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292',
});

console.log(createVerificationResponse.data);

Returns: 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, whatsapp), updated_at (string), verify_profile_id (uuid)

Trigger Flash call verification

POST /verifications/flashcall — Required: phone_number, verify_profile_id

Optional: timeout_secs (integer)

javascript
const createVerificationResponse = await client.verifications.triggerFlashcall({
  phone_number: '+13035551234',
  verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292',
});

console.log(createVerificationResponse.data);

Returns: 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, whatsapp), updated_at (string), verify_profile_id (uuid)

Trigger SMS verification

POST /verifications/sms — Required: phone_number, verify_profile_id

Optional: custom_code (string | null), timeout_secs (integer)

javascript
const createVerificationResponse = await client.verifications.triggerSMS({
  phone_number: '+13035551234',
  verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292',
});

console.log(createVerificationResponse.data);

Returns: 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, whatsapp), updated_at (string), verify_profile_id (uuid)

Trigger WhatsApp verification

POST /verifications/whatsapp — Required: phone_number, verify_profile_id

Optional: custom_code (string | null), timeout_secs (integer)

javascript
const createVerificationResponse = await client.verifications.triggerWhatsappVerification({
  phone_number: '+13035551234',
  verify_profile_id: '12ade33a-21c0-473b-b055-b3c836e1c292',
});

console.log(createVerificationResponse.data);

Returns: 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, whatsapp), updated_at (string), verify_profile_id (uuid)

Retrieve verification

GET /verifications/{verification_id}

javascript
const verification = await client.verifications.retrieve('12ade33a-21c0-473b-b055-b3c836e1c292');

console.log(verification.data);

Returns: 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, whatsapp), updated_at (string), verify_profile_id (uuid)

Verify verification code by ID

POST /verifications/{verification_id}/actions/verify

Optional: code (string), status (enum: accepted, rejected)

javascript
const verifyVerificationCodeResponse = await client.verifications.actions.verify(
  '12ade33a-21c0-473b-b055-b3c836e1c292',
);

console.log(verifyVerificationCodeResponse.data);

Returns: phone_number (string), response_code (enum: accepted, rejected)

Show full SKILL.md (294 more words)Show less

List all Verify profiles

Gets a paginated list of Verify profiles.

GET /verify_profiles

javascript
// Automatically fetches more pages as needed.
for await (const verifyProfile of client.verifyProfiles.list()) {
  console.log(verifyProfile.id);
}

Returns: call (object), created_at (string), daily_spend_limit (number), daily_spend_limit_enabled (boolean), flashcall (object), id (uuid), language (string), name (string), record_type (enum: verification_profile), sms (object), updated_at (string), webhook_failover_url (string), webhook_url (string), whatsapp (object)

Create a Verify profile

Creates a new Verify profile to associate verifications with.

POST /verify_profiles — Required: name

Optional: call (object), daily_spend_limit (number), daily_spend_limit_enabled (boolean), flashcall (object), language (string), sms (object), webhook_failover_url (string), webhook_url (string), whatsapp (object)

javascript
const verifyProfileData = await client.verifyProfiles.create({ name: 'Test Profile' });

console.log(verifyProfileData.data);

Returns: call (object), created_at (string), daily_spend_limit (number), daily_spend_limit_enabled (boolean), flashcall (object), id (uuid), language (string), name (string), record_type (enum: verification_profile), sms (object), updated_at (string), webhook_failover_url (string), webhook_url (string), whatsapp (object)

Retrieve Verify profile message templates

List all Verify profile message templates.

GET /verify_profiles/templates

javascript
const response = await client.verifyProfiles.retrieveTemplates();

console.log(response.data);

Returns: id (uuid), text (string)

Create message template

Create a new Verify profile message template.

POST /verify_profiles/templates — Required: text

javascript
const messageTemplate = await client.verifyProfiles.createTemplate({
  text: 'Your {{app_name}} verification code is: {{code}}.',
});

console.log(messageTemplate.data);

Returns: id (uuid), text (string)

Update message template

Update an existing Verify profile message template.

PATCH /verify_profiles/templates/{template_id} — Required: text

javascript
const messageTemplate = await client.verifyProfiles.updateTemplate(
  '12ade33a-21c0-473b-b055-b3c836e1c292',
  { text: 'Your {{app_name}} verification code is: {{code}}.' },
);

console.log(messageTemplate.data);

Returns: id (uuid), text (string)

Retrieve Verify profile

Gets a single Verify profile.

GET /verify_profiles/{verify_profile_id}

javascript
const verifyProfileData = await client.verifyProfiles.retrieve(
  '12ade33a-21c0-473b-b055-b3c836e1c292',
);

console.log(verifyProfileData.data);

Returns: call (object), created_at (string), daily_spend_limit (number), daily_spend_limit_enabled (boolean), flashcall (object), id (uuid), language (string), name (string), record_type (enum: verification_profile), sms (object), updated_at (string), webhook_failover_url (string), webhook_url (string), whatsapp (object)

Update Verify profile

PATCH /verify_profiles/{verify_profile_id}

Optional: call (object), daily_spend_limit (number), daily_spend_limit_enabled (boolean), language (string), name (string), sms (object), webhook_failover_url (string), webhook_url (string), whatsapp (object)

javascript
const verifyProfileData = await client.verifyProfiles.update(
  '12ade33a-21c0-473b-b055-b3c836e1c292',
);

console.log(verifyProfileData.data);

Returns: call (object), created_at (string), daily_spend_limit (number), daily_spend_limit_enabled (boolean), flashcall (object), id (uuid), language (string), name (string), record_type (enum: verification_profile), sms (object), updated_at (string), webhook_failover_url (string), webhook_url (string), whatsapp (object)

Delete Verify profile

DELETE /verify_profiles/{verify_profile_id}

javascript
const verifyProfileData = await client.verifyProfiles.delete(
  '12ade33a-21c0-473b-b055-b3c836e1c292',
);

console.log(verifyProfileData.data);

Returns: call (object), created_at (string), daily_spend_limit (number), daily_spend_limit_enabled (boolean), flashcall (object), id (uuid), language (string), name (string), record_type (enum: verification_profile), sms (object), updated_at (string), webhook_failover_url (string), webhook_url (string), whatsapp (object)

© team-telnyx, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/telnyx-verify-javascript of team-telnyx/ai.

Open the folder on GitHubat commit 4d2ace0

Compare with similar skills

Telnyx Verify Javascript next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Telnyx Verify Javascript compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Telnyx Verify Javascript this skillteam-telnyx/ai220—~3kAutomated safety check: PassMIT
Code Review ChecklistshareAI-lab/learn-claude-code78k5 repos~1.1kAutomated safety check: PassMIT
Tailwindcss Developmentanonaddy/anonaddy4.9k10 repos~865Automated safety check: PassMIT
Figma use_figma Plugin API Ruleswarpdotdev/warp65k4 repos~4.4kAutomated safety check: PassAGPL-3.0
GSAP Core Animationgreensock/gsap-skills16k4 repos~3.7kAutomated safety check: PassMIT
JavaScript Concept Fact Checkerleonardomso/33-js-concepts67k1 repos~5kAutomated safety check: PassMIT

Similar skills

  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 5 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Tailwindcss Development

    anonaddy/anonaddy

    Always invoke when the user's message includes 'tailwind' in any form.

    4.9k GitHub starsUsed in 10 repos~865 tokens
    Frontend & DesignAuto-check passed
  • Required groundwork before any use_figma call: the rules and reference files for running JavaScript in a Figma file through the Plugin API without common failures.

    65k GitHub starsUsed in 4 repos~4.4k tokens
    Frontend & DesignAuto-check passed
  • GSAP Core Animation

    greensock/gsap-skills

    Covers the GSAP core API for tweens, easing, staggers, defaults and matchMedia, and when to choose GSAP over CSS animations or other JavaScript animation libraries.

    16k GitHub starsUsed in 4 repos~3.7k tokens
    Frontend & DesignAuto-check passed
  • JavaScript Concept Fact Checker

    leonardomso/33-js-concepts

    Verifies the technical accuracy of JavaScript concept pages by checking code examples, MDN and ECMAScript claims and external links through a five-phase method.

    67k GitHub starsUsed in 1 repo~5k tokens
    Writing & ContentAuto-check passed
  • Scroll World Landing Page

    oso95/scroll-world

    Builds a scroll-driven landing page where a pre-rendered camera flies through connected AI-generated scenes, using Higgsfield for stills and video clips.

    9.7k GitHub starsUsed in 1 repo~12k tokens
    Frontend & DesignAuto-check: notes

More from team-telnyx/ai

All 26 skills in this repo
  • Test VoIP push notifications for Telnyx WebRTC iOS (APNs) and Android (FCM) apps.

    220 GitHub stars~538 tokensUpdated 2 days ago
    Auto-check passed
  • Manage email suppressions (blocks), import and export suppression lists, and manage unsubscribe groups.

    220 GitHub stars~5k tokensUpdated 2 days ago
    Auto-check: notes
  • Build cross-platform VoIP calling apps with React Native using Telnyx Voice SDK.

    220 GitHub stars~3.2k tokensUpdated 2 days ago
    Auto-check passed
  • End-to-end setup for making a Telnyx AI assistant call a phone number.

    220 GitHub stars~2.3k tokensUpdated 2 days ago
    Auto-check passed
  • Manage email inboxes, list and search inbound messages, threads, sender filters, and reply to or forward messages.

    220 GitHub stars~5.4k tokensUpdated 2 days ago
    Auto-check passed
  • Telnyx Meeting Bot

    team-telnyx/ai

    A skill your agent uses when an agent must join, observe, react in, transcribe, summarize, or follow up on a Zoom, Google Meet, Microsoft Teams, or Webex meeting with Telnyx Meeting Bot.

    220 GitHub stars~7.4k tokensUpdated 2 days ago
    Auto-check passed

Works with

Questions about Telnyx Verify Javascript

What does Telnyx Verify Javascript do?

Look up phone number information (carrier, type, caller name) and verify users via SMS/voice OTP. Telnyx Verify Javascript is an agent skill from team-telnyx/ai. Look up phone number information (carrier, type, caller name) and verify users via SMS/voice OTP.

When should I use Telnyx Verify Javascript?

Telnyx Verify Javascript fits situations like: phone verification and data enrichment.

How do I install Telnyx Verify Javascript in Claude Code?

Run `npx skills add team-telnyx/ai --skill telnyx-verify-javascript -a claude-code`. Or copy the skill folder (skills/telnyx-verify-javascript in team-telnyx/ai) into .claude/skills/telnyx-verify-javascript in your project. Claude Code loads it when a task matches its description.

How do I install Telnyx Verify Javascript in Codex?

Run `npx skills add team-telnyx/ai --skill telnyx-verify-javascript -a codex`. Or copy the skill folder (skills/telnyx-verify-javascript in team-telnyx/ai) into .agents/skills/telnyx-verify-javascript in your project. Codex loads it when a task matches its description.

Can I use Telnyx Verify Javascript in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add team-telnyx/ai --skill telnyx-verify-javascript -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/telnyx-verify-javascript, .gemini/skills/telnyx-verify-javascript, .github/skills/telnyx-verify-javascript and .opencode/skills/telnyx-verify-javascript in your project.

What does Telnyx Verify Javascript need to run?

Going by SKILL.md and its folder, Telnyx Verify Javascript needs the command-line tools its instructions call (npm) and credentials named TELNYX_API_KEY. Our summary lists: Node.js; A credential in TELNYX_API_KEY.

Does Telnyx Verify Javascript access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Telnyx Verify Javascript safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Telnyx Verify Javascript use?

Telnyx Verify Javascript is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Telnyx Verify Javascript use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Telnyx Verify Javascript?

Skills that share tags, products or a category with Telnyx Verify Javascript: Code Review Checklist (shareAI-lab/learn-claude-code, 78k stars), Tailwindcss Development (anonaddy/anonaddy, 4.9k stars), Figma use_figma Plugin API Rules (warpdotdev/warp, 65k stars) and GSAP Core Animation (greensock/gsap-skills, 16k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Telnyx Verify Javascript?

team-telnyx (a GitHub organization) maintains it in team-telnyx/ai, which has 220 GitHub stars. The repository holds 26 skills in this directory. The repository was last updated on October 5, 2026.

Source: team-telnyx/ai on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.