API Documentation

Get Project Details

GET /api/v1/projects/{id}

Get comprehensive information about a specific project including all relationships, technical details, geographic focus, inclusion criteria, and industry associations.

Request

Path Parameters

Parameter Type Required Description
id integer Yes Project ID (minimum: 1)

Example Request

bash
# Get details for project ID 118
curl -X GET "https://www.weboftrust.org/api/v1/projects/118" \
  -H "X-API-Key: YOUR_API_KEY"

Response

Success Response (200 OK)

Response Headers

Header Value Description
X-License CC-BY-4.0 License identifier
X-Attribution Web of Trust Map - Key State Capital Required attribution
Cache-Control public, max-age=60, s-maxage=300, stale-while-revalidate=600 Caching directives

Response Schema - Core Fields

typescript
interface ProjectDetail {
  // Basic Information
  id: number;
  title: string;
  type: "DID Project" | "Consortium";
  website?: string;
  logo_url?: string;
  status?: "Announced" | "Pilot" | "Launched" | "Discontinued" | "Active" | "Inactive";
  
  // Dates and Sources
  launch_date?: string;
  launch_date_source?: string;
  announcement_date?: string;
  announcement_date_source?: string;
  
  // Descriptions
  mission_statement?: string;
  mission_statement_source?: string;
  tech_stack_description?: string;
  tech_stack_description_source?: string;
  ai_description?: string;
  
  // Technical Properties (Boolean values with source URLs)
  targets_holders_or_users?: boolean | null;  // Whether targets credential holders/users
  targets_holders_or_users_source?: string;   // Source URL for verification
  targets_issuers?: boolean | null;           // Whether targets credential issuers
  targets_issuers_source?: string;            // Source URL for verification
  targets_verifiers?: boolean | null;         // Whether targets credential verifiers
  targets_verifiers_source?: string;          // Source URL for verification
  uses_ssi?: boolean | null;                  // Whether uses self-sovereign identity
  uses_ssi_source?: string;                   // Source URL for verification
  uses_or_endorses_zkp?: boolean | null;      // Whether uses/endorses zero-knowledge proofs
  uses_or_endorses_zkp_source?: string;       // Source URL for verification
  has_exportable_credentials?: boolean | null; // Whether has exportable credentials
  has_exportable_credentials_source?: string;  // Source URL for verification
  has_key_storage?: boolean | null;           // Whether has key storage capabilities
  has_key_storage_source?: string;            // Source URL for verification
  
  // Geography
  country?: {           // Country from managing entity
    id: number;
    name: string;
    code: string;       // ISO 3166-1 alpha-2 code
  };
  region?: string;
  geographic_focus?: Array<{
    country: {
      id: number;
      name: string;
      code: string;
    };
    source?: string;
  }>;
  
  // Products and Links
  products?: Array<{
    id: number;
    title: string;
  }>;
  links?: Array<{
    category: string;
    url: string;
    description: string;
  }>;
  
  // People relationships
  persons_of_interest?: Array<{
    person: {
      id: number;
      name: string;
    };
    role?: string;
    on_behalf_of?: {
      id: number;
      name: string;
    } | null;
    source?: string;
  }>;
  
  // Entity relationships
  entities?: Array<{
    entity: {
      id: number;
      name: string;
      website?: string;
      type: string[];
      country?: {         // Entity headquarters country
        id: number;
        name: string;
        code: string;
      };
    };
    relationship_type: string;
    source?: string;
  }>;
  
  // Consortium relationships
  consortia_relations?: {
    parent_consortium?: object | null;
    child_projects?: object[];
    as_source?: Array<{
      id: number;
      title: string;
      website?: string;
      type: string;
      source?: string;
    }>;
    as_target?: Array<{
      id: number;
      title: string;
      website?: string;
      type: string;
      source?: string;
    }>;
  };
  
  // Technical relationships
  regulations?: Array<{
    id: number;
    title: string;
    country?: {         // Regulation's country (null for supranational)
      id: number;
      name: string;
      code: string;
    } | null;
    region?: {          // Regulation's region (e.g., "European Union")
      title: string;
      abbreviation: string;
    } | null;
    source?: string;
  }>;
  standards?: Array<{
    id: number;
    title: string;
    url?: string;
    type: "Follows" | "Management";
    source?: string;
  }>;
  did_methods?: Array<{
    id: number;
    name: string;
    specification_url?: string;
    source?: string;
    archived_source?: string;
  }>;
  dlt_instances?: Array<{
    id: number;
    name: string;
    website?: string;
    source?: string;
  }>;
  credential_profiles?: Array<{
    id: number;
    name: string;
    url: string;
    source?: string;
  }>;
  
  // Industries and stats
  industries?: Array<{
    id: number;
    name: string;
    source?: string;
  }>;
  stats?: {
    total_links: number;
    score: number;
  };
}

Response Schema - Inclusion Criteria

typescript
interface InclusionCriteria {
  uses_did_or_vc?: boolean | null;           // Whether uses W3C DIDs, VCs, or KERI
  uses_did_or_vc_sources?: string[];
  claims_ssi?: boolean | null;               // Whether claims to be SSI or decentralized
  claims_ssi_sources?: string[];
  has_government_funding?: boolean | null;   // Whether received government funding/endorsement
  has_government_funding_sources?: string[];
  has_known_partners?: boolean | null;       // Whether has well-known partners
  has_known_partners_sources?: string[];
  announcement_date?: string;
  announcement_date_sources?: string[];
  exception_reason?: string;
}

