Docs
Refer a friend. Get a weekly-quota reset.Friend signs up and uses it → +1 reset (valid 30 days) · up to 10% cash back on their spend.
+1 resetGenerate link

Your First API Call

Complete login, funding and Key creation, then call an enabled model and reconcile delivery and cost.

Model portal and original request reconciliation (1.1 candidate)

Choose a logical model and exact profile UUID at Model API. GET /api/open/v1/catalog/entries is shared by the public portal and console. The playground uses your paired login sessions and a memory-only PAYG Key. The output default is min(1024,profile limit), using the output field declared by its wire. Never retry an execution POST automatically. Native stream termination is independent of financial settlement; inspect the original consumption/transport IDs, with unknown money shown as —.

V2 requires a complete-payload quote, an explicit charge cap and a separate user execution click. Parameter or price changes require a new quote. Key rotation preserves the monthly budget and unresolved holds. Only a fulfilled order can expose a manual continuation to the original profile; no secret, prompt or execution is restored. See the model platform contract.

Personal PAYG (pool 3)

Open the console, sign in and bind a contact method. Buy Credits using the QR code or payment link shown on the order. Only “fulfilled” confirms funding; “paid, pending fulfillment” is not available balance. Create a personal models:chat Key and save its one-time plaintext securely.

Read GET /api/open/v1/catalog/models and GET /api/open/v1/capabilities anonymously. Choose a model UUID or business ID in a supported format; a business ID may have multiple physical profiles. Scope readiness does not replace profile and price readiness. This candidate has no production journey acceptance receipt; model, media and sensitive-execution availability is not assumed.

sh
export ACOSMI_BASE_URL=https://acosmi.com
# Set ACOSMI_API_KEY securely and ACOSMI_MODEL_ID from the current catalog.
: "${ACOSMI_API_KEY:?Set your personal PAYG API Key}"
: "${ACOSMI_MODEL_ID:?Choose a supported catalog model/profile}"
curl --fail-with-body "$ACOSMI_BASE_URL/api/open/v1/models/$ACOSMI_MODEL_ID/chat" \
  -H "Authorization: Bearer $ACOSMI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"messages":[{"role":"user","content":"Hello"}],"stream":false,"max_tokens":64}'
export ACOSMI_BASE_URL=https://acosmi.com
# Set ACOSMI_API_KEY securely and ACOSMI_MODEL_ID from the current catalog.
: "${ACOSMI_API_KEY:?Set your personal PAYG API Key}"
: "${ACOSMI_MODEL_ID:?Choose a supported catalog model/profile}"
curl --fail-with-body "$ACOSMI_BASE_URL/api/open/v1/models/$ACOSMI_MODEL_ID/chat" \
  -H "Authorization: Bearer $ACOSMI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"messages":[{"role":"user","content":"Hello"}],"stream":false,"max_tokens":64}'

Keep the response request identifier and filter usage/bills by the consumption request ID. Reconcile settlement, holds, pending reconciliation and reversals. Pending is not free. Page summaries and complete CSV exports use the same time bounds and filters. Do not blindly retry a POST: a transport timeout does not prove non-execution. Revoke the Key after testing.

Member OAuth SDK read example

This is a separate credential journey: Client.create/login uses member OAuth and does not fund or consume pool 3. The example defines client and uses the actual action field. Sensitive actions additionally require server admission, scopes, step-up and a valid funding contract.

ts
import { Client, ScopeComplianceEvidenceRead } from "@acosmi/sdk-ts";

const client = await Client.create({ serverURL: "https://acosmi.com" });
await client.login("Read-only integration", [ScopeComplianceEvidenceRead]);
const capabilities = await client.compliance.getCapabilities();
console.log(capabilities.map(({ action, executable, state }) => ({ action, executable, state })));
import { Client, ScopeComplianceEvidenceRead } from "@acosmi/sdk-ts";

const client = await Client.create({ serverURL: "https://acosmi.com" });
await client.login("Read-only integration", [ScopeComplianceEvidenceRead]);
const capabilities = await client.compliance.getCapabilities();
console.log(capabilities.map(({ action, executable, state }) => ({ action, executable, state })));

Pin @acosmi/sdk-ts@2.19.6. Standard /v1 endpoints require compatV1Enabled and the corresponding profile gates. x-api-key has a separate authentication-header gate. Real candidate receipts are still required for funding, Key issuance and successful model calls.