Trend Content API
The Content API from Trend — 9 operation(s) for content.
The Content API from Trend — 9 operation(s) for content.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/trend:trend-content-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Trend API - 1.28.31 Content API
description: OpenAPI documentation for the Trend NestJS API. For additional engineering documentation, visit The Trend Engineering Wiki
version: 1.28.31
contact: {}
servers:
- url: https://api.trend.io
description: 'Production Trend API (host serving /docs-json; root returns "Success! trend-api Version: 1.28.31")'
security:
- access-token: []
tags:
- name: Content
paths:
/content/{campaignId}/{creatorId}:
get:
operationId: ContentController_getContentCollectionPage
parameters:
- name: campaignId
required: true
in: path
schema:
type: string
- name: creatorId
required: true
in: path
schema:
type: string
responses:
'200':
description: Get data for content collection page
content:
application/json:
schema:
$ref: '#/components/schemas/ContentCollectionResponse'
tags:
- Content
summary: Content controller get content collection page
x-summary-source: derived
/content/admin/pre-signed-url:
post:
operationId: ContentController_postPreSignedUrl
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ContentPresignedUrlRequestDto'
responses:
'201':
description: ''
tags:
- Content
security:
- admin-api-key: []
summary: Content controller post pre signed url
x-summary-source: derived
/content/system-approve/{contentCollectionId}:
patch:
operationId: ContentController_systemApproveContent
parameters:
- name: contentCollectionId
required: true
in: path
schema:
type: string
responses:
'200':
description: ''
tags:
- Content
security:
- admin-api-key: []
summary: Content controller system approve content
x-summary-source: derived
/content/approve/{campaignId}/{creatorId}:
patch:
operationId: ContentController_brandApproveContent
parameters:
- name: campaignId
required: true
in: path
schema:
type: string
- name: creatorId
required: true
in: path
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApproveContentRequestDto'
responses:
'200':
description: Content successfully approved
content:
application/json:
schema:
$ref: '#/components/schemas/ContentApprovalResponse'
tags:
- Content
summary: Content controller brand approve content
x-summary-source: derived
/content/request-revision/{contentCollectionId}:
patch:
operationId: ContentController_brandRequestRevision
parameters:
- name: contentCollectionId
required: true
in: path
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RequestRevisionDto'
responses:
'200':
description: ''
content:
application/json:
schema:
type: object
tags:
- Content
summary: Content controller brand request revision
x-summary-source: derived
/content/view/{contentCollectionId}/{contentRecordId}:
patch:
operationId: ContentController_patchTrackViewCollection
parameters:
- name: contentCollectionId
required: true
in: path
schema:
type: string
- name: contentRecordId
required: true
in: path
schema:
type: string
responses:
'200':
description: Track view collection
tags:
- Content
summary: Content controller patch track view collection
x-summary-source: derived
/content/remove/{contentCollectionId}/{contentRecordId}:
delete:
operationId: ContentController_removeContent
parameters:
- name: contentCollectionId
required: true
in: path
schema:
type: string
- name: contentRecordId
required: true
in: path
schema:
type: string
responses:
'200':
description: Content removed from partnership
content:
application/json:
schema:
type: boolean
tags:
- Content
summary: Content controller remove content
x-summary-source: derived
/content/submit/notify-brand:
post:
operationId: SubmitContentController_notifyBrand
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ContentUploadNotificationDto'
responses:
'201':
description: ''
tags:
- Content
security:
- admin-api-key: []
summary: Submit content controller notify brand
x-summary-source: derived
/content/submit/{partnershipId}:
post:
operationId: SubmitContentController_creatorAddContent
parameters:
- name: partnershipId
required: true
in: path
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddContentRecordDto'
responses:
'200':
description: Content successfully added to partnership
content:
application/json:
schema:
type: boolean
'201':
description: ''
tags:
- Content
security:
- admin-api-key: []
summary: Submit content controller creator add content
x-summary-source: derived
components:
schemas:
AddContentRecordDto:
type: object
properties:
contentPath:
type: string
isFree:
type: boolean
category:
type: string
enum:
- productPhotography
- lifestyleOrActionPhotography
- portraitStylePhotography
- actionOrProductInUseVideo
- unboxingExplanationVideo
- productReviewOrTestimonialVideo
- other
required:
- contentPath
- category
ContentCollectionResponse:
type: object
properties:
brandCredits:
type: number
creator:
type: object
properties:
name:
required: true
type: string
profilePicture:
required: false
type: string
tier:
required: true
type: object
campaign:
type: object
messageId:
type: string
approvedContents:
type: array
items:
type: object
pendingContents:
type: array
items:
type: object
required:
- creator
- campaign
- messageId
- approvedContents
- pendingContents
ContentPresignedUrlRequestDto:
type: object
properties:
collectionId:
type: string
recordId:
type: string
required:
- collectionId
- recordId
ApproveContentRequestDto:
type: object
properties:
contentIds:
type: array
items:
type: string
required:
- contentIds
ContentUploadNotificationDto:
type: object
properties:
contentCollectionId:
type: string
required:
- contentCollectionId
RequestRevisionDto:
type: object
properties:
rejectionReason:
type: string
required:
- rejectionReason
ContentApprovalResponse:
type: object
properties:
brandCredits:
type: number
creator:
type: object
properties:
name:
required: true
type: string
profilePicture:
required: false
type: string
tier:
required: true
type: object
campaign:
type: object
messageId:
type: string
approvedContents:
type: array
items:
type: object
pendingContents:
type: array
items:
type: object
required:
- creator
- campaign
- messageId
- approvedContents
- pendingContents
securitySchemes:
access-token:
scheme: bearer
bearerFormat: JWT
type: http
admin-api-key:
type: apiKey
in: header
name: trend-api-key