78trust / 100

Profile

by wtsp.dev in Email & messaging

x402 APIPassing, checked 31 min ago

Whether a number is on WhatsApp and, if so: personal or business account, about text, country, linked devices and whether it runs on the Cloud API. Businesses add their public profile: name, description, categories, email, websites, address, coordinates, hours, join date and Facebook page. No photo; /v1/profile/full adds it. Query param: phone, with country code (e.g. +14155552671). Every answer is charged, “not on WhatsApp” included; a lookup WhatsApp does not answer is free.

GET https://wtsp.dev/v1/profile

Last 30 days

All checks passedSome failedAll failedNot checked
Uptime
100%
Response time
241 ms typical, 445 ms slowest 5%
Last check
31 min ago
Next check
in 2 min

How to call it

# See the payment challenge (nothing is charged)
curl -i -X GET "https://wtsp.dev/v1/profile?phone=%2B14155552671"
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client().register(
  "eip155:8453",
  new ExactEvmScheme(privateKeyToAccount(process.env.AGENT_KEY)),
);
const pay = wrapFetchWithPayment(fetch, client);

// Not sure it's safe to pay? Preflight it first for $0.005:
// GET https://toolvet.app/api/v1/check?url=https%3A%2F%2Fwtsp.dev%2Fv1%2Fprofile
const res = await pay("https://wtsp.dev/v1/profile?phone=%2B14155552671");
console.log(await res.json());

Example input

{
  "phone": "+14155552671"
}

Example output

{
  "accountType": "business",
  "business": {
    "address": "123 Market St, San Francisco, CA 94103",
    "automatedType": "unknown",
    "businessType": "smb",
    "cartEnabled": true,
    "categories": [
      "Grocery Store",
      "Food delivery"
    ],
    "commerceExperience": "none",
    "description": "Neighbourhood grocery with same-day delivery across San Francisco.",
    "displayName": "Fresh Market SF",
    "email": "[email protected]",
    "hours": [
      {
        "closeTime": "20:00",
        "day": "mon",
        "mode": "specific_hours",
        "openTime": "08:00"
      },
      {
        "closeTime": "18:00",
        "day": "sat",
        "mode": "specific_hours",
        "openTime": "09:00"
      },
      {
        "closeTime": null,
        "day": "sun",
        "mode": "appointment_only",
        "openTime": null
      }
    ],
    "latitude": 37.7749,
    "linkedFacebookPage": {
      "id": "100064523310987",
      "likes": 1840,
      "name": "Fresh Market SF"
    },
    "longitude": -122.4194,
    "memberSince": "Joined in March, 2021",
    "memberSinceTs": 1615420800,
    "timezone": "America/Los_Angeles",
    "verifiedLevel": "unknown",
    "websites": [
      "https://freshmarket.example"
    ]
  },
  "checkedAt": "2026-10-09T18:24:03.000Z",
  "devices": {
    "count": 2,
    "hosted": false
  },
  "hasWhatsApp": true,
  "identity": {
    "countryCode": "US",
    "lid": "258166877098174@lid"
  },
  "phone": "+14155552671",
  "profile": {
    "about": "Fresh groceries, delivered daily 🍋",
    "aboutRestricted": false
  }
}

Security scan

  • No findings. We scan names, descriptions and tool definitions for hidden instructions and other prompt-injection patterns.

Recent checks

WhenResultHTTPTimePrice
31 min agoPassed402170 ms$0.006
5 h agoPassed402186 ms$0.006
8 h agoPassed402241 ms$0.006
12 h agoPassed402200 ms$0.006
16 h agoPassed402445 ms$0.006
19 h agoPassed402291 ms$0.006
24 h agoPassed4022.9 s$0.006