API Documentation

List DLT Instances

GET /api/v1/dlt-instances

Get a paginated list of DLT instances (blockchains) with optional search and project inclusion. DLT instances are specific blockchain deployments like Ethereum Mainnet, Polygon, or private Hyperledger networks.

Request

Query Parameters

Parameter Type Required Default Description
page integer No 1 Page number (1-indexed)
per_page integer No 20 Results per page (1-100)
q string No - Search text for DLT instance names
include_projects boolean No false Include list of all projects using each DLT instance

Example Requests

bash
# Get first page of DLT instances
curl -X GET "https://www.weboftrust.org/api/v1/dlt-instances" \
  -H "X-API-Key: YOUR_API_KEY"

# Search for "ethereum" instances
curl -X GET "https://www.weboftrust.org/api/v1/dlt-instances?q=ethereum" \
  -H "X-API-Key: YOUR_API_KEY"

# Get DLT instances with their projects
curl -X GET "https://www.weboftrust.org/api/v1/dlt-instances?include_projects=true" \
  -H "X-API-Key: YOUR_API_KEY"

# Get page 2 with 50 results
curl -X GET "https://www.weboftrust.org/api/v1/dlt-instances?page=2&per_page=50" \
  -H "X-API-Key: YOUR_API_KEY"

Response

Success Response (200 OK)

Response Schema

typescript
interface DltInstanceListResponse {
  data: DltInstanceSummary[];
  pagination: {
    page: number;       // Current page (1-indexed)
    per_page: number;   // Items per page
    total: number;      // Total number of DLT instances
    total_pages: number; // Total number of pages
  };
}

interface DltInstanceSummary {
  id: number;
  name: string;
  website?: string;
  logo_url?: string;      // Full URL to blockchain logo
  operator?: {            // Entity operating this blockchain
    id: number;
    name: string;
  };
  dlt?: {                 // Underlying DLT technology
    id: number;
    title: string;
  };
  stats: {
    total_links: number;   // Number of connections
  };
  projects?: ProjectUsage[];  // Only included when include_projects=true (all projects)
}

interface ProjectUsage {
  id: number;
  title: string;
  type: "DID Project" | "Consortium";
  status?: string;
  source?: string;        // URL confirming project uses this blockchain
}

Example Response (without projects)

json
{
  "data": [
    {
      "id": 2,
      "name": "Ethereum",
      "website": "https://ethereum.org/en/",
      "logo_url": "https://weboftrust.org/icons-overwrite/ethereum.org.png",
      "operator": null,
      "dlt": {
        "id": 1,
        "title": "Ethereum"
      },
      "stats": {
        "total_links": 61
      }
    },
    {
      "id": 32,
      "name": "Sovrin",
      "website": "https://sovrin.org/",
      "logo_url": "https://weboftrust.org/icons-overwrite/sovrin.org.webp",
      "operator": {
        "id": 82,
        "name": "Sovrin Foundation"
      },
      "dlt": {
        "id": 4,
        "title": "Hyperledger Indy"
      },
      "stats": {
        "total_links": 41
      }
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 2,
    "total": 140,
    "total_pages": 70
  }
}

Example Response (with projects)

json
{
  "data": [
    {
      "id": 2,
      "name": "Ethereum",
      "website": "https://ethereum.org/en/",
      "logo_url": "https://weboftrust.org/icons-overwrite/ethereum.org.png",
      "operator": null,
      "dlt": {
        "id": 1,
        "title": "Ethereum"
      },
      "stats": {
        "total_links": 61
      },
      "projects": [
        {
          "id": 118,
          "title": "TradeTrust",
          "type": "DID Project",
          "status": "Launched",
          "source": "https://archive.ph/QD2fF#selection-1831.0-1818.14"
        },
        {
          "id": 237,
          "title": "Hyland Experience Credentials",
          "type": "DID Project",
          "status": "Launched",
          "source": "https://archive.ph/3dNhH#selection-305.0-305.291"
        }
      ]
    }
  ],
  "pagination": {
    "page": 1,
    "per_page": 1,
    "total": 140,
    "total_pages": 140
  }
}

Error Responses

400 Bad Request

Invalid query parameters

json
{
  "error": {
    "code": "invalid_parameter",
    "message": "Invalid page parameter"
  }
}

500 Internal Server Error

json
{
  "error": {
    "code": "internal_error",
    "message": "Failed to fetch DLT instances"
  }
}

Understanding DLT Instances

DLT Instance vs DLT Technology

  • DLT Technology: The underlying blockchain protocol (e.g., Ethereum, Hyperledger Indy)
  • DLT Instance: A specific deployment or network (e.g., Ethereum Mainnet, Polygon, Sovrin)

Types of DLT Instances

  • Public Networks: Open blockchains like Ethereum, Bitcoin, Polygon
  • Permissioned Networks: Controlled access like Sovrin, IDunion
  • Private Networks: Enterprise deployments of Hyperledger Fabric
  • Test Networks: Goerli, Sepolia, Mumbai testnet

Field Descriptions

  • operator: Organization that manages or governs the blockchain instance
  • dlt: The underlying distributed ledger technology
  • logo_url: Cached and optimized logo image
  • stats.total_links: Total number of projects and entities connected
  • projects: When included, shows up to 10 projects using this blockchain

Use Cases

  • Technology Selection: Choose appropriate blockchains for your project
  • Network Analysis: Understand blockchain adoption in digital identity
  • Partnership Discovery: Find projects on the same blockchain
  • Ecosystem Mapping: See which operators control various networks
  • Market Research: Identify trending blockchain platforms

Performance Considerations

  • Setting include_projects=true increases response size
  • Project lists include all projects using each DLT instance
  • Results are cached for efficient repeated queries
  • Use search parameter to filter results