1 USD ≈ 27,000 credits · display only
Reference rate may change over time.
1 USD ≈ 27,000 credits · display only
Reference rate may change over time.
Common questions about integrating with Gommo and the optional Gommo Developer.
Upstream status
Catalog, jobs, and login call Gommo public API (v2.api.gommo.net, api.gommo.net). If upstream is down, /models/ and Playground Send will fail — docs and UI still load. Retry when upstream recovers.
Coming to Gommo platform
Features like BYOK, SDK, webhooks, and portal billing are previews of the Gommo platform — not permanent self-host-only APIs. See the Gommo platform roadmap.
Public Gommo API (recommended): call https://v2.api.gommo.net and https://api.gommo.net directly — see Gommo public API. No gateway required.
Gommo Developer (optional): self-host this repo for portal dev, billing, or BYOK previews — not required for standard Gommo API integration. See Deploy → Self-host (advanced).
Direct integration (recommended):
<registration-domain>)/app/playground/ — sign in on the docs site. The Endpoints tab shows full public Gommo URLs per operation.
POST https://api.gommo.net/api/apps/go-mmo/auth/login with email, password, domain (registration domain). Response: access_token. See Authentication.
POST https://api.gommo.net/api/apps/go-mmo/auth/change-password with access_token, domain, current_password, new_password (form). Not the same as AI project set_password. Self-host: POST {gateway}/gateway/auth/change-password (Bearer + JSON). See Account settings — change password.
POST https://api.gommo.net/api/apps/go-mmo/users/sendBalances with user access_token, domain, type=credit_ai, username, value, message (form). Not merchant /admin/credits/send. Min 10,000 / max 20,000,000 per transfer; sender must keep > 500,000 credits after. Upstream may return HTTP 200 with error: 1 — parse message. Self-host: POST {gateway}/gateway/credits/transfer (Bearer + JSON). See Account — transfer credits.
Dealer Account → Transaction History uses POST https://api.gommo.net/api/apps/go-mmo/users/paymentsHistory with user access_token, domain, limit (dealer UI often 500), time_start / time_end (0 = all time), optional currency_name, source, language (form). Response is usually { data: [...], runtime } — sum IN/OUT/NET client-side from fluctuation_type and value_change. Not POST /api/v2/usage-history (per-job stats/logs). Self-host: POST {gateway}/gateway/credits/transactions (Bearer + JSON). See Account — transaction history.
Dealer Account → Devices uses POST https://api.gommo.net/api/v2/devices with user access_token, domain, and action: register, list, rename, or disable. List/register usually send current_device_id and device_* from the browser; rename and disable target form device_id (session UUID from data.items[]), not id_base. Response is typically { success, message?, data } — list returns data.items and data.current_device_id. Self-host: POST {gateway}/gateway/devices (Bearer + JSON). See Account — session devices.
Dealer Support uses POST https://api.gommo.net/api/apps/go-mmo/support/* — myTickets (list), create (subject, issue_type, description), detail and reply with public ticket_id_base (SUP-… — same as ticket_id_hash from create, not numeric ticket.id). Self-host: /gateway/support/tickets (+ /create, /detail, /reply) with Bearer + JSON. See Account — support tickets.
Dealer Partner Program (affiliate) uses POST https://api.gommo.net/api/apps/go-mmo/users/partner_program with action_type=status (ranks, rules, application) or apply (Join form: bank fields, accept_rules=1). Self-host: POST /gateway/partner-program with Bearer + JSON. Prefer application?.status over can_join alone for pending review. See Account — partner program.
Creator Rewards uses POST https://api.gommo.net/api/apps/go-mmo/users/creator_rewards with action_type=status, pool, or apply (Join with payout_pref=credit or cash + bank fields). Self-host: POST /gateway/creator-rewards. Prefer program.application?.status for pending review. See Account — creator rewards.
Direct Gommo API (recommended): include domain in every form body matching the user's registration domain.
Operators who self-host may omit domain on some paths — see Deploy → Self-host (advanced).
GOMMO_ACCESS_TOKEN in server .env — for /admin/* and legacy PayOS fulfillment only. Not required for default Gommo top-up or direct public API calls. Never in browser apps.
You guessed parameters. Always list models first and use values from the catalog. See Models.
Direct API: poll every 3.5s, max 80 attempts (~5 min).
Video jobs often need 1–5 minutes.
No on the public integrator API — poll job status client-side. Payment and gateway observability webhooks are different — see Webhooks (concepts).
Only if you deploy this repo for portal billing, BYOK, or dev proxy — not for normal Gommo integration. See Deploy → Self-host (advanced).
No — for standard Gommo public API integration you only need users with a Gommo access_token and enough credits on their Gommo account (see Authentication).
/app/credits/ and self-host /billing/* are Coming to Gommo platform — for operators testing checkout, not the default integrator contract. When Gommo ships official developer billing, use Gommo's domains and docs — not localhost:3001.Operators / portal preview (not required for Tier A integrators):
Default: Gommo top-up — requires self-hosted gateway: POST /billing/payment/create (user Bearer), then poll POST /billing/payment/sync until paid: true. Portal: /app/credits/. Recipe: Gommo topup.
Legacy (optional): PayOS via POST /billing/topup/create when PAYOS_* and merchant env are configured.
Check GET /billing/status on your self-hosted gateway — expect billingMode: "gommo" and gommoPayment: true for the default flow.
Common issues:
username in the request bodypackageIdpayosConfigured or merchantReady is falseThat path is legacy PayOS only. PayOS or merchant env is not configured. For new integrations use POST /billing/payment/create instead. Check GET /billing/status.
No — billing is optional topup. Users need Gommo credits (from upstream account or topup).
Recommended: Gommo remote MCP — 10 tools, token from /app/token/. JSON for Cursor, Claude, ChatGPT, and other hosts.
Production apps: HTTP to Gommo public API — see Gommo public API. Not MCP.
Optional: Gommo Developer MCP server only if IDE must call your own GATEWAY_URL. npm alias: @ai-gateway/mcp-server.
All 10 tools: account/credit, model catalog, image & video create, status & stream polling, task history, and notifications. See tool reference and use cases & prompts.
Yes — any MCP client that supports remote url + custom headers. See Other MCP hosts. ChatGPT/Gemini web apps cannot use MCP; use HTTP to Gommo directly instead.
Yes. Login returns a Gommo user access_token. Use it in Gommo MCP headers (Gommo-Token and Authorization: Bearer …) and as Authorization: Bearer … for HTTP calls to v2.api.gommo.net and api.gommo.net.
No for Gommo MCP — tools call Gommo's hosted MCP directly.
Yes only for the optional Gommo Developer MCP server (GATEWAY_URL required). npm alias: @ai-gateway/mcp-server.
The optional Gommo Developer MCP server lets merchants point Cursor tools at their gateway URL instead of Gommo remote MCP. See Self-hosted MCP. Published on npm as @ai-gateway/mcp-server. Most users should use Gommo MCP or direct HTTP.
When a browser app on another origin calls a self-hosted gateway (e.g. localhost:5175 → localhost:3001). Not needed for direct Gommo API calls or server-side clients.
Set GATEWAY_CORS_ORIGIN comma-separated origins.
See Deploy & ops and Best practices.
Off by default (NODE_ENV=production). Enable with GATEWAY_PORTAL=true only if you accept the risk.