Inbox
Unified inbox for DMs, comments, and mentions across all connected social platforms. Read and reply to messages from a single endpoint.
Authorization
ApiKeyAuth API key from your Aether dashboard
In: header
Query Parameters
Social media platform identifier
Filter to messages on a specific social profile
Response Body
application/json
application/json
curl -X GET "https://example.com/inbox"{ "success": true, "data": { "items": [ { "id": "msg_abc123", "organizationId": "string", "socialProfileId": "string", "platform": "instagram", "platformMessageId": "string", "type": "dm", "content": "string", "sender": { "platformUserId": "string", "username": "string", "displayName": "string", "avatarUrl": "http://example.com" }, "threadId": "string", "parentMessageId": "string", "isRead": true, "receivedAt": "2019-08-24T14:15:22Z", "createdAt": "2019-08-24T14:15:22Z" } ], "total": 0, "hasMore": true }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}Authorization
ApiKeyAuth API key from your Aether dashboard
In: header
Path Parameters
Response Body
application/json
application/json
application/json
curl -X GET "https://example.com/inbox/string"{ "success": true, "data": { "id": "msg_abc123", "organizationId": "string", "socialProfileId": "string", "platform": "instagram", "platformMessageId": "string", "type": "dm", "content": "string", "sender": { "platformUserId": "string", "username": "string", "displayName": "string", "avatarUrl": "http://example.com" }, "threadId": "string", "parentMessageId": "string", "isRead": true, "receivedAt": "2019-08-24T14:15:22Z", "createdAt": "2019-08-24T14:15:22Z" }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}Authorization
ApiKeyAuth API key from your Aether dashboard
In: header
Path Parameters
Response Body
application/json
application/json
curl -X DELETE "https://example.com/inbox/string"{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}Routes by message type:
- comment — posts a public reply on the platform (Instagram/Facebook comment APIs).
- dm / story_reply — sends a direct message via the Meta Messaging API
(
POST /{accountId}/messages) using the sender's platform user ID from ingestion.
Instagram and Facebook support DM replies. Other platforms return 422 DM_REPLY_UNSUPPORTED.
Meta enforces a 24-hour messaging window for DM replies after the user's last message.
Expired windows return 422 DM_OUTSIDE_24H_WINDOW.
Authorization
ApiKeyAuth API key from your Aether dashboard
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/inbox/string/reply" \ -H "Content-Type: application/json" \ -d '{ "content": "string" }'{ "success": true, "data": { "id": "msg_abc123", "organizationId": "string", "socialProfileId": "string", "platform": "instagram", "platformMessageId": "string", "type": "dm", "content": "string", "sender": { "platformUserId": "string", "username": "string", "displayName": "string", "avatarUrl": "http://example.com" }, "threadId": "string", "parentMessageId": "string", "isRead": true, "receivedAt": "2019-08-24T14:15:22Z", "createdAt": "2019-08-24T14:15:22Z" }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}Authorization
ApiKeyAuth API key from your Aether dashboard
In: header
Path Parameters
Response Body
application/json
application/json
application/json
curl -X PATCH "https://example.com/inbox/string/read"{ "success": true, "data": { "id": "msg_abc123", "organizationId": "string", "socialProfileId": "string", "platform": "instagram", "platformMessageId": "string", "type": "dm", "content": "string", "sender": { "platformUserId": "string", "username": "string", "displayName": "string", "avatarUrl": "http://example.com" }, "threadId": "string", "parentMessageId": "string", "isRead": true, "receivedAt": "2019-08-24T14:15:22Z", "createdAt": "2019-08-24T14:15:22Z" }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}{ "success": false, "error": { "code": "PROFILE_NOT_FOUND", "message": "string", "details": {} }}Send a private DM to a commenter on Instagram or Facebook. Optionally attach 1–3 inline buttons (Meta button_template). When buttons are provided, message must be 640 characters or fewer.
Authorization
ApiKeyAuth API key from your Aether dashboard
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
curl -X POST "https://example.com/inbox/comments/string/string/private-reply" \ -H "Content-Type: application/json" \ -d '{ "profileId": "string", "message": "string" }'