1. REST
CallerAPI Documentation
  • Quickstart
  • Use cases
    • For carriers (MNOs/MVNOs)
    • CPaaS platforms
    • Cloud communications providers
    • SIP trunking providers
    • PBX/Cloud PBX
    • UCaaS vendors
  • Account
    • Balance and email
      GET
  • Spam protection
    • Voice firewall
      • Get started
      • Quickstart
        • What you get
        • Before you start
        • Test with a recording
        • Connect your switch
        • Switch notes
        • Twilio and Telnyx
        • Send text instead of audio
      • Verdicts
        • Read a verdict
        • What to do with a verdict
        • Block a caller
        • Events and webhooks
      • Honeypot
        • Hand a call over
        • Audio, events, and limits
      • Reference
        • Endpoints
        • Errors
        • Limits and thresholds
        • Production checklist
      • REST
        • What this deployment can do
        • List the verdict categories
        • List the honeypot personas
        • Score a transcript or a recording
        • List your recent sessions
        • Get one session with verdict and intel
        • Twilio voice URL for a screened number
        • Preview the Twilio TwiML
        • Telnyx voice URL for a screened number
        • Twilio voice URL for a honeypot number
        • Telnyx voice URL for a honeypot number
      • WebSocket
        • Live scam filter stream
        • Honeypot stream
    • Daily spam reports
      • Webhook
        • Subscribe to daily reports
        • Unsubscribe from daily reports
        • List webhook subscriptions
        • Manual dispatch of reports
        • Test webhook
      • REST
        • Fetch daily spam reports
    • 15 days spam CSV snapshot
      GET
    • Spam score + HLR
      GET
  • Mobile SDK
    • Get started
    • Quickstart
      • What you get
      • Get your keys
      • Android
      • iOS
      • Flutter
      • React Native
      • Check it works
    • Call screening
      • What each platform can do
      • Android call screening
      • iOS prerequisites
      • iOS add the extension
      • iOS test on device
    • Reference
      • Methods
      • Errors
      • Limits and billing
      • Troubleshooting
  • Data partners
    • Partner tems & docs
    • Upload spam reports
      POST
    • Upload contacts
      POST
  • Fraud prevention
    • Ported date
    • Porting history
    • Online presence
    • KYC user identity
  • Business Caller ID
    • Get started
    • Quickstart
      • Announce a call
      • Verify at INVITE
      • What you get
    • Verdicts
      • Show the name and logo
      • Read a verdict
    • REST
      • Verify the calling number
        POST
      • Fetch the logo
        GET
      • Announce a call
        POST
  • Signer reputation by SPC
    GET
  • Signers ranked by score
    GET
  • Schemas
    • Spam protection
      • Spam score request
      • Business info
      • Carrier info
      • Complaint (without number)
      • Daily spam reports request
      • Complaint (with phone)
    • Signer
  1. REST

Verify the calling number

POST
/api/bcid/v1/verify
Call this from the switch or SBC at INVITE, before the phone rings. Send the calling number and the called number. The response says whether the registered owner announced this exact call.
Verify is free for the telco. When the verdict is verified, the telco receives 1 credit. The business already paid 2 credits on announce.
Verdicts:
verified: the registered owner announced this call. Show the name, the mark, and the logo.
spoofed: the owner requires proof for every call from this number and none exists, or the number cannot place a call. Recommended action is drop.
unverified: the number is registered, the owner has not turned on enforcement, and this call carries no proof. Show the name only.
unregistered: nobody registered the number. Let the call through with no branding.
The called number is used for the binding check only. It is not stored and it is not returned. Do not put a business API key on the switch.

Request

Authorization
API Key
Add parameter in header
x-auth
Example:
x-auth: ********************
or
Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200A verdict for this call
application/json
A verdict for this call. Verify is free. rewarded_credits is present on verified.
Bodyapplication/json

🟠400Missing or invalid from or to
🟠401Missing or wrong API key
🔴503Verification is not available
Request Request Example
Shell
JavaScript
Java
Swift
curl --location 'https://api.callerapi.com/api/bcid/v1/verify' \
--header 'x-auth: <api-key>' \
--header 'Content-Type: application/json' \
--data '{
  "from": "+18883578668",
  "to": "+14155550123"
}'
Response Response Example
200 - Example 1
{
    "status": "success",
    "data": {
        "from": "string",
        "verdict": "verified",
        "action": "allow",
        "reason": "string",
        "identity": {
            "verified": true,
            "name": "string",
            "logo_id": "string",
            "logo_url": "string"
        },
        "checked_at": "2019-08-24T14:15:22.123Z",
        "rewarded_credits": 0
    }
}
Modified at 2026-09-21 16:59:01
Previous
Read a verdict
Next
Fetch the logo
Built with