Example Response (Comprehensive)

json
{
  "id": 118,
  "title": "TradeTrust",
  "type": "DID Project",
  "website": "https://www.tradetrust.io/",
  "logo_url": "https://weboftrust.org/icons/tradetrust.io.webp",
  "status": "Launched",
  "launch_date": "2019",
  "launch_date_source": "https://archive.ph/wip/DICxS",
  "announcement_date": "2019",
  "announcement_date_source": "https://archive.li/8oHd4#selection-2373.0-2373.138",
  "mission_statement": "To make international trade more secure, efficient, and accessible for everyone by providing a globally-harmonised and inclusive framework.",
  "mission_statement_source": "https://archive.ph/aEXKw#selection-679.0-679.139",
  "tech_stack_description": "Identity: Using W3C Verifiable Credentials, TradeTrust is used to issue Verifiable Documents...",
  "tech_stack_description_source": "https://archive.li/UpHV3#selection-751.0-761.420",
  "targets_holders_or_users": false,
  "targets_holders_or_users_source": "https://archive.ph/sH0n3",
  "targets_issuers": true,
  "targets_issuers_source": "https://archive.ph/Hcyde",
  "targets_verifiers": true,
  "targets_verifiers_source": "https://archive.ph/RVTow",
  "uses_ssi": true,
  "uses_ssi_source": "https://archive.li/UpHV3#52%",
  "uses_or_endorses_zkp": true,
  "uses_or_endorses_zkp_source": "https://archive.ph/QD2fF#selection-1831.0-1818.14",
  "has_exportable_credentials": true,
  "has_exportable_credentials_source": "https://did-map-resources.s3.amazonaws.com/Southeast+Asia/TradeTrust/03Oct-PM-S2-SinYong_TradeTrustStandard.pdf",
  "has_key_storage": false,
  "has_key_storage_source": "https://archive.ph/sH0n3",
  "country": {
    "id": 167,
    "name": "Singapore",
    "code": "SG"
  },
  "region": "Southeast Asia",
  "geographic_focus": [
    {
      "country": {
        "id": 124,
        "name": "Netherlands",
        "code": "NL"
      },
      "source": "https://did-map-resources.s3.amazonaws.com/Southeast+Asia/TradeTrust/pres_loh.pdf"
    },
    {
      "country": {
        "id": 38,
        "name": "China",
        "code": "CN"
      },
      "source": "https://archive.li/oAS8Q"
    }
  ],
  "managing_entity": {
    "id": 36,
    "name": "Infocomm Media Development Authority"
  },
  "entities": [
    {
      "id": 36,
      "name": "Infocomm Media Development Authority",
      "type": ["Public"],
      "relationship_type": "Managing",
      "source": "https://archive.li/8oHd4#selection-2373.0-2373.138"
    }
  ],
  "standards": [
    {
      "id": 12,
      "title": "W3C Verifiable Credentials Data Model",
      "source": "https://archive.li/UpHV3#52%"
    }
  ],
  "dlt_instances": [
    {
      "id": 2,
      "name": "Ethereum",
      "source": "https://archive.ph/QD2fF#selection-1831.0-1818.14"
    }
  ],
  "industries": [
    {
      "id": 734,
      "name": "International Trade",
      "source": "https://www.tradetrust.io/"
    }
  ],
  "inclusion_criteria": {
    "uses_did_or_vc": true,
    "uses_did_or_vc_sources": [
      "https://archive.li/UpHV3#52%",
      "https://github.com/tradetrust/documentation"
    ],
    "claims_ssi": true,
    "claims_ssi_sources": ["https://www.tradetrust.io/about"],
    "has_government_funding": true,
    "has_government_funding_sources": ["https://www.imda.gov.sg/news-and-events/2019/05/tradetrust-launch"],
    "has_known_partners": true,
    "has_known_partners_sources": ["https://www.sc.com/en/media/press-release/standard-chartered-joins-tradetrust/"],
    "announcement_date": "2019-05-15",
    "announcement_date_sources": ["https://archive.li/8oHd4#selection-2373.0-2373.138"],
    "exception_reason": null
  },
  "stats": {
    "total_links": 85,
    "score": 12.5
  }
}

Error Responses

400 Bad Request

Invalid ID parameter

json
{
  "error": {
    "code": "invalid_parameter",
    "message": "Invalid project ID"
  }
}

404 Not Found

Project not found

json
{
  "error": {
    "code": "not_found",
    "message": "Project not found"
  }
}

Data Sources

Most fields include a corresponding _source field containing the URL where the information was verified. Sources may include:

  • Archive.org snapshots (archive.ph, archive.li)
  • Official project websites
  • Government announcements
  • Academic papers and reports
  • AWS S3 hosted documents

Boolean Fields

Technical properties and inclusion criteria fields return boolean values:

  • true for "Yes" values
  • false for "No" values
  • null for "Failed to Disclose", "Unknown", or missing data

Inclusion Criteria

The inclusion_criteria object explains why this project was included in the Web of Trust Map. Projects must meet at least one of these criteria:

  • Uses W3C DIDs, VCs, or KERI
  • Claims to be SSI or decentralized
  • Has government funding or endorsement
  • Has well-known partners
  • Exception granted for special cases