Skip to content

STEP 3 — CONNECT AUDIENCE

8. GET /onboarding/social/platforms

Get all available social platforms for connection. Requires authentication.

Request

http
GET /onboarding/social/platforms
Authorization: Bearer <token>

Response 200 OK

json
{
  "status": "success",
  "data": {
    "platforms": [
      {
        "id": "youtube",
        "label": "YouTube",
        "icon_url": "https://cdn.droptv.com/icons/youtube.svg",
        "is_recommended": true,
        "is_connected": false,
        "connected_account": null,
        "benefits": ["Import content", "Verify following", "Sync subscribers"]
      },
      {
        "id": "instagram",
        "label": "Instagram",
        "icon_url": "https://cdn.droptv.com/icons/instagram.svg",
        "is_recommended": false,
        "is_connected": false,
        "connected_account": null,
        "benefits": ["Import audience", "Cross-promote"]
      },
      {
        "id": "tiktok",
        "label": "TikTok",
        "icon_url": "https://cdn.droptv.com/icons/tiktok.svg",
        "is_recommended": false,
        "is_connected": false,
        "connected_account": null,
        "benefits": ["Import followers", "Cross-promote"]
      },
      {
        "id": "facebook",
        "label": "Facebook",
        "icon_url": "https://cdn.droptv.com/icons/facebook.svg",
        "is_recommended": false,
        "is_connected": false,
        "connected_account": null,
        "benefits": ["Import audience", "Cross-promote"]
      }
    ]
  }
}

9. POST /onboarding/social/connect

Connect a social platform by sending the token from the social SDK (e.g. Google or Instagram SDK) in the request body. Requires authentication.

Request Body

json
{
  "platform": "youtube",
  "token": "ya29.a0AfB_byC..."
}

Request Body Parameters

FieldTypeRequiredDescription
platformstringYesyoutube, instagram, tiktok, facebook
tokenstringYesAccess token from the platform's SDK (e.g. Google OAuth, Instagram)

Response 200 OK

json
{
  "status": "success",
  "message": "YouTube connected successfully",
  "data": {
    "platform": "youtube",
    "is_connected": true,
    "connected_account": {
      "account_id": "UCxxxxxxxxxxxxxxx",
      "username": "ComedyKingOfficial",
      "display_name": "Comedy King",
      "profile_image_url": "https://yt3.ggpht.com/...",
      "subscribers": 245000,
      "subscribers_formatted": "245K",
      "video_count": 312,
      "verified": true
    },
    "onboarding": {
      "current_step": 4,
      "total_steps": 6,
      "percent_complete": 40
    }
  }
}

Errors

json
{
  "status": "error",
  "code": 401,
  "message": "Invalid or expired token"
}