Create a post in community channels
Create a post in one or more of the creator's community channels — text, a poll, a repost, or media (image/video, plus generic files), any combination of which can be attached at once, including several of the same type (e.g. a multi-image or multi-video post). Each media item is processed independently — see mediaContent's own description. layoutType is a required display hint for arranging more than one item (carousel vs. collage) — send it even for a post with 0 or 1 media items, since there is no default. Always authored as the creator: there is no concept of an individual acting fan/UAM user for an API-key request, so postedBy on the created post is always the creator.
This runs through the exact same creation path as a post made from the dashboard — the same validation, the same media processing (images compressed before saving, videos queued for transcoding as part of this request and encoded asynchronously after), the same gamification points, and the same notifications to channel members. A partner-created post is not a second-class post; subscribers see and get notified about it exactly as they would any other.
mediaContent[].contentUrl can be a URL already registered through a TagMango Cloud upload, or a fresh one — this endpoint registers it automatically if it is not one already, so image compression and video transcoding still work. The response contains one channel-post item per target channel, in the same complete field shape returned by the list and get operations.
Fails with a 400 if layoutType is missing.
Authorization
bearer In: header
Header Parameters
Host name of the dashboard, ex: mydomain.tagmango.com
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://api-prod-new.tagmango.com/api/v1/external/community/posts" \ -H "x-whitelabel-host: string" \ -H "Content-Type: application/json" \ -d '{ "channels": [ "61e97c146cf2b4d8c68f3a40", "61e97c146cf2b4d8c68f3a41" ], "layoutType": "carousel" }'[
{
"_id": "string",
"postedBy": "string",
"channel": "string",
"isPinned": false,
"isHidden": false,
"pinnedNumber": 0,
"pinnedAt": "2019-08-24T14:15:22Z",
"totalViews": 0,
"totalLikes": 0,
"totalComments": 0,
"totalParentComments": 0,
"totalRepost": 0,
"totalPollVotes": 0,
"pollVotesPerOption": {
"1": 12,
"2": 8
},
"scheduleAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z",
"createdAt": "2019-08-24T14:15:22Z",
"post": {
"_id": "string",
"creator": "string",
"caption": "string",
"layoutType": "string",
"mediaContent": [
{
"_id": "string",
"contentType": "string",
"contentUrl": "string",
"asset": "string",
"thumbnail": "string",
"compressedVideoUrl": "string",
"compressedVideoUrlDash": "string",
"compressedVideoUrlHls": "string",
"isCompressDone": true,
"isCompressError": true,
"compressErrorDescription": "string",
"compressErrorDescriptionWarnings": "string",
"transcodingJob": "string",
"fileKey": "string",
"fileSize": 0,
"fileName": "string"
}
],
"postRefContentTypes": [
"string"
],
"postSettings": {
"disableComment": false,
"hideComment": false,
"hideLikes": false
},
"isDeleted": true,
"scheduleAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z",
"createdAt": "2019-08-24T14:15:22Z",
"channels": [
{
"_id": "61e97c146cf2b4d8c68f3a40",
"name": "My Awesome Channel",
"description": "This channel is about...",
"communityProfilePicture": "https://example.com/image.jpg",
"communityProfilePictureType": "image"
}
],
"postedBy": {
"_id": "6659ca9e5f2acb7abfdcd8fd",
"name": "John Doe",
"profilePicUrl": "https://linktoprofilepic.com/pic.jpg",
"isBlockedFromCommunityEngagement": false,
"isModerator": true
},
"poll": {
"_id": "string",
"creator": "string",
"question": "string",
"description": "string",
"pollOptions": [
{
"optionContent": "string",
"optionNumber": 0,
"optionId": "string"
}
],
"pollStartAt": "2019-08-24T14:15:22Z",
"pollEndAt": "2019-08-24T14:15:22Z",
"isResultVisibleToMembers": true,
"allowVoteChange": true,
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
},
"postRef": {
"_id": "string",
"creator": "string",
"caption": "string",
"layoutType": "string",
"mediaContent": [
{
"_id": "string",
"contentType": "string",
"contentUrl": "string",
"asset": "string",
"thumbnail": "string",
"compressedVideoUrl": "string",
"compressedVideoUrlDash": "string",
"compressedVideoUrlHls": "string",
"isCompressDone": true,
"isCompressError": true,
"compressErrorDescription": "string",
"compressErrorDescriptionWarnings": "string",
"transcodingJob": "string",
"fileKey": "string",
"fileSize": 0,
"fileName": "string"
}
],
"postRefContentTypes": [
"string"
],
"postSettings": {
"disableComment": false,
"hideComment": false,
"hideLikes": false
},
"isDeleted": true,
"scheduleAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z",
"createdAt": "2019-08-24T14:15:22Z",
"channels": [
{
"_id": "61e97c146cf2b4d8c68f3a40",
"name": "My Awesome Channel",
"description": "This channel is about...",
"communityProfilePicture": "https://example.com/image.jpg",
"communityProfilePictureType": "image"
}
],
"postedBy": {
"_id": "6659ca9e5f2acb7abfdcd8fd",
"name": "John Doe",
"profilePicUrl": "https://linktoprofilepic.com/pic.jpg",
"isBlockedFromCommunityEngagement": false,
"isModerator": true
},
"tqConnectShoutout": {
"createdAt": "2024-11-04T13:05:43.799Z",
"updatedAt": "2024-11-04T13:05:43.799Z",
"_id": "507f1f77bcf86cd799439011",
"creator": "507f1f77bcf86cd799439012",
"description": "Outstanding performance on the Q3 project! Your innovative approach to solving the technical challenges and your dedication to helping the team meet deadlines was truly exceptional. Thank you for being such an inspiring colleague.",
"category": {
"id": "professional",
"name": "Professional Excellence",
"logo": "💼"
},
"coverImage": "https://s3.amazonaws.com/bucket/shoutouts/cover-image-123.jpg",
"visibility": "profile-only",
"from": {
"_id": "6659ca9e5f2acb7abfdcd8fd",
"name": "John Doe",
"profilePicUrl": "https://linktoprofilepic.com/pic.jpg"
},
"to": {
"_id": "6659ca9e5f2acb7abfdcd8fd",
"name": "John Doe",
"profilePicUrl": "https://linktoprofilepic.com/pic.jpg"
},
"channels": [
{
"_id": "61e97c146cf2b4d8c68f3a40",
"name": "My Awesome Channel"
}
]
}
},
"tqConnectShoutout": {
"createdAt": "2024-11-04T13:05:43.799Z",
"updatedAt": "2024-11-04T13:05:43.799Z",
"_id": "507f1f77bcf86cd799439011",
"creator": "507f1f77bcf86cd799439012",
"description": "Outstanding performance on the Q3 project! Your innovative approach to solving the technical challenges and your dedication to helping the team meet deadlines was truly exceptional. Thank you for being such an inspiring colleague.",
"category": {
"id": "professional",
"name": "Professional Excellence",
"logo": "💼"
},
"coverImage": "https://s3.amazonaws.com/bucket/shoutouts/cover-image-123.jpg",
"visibility": "profile-only",
"from": {
"_id": "6659ca9e5f2acb7abfdcd8fd",
"name": "John Doe",
"profilePicUrl": "https://linktoprofilepic.com/pic.jpg"
},
"to": {
"_id": "6659ca9e5f2acb7abfdcd8fd",
"name": "John Doe",
"profilePicUrl": "https://linktoprofilepic.com/pic.jpg"
},
"channels": [
{
"_id": "61e97c146cf2b4d8c68f3a40",
"name": "My Awesome Channel"
}
]
}
},
"isLiked": true,
"votedOption": "string"
}
]{
"code": 400,
"type": "Bad Request",
"statusMessage": "BAD_REQUEST",
"success": false,
"message": "Invalid request",
"result": "Invalid request"
}{
"code": 401,
"type": "Unauthorized",
"statusMessage": "UNAUTHORIZED",
"message": "Invalid token",
"result": "Invalid token",
"success": false
}{
"code": 403,
"type": "Forbidden",
"statusMessage": "FORBIDDEN",
"errorCode": "WORKSHOP_MANGO_FORBIDDEN",
"message": "You can not access this api with a TagMango account, only available for whitelabel hosts",
"result": "You can not access this api with a TagMango account, only available for whitelabel hosts",
"success": false
}{
"code": 429,
"type": "Too Many Requests",
"statusMessage": "TOO_MANY_REQUESTS",
"message": "Request limit exceeded. try after 10 seconds",
"result": "Request limit exceeded. try after 10 seconds",
"success": false
}