> ## Documentation Index
> Fetch the complete documentation index at: https://info.bundle.social/llms.txt
> Use this file to discover all available pages before exploring further.

# Connect social account for team

> Generate OAuth URL for social account connection. Redirect user to this URL to connect social account.



## OpenAPI

````yaml https://api.bundle.social/swagger-json post /api/v1/social-account/connect
openapi: 3.0.2
info:
  title: bundle.social API
  description: >-
    REST API for social media management. Perfect for AI assistants, GPTs,
    automation tools, and integrations. Post to 14+ platforms including Twitter,
    Instagram, Facebook, LinkedIn, TikTok, Pinterest, Reddit, Discord, Slack,
    YouTube, Mastodon, Bluesky, Threads, and Google Business. Schedule posts,
    manage content, analyze performance, and automate your social media workflow
    across all platforms.
  version: 1.0.0
  contact:
    email: contact@bundle.social
  termsOfService: https://bundle.social/terms
servers:
  - url: https://api.bundle.social
  - url: http://localhost:3001
security:
  - ApiKeyAuth: []
tags:
  - name: app
  - name: organization
  - name: team
  - name: socialAccount
  - name: upload
  - name: post
  - name: postImport
  - name: analytics
  - name: comment
  - name: misc
  - name: postCSV
paths:
  /api/v1/social-account/connect:
    post:
      tags:
        - socialAccount
      summary: Connect social account for team
      description: >-
        Generate OAuth URL for social account connection. Redirect user to this
        URL to connect social account.
      operationId: socialAccount.connect
      parameters: []
      requestBody:
        description: Body
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  enum:
                    - TIKTOK
                    - YOUTUBE
                    - INSTAGRAM
                    - FACEBOOK
                    - TWITTER
                    - THREADS
                    - LINKEDIN
                    - PINTEREST
                    - REDDIT
                    - MASTODON
                    - DISCORD
                    - SLACK
                    - BLUESKY
                    - GOOGLE_BUSINESS
                    - SNAPCHAT
                teamId:
                  type: string
                redirectUrl:
                  description: >-
                    Client-provided return URL. After the OAuth flow completes
                    (success or error), the user will be redirected here with
                    success/error query params appended. Must be a well-formed
                    http/https URL.
                  type: string
                  format: uri
                serverUrl:
                  type: string
                  format: uri
                  description: Mastodon or Bluesky only
                disableAutoLogin:
                  default: false
                  type: boolean
                  description: >-
                    Optional. When true, adds provider-specific flags to avoid
                    automatic login/auto-approval where supported.
                tiktokForceLogin:
                  default: false
                  type: boolean
                  description: >-
                    Optional and experimental. TikTok only. When true, routes
                    authorization through TikTok logout to request a fresh login
                    session.
                forceBrowserOAuth:
                  default: false
                  type: boolean
                  description: >-
                    Optional. Instagram only. When true, direct Instagram
                    connections on phones will try to force browser login to
                    avoid the Instagram iOS app deep-link bug.
                instagramConnectionMethod:
                  type: string
                  enum:
                    - FACEBOOK
                    - INSTAGRAM
                  description: Instagram only - connection method
                withBusinessScope:
                  default: false
                  type: boolean
                  description: >-
                    Facebook and Instagram only - include business_management,
                    ads_management, ads_read scopes
              required:
                - type
                - teamId
                - redirectUrl
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
                    description: >-
                      OAuth URL - Redirect user to this URL to connect social
                      account
                required:
                  - url
        '400':
          description: '400'
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    nullable: true
                  message:
                    type: string
                  issues:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: string
                          enum:
                            - invalid_type
                            - invalid_literal
                            - custom
                            - invalid_union
                            - invalid_union_discriminator
                            - invalid_enum_value
                            - unrecognized_keys
                            - invalid_arguments
                            - invalid_return_type
                            - invalid_date
                            - invalid_string
                            - too_small
                            - too_big
                            - invalid_intersection_types
                            - not_multiple_of
                            - not_finite
                          nullable: true
                        message:
                          type: string
                        path:
                          type: array
                          items:
                            oneOf:
                              - type: string
                              - type: number
                          nullable: true
                      required:
                        - message
                    nullable: true
                required:
                  - message
        '401':
          description: '401'
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    nullable: true
                  message:
                    type: string
                required:
                  - message
        '403':
          description: '403'
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    nullable: true
                  message:
                    type: string
                required:
                  - message
        '404':
          description: '404'
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    nullable: true
                  message:
                    type: string
                required:
                  - message
        '429':
          description: '429'
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    nullable: true
                  message:
                    type: string
                required:
                  - message
        '500':
          description: '500'
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    nullable: true
                  message:
                    type: string
                required:
                  - message
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      name: x-api-key
      in: header

````