Skip to main content

Python SDK for Wayforth — search engine and payment rail for AI agents

Project description

wayforth-sdk

PyPI

Python SDK for Wayforth — search, execute, and pay for ~5,000 indexed APIs from one client. Talks to the production gateway (https://gateway.wayforth.io) and authenticates with your wf_live_ API key.

Get a free key at wayforth.io/signup (100 credits, no card required).

Install

pip install wayforth-sdk
# or
uv add wayforth-sdk

Usage

from wayforth import Wayforth

client = Wayforth(api_key="wf_live_...")

# Search by natural-language intent (returns {"query", "results": [...], ...})
hits = client.search("translate text to Spanish")
for svc in hits["results"][:3]:
    print(f"{svc['name']}  WRI {svc['wri']}  tier {svc['coverage_tier']}")

# Execute a managed service directly — Wayforth holds the upstream key
result = client.execute("deepl", text="Hello world", target_lang="ES")
print(result)

# Intent-based routing — Wayforth picks the best service and runs it in one call
result = client.run("summarize this article", content="...")
print(result)

# Account
print(client.balance())   # credits + plan
print(client.me())        # whoami

Async client:

from wayforth import AsyncWayforth

async with AsyncWayforth(api_key="wf_live_...") as client:
    hits = await client.search("real-time stock data")
    result = await client.execute("alphavantage", symbol="AAPL")

Batch up to 5 calls in parallel:

client.execute_batch([
    {"slug": "groq",  "params": {"messages": [{"role": "user", "content": "2+2?"}], "model": "llama-3.3-70b-versatile"}},
    {"slug": "deepl", "params": {"text": "Good morning", "target_lang": "FR"}},
])

API

Wayforth(api_key, base_url="https://gateway.wayforth.io")

Synchronous client.

AsyncWayforth(api_key, base_url="https://gateway.wayforth.io")

Async client — same methods, all await-able.

Methods

Method Endpoint Description
search(query, limit=5, category=None, tier_min=None) GET /search Search by natural-language intent (1 credit)
query(ql, **kwargs) POST /query Structured WayforthQL query (starter tier+)
services(category=None, tier=None, limit=20, offset=0) GET /services List catalog services
get_service(service_id) GET /services/{id} One service by id (None if 404)
get_similar(service_id, limit=5) GET /services/similar/{id} Co-used services
execute(slug, **params) POST /execute Run a managed service by slug
execute_batch(calls) POST /execute/batch Up to 5 managed calls in parallel
run(intent, **params) POST /run Intent → search → rank → execute
pay(service_id, amount_usd=0.001, track="auto", query_id=None) POST /pay Pay via card credits or USDC
balance() GET /billing/balance Credit balance and plan
credits() GET /account/credits Credit summary
tier() GET /account/tier Current tier
usage_history() GET /account/usage/history Usage history
me() GET /auth/me Authenticated account (whoami)
get_tiers() GET /keys/tiers Tiers and pricing
stats() GET /stats Catalog statistics
status() GET /health Gateway health
get_identity(agent_id) GET /identity/{id} Agent identity / trust score
register_identity(agent_id, display_name="") POST /identity/register Register an agent identity

Errors

All raise subclasses of WayforthError (status_code attribute): AuthenticationError (401), InsufficientCreditsError (402, with credits_remaining / credits_required / upgrade_url), ServiceUnavailableError (5xx). Requests retry up to 3× on 5xx with exponential backoff.

Full API reference: gateway.wayforth.io/docs

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wayforth_sdk-0.8.9.tar.gz (9.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wayforth_sdk-0.8.9-py3-none-any.whl (7.4 kB view details)

Uploaded Python 3

File details

Details for the file wayforth_sdk-0.8.9.tar.gz.

File metadata

  • Download URL: wayforth_sdk-0.8.9.tar.gz
  • Upload date:
  • Size: 9.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wayforth_sdk-0.8.9.tar.gz
Algorithm Hash digest
SHA256 914b04fbc0a76ebb762053b970247e0fd39a166d0b913f3fbd781076dc377b3c
MD5 99d9ec673aada3fbafc80f5eb3566b22
BLAKE2b-256 082e921a33429c275e9f508041f32ef65af6d29a3ea785c7622d0c42cc5088c2

See more details on using hashes here.

File details

Details for the file wayforth_sdk-0.8.9-py3-none-any.whl.

File metadata

  • Download URL: wayforth_sdk-0.8.9-py3-none-any.whl
  • Upload date:
  • Size: 7.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wayforth_sdk-0.8.9-py3-none-any.whl
Algorithm Hash digest
SHA256 0d95df163060a9db5cb5ab9ab143710ca0c107a300caabc8c801b907a8428911
MD5 280021899280a6532044543ff4b4d2ea
BLAKE2b-256 83464a243fc3fbdfa9a868eddf0f053d415b7025dd7797f001f900ec5f24a9bc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page