AutoContent API Feeds API
Social media feed management operations
Social media feed management operations
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/autocontent-api:autocontent-api-feeds-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: Content Feeds API
version: 1.0.0
description: API documentation for the Content API
servers:
- url: https://api.autocontentapi.com
tags:
- name: Feeds
description: Social media feed management operations
paths:
/feeds:
get:
summary: Get all feeds (public + user's private feeds)
description: 'Retrieves all public feeds (feeds with no token) and user''s private feeds if token is provided.
**Public Access:**
- Public feeds are available without authentication
- Returns all feeds where token is null
**Authenticated Access:**
- Returns public feeds + user''s private feeds
- Requires valid API token in Authorization header'
tags:
- Feeds
security:
- bearerAuth: []
responses:
'200':
description: List of feeds (public + user's private feeds)
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Feed'
'500':
description: Internal server error
operationId: getFeeds
x-operation-id-source: derived
post:
summary: Create a new feed
description: 'Creates a new feed associated with the authenticated user.
**Feed Types:**
- feedTypeId=1: X/Twitter feed (internalId = username)
- feedTypeId=2: Reddit feed (internalId = subreddit name without r/ prefix)
- feedTypeId=3: YouTube channel feed (channel handle/URL, resolved to channel source ID automatically)
- feedTypeId=4: RSS feed (internalId = feed URL)
- feedTypeId=5: X News feed (internalId = topic/search query, e.g. "ai")
**Access Control:**
- Requires valid API token
- Feed will be private to the creating user
- PRO subscription required'
tags:
- Feeds
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateFeedRequest'
responses:
'201':
description: Feed created successfully
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: true
feedId:
type: integer
description: ID of the created feed
example: 1
message:
type: string
example: Feed created successfully
'400':
description: Bad request - Missing required fields, feed limit reached, or other validation errors
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: false
error:
type: string
examples:
missing_name:
value: Missing feed name
feed_limit:
value: Feed limit reached. You can create up to 4 feeds. You currently have 4 feeds.
'401':
description: Unauthorized - valid API token required
'429':
description: Rate limit exceeded - too many requests
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: false
error:
type: string
example: Rate limit exceeded. Please wait 3 seconds before creating another feed.
'500':
description: Internal server error during feed creation
operationId: postFeeds
x-operation-id-source: derived
/feeds/{id}:
get:
summary: Get a specific feed by ID
description: 'Retrieves a specific feed by its ID.
Public feeds are accessible without authentication.
Private feeds require appropriate token validation.'
tags:
- Feeds
parameters:
- in: path
name: id
required: true
schema:
type: integer
description: Feed ID
example: 1
responses:
'200':
description: Feed details
content:
application/json:
schema:
$ref: '#/components/schemas/Feed'
'400':
description: Bad request - Invalid feed ID
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: false
error:
type: string
examples:
missing_id:
value: Missing feed ID
invalid_id:
value: Invalid feed ID
'404':
description: Feed not found
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: false
error:
type: string
example: Feed not found
'500':
description: Internal server error
operationId: getFeedsById
x-operation-id-source: derived
/feeds/delete:
post:
summary: Delete a feed
description: 'Deletes a feed owned by the authenticated user.
**Security:**
- Only the feed owner can delete their feeds
- Requires valid API token matching the feed''s token'
tags:
- Feeds
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteFeedRequest'
responses:
'200':
description: Feed deleted successfully
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: true
message:
type: string
example: Feed deleted successfully
'400':
description: Bad request - Missing or invalid feed ID
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: false
error:
type: string
examples:
missing_id:
value: Missing feed ID
invalid_id:
value: Invalid feed ID
'401':
description: Unauthorized - valid API token required
'404':
description: Feed not found or cannot be deleted
content:
application/json:
schema:
type: object
properties:
success:
type: boolean
example: false
error:
type: string
example: Feed not found or cannot be deleted
'500':
description: Internal server error during feed deletion
operationId: postFeedsDelete
x-operation-id-source: derived
/feeds/subscriptions:
get:
summary: List feed subscriptions for the authenticated token
description: Returns active feed automations associated with the authenticated user. Use `includeRemoved=true` to include archived subscriptions.
tags:
- Feeds
security:
- bearerAuth: []
parameters:
- in: query
name: includeRemoved
schema:
type: boolean
required: false
description: Include subscriptions that have been removed when set to true.
responses:
'200':
description: Array of feed subscriptions
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/FeedSubscription'
'401':
description: Unauthorized - valid API token required
'500':
description: Internal server error while fetching subscriptions
operationId: getFeedsSubscriptions
x-operation-id-source: derived
post:
summary: Create a feed subscription
description: Links a feed to a schedule template (ClientRequest) so that new feed items trigger automated content generation.
tags:
- Feeds
security:
- bearerAuth: []
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- feedId
- requestId
properties:
feedId:
type: integer
description: Identifier of the feed to subscribe to.
example: 42
requestId:
type: string
description: Schedule template (ClientRequest) to clone when new items arrive.
example: 123e4567-e89b-12d3-a456-426614174000
lastProcessedItemId:
type: string
description: Optional feed item identifier to mark as already processed.
responses:
'201':
description: Subscription created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/FeedSubscription'
'400':
description: Validation error
'404':
description: Feed or template not found
'409':
description: Subscription already exists for this feed/template pair
'500':
description: Internal server error during creation
operationId: postFeedsSubscriptions
x-operation-id-source: derived
/feeds/subscriptions/{subscriptionId}:
delete:
summary: Remove a feed subscription
description: Soft-deletes a feed subscription by setting its removedOn timestamp.
tags:
- Feeds
security:
- bearerAuth: []
parameters:
- in: path
name: subscriptionId
required: true
schema:
type: string
description: Identifier of the subscription to remove.
responses:
'200':
description: Subscription removed
'400':
description: Missing or invalid subscription identifier
'404':
description: Subscription not found or already removed
'500':
description: Internal server error during removal
operationId: deleteFeedsSubscriptionsBySubscriptionId
x-operation-id-source: derived
components:
schemas:
CreateFeedRequest:
type: object
required:
- name
properties:
name:
type: string
description: Name of the feed
example: Tech News Twitter Feed
feedTypeId:
type: integer
description: Type of feed (1 for X/Twitter, 2 for Reddit, 3 for YouTube channel, 4 for RSS, 5 for X News topic)
example: 1
internalId:
type: string
description: Internal identifier - Twitter username for X, subreddit name for Reddit (without r/ prefix), topic/search query for X News (feedTypeId=5), feed URL for RSS. For YouTube channels this is populated automatically.
example: elonmusk
channel:
type: string
description: (YouTube only) Channel handle, URL, or ID. Either `channel` or `url` may be provided.
example: https://youtube.com/@AutoContentAPI
url:
type: string
description: (YouTube only) Channel URL alternative field.
example: https://youtube.com/@AutoContentAPI
FeedSubscription:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the subscription
example: 123e4567-e89b-12d3-a456-426614174000
feedId:
type: integer
description: Identifier of the subscribed feed
example: 42
token:
type: string
description: Token that owns the subscription
requestId:
type: string
description: ClientRequest template identifier used for automation
createdOn:
type: string
format: date-time
description: When the subscription was created
removedOn:
type:
- string
- 'null'
format: date-time
description: When the subscription was removed, if applicable
lastProcessedItemId:
type:
- string
- 'null'
description: Identifier of the last feed item processed for this subscription
lastProcessedOn:
type:
- string
- 'null'
format: date-time
description: Timestamp of the last processed feed item
request:
type:
- object
- 'null'
description: Snapshot of the underlying template request
DeleteFeedRequest:
type: object
required:
- id
properties:
id:
type: integer
description: ID of the feed to delete
example: 1
Feed:
type: object
properties:
id:
type: integer
description: Unique identifier for the feed
example: 1
name:
type: string
description: Name of the feed
example: Tech News Twitter Feed
token:
type: string
description: Client token (null for public feeds)
example: abc123-def456-ghi789
feedTypeId:
type: integer
description: Type of feed (1 for X/Twitter, 2 for Reddit, 3 for YouTube channel, 4 for RSS, 5 for X News topic)
example: 1
internalId:
type: string
description: Internal identifier for the feed source (username for X, subreddit for Reddit, channel source ID for YouTube)
example: elonmusk
createdOn:
type: string
format: date-time
description: Creation timestamp
example: '2023-01-01T12:00:00Z'
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
x-provenance:
method: harvested
publisher: AutoContent API
source: https://api.autocontentapi.com/api-docs.json
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)