cap_http_request

Retrieve HTTP status and body text from allowlisted endpoints.

2.0k|410|Updated Apr 17, 2026
One-click install
npx skills add https://github.com/espressif/esp-claw --skill cap-http-request
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cap_http_request
Source: https://github.com/espressif/esp-claw/tree/main/components/claw_capabilities/cap_http_request/skills/cap_http_request
Command: npx skills add https://github.com/espressif/esp-claw --skill cap-http-request

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

It helps you retrieve raw API or file content from a specific URL on an ESP device without relying on search results or unguarded browsing.

Core Features & Use Cases

  • Direct HTTP/HTTPS Requests: Request a known endpoint and receive the HTTP status plus response body text.
  • Allowlist-Safe Guardrails: Ensures the target host must match the configured allowlist, including redirect targets.
  • Optional Streaming to File: Save large/binary responses by streaming the response body directly to a specified path on the device.
  • Use Case: Download configuration or static data (e.g., tags.json) from a fixed endpoint, or push a guarded POST with a JSON payload to an API.

Quick Start

Call cap_http_request to GET https://skills-lab.esp-claw.com/raw/tags.json and return the HTTP status and body text.

Frequently Asked Questions about cap_http_request

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fetch JSON data from a specific API endpoint on an IoT device?

You can fetch JSON data on an IoT device by performing a guarded HTTP request to a known endpoint, which returns the HTTP status and body text. This requires a JSON input containing a valid http or https URL.

Can I download large binary files using an HTTP request on an ESP device?

Yes, you can download large binary files by streaming the HTTP response body directly to a specified save_path on the device. This prevents memory overload by applying size limits during the streaming process.

How do I send a POST request with a JSON payload to an allowlisted host?

You can send a guarded POST request with a JSON payload by specifying the URL, HTTP method, headers, and body in the JSON input. The target host and any redirect targets must match the configured allowlist.

What happens if an HTTP request redirects to a URL outside the allowlist?

If an HTTP request redirects to a URL outside the allowlist, the request will be blocked. Allowlist-safe guardrails ensure that all target hosts, including redirect destinations, match the configured rules.

Does this HTTP request method support custom headers and different HTTP methods?

Yes, the HTTP request method supports common HTTP methods with optional headers and an optional body. It enforces allowlist and redirect rules while retrieving raw content from the specified endpoint.