openapi: 3.1.0 info: title: Curl HTTP Request description: Send an HTTP request to any URL from our servers and receive the full response — including the status code, all response headers, and the body content. Supports GET, POST, PUT, PATCH, DELETE, and HEAD. Automatically follows up to 3 redirects. Useful for testing endpoints, verifying servers are responding correctly, debugging redirect chains, or fetching raw data without needing a local setup. version: 1.0.0 contact: name: _done url: https://forms.gle/5KzuSFH7p8hHtDmz7 email: info@underscoredone.com x-openapi-url: https://curl-http-request.underscoredone.com/openapi.json x-logo: url: https://underscoredone.com/logo.png altText: _done x-guidance: Send a JSON body with a 'url' (required, must start with http:// or https://) and an optional 'method' field (defaults to GET). The response includes 'statusCode' (integer), 'headers' (object of key-value strings), 'body' (string, may be HTML, JSON, or plain text), 'durationMs' (how long the request took in milliseconds), and 'error' (null on success, or a plain-English message if the request could not be completed). Do not use this for private or internal network addresses. Redirects are followed automatically up to 3 times. If the target server is unreachable or times out, a 400 error is returned with a description of what went wrong. x-ai-instructions: Send a JSON body with a 'url' (required, must start with http:// or https://) and an optional 'method' field (defaults to GET). The response includes 'statusCode' (integer), 'headers' (object of key-value strings), 'body' (string, may be HTML, JSON, or plain text), 'durationMs' (how long the request took in milliseconds), and 'error' (null on success, or a plain-English message if the request could not be completed). Do not use this for private or internal network addresses. Redirects are followed automatically up to 3 times. If the target server is unreachable or times out, a 400 error is returned with a description of what went wrong. x-provider: _done — single-purpose utility APIs for developers and AI agents. Pay per call with USDC on Base Mainnet or Solana Mainnet. x-pricing: model: pay-per-call currency: USDC network: Base Mainnet or Solana Mainnet price: $0.01 x-keywords: - network - curl - http request - fetch url - check endpoint - status code - response headers - redirect follow - api tester - debug server - utility - api - ai-agent - pay-per-call - usdc - x402 x-category: http request x-provider-url: https://underscoredone.com x-agentcash-auth: mode: paid x-402: price: $0.01 network: eip155:8453 asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' pay_to: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08' facilitator: https://api.cdp.coinbase.com/platform/v2/x402 scheme: exact description: Send an HTTP request to any URL from our servers and receive the full response — including the status code, all response headers, and the body content. Supports GET, POST, PUT, PATCH, DELETE, and HEAD. Automatically follows up to 3 redirects. Useful for testing endpoints, verifying servers are responding correctly, debugging redirect chains, or fetching raw data without needing a local setup. mime_type: application/json networks: - network: eip155:8453 asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' pay_to: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08' - network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v pay_to: 8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b paths: /curl: post: tags: - http request - curl - fetch url - make http request - http client - api testing - send http request - rest client - get post request - follow redirects - http get - web request - fetch raw response - test endpoint - http fetch summary: Fetch any URL from the cloud and return its full response. description: Send an HTTP request to the given web address from our servers and return the full response including status, headers, and body. operationId: handler_curl_post requestBody: content: application/json: schema: $ref: '#/components/schemas/Request' required: true responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Response' examples: success: summary: Successful response value: api_version: 1.0.0 url: https://httpbin.org/get method: GET statusCode: 200 headers: content-type: application/json content-length: '307' server: gunicorn/19.9.0 body: "{\n \"args\": {}, \n \"headers\": {\n \"Host\": \"httpbin.org\"\n }, \n \"url\": \"https://httpbin.org/get\"\ \n}" durationMs: 312 redirectChain: [] error: null '422': description: Unprocessable — a required field is missing or the wrong type. Check the detail field for specifics. content: application/json: schema: type: object properties: detail: type: array '402': description: Payment required. Send a signed USDC payment on Base Mainnet or Solana Mainnet using the x402 protocol. headers: X-Payment-Response: description: x402 payment challenge — base64-encoded JSON with payment details. schema: type: string '400': description: Bad request — your input failed validation or could not be processed. Check the detail field for specifics. content: application/json: schema: type: object properties: detail: type: string x-ai-instructions: Send a JSON body with a 'url' (required, must start with http:// or https://) and an optional 'method' field (defaults to GET). The response includes 'statusCode' (integer), 'headers' (object of key-value strings), 'body' (string, may be HTML, JSON, or plain text), 'durationMs' (how long the request took in milliseconds), and 'error' (null on success, or a plain-English message if the request could not be completed). Do not use this for private or internal network addresses. Redirects are followed automatically up to 3 times. If the target server is unreachable or times out, a 400 error is returned with a description of what went wrong. x-guidance: Send a JSON body with a 'url' (required, must start with http:// or https://) and an optional 'method' field (defaults to GET). The response includes 'statusCode' (integer), 'headers' (object of key-value strings), 'body' (string, may be HTML, JSON, or plain text), 'durationMs' (how long the request took in milliseconds), and 'error' (null on success, or a plain-English message if the request could not be completed). Do not use this for private or internal network addresses. Redirects are followed automatically up to 3 times. If the target server is unreachable or times out, a 400 error is returned with a description of what went wrong. x-payment-info: price: fixed: mode: fixed currency: USD amount: '0.01' protocols: - x402: {} components: schemas: HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' type: array title: Detail type: object title: HTTPValidationError Request: properties: url: type: string maxLength: 8192 title: Url description: The full web address you want to send a request to. Must start with http:// or https://. method: type: string title: Method description: The type of request to make. Choose from GET, POST, PUT, PATCH, DELETE, or HEAD. Defaults to GET if not provided. default: GET type: object required: - url title: Request example: method: GET url: https://httpbin.org/get Response: properties: api_version: type: string title: Api Version description: API version default: 1.0.0 url: type: string title: Url description: The web address that was requested. method: type: string title: Method description: The request type that was used. statusCode: type: integer title: Statuscode description: The numeric status code returned by the server (for example, 200 means success, 404 means not found). headers: additionalProperties: type: string type: object title: Headers description: All the response headers sent back by the server, as key-value pairs. body: type: string title: Body description: The full text body returned by the server. May be HTML, JSON, plain text, or empty for HEAD requests. durationMs: type: integer title: Durationms description: How long the request took in milliseconds from start to finish. redirectChain: items: type: string type: array title: Redirectchain description: The list of URLs visited during any automatic redirects, from the first address through to the final destination. error: anyOf: - type: string - type: 'null' title: Error description: Null if the request succeeded. A plain-English description of what went wrong if the request could not be completed. type: object required: - url - method - statusCode - headers - body - durationMs - redirectChain title: Response example: api_version: 1.0.0 body: "{\n \"args\": {}, \n \"url\": \"https://httpbin.org/get\"\n}" durationMs: 312 headers: content-length: '307' content-type: application/json server: gunicorn/19.9.0 method: GET redirectChain: [] statusCode: 200 url: https://httpbin.org/get ValidationError: properties: loc: items: anyOf: - type: string - type: integer type: array title: Location msg: type: string title: Message type: type: string title: Error Type input: title: Input ctx: type: object title: Context type: object required: - loc - msg - type title: ValidationError securitySchemes: siwx: type: apiKey in: header name: SIGN-IN-WITH-X description: CAIP-122 wallet signature for repeat access after payment servers: - url: https://curl-http-request.underscoredone.com description: Production tags: - name: http request - name: curl - name: fetch url - name: make http request - name: http client - name: api testing - name: send http request - name: rest client - name: get post request - name: follow redirects - name: http get - name: web request - name: fetch raw response - name: test endpoint - name: http fetch x402Version: 2 x-payment-accepts: - scheme: exact network: eip155:8453 payTo: '0xE9740820225B3918b4ddd1292C7cA4Ca0e2C2F08' asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913' - scheme: exact network: solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp payTo: 8ugAWAXDB8V18kiUrGZTq1oMvU3C6Fxs8hfC6rvzQT3b asset: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v