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

# 2. Connect your first channel

> Link your first social account: the ways connecting works, which platform to start with, and what to click.

A **channel** is a social account seenpaid can publish to. You only need one to get going. This page covers the connect methods, which platforms are ready today, and how to get your first account to **active**.

<Info>
  **In a hurry?** Start with **LinkedIn** or **Bluesky**. Both connect in under a minute and publish reliably.
</Info>

## The three ways a platform connects

<CardGroup cols={3}>
  <Card title="Sign in and authorize" icon="arrow-up-right-from-square">
    Click **Connect**, sign in on the platform's own site, approve, and you're sent back.

    **LinkedIn · Mastodon · Tumblr · Pinterest · Facebook · Instagram · Threads · TikTok**
  </Card>

  <Card title="Paste a credential" icon="key">
    The network gives *you* an app password, API key, bot token or webhook URL, which you paste once.

    **Bluesky · Discord · Telegram · Slack · WordPress · Ghost · Dev.to · Hashnode · Medium · Lemmy · Nostr · Webhook**
  </Card>

  <Card title="Your own developer keys" icon="x-twitter">
    **X** only. You create an app in the X developer portal and paste its four keys. X bills API posting to your developer account, not to seenpaid.
  </Card>
</CardGroup>

<Note>
  **Read before you pick:** Instagram and Facebook currently work only for accounts that have been added to seenpaid's Meta app, because Meta's review of the app is in progress (full support coming very soon). Pinterest connects but publishing currently fails (the Pinterest app is on Trial access). TikTok delivers to your TikTok drafts rather than posting directly. Details in [Supported platforms](/guides/platforms).
</Note>

## Method A: sign in and authorize

<Steps>
  <Step title="Open Channels">
    In the left rail, click **Channels**.
  </Step>

  <Step title="Pick a platform and click Connect">
    seenpaid sends you to that platform's own login. You approve seenpaid there; you never type a platform password into seenpaid.
  </Step>

  <Step title="Approve and come back">
    The platform returns you to seenpaid and the account appears under Channels as **active**.
  </Step>
</Steps>

## Method B: paste a credential

<Steps>
  <Step title="Get the credential from the platform">
    See the per-platform notes below for where each one lives.
  </Step>

  <Step title="Open the platform's card in Channels and paste">
    Paste it into the field shown and confirm. seenpaid stores it encrypted.
  </Step>

  <Step title="Confirm active">
    The account turns **active** and joins your channel list.
  </Step>
</Steps>

<AccordionGroup>
  <Accordion title="Bluesky: app password" icon="cloud">
    In Bluesky: **Settings → App Passwords → Add App Password**. Paste it with your handle. Use an app password, not your main password; it can be revoked on its own.
  </Accordion>

  <Accordion title="Discord: webhook URL" icon="discord">
    **Channel settings → Integrations → Webhooks → New Webhook → Copy Webhook URL**. Posts arrive as messages in that channel.
  </Accordion>

  <Accordion title="Telegram: bot token" icon="telegram">
    Message **@BotFather**, create a bot, copy its token, and add the bot to your channel or group as an admin.
  </Accordion>

  <Accordion title="Slack, WordPress, Ghost, Dev.to, Hashnode, Medium, Lemmy" icon="key">
    An incoming webhook (Slack), an application password (WordPress), an Admin API key (Ghost), or a personal token (Dev.to, Hashnode, Medium) or login (Lemmy). The card in Channels names the exact field.
  </Accordion>

  <Accordion title="Nostr: private key. Webhook: a URL" icon="bolt">
    Nostr publishes with your signing key (nsec). Webhook POSTs your post's content to any HTTPS endpoint you run.
  </Accordion>

  <Accordion title="X: your own developer keys" icon="x-twitter">
    Create an app at developer.x.com, generate the API key, API secret, access token and access token secret, and paste all four. Posting is billed by X to that developer account.
  </Accordion>
</AccordionGroup>

<Tip>
  Connect as many accounts as your plan allows, across any platforms. A personal LinkedIn and three client LinkedIns count as four channels.
</Tip>

## Troubleshooting

<AccordionGroup>
  <Accordion title="My account shows 'needs reconnecting'">
    The platform revoked the grant or let it expire, and a refresh was refused. Open **Channels** and click **Reconnect**. Reconnecting re-runs the normal connect flow and updates the existing account in place, so your scheduled posts and history stay attached; seenpaid also emails you when it happens. This should be rare: Facebook and Instagram tokens don't expire, Threads and Bluesky renew themselves, and only **LinkedIn** needs a routine reconnect (every 60 days, with an email about a week before). See [Reconnecting](/guides/connect-channels#reconnecting).
  </Accordion>

  <Accordion title="I approved on the platform but nothing came back">
    Pop-up blockers and strict cookie settings can interrupt the return trip. Try again in a normal (non-incognito) window and allow pop-ups for seenpaid.com.
  </Accordion>

  <Accordion title="Instagram or Facebook won't connect">
    Meta's review of seenpaid's app is in progress (full support coming very soon), so only accounts added to the app can connect. Contact support from the dashboard if you'd like yours added.
  </Accordion>
</AccordionGroup>

<Card title="Next: write your first post" icon="arrow-right" href="/start/write-your-first-post">
  Compose, add media, and publish or schedule it.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.