Aura Chat business messaging (Phase 1)
Send Page inbox messages that surface in Aura Chat — one app, no separate business client.
Business asset linking (Meta parity): Page ↔ Auragram ↔ WhatsApp connections are documented in META_BUSINESS_ASSET_CONNECTIONS.md. Consumer Aura Chat DMs stay product-isolated; only linked Page business threads use aurachat APIs.
Products
Enable Aura Chat Messaging (aurachat) on your developer app. Link a PAGE asset in Business settings.
Scopes: aurachat:send, aurachat:read (live mode + App Review).
Opt-in
Users must opt in for proactive template messages (outside the 24h session window):
- Messaging a Page records opt-in (
source: message). - Mobile:
POST /api/mobile/aurachat/page-messaging/opt-inwith{ pageId, purposes: ["transactional"] }.
Webhook: aurachat.opt_in.
Send (Graph)
POST https://aura.aisastra.com/api/v1/graph
Authorization: Bearer <user OAuth token>
Content-Type: application/json
{
"node": "page/PAGE_ID/messages",
"to": "USER_ID",
"type": "template",
"templateName": "order_update",
"templateParams": { "order_id": "ORD-1", "status": "shipped" }
}
Session message (user messaged the Page within 24h):
{
"node": "page/PAGE_ID/messages",
"recipient_user_id": "USER_ID",
"text": "Your refund is processing."
}
Default templates: hello_world, order_update (override in app platformConfig.aurachat.templates).
Webhooks
| Event | When |
|---|---|
page.message.received | User messages the Page (existing) |
page.message.sent | Your app sent as the Page |
aurachat.message.sent | Same delivery, Aura Chat product envelope |
aurachat.opt_in | User opted in to Page messages |
Requirements
- Page published and Aura Chat surfacing enabled.
- App linked to Page (
DeveloperAppBusinessAssettypePAGE) or Page owner token.
Wearables GlassCards use the same Page/app relationship via the wearables product.
Phase 2
Opt-out
POST /api/mobile/aurachat/page-messaging/opt-out with { pageId, userId } → webhook aurachat.opt_out.
Mobile inbox list
GET /api/mobile/aurachat/page-messaging/inbox?userId=… — Page threads with aurachat://page-inbox deep links.
Graph read
GET /api/v1/graph?node=page/PAGE_ID/conversations — requires aurachat:read.
Templates (console)
App → Products → Aura Chat → message templates. Status draft | approved | rejected. Live apps require approved templates for proactive sends.
Aura AI on Page inbox
Page managers: Inbox automation → enable Aura AI first reply. Uses Gemini when GEMINI_API_KEY is set; replies as Page Name · Aura AI.
Phase 3
Page threads in Aura Chat Chats
Users with an active opt-in see Page business threads in the main Chats bootstrap (merged with DMs). Same threads as GET /api/mobile/aurachat/page-messaging/inbox.
Handover (Aura AI ↔ human ↔ developer bot)
Graph:
POST /api/v1/graph
{
"node": "page/PAGE_ID/conversations/CONVERSATION_ID/handover",
"action": "take_thread_control"
}
Actions: take_thread_control, pass_thread_control, request_thread_control, return_thread_control (optional returnTo: aura_ai | page_human).
When your app sends a Page message, it takes developer control and Aura AI stops auto-replying until control is returned.
Webhook: aurachat.handover.
Page owners (mobile): POST /api/mobile/aurachat/page-messaging/handover with { conversationId, mode: "aura_ai" | "page_human" }.
Template review (live apps)
Live apps cannot self-approve templates. Use Submit for review (pending_review). Platform staff: GET/POST /api/developers/admin/aurachat/template-queue.