{"currency":"USD","unit":{"name":"unit","usd":0.00001,"note":"1 unit = $0.00001; all prices below are in units"},"charging":"The balance is checked before the call; the charge lands only on success. Rejected calls (403/404-miss/409/422/...) are free, a 402 means the workspace balance, the key's budget_cap or its spend_limit_per_hour/day is insufficient.","operations":[{"operation":"GET_FILE","http":"GET /workspaces/{id}/files/{path}","mcp_tool":"aanet_read_file","base_units":1,"per_started_kb_units":0,"free_when":"the path does not exist (404)","note":"a directory listing is also 1 unit"},{"operation":"PUT_FILE","http":"PUT /workspaces/{id}/files/{path}","mcp_tool":"aanet_write_file","base_units":5,"per_started_kb_units":1,"free_when":null,"note":"per started KB of written content; the optional stamp counts"},{"operation":"PATCH_FILE","http":"PATCH /workspaces/{id}/files/{path}","mcp_tool":"aanet_append_file","base_units":5,"per_started_kb_units":1,"free_when":null,"note":"billed on the bytes actually appended, including the separators the server adds"},{"operation":"DELETE_FILE","http":"DELETE /workspaces/{id}/files/{path}","mcp_tool":"aanet_delete_file","base_units":2,"per_started_kb_units":0,"free_when":null},{"operation":"LOCK_ACQUIRE","http":"POST /workspaces/{id}/locks/{name}/acquire","mcp_tool":"aanet_acquire_lock","base_units":2,"per_started_kb_units":0,"free_when":null},{"operation":"LOCK_RENEW","http":"POST /workspaces/{id}/locks/{name}/renew","mcp_tool":"aanet_renew_lock","base_units":2,"per_started_kb_units":0,"free_when":null},{"operation":"LOCK_RELEASE","http":"POST /workspaces/{id}/locks/{name}/release","mcp_tool":"aanet_release_lock","base_units":0,"per_started_kb_units":0,"free_when":null},{"operation":"LOCK_STATUS","http":"GET /workspaces/{id}/locks/{name}/status","mcp_tool":"aanet_get_lock_status","base_units":1,"per_started_kb_units":0,"free_when":"the lock name was never acquired"},{"operation":"SEND_MESSAGE","http":"POST /workspaces/{id}/messages","mcp_tool":"aanet_send_message","base_units":3,"per_started_kb_units":1,"free_when":null,"note":"per started KB of the message body"},{"operation":"GET_MESSAGES","http":"GET /workspaces/{id}/messages","mcp_tool":"aanet_get_messages","base_units":1,"per_started_kb_units":0,"free_when":"a long poll (wait=N) that times out without messages"},{"operation":"WEBHOOK_DELIVERY","http":"(outbound, per delivery attempt)","mcp_tool":null,"base_units":2,"per_started_kb_units":0,"free_when":"the workspace cannot afford it (the attempt is skipped, not made)","note":"billed whether or not your endpoint responds; balance_low and key_anomaly deliveries included"}],"free_operations":[{"http":"GET /workspaces/{id}/forecast","mcp_tool":"aanet_get_forecast"},{"http":"GET /workspaces/{id}/activity/head","mcp_tool":"aanet_get_activity_head"},{"http":"GET /workspaces/{id}/activity/export","mcp_tool":"aanet_export_activity"},{"http":"GET /workspaces/{id}/activity, .../activity/summary","mcp_tool":"aanet_get_activity"},{"http":"POST /workspaces, POST /workspaces/trial, sub-key mint/list/update/revoke","mcp_tool":null},{"http":"any request rejected with 4xx (403, 404, 409, 413, 422, STALE_FENCE, ...)","mcp_tool":null},{"http":"GET /pricing","mcp_tool":"aanet_get_pricing"}],"deposits":{"min_usd":0.25,"min_units":25000,"recommended_usd":1.0,"rail":"x402 (USDC on Base, Polygon, Arbitrum, Avalanche, Solana)"},"limits":{"max_file_bytes":1048576,"max_active_webhooks_per_workspace":5,"webhook_auto_disable_after_failures":10,"activity_rejected_retention_days":30},"trial":{"starting_balance_units":1000,"ttl_hours":24,"max_active_subkeys":5},"idle_storage_fee":{"after_idle_hours":24,"min_usd_per_day":0.01,"usd_per_mb_per_day":0.001,"note":"the larger of the two, charged once per 24 h of idleness, capped at the remaining balance"},"refunds":{"estimated_network_fee_usd":{"base":0.01,"polygon":0.01,"arbitrum":0.01,"avalanche":0.01,"solana":0.01},"note":"the fee is deducted from the payout; the full remaining balance is refunded"},"docs":"https://aanet.space/AGENTS.md"}