{"openapi":"3.1.0","info":{"title":"AgentMarketIndex Discovery API","version":"1.0.0","description":"Read-only discovery of data APIs, paid tools and agent-to-agent services. Rate limited per IP. Prices are provider claims unless the provenance entry says verified; usage figures are measured by the named source.","contact":{"email":"ops@premarcu.com","url":"https:\/\/agentmarketindex.premarcu.com\/methodology"},"license":{"name":"Catalog metadata: CC BY 4.0","url":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}},"servers":[{"url":"https:\/\/agentmarketindex.premarcu.com\/api\/v1"}],"paths":{"\/services":{"get":{"summary":"Search the catalogue","parameters":[{"name":"q","in":"query","description":"Free text over name, tagline and description","schema":{"type":"string"}},{"name":"category","in":"query","description":"Category slug, e.g. web-scraping","schema":{"type":"string"}},{"name":"task","in":"query","description":"Task (tag) slug, e.g. scraping","schema":{"type":"string"}},{"name":"protocol","in":"query","description":"Repeatable protocol filter","schema":{"type":"array","items":{"type":"string","enum":["x402","mcp","a2a","rest","graphql","openapi"]}}},{"name":"price","in":"query","description":"Repeatable price model filter","schema":{"type":"array","items":{"type":"string","enum":["free","paid","unknown"]}}},{"name":"verification","in":"query","description":"Repeatable evidence filter","schema":{"type":"array","items":{"type":"string","enum":["measured","usage","listed"]}}},{"name":"network","in":"query","description":"Repeatable x402 network id, e.g. eip155:8453","schema":{"type":"array","items":{"type":"string"}}},{"name":"sort","in":"query","schema":{"type":"string","enum":["relevance","new","updated","price_low","price_high","name"]}},{"name":"page","in":"query","schema":{"type":"integer","minimum":1}},{"name":"per_page","in":"query","schema":{"type":"integer","maximum":100,"default":24}}],"responses":{"200":{"description":"Paginated list of services with provenance"}}}},"\/services\/{slug}":{"get":{"summary":"One service with full provenance and recent endpoint checks","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"Service detail"},"404":{"description":"Not found or not published"}}}},"\/categories":{"get":{"summary":"Categories with live counts","responses":{"200":{"description":"Category list"}}}},"\/stats":{"get":{"summary":"Catalogue statistics and source list","responses":{"200":{"description":"Counts"}}}},"\/rankings":{"get":{"summary":"Leaderboard by settled earnings or by platform-reported activity","description":"Both metrics come from the same query as the HTML page. In the earnings metric a missing record yields null, never 0; services without a payment record are absent from the list and counted in meta.coverage.services_unknown. Observed transfers are never added to earnings.","parameters":[{"name":"metric","in":"query","schema":{"type":"string","enum":["earnings","activity"],"default":"earnings"}},{"name":"category","in":"query","schema":{"type":"string"}},{"name":"page","in":"query","schema":{"type":"integer","minimum":1}},{"name":"per_page","in":"query","schema":{"type":"integer","maximum":100,"default":50}}],"responses":{"200":{"description":"Ranked rows plus coverage metadata and a metric-specific disclaimer"}}}}},"components":{"securitySchemes":{}},"security":[]}