skillfed

arcadepy

The official Python library for the Arcade API

arcadepy v1.10.0 330.5K downloads/30d#7,535 on PyPI54
Permissive license MIT Active released

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 arcadepy

uv

uv add arcadepy

poetry

poetry add arcadepy

Installing 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

Intended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: MacOSOperating System :: Microsoft :: WindowsOperating System :: OS IndependentOperating System :: POSIXOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9Topic :: Software Development :: Libraries :: Python ModulesTyping :: Typed

Tags

arcade api client pythonrest api client libraryasync http client wrappertyped api sdkarcade tool execution
api-clientasync-supporttype-hints

More Python Modules packages