Skip to main content
Version: 1.0.0

Get Started

Overview

Welcome to the didlogic public API documentation. Our API ecosystem is designed to give you programmatic control over global voice and messaging infrastructure. Whether you are automating SIP trunking, managing international DIDs, or pulling real-time CDRs, our API provides the tools to scale your communications.

API Versions

We currently maintain two API versions. These versions are interoperable and should be used together to access the full range of didlogic services.

API v1: Core Infrastructure

The v1 API handles the foundational elements of your account and legacy connectivity services. Use this for:

  • Billing & Finance: Account balance, transaction history, and CSV exports.
  • Voice Logs: Call Detail Records (CDR) with advanced filtering.
  • Messaging: Standard SMS messaging services.
  • Provisioning: Basic SIP account management and ASR (Answer-Seizure Ratio) reporting.

API v2: Enhanced DID Management

The v2 API provides a more modern, granular interface for managing your global number inventory. Use this for:

  • Number Purchase: Search, browse, and purchase numbers by country, region, or city.
  • Inventory Control: Browse your purchased numbers.
  • Compliance: Upload and manage regulatory documents required for specific jurisdictions.
  • Number Reputation Control: Request risk checks for specific numbers to see whether they have any spam/scam flags and access risk check reports.

Identifier interoperability (v1 ↔ v2)

The same DID is addressable two ways: by its phone number on the v1 number-keyed endpoints, and by its numeric inventory id on v2 GET /api/v2/numbers. So you don't get a 404 when you carry an id learned from v2 back to a v1 path, the v1 number-keyed endpoints now also accept the inventory id:

  • GET/POST /api/v1/purchases/{purchase_id}/destinations and PUT/DELETE /api/v1/purchases/{purchase_id}/destinations/{id}purchase_id accepts the DID phone number (e.g. 43800327987) or the v2 inventory id (e.g. 21869).
  • GET/PUT/DELETE /api/v1/sipaccounts/{id} and GET/POST/DELETE /api/v1/sipaccounts/{sipaccount_id}/allowed_ips — the identifier accepts the SIP account name (e.g. 97653) or its numeric id (e.g. 73).

Both forms resolve the same record; nothing about the existing name/number calls changes. A value that matches neither returns the standard 404 error envelope ({"errors":{"base":["data not found"]}}).

Regulatory documents under v2 are the one exception — they stay split by design: the collection is addressed by the DID number (GET /api/v2/numbers/documents?number=) and a single document by its own id (.../documents/{id}). A number cannot pick one of many documents, and a document id cannot stand in for the collection, so dual-accept does not apply there.

Authentication

To ensure the security of your account, all requests to both v1 and v2 endpoints must be authenticated using Bearer Token Authentication. Include your token in the Authorization header of every HTTP request.

Header Format: Authorization: Bearer YOUR_TOKEN

Security Scheme TypeHTTP
HTTP Authorization Schemebearer
TransportHTTPS (Required)

Please contact your account manager to access your API key.

Example

curl -X GET "https://api.didlogic.com/v2/numbers" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"

Authentication

Authenticate API requests via API key like "Bearer YOUR_TOKEN"

Security Scheme Type:

http

HTTP Authorization Scheme:

bearer