UNPKG

bip-pod-syndication

Version:
492 lines 11.5 kB
{ "name": "syndication", "title": "Syndication", "description": "The Syndication Pod lets you subscribe to or create syndications such as RSS/ATOM/JSON or your own custom time-series lists, logs and content feeds.", "url": "", "trackDuplicates": true, "config": {}, "auth": { "strategy": "none" }, "rpcs": {}, "actions": { "list": { "title": "Store a list of items", "description": "Stores content for adjacent channels", "trigger": "invoke", "config": { "properties": { "write_mode": { "type": "string", "oneOf": [ { "$ref": "#/config/definitions/write_mode" } ], "title": "Write Mode" }, "export_file": { "type": "boolean", "default": false, "title": "Export File" }, "export_file_name": { "type": "string", "title": "Exported File Name" }, "header": { "type": "string", "title": "File Header" } }, "definitions": { "write_mode": { "description": "List Write Mode", "enum": [ "append", "replace" ], "enum_label": [ "Append Entries", "Replace Entries" ], "default": "append" } }, "disposition": [ "write_mode", "export_file", "export_file_name", "header" ] }, "exports": { "properties": { "line_item": { "type": "string", "title": "Line Item" } } }, "imports": { "properties": { "line_item": { "type": "string", "title": "Line Item" }, "export_file_name": { "type": "string", "title": "Exported File Name" } }, "required": [ "line_item" ], "disposition": [ "line_item", "export_file_name" ] }, "rpcs": { "get": { "contentType": "text/plain", "title": "Returns list Content" } } }, "feed": { "title": "Create A Feed", "description": "Add Articles To Your Own Syndication", "trigger": "invoke", "config": { "properties": { "purge_after": { "title": "Expire After", "type": "string", "oneOf": [ { "$ref": "#/config/definitions/purge_after" } ] } }, "definitions": { "purge_after": { "description": "Expire After", "enum": [ "never", "30d" ], "enum_label": [ "Never", "After 30 Days" ], "default": "never" } }, "disposition": [ "purge_after" ] }, "exports": { "properties": {} }, "imports": { "properties": { "title": { "type": "string", "title": "Title" }, "description": { "type": "text", "title": "Description" }, "summary": { "type": "text", "title": "Article Summary" }, "url": { "type": "string", "title": "Source URL" }, "created_time": { "type": "string", "title": "UTC Created Time" }, "author": { "type": "string", "title": "Author" }, "image": { "type": "string", "title": "Image" }, "icon": { "type": "string", "title": "Source Icon" }, "category": { "type": "string", "title": "Category Name" } }, "disposition": [ "title", "description", "summary", "url", "created_time", "author", "image", "icon", "category" ] }, "rpcs": { "rss": { "description": "Serves stored items as an RSS 2.0 Feed", "contentType": "text/xml", "title": "RSS 2.0" }, "json": { "description": "Serves stored items as JSON", "contentType": "application/json", "title": "JSON" }, "blog": { "description": "Blogging Format", "contentType": "text/html", "title": "Blog" }, "remove_by_bip": { "description": "Removes a feed entity by its originating Bip ID", "contentType": "application/json", "method" : "DELETE", "properties": { "id": { "type": "string", "description": "Bip ID", "required": true } }, "title": "Remove By Bip ID" }, "remove_entity": { "description": "Removes a feed entity by its GUID", "contentType": "application/json", "method" : "DELETE", "properties": { "guid": { "type": "string", "description": "Entity ID", "required": true } }, "title": "Remove Feed Entity" } } }, "subscribe": { "title": "Subscribe To A Feed", "description": "Subscribes To An RSS/ATOM/RDF Feed", "trigger": "poll", "config": { "properties": { "url": { "type": "string", "title": "Feed URL", "description" : "eg: https://news.ycombinator.com/rss" }, "icon": { "type": "string", "title": "Icon URL" } }, "required": [ "url" ], "disposition": [ "url", "icon" ] }, "exports": { "properties": { "guid": { "type": "string", "title": "GUID" }, "title": { "type": "string", "title": "Title" }, "description": { "type": "string", "title": "Description" }, "summary": { "type": "string", "title": "Article Summary" }, "link": { "type": "string", "title": "Link" }, "date": { "type": "string", "title": "Date" }, "pubdate": { "type": "string", "title": "Published Date" }, "author": { "type": "string", "title": "Author" }, "image": { "type": "string", "title": "Image" }, "icon": { "type": "string", "title": "Source Icon" } } , "disposition": [ "guid", "title", "description", "summary", "link", "date", "pubdate", "author", "image", "icon" ] }, "imports": { "properties": {}, "disposition": [] } } }, "dataSources": { "feed": { "properties": { "id": { "type": "string", "renderable": false, "writable": false, "unique": true }, "owner_id": { "type": "string", "renderable": false, "writable": false }, "channel_id": { "type": "string", "renderable": true, "writable": false }, "created": { "type": "number", "renderable": true, "writable": false }, "last_update": { "type": "number", "renderable": true, "writable": false }, "last_build": { "type": "number", "renderable": true, "writable": false } }, "keys": [ "channel_id", "owner_id" ] }, "feed_entity": { "properties": { "id": { "type": "string", "index": true, "renderable": true, "writable": false, "unique": true }, "feed_id": { "type": "string", "index": true, "renderable": true, "writable": false }, "created": { "type": "number", "renderable": true, "writable": false }, "entity_created": { "type": "number", "index": true, "renderable": true, "writable": false }, "title": { "type": "string", "renderable": true, "writable": false }, "description": { "type": "string", "renderable": true, "writable": false }, "summary": { "type": "string", "renderable": true, "writable": false }, "url": { "type": "string", "renderable": true, "writable": false }, "image": { "type": "string", "renderable": true, "writable": false }, "icon": { "type": "string", "renderable": true, "writable": false }, "image_dim": { "type": "mixed", "renderable": true, "writable": false }, "author": { "type": "string", "renderable": true, "writable": false }, "category": { "type": "array", "index": true, "renderable": true, "writable": false }, "src_bip_id": { "type": "string", "renderable": false, "writable": false }, "favorited": { "type": "boolean", "default": false, "renderable": true, "writable": false } }, "keys": [ "id" ] }, "track_subscribe": { "properties": { "id": { "type": "string", "renderable": false, "writable": false, "unique": true }, "owner_id": { "type": "string", "renderable": false, "writable": false }, "created": { "type": "number", "renderable": true, "writable": false }, "last_update": { "type": "number", "renderable": true, "writable": false }, "channel_id": { "type": "string", "renderable": true, "writable": false }, "bip_id": { "type": "string", "renderable": true, "writable": false }, "guid": { "type": "string", "renderable": true, "writable": false } }, "keys": [ "id" ] } }, "tags": [ "rss", "syndication" ] }