{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/skyfire/main/json-schema/skyfire-directory-service-schema.json", "title": "DirectoryService", "x-generated": "2026-10-14", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/skyfire-service-directory-apis-openapi.yml#/components/schemas/DirectoryService", "type": "object", "properties": { "id": { "type": "string", "description": "Unique identifier of the service.", "format": "uuid" }, "name": { "type": "string", "description": "The name of the service." }, "description": { "type": "string", "description": "The description of the service." }, "tags": { "type": "array", "description": "The tags for this service. Empty if none were set.", "items": { "type": "string" } }, "type": { "type": "string", "description": "One of \"API\", \"WEB_PAGE\", \"VERIFIED_DOMAIN\", \"MCP_SERVER_LOCAL\", \"MCP_SERVER_REMOTE\", or \"FETCH_AGENT\"", "enum": [ "API", "WEB_PAGE", "VERIFIED_DOMAIN", "MCP_SERVER_LOCAL", "MCP_SERVER_REMOTE", "FETCH_AGENT" ] }, "price": { "type": "string", "description": "USD as string." }, "priceModel": { "type": "string", "description": "One of \"PAY_PER_USE\", \"SUBSCRIPTION\", \"PAY_PER_MB\", or \"CUSTOM\"", "enum": [ "PAY_PER_USE", "SUBSCRIPTION", "PAY_PER_MB", "CUSTOM" ] }, "minimumTokenAmount": { "type": "string", "description": "USD as string." }, "humanIdentityRequirement": { "type": "object", "description": "The identity verification requirements for individuals, organizations, or both. See https://docs.skyfire.xyz/reference/identity-fields for more info.", "properties": { "identityLevels": { "type": "array", "description": "Identity levels required from verified humans. e.g. `\"INDIVIDUAL_LEVEL2\"`.", "items": { "type": "string" } }, "organization": { "type": "array", "description": "Organization identity fields required.", "items": { "type": "string" } }, "individual": { "type": "array", "description": "Individual identity fields required.", "items": { "type": "string" } } } }, "seller": { "type": "object", "description": "The seller that owns this service.", "properties": { "id": { "type": "string", "description": "Unique identifier of the seller.", "format": "uuid" }, "name": { "type": "string", "description": "The name of the seller." }, "identityLevel": { "type": "string", "description": "The seller's verified identity level, when available. e.g. `\"BUSINESS_LEVEL1\"`." } } }, "openApiSpecUrl": { "type": "string", "description": "Present when `type` is API." }, "websiteUrl": { "type": "string", "description": "Present when `type` is WEB_PAGE." }, "fetchAgentProfileUrl": { "type": "string", "description": "Present when `type` is FETCH_AGENT." }, "mcpServerUrl": { "type": "string", "description": "Present when `type` is MCP_SERVER_LOCAL or MCP_SERVER_REMOTE." }, "acceptedTokens": { "type": "array", "description": "Any of \"kya\", \"pay\", and/or \"kya-pay\".", "items": { "type": "string", "enum": [ "kya", "pay", "kya-pay" ] } }, "createdAt": { "type": "string", "description": "When the service was created.", "format": "date-time" }, "updatedAt": { "type": "string", "description": "When the service was last updated.", "format": "date-time" } } }