Skip to main content

funmill-sdk

Python client SDK for the Funmill task API. Distributed on PyPI as funmill and imported as funmill.client, sharing the funmill namespace with the funmill-api package (funmill.api).

Install

pip install funmill

Usage

from funmill.client import FunmillClient, TaskSubmit

with FunmillClient(base_url="http://127.0.0.1:8812", api_key="replace-me") as client:
    client.health()  # {"status": "ok", "backend": "dagu"}

    accepted = client.submit_task(
        TaskSubmit(language="python", source="def main(): return 21 * 2")
    )
    task = client.get_task(accepted.task_id)
    result = client.get_result(accepted.task_id)

FunmillClient.from_env() builds a client from FUNMILL_URL, FUNMILL_API_KEY, and FUNMILL_TIMEOUT environment variables.

API

Method Route
health() GET /health
submit_task(TaskSubmit) POST /v1/tasks
submit_workflow(WorkflowSubmit) POST /v1/workflows
get_task(task_id) GET /v1/tasks/{task_id}
get_progress(task_id) GET /v1/tasks/{task_id}/progress
get_logs(task_id) GET /v1/tasks/{task_id}/logs
get_result(task_id) GET /v1/tasks/{task_id}/result
cancel(task_id, reason=...) POST /v1/tasks/{task_id}/cancel
rerun(task_id) POST /v1/tasks/{task_id}/rerun

All request/response failures raise FunmillAPIError(message, status_code).

  • funmill-api — the backend service this client talks to.
  • funmill-dev — the orchestration repo that aggregates both funmill-api and funmill-sdk.

Metadata

Release files for funmill 1.0.21

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for funmill 1.0.21
File Interpreter ABI Platform
funmill-1.0.21-py3-none-any.whl Python 3 none any Details

Release files / funmill-1.0.21-py3-none-any.whl

Download URL funmill-1.0.21-py3-none-any.whl
Size 4.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9051f4a71f50a4f6ba7c1289d3c082a74e77b2120632975bcd8caeb8df9c349c
BLAKE2b-256 checksum
How to use checksums
78079f1808a5e455ce2757da6911da24966db49443b7eea40ff8604c18939299
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.17 {"installer":{"name":"uv","version":"0.11.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Security for funmill 1.0.21

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.0.21 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page