arcadepy
The official Python library for the Arcade API
What it is and what it does
Arcadepy is the official Python client for the Arcade REST API, generated using Stainless. It wraps HTTP communication with httpx and provides full type annotations for request parameters and response fields, supporting both synchronous and asynchronous usage patterns. The library handles API authentication via key, includes automatic retry logic for transient failures, and exposes detailed error types for different HTTP status codes.
Developers use it to call Arcade tools (like Google.ListEmails) from Python applications, with the library managing connection pooling, timeouts, and error recovery. It supports modern Python versions from 3.8 onward and can optionally use aiohttp as an alternative HTTP backend for improved async concurrency. Type hints and Pydantic models enable IDE autocomplete and early error detection.
Use it for:
- Execute Arcade tools (e.g., email, calendar, search) from a Python backend service with automatic retries and error handling.
- Build async workflows that call multiple Arcade tools concurrently using AsyncArcade and await syntax.
- Integrate Arcade API calls into existing Python applications with full type safety and IDE support via Pydantic models.
- Handle API errors gracefully by catching specific exception types (RateLimitError, AuthenticationError, etc.) and implementing custom logic.
- Configure per-request timeouts and retry policies for different tool execution scenarios.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides a typed Python client library for the Arcade REST API with both synchronous and asynchronous interfaces, handling authentication, retries, and error management.
Yes. The package is actively maintained, has no known vulnerabilities, uses a permissive MIT license, and provides a well-typed, low-friction way to call the Arcade API from Python. Install it if you need to execute Arcade tools from a Python application.
Install
arcadepy on PyPI
pip
pip install arcadepyuv
uv add arcadepypoetry
poetry add arcadepyInstalling arcadepy
Before you install
Low install friction with a pure-wheel distribution and six lightweight runtime dependencies. The package is actively maintained with recent commits and has been in development since October 2024.
License in practice
MIT license permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal obligations.
Quickstart
pip install arcadepy
import os
from arcadepy import Arcade
client = Arcade(api_key=os.environ.get("ARCADE_API_KEY"))
response = client.tools.execute(
tool_name="Google.ListEmails",
input={"n_emails": 10},
user_id="user@example.com",
)
print(response.id)
Requires an Arcade API key (typically set via ARCADE_API_KEY environment variable); Python 3.8 or later.
Verify before relying
- Whether the library's type coverage is complete across all Arcade API endpoints and response models.
- Performance characteristics and concurrency limits when using the async client at scale.
- Specific retry behavior and backoff strategy details beyond the stated 2 default retries.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.8) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 6 — anyio, distro, httpx, pydantic, sniffio, typing-extensions |
| Maintenance | actively maintained — 281 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 330,493/month — #7,535 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: arcadepy-1.10.0-py3-none-any.whl
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
cloudflareProvides a Python client library for the…
permissive · top 5,000 on PyPI
opencode-aiProvides a Python client library for the…
permissive · top 15,000 on PyPI
perplexityaiProvides a Python client library for the…
permissive · top 5,000 on PyPI
py-dactylA Python wrapper for the Pterodactyl Panel API…
permissive · top 15,000 on PyPI
composio-clientA Python client library for the Composio REST…
permissive · top 5,000 on PyPI
sambanovaProvides a Python client library for accessing…
permissive · top 15,000 on PyPI
steel-sdkProvides a typed Python client for the Steel…
permissive · top 15,000 on PyPI
agentex-clientProvides a typed Python REST client for the…
permissive · top 15,000 on PyPI
orb-billingA Python client library for the Orb billing…
permissive · top 5,000 on PyPI
groqProvides a Python client library for accessing…
permissive · top 1,000 on PyPI