{"uid":"cap_9FIQtswpCTCawEAAnPHQu","slug":"agent402-tools-openapi-swagger-endpoint-extractor-5d089bfd","name":"agent402.tools OpenAPI/Swagger Endpoint Extractor","description":"Flatten an OpenAPI 3.x or Swagger 2.x spec into a structured list of callable endpoints - one row per operation with method, path, operationId, summary, tags, parameters (name / in / required / type), JSON-body flag, and documented response codes. Includes per-method and per-tag counts so an agent can pick what to call next without parsing the full spec. Output is sorted by path then method for stable, agent-friendly grouping. Pure CPU - deterministic, no network, no $ref dereferencing.","url":"https://agent402.tools/api/openapi-extract","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"spec":{"description":"OpenAPI/Swagger document (object or JSON string)"}}},"responseSchema":{"type":"json","example":{"stats":{"byTag":{"users":2},"total":2,"byMethod":{"GET":1,"DELETE":1}},"endpoints":[{"path":"/users","tags":["users"],"method":"GET","params":[{"in":"query","name":"limit","type":"integer","required":false}],"summary":"List users","responses":["200","400"],"hasJsonBody":false,"operationId":"listUsers"},{"path":"/users/{id}","tags":["users"],"method":"DELETE","params":[{"in":"path","name":"id","type":"string","required":true}],"summary":"Delete user","responses":["204"],"hasJsonBody":false,"operationId":"deleteUser"}]}},"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.001","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.001/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.001","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_9NkJzqAIDIYwdTolWNqwe","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.001","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Flattens an OpenAPI 3.x or Swagger 2.x specification into a structured list of callable endpoints, one row per operation with method, path, operationId, parameters, and response codes.","exampleAgentPrompt":"Can you parse this OpenAPI spec I'm pasting and give me a flat list of every endpoint — including the HTTP method, path, operationId, parameters, and response codes for each operation?","exampleUseCases":null,"resultDescription":"A structured list of endpoint rows, one per API operation, each containing the HTTP method, URL path, operationId, summary, tags, parameter details (name, location, required flag, type), whether a JSON body is expected, and documented response codes.","failureModes":["Invalid or malformed OpenAPI/Swagger document returns a parse error","Spec passed as a non-object and non-JSON string may be rejected","Unsupported spec version (e.g. OpenAPI 1.x) may not be parsed correctly","Very large specs may time out or exceed payload limits","Missing required 'spec' field returns a validation error"],"whenToPreferThis":"Use this endpoint when you need to programmatically introspect an OpenAPI or Swagger specification and want a flat, tabular representation of all operations — ideal for building API catalogs, agent tool registries, or automated documentation workflows. Prefer this over manual parsing when you need parameter-level detail including types, required flags, and response codes in a single structured response.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T19:14:06.181Z","isFirstParty":false}