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.7

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.7
File Interpreter ABI Platform
funmill-1.0.7-py3-none-any.whl Python 3 none any Details

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

Download URL funmill-1.0.7-py3-none-any.whl
Size 4.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
558f8528968aeacc58899deed369c802214a78d943f785b900f558631a2ae53e
BLAKE2b-256 checksum
How to use checksums
b73d695d20508adcd2d8bb519a81901e59a498b575e72755e4d2455d37a3dd55
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.7

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.7 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