Before getting started, make sure to read the API section of our FAQ. The answers there give you more context, and they explain our approach to stability and versioning.
We have an open-source Python SDK and Rust SDK. You can use these to quickly integrate.
For example, you can create a serverless function in Python, get data from anywhere you want (call a database, process an event, scrape a website), and add items in just a few lines:
from yupdates import yapi from yupdates.models import InputItem item = InputItem("the title", "the content", "https://example.com") yapi.new_items([item])
The OpenAPI spec is available for download below. You can use that to generate 50+ different types of client libraries across many languages (sample commands). Or, if you paste the spec into the Swagger Editor, you get a point and click interface to generate clients.
If you are operating outside Python or Rust, those generated libraries could be a good way to go instead of a direct HTTP integration.
Before we get started with the formal documentation: you might want to quickly integrate with curl?
Here are some curl samples to jumpstart the process. You will need to replace YUPDATES_API_TOKEN and FEED_ID with values from your account.
YUPDATES_API_TOKEN=230135ed11:94ff80f575549484400f27843ae1ccbaf92385dcf0e02 curl -X GET \ 'https://feeds.yupdates.com/api/v0/ping/' \ -H 'X-Auth-Token: $YUPDATES_API_TOKEN' FEED_ID=02fb24a4471232a4491067224b66daa8b2338dada2737 curl -X GET \ 'https://feeds.yupdates.com/api/v0/feeds/$FEED_ID/?max_items=20' \ -H 'X-Auth-Token: $YUPDATES_API_TOKEN'
Download OpenAPI specification:Download
Read items from one feed. If neither item_time_after
nor item_time_before
are used, it returns the latest items.
feed_id required | string = 45 characters Example: 02fb24a4478462a4491067224b66d9a8b2338dada2737 Feed to retrieve items from |
max_items | integer [ 1 .. 50 ] Default: 10 Example: max_items=10 Number of items to retrieve, from 1-50. The default is 10. It not be more than 10 if |
include_item_content | boolean Default: false Request the full item content (body of each item). If this is true, you may only retrieve up to 10 items at once. |
item_time_after | string (ItemTime) [ 1 .. 19 ] characters Request the items that come after the specified item time. May not be used at the same time as |
item_time_before | string (ItemTime) [ 1 .. 19 ] characters Request the items that come before the specified item time. May not be used at the same time as |
[- {
- "feed_id": "02fb24a4478462a4491067224b66d9a8b2338dada2737",
- "item_id": "6ce496db356373964a0416704255290006792481a6e906923877a420e9",
- "input_id": "123b24a4478462a4491067224b66d9a8b2338dada2737",
- "title": "A title",
- "content": "Some content",
- "item_time": "string",
- "item_time_ms": 9999999999999,
- "deleted": true,
- "associated_files": [
]
}
]
Add new items to a feed. This requires a feed-specific credential; there is no
feed_id
parameter. Items are given item times based on when they are added
(this operation does not allow injecting feed items into the past).
Array of InputItem
to add to the feed. You can send zero to ten items in
each call (zero can be useful to check authorization and/or to get the feed
ID in the response).
title required | string <= 1024 characters Item title |
canonical_url required | string <= 1900 characters Item URL |
content required | string <= 100000 characters Item content |
Array of objects (AssociatedFile) Files associated with the item, e.g. URL to a podcast file |
[- {
- "title": "A title",
- "content": "Some content",
- "associated_files": [
]
}
]
{- "message": "string",
- "code": 200,
- "feed_id": "02fb24a4478462a4491067224b66d9a8b2338dada2737"
}