Rendering infrastructure for agents
Agents can discover capabilities, obtain pricing, submit work, track status and retrieve results through one public API without browser automation.
Discover live service facts
Base API URL: https://api.farpy.com/v1. Authenticate protected requests with Authorization: Bearer $FARPY_API_KEY. Agents should read the public machine endpoints at runtime instead of hard-coding price, capacity, or request limits.
- GET /v1/health first; stop if it fails.
- GET /v1/capabilities
- GET /v1/pricing
- GET /v1/limits
- GET /v1/openapi.json
Model Context Protocol (MCP)
HTTP MCP V1 at https://api.farpy.com/mcp is live. Let an AI agent inspect, quote, run, and return a verified result. See MCP for agents. Canonical tools: farpy_inspect, farpy_quote, farpy_start, farpy_status, farpy_download, farpy_receipt. farpy_start is the only spend tool. Do not default to farpy_render.
Live discovery still: capabilities, pricing, limits.
Agent-ready path
- Use a Job API
farpy_agent_key for inspect/start. Account Settings keys are a different store. prepare()/ inspect — no spend. Read quote_id, frames, and price_cents. The server quote is the price.- Decide. Then
start(quote_id=..., legal_acceptance="FARPY_LEGAL_V1", idempotency_key=...). Do not send price_cents.max_job_centson the key is the maximum charge. - Poll status or consume the signed terminal webhook.
- Download the ZIP and receipt. SHA-256 is file identity, not art review.
One-call is deprecated
import os
from farpy_client import LEGAL_ACCEPTANCE_V1, FarpyClient, FarpyError
client = FarpyClient(os.environ["FARPY_AGENT_KEY"], base_url="https://farpy.com")
prepared = client.prepare("scene.blend") # no spend
started = client.start(
prepared["upload_id"],
quote_id=prepared["quote_id"],
legal_acceptance=LEGAL_ACCEPTANCE_V1,
idempotency_key=f"farpy-start:{prepared['upload_id']}:{prepared['quote_id']}",
)
print(started["job_id"])Download farpy_client.py · Open the Python example · Error contract · Webhook contract
Production flow
inspect (.blend) — NO SPEND read locked quote start (quote_id + FARPY_LEGAL_V1) — SPEND status / webhook download ZIP receipt / SHA-256
API properties
- API-key authentication
- Price: the locked quote. Limited website and API ordering are open: 1–10 frames per job, one active job, shared slots, while slots remain. MCP ordering has not been validated.
- Frame ranges from 1 to 10 frames during limited availability per request
- 100 MiB upload limit
- Idempotent submission support
- 60 requests per minute plus burst capacity
- Cancellation before worker claim
- Signed terminal webhooks
- Receipts and proof artifacts
- Machine-readable OpenAPI 3.1 specification
Start here
curl -sS https://api.farpy.com/v1/capabilities \ -H "Authorization: Bearer $FARPY_API_KEY"