Skip to content

Docs

Find and call capability over one API.

Vimiana exposes a small, stable API: browse the public registry, discover a capability for a task, then invoke it. Authentication is a bearer API key. Money is integer minor units (pence/cents).

1. Get an API key

Sign up, create an organisation, then mint a key from Customer → API keys. A key carries scopes (find, invoke) and is shown once.

Authorization: Bearer vm_live_xxxxxxxxxxxx

2. Browse the public registry

The registry is public — no auth needed. List capabilities, filter by category, or read one by slug. Public responses carry the consumer price only.

curl https://api.vimiana.com/v1/public/categories
curl "https://api.vimiana.com/v1/public/utilities?category=company_intelligence"
curl https://api.vimiana.com/v1/public/utilities/{slug}

3. Find a capability for a task

Describe the task and optional constraints; get back a ranked, customer-safe shortlist. Unknown filters are rejected, so a typo never silently no-ops. Budgets are minor units — { "amount_minor": 50, "currency": "GBP" } is £0.50.

curl -X POST https://api.vimiana.com/v1/find \
  -H "Authorization: Bearer vm_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "task": "enrich a UK company by registration number",
    "constraints": {
      "max_budget": { "amount_minor": 50, "currency": "GBP" },
      "verified_suppliers_only": true
    }
  }'

4. Invoke

Call one capability with a typed input. The response carries the result, any citations, and the exact charge against your wallet. Failed calls are not charged. An idempotency_key makes retries safe — the same key replays the original response instead of charging twice.

curl -X POST https://api.vimiana.com/v1/invoke \
  -H "Authorization: Bearer vm_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "utility_ids": ["<id from /v1/find>"],
    "input": { "registration_number": "01669462" },
    "options": { "include_citations": true, "idempotency_key": "order-42" }
  }'

5. Your first call, end to end

A complete find → invoke flow in a few lines. It picks the top-ranked capability from find and invokes it (requires curl and jq).

API=https://api.vimiana.com
KEY=vm_live_xxxxxxxxxxxx

# 1. Find a capability for your task
UTIL=$(curl -s -X POST $API/v1/find \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"task":"enrich a UK company by registration number"}' \
  | jq -r '.recommended_utilities[0].utility_id')

# 2. Invoke it
curl -s -X POST $API/v1/invoke \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d "{\"utility_ids\":[\"$UTIL\"],\"input\":{\"registration_number\":\"01669462\"},\"options\":{\"include_citations\":true}}" \
  | jq

6. Billing

You are charged per successful invocation at the capability's published price. Top up a wallet, optionally enable auto-top-up, and track spend under Customer → Usage. See pricing for the price classes.

Every endpoint, request shape, and response model is documented in the interactive API reference.