Skip to content
Back to skills

Phone Validation Get Phone

ASecurity

Validates a single phone number and returns its country, type, formatted representation, carrier, and VOIP/virtual risk flags.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 22, 2026
ai-agentsapi

Works with

  • api

Security analysis

A100/100

Scanned September 22, 2026

npx -y skills add bobadilla-tech/requiems-api-skills --skill phone-validation-get-phone --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Phone Validation Get Phone?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Phone Validation Get Phone
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/bobadilla-tech-phone-validation-get-phone/badge)](https://www.skillsdirectory.com/skills/bobadilla-tech-phone-validation-get-phone)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: phone-validation-get-phone
api: Phone Validation
method: GET
path: /v1/validation/phone
base_url: https://requiems.xyz
description: Validates a single phone number and returns its country, type, formatted representation, carrier, and VOIP/virtual risk flags.
---

## Endpoint

**GET https://requiems.xyz/v1/validation/phone**

## Validate Phone Number

Validates a single phone number and returns its country, type, formatted representation, carrier, and VOIP/virtual risk flags.

## Parameters

| Name | Type | Required | Location | Description |
| ---- | ---- | -------- | -------- | ----------- |
| `number` | string | yes | query | The phone number to validate. Must include the country calling code (e.g. +12015551234). |

## Response Example

```json
{
  "data": {
    "number": "+447400123456",
    "valid": true,
    "country": "GB",
    "type": "mobile",
    "formatted": "+44 7400 123456",
    "carrier": {
      "name": "Three",
      "source": "metadata"
    },
    "risk": {
      "is_voip": false,
      "is_virtual": false
    }
  },
  "metadata": {
    "timestamp": "2026-01-01T00:00:00Z"
  }
}
```

## Response Fields

| Field | Type | Description |
| ----- | ---- | ----------- |
| `number` | string | The original number as supplied in the request |
| `valid` | boolean | Whether the number is a valid, dialable phone number |
| `country` | string | ISO 3166-1 alpha-2 country code (omitted when valid is false) |
| `type` | string | Number type: mobile, landline, landline_or_mobile, toll_free, voip, premium_rate, shared_cost, personal_number, pager, uan, voicemail, or unknown (omitted when valid is false) |
| `formatted` | string | International format of the number, e.g. +44 7400 123456 (omitted when valid is false) |
| `carrier.name` | string | Carrier name from phone prefix metadata (omitted when carrier cannot be determined) |
| `carrier.source` | string | How the carrier was determined. Always "metadata" when present |
| `risk.is_voip` | boolean | true when the number type is voip |
| `risk.is_virtual` | boolean | true when the number is not tied to a physical SIM or fixed line: voip, personal_number, uan, pager, or voicemail |

## Errors

- `400` **bad_request** — The number query parameter is missing.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…