Skip to content

Home feed app ​

Build a dealer-style home (mixed timeline + project context) using the Gommo public API. Replace %REGISTRATION_DOMAIN% with your registration domain (Authentication).

Playground

Playground when running npm run docs:stack: Home feed (newfeeds), Community (explore), Project workspace / Project library / Project billing, and Platform workers — see AI projects and Credit pools.

1. Login and profile ​

powershell
$domain = $env:GOMMO_API_DOMAIN
if (-not $domain) { throw 'Set GOMMO_API_DOMAIN' }
$h = @{ Authorization = "Bearer $env:TOKEN"; 'Content-Type' = 'application/x-www-form-urlencoded' }
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/ai/me' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain"

2. List projects (pick project_id) ​

powershell
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/ai/projects' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain"

Use id / id_base from data[] (often default for the main project).

Project manager V2 ​

Dealer apps use POST https://api.gommo.net/api/v2/ai-projects with typed action values: CRUD (list, create, get, update, delete), set_password and optional password on get for protected projects, members (member_list, member_kick, invite, invite_revoke), set_budget, modal stats and activity_list, plus language and device fields. Full table and Playground worker map: AI projects reference.

powershell
$list = "access_token=$env:TOKEN&domain=$domain&action=list&language=vi"
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/v2/ai-projects' -Headers $h -Body $list

$create = "access_token=$env:TOKEN&domain=$domain&action=create&name=My+project&description=At+least+ten+chars+here&language=vi"
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/v2/ai-projects' -Headers $h -Body $create

$idBase = '<id_base_from_list>'
$get = "access_token=$env:TOKEN&domain=$domain&action=get&id_base=$idBase&language=vi"
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/v2/ai-projects' -Headers $h -Body $get

$upd = "access_token=$env:TOKEN&domain=$domain&action=update&id_base=$idBase&name=My+project&description=Updated+description+here&language=vi"
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/v2/ai-projects' -Headers $h -Body $upd

$del = "access_token=$env:TOKEN&domain=$domain&action=delete&id_base=$idBase&language=vi"
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/v2/ai-projects' -Headers $h -Body $del

Use id_base from list/create responses as project_id on newfeeds and jobs. Delete uses id_base, not numeric id.

Project modal — Media tab (images, video, audio, music lists) uses other endpoints — see AI projects → Media tab.

2b. Devices (optional boot step) ​

powershell
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/v2/devices' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain&action=list&language=EN"

Many home apps call this once at startup; pass the same device_id / device_name / device_info on newfeeds when the platform expects them.

2c. Support Center (optional) ​

List tickets:

powershell
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/apps/go-mmo/support/myTickets' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain&language=EN"

Create, thread detail, and replies use …/support/create, …/detail, …/reply with public ticket_id_base (SUP-…). See Account — support tickets.

2d. Partner program (optional) ​

Affiliate landing and Join form:

powershell
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/apps/go-mmo/users/partner_program' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain&action_type=status&lang=en&language=EN"

Apply uses the same URL with action_type=apply and payout fields. See Account — partner program.

2e. Creator Rewards (optional) ​

Landing, pool, and Join:

powershell
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/apps/go-mmo/users/creator_rewards' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain&action_type=status&language=EN"
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/api/apps/go-mmo/users/creator_rewards' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain&action_type=pool&language=EN"

Apply: same URL with action_type=apply, payout_pref=credit, contact fields, and accept_rules=1. See Account — creator rewards.

3. Public timeline (Bảng tin) ​

powershell
$body = "access_token=$env:TOKEN&domain=$domain&privacy=PUBLIC&limit=30&project_id=default&language=VI"
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/ai/newfeeds' -Headers $h -Body $body

Paginate with after_video_id (and after_image_id on my feed when privacy is empty).

4. Optional — community explore ​

Videos: POST https://api.gommo.net/api/apps/go-mmo/ai/public-videos
Images: POST https://api.gommo.net/api/apps/go-mmo/ai/images

Bearer optional for read-only browse; signed-in users get richer fields.

5. Optional — notifications bell ​

powershell
Invoke-RestMethod -Method Post -Uri 'https://api.gommo.net/ai/notifications' -Headers $h -Body "access_token=$env:TOKEN&domain=$domain&limit=30"

6. Item detail (after user taps a card) ​

powershell
$id = '<id_base_from_feed>'
Invoke-RestMethod -Method Post -Uri "https://api.gommo.net/ai/info/image/$id" -Headers $h -Body "access_token=$env:TOKEN&domain=$domain&id_base=$id"

Video: POST …/ai/info/video/{id} with form field video_id.

Self-host JSON (operators) ​

Mode B paths: POST {gateway}/gateway/newfeeds, /gateway/projects, /gateway/ai-projects, /gateway/news, /gateway/changelogs, /gateway/notifications, /gateway/devices, /gateway/support/tickets (+ /create, /detail, /reply), /gateway/info/image/{id} — see Endpoint map.

Optional — News & Updates tab ​

If your app includes a News nav item like the dealer site, load CMS articles with:

POST https://api.gommo.net/api/apps/go-mmo/news/getAll — domain, access_token, optional limit (often 100), lang_id.

This is not /ai/notifications (user inbox). Full reference: News & updates.

Optional — Changelogs (Recent updates) ​

If your app mirrors the dealer Recent updates modal or user-menu Changelogs entry:

POST https://api.gommo.net/api/apps/go-mmo/app/changelogs — domain, access_token, optional site_domain, format=flat, app=ai, limit, language.

This is not news/getAll (News tab). Full reference: Changelogs.

Out of scope (third-party home) ​

Dealer-hosted home UIs (for example a /home tab on the dealer web app) also call internal endpoints that you do not need to clone a third-party home feed product:

Typical Network nameWhy skip for integrators
mini-apps, mini-app-featuredDealer mini-app launcher
community-chat, get_roomsCommunity chat tab (separate product)
site-config, domain-config-getWhite-label skin / config (not news/getAll)
events, healthMarketing events, session keepalive

Document chat or mini-apps only when you intentionally build those features — not as part of this home feed recipe.

Next ​

→ Async job + poll · Media & jobs