Aether

O Auth

OAuth connect flows (Facebook Page selection after multi-Page authorization)

GET
/oauth/facebook/pending/{pendingId}

After Facebook OAuth when the user manages multiple Pages, the callback stores a short-lived pending session. Use this endpoint to populate the in-dashboard Page picker.

Authorization

ApiKeyAuth
AuthorizationBearer <token>

API key from your Aether dashboard

In: header

Path Parameters

pendingId*string

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/oauth/facebook/pending/497f6eca-6276-4993-bfeb-53cbbbba6f08"
{  "success": true,  "data": {    "pages": [      {        "id": "string",        "name": "string",        "avatarUrl": "http://example.com"      }    ],    "expiresAt": "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": {}  }}
POST
/oauth/facebook/complete

Exchanges the pending session for a connected Facebook Page profile. The pending session is single-use and expires after 15 minutes.

Authorization

ApiKeyAuth
AuthorizationBearer <token>

API key from your Aether dashboard

In: header

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/oauth/facebook/complete" \  -H "Content-Type: application/json" \  -d '{    "pendingId": "0887ce26-04ca-49d8-a3a9-501d50a0938e",    "pageId": "string"  }'
{  "success": true,  "data": {    "id": "prof_abc123",    "organizationId": "string",    "platform": "instagram",    "platformAccountId": "string",    "username": "aetherhq",    "displayName": "Aether HQ",    "avatarUrl": "http://example.com",    "connectionStatus": "connected",    "errorMessage": "string",    "tokenExpiresAt": "2019-08-24T14:15:22Z",    "lastRefreshedAt": "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": {}  }}

On this page