Skip to content

Channels

Channels API

Channels represent publishing destinations for your content.

List Channels

GET /v1/channels

List all channels for the authenticated user.

Example Response

{
"data": [
{
"id": "ch_abc123",
"name": "Company News",
"platform": "twitter",
"connectionId": "conn_xyz789",
"createdAt": "2024-01-01T00:00:00Z"
},
{
"id": "ch_def456",
"name": "Personal",
"platform": "linkedin",
"connectionId": "conn_uvw123",
"createdAt": "2024-01-02T00:00:00Z"
}
]
}

Get Channel

GET /v1/channels/:id

Retrieve a specific channel.

Example Response

{
"id": "ch_abc123",
"name": "Company News",
"platform": "twitter",
"connectionId": "conn_xyz789",
"connection": {
"id": "conn_xyz789",
"platform": "twitter",
"username": "@flowsocial",
"displayName": "Flow Social"
},
"stats": {
"postsScheduled": 5,
"postsPublished": 42,
"postsFailed": 1
},
"createdAt": "2024-01-01T00:00:00Z"
}

Create Channel

POST /v1/channels

Create a new channel.

Request Body

FieldTypeRequiredDescription
namestringYesChannel name
connectionIdstringYesID of the social connection to use

Example Request

Terminal window
curl -X POST https://api.flowsocial.app/v1/channels \
-H "Authorization: Bearer flow_sk_live_..." \
-H "Content-Type: application/json" \
-d '{
"name": "Product Updates",
"connectionId": "conn_xyz789"
}'

Example Response

{
"id": "ch_ghi789",
"name": "Product Updates",
"platform": "twitter",
"connectionId": "conn_xyz789",
"createdAt": "2024-01-15T10:00:00Z"
}

Update Channel

PATCH /v1/channels/:id

Update a channel’s name.

Request Body

FieldTypeRequiredDescription
namestringYesNew channel name

Delete Channel

DELETE /v1/channels/:id

Delete a channel. All scheduled posts in the channel will be cancelled.

Example Response

{
"deleted": true
}