Tycoon
Sign In

Publish a workspace method as an API

Publish a workspace method as an API

Any workspace OWNER or ADMIN can use the same developer-key endpoint to package one current, Markdown-only Company Skill as a customer-callable Task API. Software Team is the first intended use, not a hard-coded exception: a marketing, research, operations, or other workspace can publish its own method through the identical backend contract. This release does not add a workspace UI, marketplace, checkout, payout, revenue share, or customer-account system.

http
POST /api/developer/api-keys
Content-Type: application/json

{
  "companyId": "<seller-workspace-id>",
  "name": "Acme Software Team API — customer A",
  "task_policy": {
    "skill_id": "<company-skill-id>",
    "max_task_budget_usd": 5,
    "credit_usd": 100,
    "runtime": {
      "harness": "ClaudeCode",
      "model": "ClaudeFable5",
      "reason": "This published service uses our verified coding runtime.",
      "catalogVersion": "<from-runtime-catalog>",
      "catalogDigest": "<from-runtime-catalog>"
    }
  }
}

The returned tyc_... token is shown once. Give that token to the customer; they call the normal /api/public/tasks endpoints. The policy freezes the selected Skill revision and optional runtime receipt at issuance. Each call creates a fresh isolated task-bound workspace, copies that exact pinned Skill revision there, and binds it to the canonical Task. The customer's bearer key cannot select another workspace, Skill, runtime, or cadence, and has only tasks:read and tasks:write scope.

credit_usd is a Task-budget allocation, not a payment collected by Tycoon. The seller charges their customer however they choose. On each accepted call, Tycoon atomically reserves the caller's requested Task budget (or the per-Task maximum when omitted) from that key's allocation; a request cannot exceed either bound. Actual model/runtime/media/connector usage is still metered against the seller workspace. Allocation is not an automatic refund or revenue ledger in this release; revoke and replace a key to stop future work.

Use GET /api/developer/api-keys?companyId=<seller-workspace-id> to inspect a key's pinned revision, allocation, and reserved amount without exposing its token. The issuing browser session is required for this management endpoint.

Choose a runtime

An ordinary workspace key may choose a currently supported execution profile per Task. Read the live, content-addressed catalog first:

bash
curl -sS https://tycoon.us/api/public/task-runtime-catalog \
  -H "Authorization: Bearer $TYCOON_API_KEY"

Pass the returned version and digest with the desired harness, model, and a short reason in runtime on POST /tasks. Tycoon rejects a stale catalog, unknown model, or unavailable employee instead of silently substituting a different runtime. A published-method key fixes this choice at issuance, so its customer cannot override it.

Next steps

这篇文章对你有帮助吗?

还有问题?

在聊天中问 Astra — 她和你看到的是同一份文档。

打开聊天