The Content Publishing API provides access to content the same way Program Studio does, enabling the creation and updating of articles, links, videos, and images.
- Security: Users with a
“publisher”or higher role can work with content in this admin-like function. A 403 code is returned for content-related requests to users without a“publisher”or higher role. Permissions are not granular; any authenticated user may read, update, or take action on any existing content. See user roles and access for more guidance.
- States: Content is initially created in the
“draft”state. It becomes fully visible in feeds when it has passed the“review”state (meaning that it requires review) and is in the“published”state. Content can also pass through“archived”(similar to deleted),“scheduled”(content to be published in the future automatically),“processing”(refers to media that is still being processed or uploaded; like content in the“draft”state, this content does not become“published”until processing has completed), and“processing error”(media or similar objects that fail during the processing phase; this content cannot be transitioned to another state) states.
- Sources: Content sources include
“submitted”(by users);“pinterest”,“rss”,“facebook”,“twitter”(X) and“instagram”(for content harvested from external sources);“socialchoruscpcm”(for content that is republished between programs);“studio”(for admin-created content); and“oauthclient”(for content published via the Partner API or other OAuth client).
For contextual guidance on content publishing, and for use case examples, refer to our Content Publishing Overview page.
Creates new topic in the program. A topic holds campaigns and users, organizing content for user consumption.
Resources
Security
oauth2_as_a_user(Required scopes: content.write) or oauth2_as_a_server(Required scopes: content.write)
Attributes of the topic to create.
The state of the topic. One of: archived, hidden, or published.
Enum:"active""published""hidden""available""archived"
Example:"published"
A list of the audiences this topic is targeted to.
Example:
[ "group1", "group2" ]
- US1https://partner.socialchorus.com/v2/channels
- US2https://partner.us2.onfirstup.com/v2/channels
- EUhttps://partner.onfirstup.eu/v2/channels
- oauth2_as_a_user
- oauth2_as_a_server
curl -i -X POST \
https://partner.socialchorus.com/v2/channels \
-H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
-H 'Content-Type: application/json' \
-d '{
"name": "Company News",
"description": "All the latest from our company.",
"state": "published",
"auto_publish": true,
"auto_follow": true,
"auto_follow_mandatory": true,
"recommended": true,
"targeted": true,
"user_submittable": true,
"groups": [
"group1",
"group2"
],
"contributors": [
1,
2
],
"promoted": true
}'Response
{ "data": { "name": "Company News", "description": "All the latest from our company.", "state": "published", "auto_publish": true, "auto_follow": true, "auto_follow_mandatory": true, "recommended": true, "targeted": true, "user_submittable": true, "groups": [ … ], "contributor_count": 12, "contributors": [ … ], "follower_count": 1000, "created_at": "2000-01-01T00:00:00Z", "updated_at": "2000-01-01T00:00:00Z", "promoted": true, "id": 789 } }