requests
Best practices for HTTP client usage with Requests including sessions, error handling, and timeouts.
Works with
Agent Skills format with YAML frontmatter. Claude Code reads it as-is.
--- name: "requests" description: "Best practices for HTTP client usage with Requests including sessions, error handling, and timeouts." license: "MIT" --- # Skill: Requests Best practices for HTTP client usage with Requests including sessions, error handling, and timeouts. ## When to Use Apply this skill when making HTTP requests with the Requests library — sessions, auth, error handling, retries, and file uploads. ## Sessions - Use `requests.Session()` for connection pooling and persistent headers/cookies across multiple requests. - Configure `session.headers` for default auth tokens and user-agent strings. - Use `session.mount()` with `HTTPAdapter` for retry logic. ## Error Handling - Always call `response.raise_for_status()` to surface HTTP errors as exceptions. - Always set `timeout=(connect_timeout, read_timeout)` — never use infinite timeouts. - Handle `requests.ConnectionError`, `requests.Timeout`, and `requests.HTTPError` explicitly. ## Retries - Use `urllib3.util.Retry` with `HTTPAdapter` for automatic retries with backoff. - Configure status-based retries for transient errors (429, 500, 502, 503, 504). ## Security - Never disable SSL verification (`verify=False`) in production. - Pass credentials via environment variables, not hardcoded strings. - Use `auth=` parameter for HTTP auth rather than manually setting headers. ## Pitfalls - Don't forget timeouts — they default to None (infinite wait). - Don't use `requests.get()` for high-throughput — use sessions. - Close responses from streaming requests (`stream=True`) to release connections.
More General & Other skills
find-skills
vercel-labs/skills
Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.
grill-me
mattpocock/skills
A relentless interview to sharpen a plan or design.
grill-with-docs
mattpocock/skills
A relentless interview to sharpen a plan or design, which also creates docs (ADR's and glossary) as we go.

