A Swarme API key is created in the dashboard, not by guessing a REST path. The URL that works is https://swarme.io/dashboard?tab=developers. https://swarme.io/dashboard/developers returns 404. Bookmark the tab query. Do not दस्तावेज़ the 404 path as the developers portal.

You must be signed in first. The login entry is https://swarme.io/login, which resolves से /en/login. If the फ़ॉर्म sat idle, the toast is Your secure फ़ॉर्म token expired. Please go back and try again. That is a CSRF expiry, not a missing developers tab. An unauthenticated quote is HTTP 419 (Your secure request token expired.). An unauthenticated balance is HTTP 401. Get a session, then open the tab.

On first visit a cookie banner and a language modal (en, ar, es, fr, hi, ha, zh, he, pt) appear. Finish them, then reload /en/login before you बनाएँ a key so you are not posting a token issued under those prompts.

बनाएँ the key on the tab that exists

On the developers tab, बनाएँ a key for the client that will call the API. The observed client name on the QA key was Swarme Monitor QA. The secret is shown once. The prefix looks like sk_sw_QdE8Xfgj.... Copy it immediately. This पेज will not show the full secret again.

Do not print a full key in a ticket, a चैट, a screenshot album, or a repository. Do not put it in a query string. Send it as Authorization: Bearer. Contract details live at https://swarme.io/developers. The documented sequence is still खोज, Describe, Quote, Run. A key does not skip quote.

Spend limit on the observed key was 0, recorded as the Workspace default. spend_limit_minor 0 is not a funded wallet. GET /api/account/balance on that account returned $0.00 with billing_mode metered_observe and wallet_policy observe. Dashboard Lifetime can still show four payments and a member date of Jul 2026 while the API wallet reads $0.00. The key is a credential. It is not a top-up.

Scopes are a list, not a master switch

Observed scopes on the created key:

  • capabilities:read
  • capabilities:quote
  • capabilities:run
  • uploads:write
  • artifacts:read
  • billing:read

Give a client only the scopes the job needs. खोज and describe need capabilities:read. Quote needs capabilities:quote. Run needs capabilities:run. फ़ाइल tools that take अपलोड_ids need uploads:write if you actually अपलोड. Reading outputs needs artifacts:read. Balance needs billing:read.

Scopes do not override execution.machine_run_status. 1491 of 1940 catalog tools are describe_only and block quote/run. 439 are supported. 10 are requires_worker. A key with capabilities:run will not execute pdf-से-word: that slug is client_browser, describe_only, and server_receives_फ़ाइल_bytes false. merge-pdf is async_worker, supported, and server_receives_फ़ाइल_bytes true. Read describe before you attach uploads:write and send bytes.

Prove the key with an included run, not with a screenshot of the tab

A completed uuid-generator call used this kind of key. Empty input {} quoted and ran. The price was $0.00 included. The quote lock lasted 900 seconds. idempotency_required_for_client was true. The output UUID was 4cd3c7b6-0495-447a-8efd-9a1374f7599c. Public पेज: https://swarme.io/टूल/uuid-generator.

export SWARME_API_KEY="YOUR_SWARME_API_KEY" export SWARME_BASE_URL="https://swarme.io" curl -X POST "$SWARME_BASE_URL/api/capabilities/uuid-generator/quote" \ -H "Authorization: Bearer $SWARME_API_KEY" \ -H "Content-Type: application/json" \ -d '{"input":{},"client_type":"api"}'

Those placeholders are the documented shape. They are not credentials. If this quote returns HTTP 419, the Bearer हेडर was not accepted. Do not debug that as a UUID bug.

MCP uses the same key. POST https://swarme.io/mcp initialize (protocolVersion 2025-03-26) identified Swarme Capability MCP Alpha 2026.07.15-wallet-alpha. tools/list returned 22 tools. Initialize does not replace the developers tab. It consumes the key you created there.

What a new key will not fix

  • Category filters still use slugs such as web-seo, security-network, and ai-tools. Homepage labels are not the query value.
  • GET /api/capabilities still caps at 500. The catalog is 1940 tools (560 मुफ़्त, 1380 प्रीमियम).
  • Quote can succeed and run can still return HTTP 422. Observed bodies include Use labeled address lines in key: value फ़ॉर्म or provide JSON., Domain must contain valid ASCII hostname labels., backlinks must contain between 1 and 1,000 records., and Enter valid Base64URL input.
  • Other completed slugs (accessibility-statement-generator, add-line-numbers, alphabetizer, article-rewriter-assistant, ascii-table-generator, base64-text-decoder) still went through quote then run. The key did not collapse those steps.

Checklist

  1. Sign in at /en/login. Reload if you see the form-token toast.
  2. Open https://swarme.io/dashboard?tab=developers. Ignore /dashboard/developers.
  3. बनाएँ a key. Store the secret once. Record the prefix sk_sw_QdE8Xfgj... only as a handle, never the full value.
  4. Confirm scopes match the job. Confirm spend limit 0 if that is the Workspace default you actually received.
  5. Call describe, then quote, then run. Poll until completed.

If the job then becomes a फ़ाइल अपलोड, read how से choose a secure ऑनलाइन फ़ाइल टूल before uploads:write. For pausing an agent before quote/run, see AI टूल routing.