Skip to content

Commit d6a4ce4

Browse files
committed
1 parent 6ffe231 commit d6a4ce4

File tree

7 files changed

+295
-1
lines changed

7 files changed

+295
-1
lines changed

Postman Docs/PodcastIndex.postman_collection.json

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"info": {
33
"_postman_id": "2b24a533-e8b5-4ae0-973c-94c55ec56a81",
44
"name": "PodcastIndex",
5-
"description": "Download the openapi spec in [json](pi_api.json) or [yaml](pi_api.yaml) format.\n\n# Overview\n\nThe Podcast Index (Podcast Index LLC) is a software developer focused partnership that provides tools and data to\nanyone who aspires to create new and exciting Podcast experiences without the heavy lifting of indexing,\naggregation and data management.\n\n# Example Code\n\nUsers have provided example code for working the API in the following languages:\n\n - [AWS Lambda - python](https://github.com/tbowers/python-podcastindex-org-lambda)\n - [Bash](https://github.com/suorcd/Bash-podcastindex-org-example)\n - [C#](https://github.com/ComicStrip/csharp-podcastindex-org-example)\n - [Elisp](https://github.com/sabexx/elisp-example)\n - [Flutter/Dart](https://github.com/crediblecreative/flutter-dart-podcastindex-org-example)\n - [Go](https://github.com/ComicStrip/Go-podcastindex-org-example)\n - [Go](https://github.com/kilobit/podcast-index-client)\n - [Java](https://github.com/ComicStrip/Java-podcastindex-org-example)\n - [Java](https://github.com/stucoates/PodcastIndexJavaClient)\n - [Node.js](https://github.com/ComicStrip/node.js-podcastindex-org-example)\n - [PHP](https://github.com/Podcastindex-org/example-code)\n - [Python](https://github.com/tbowers/python-podcastindex-org-example)\n - [Swift](https://github.com/ComicStrip/Swift-podcastindex-org-example)\n - ... [More](https://github.com/Podcastindex-org-Examples)\n\nDon't see your desired language, create an example repo and create a\n[Pull Request](https://github.com/Podcastindex-org/docs-api/pulls) with a link to your example code project!\n\n# Libraries\n\nUser created libraries for working with the API:\n\n - Java\n - [podcast4j](https://github.com/yusufyilmazfr/podcast4j)\n - .NET\n - [PodcastIndexSharp](https://www.nuget.org/packages/PodcastIndexSharp)\n - Node.js/npm/yarn\n - [podcast-index-api](https://www.npmjs.com/package/podcast-index-api)\n - [podcastdx-client](https://www.npmjs.com/package/podcastdx-client)\n - PHP\n - [podcastindex-php](https://github.com/LowSociety/podcastindex-php)\n - Python/pip\n - [python-podcastindex](https://pypi.org/project/python-podcastindex/)\n - R\n - [podindexr](https://github.com/rpodcast/podindexr)\n - Ruby\n - [podcast-index](https://github.com/jasonyork/podcast-index)\n - Swift\n - [PodcastIndexKit](https://github.com/SparrowTek/PodcastIndexKit)\nAre we missing a library? Did you create one for a different language? Create a\n[Pull Request](https://github.com/Podcastindex-org/docs-api/pulls) with a link to the new library!\n\n# Postman\n\nA collection file for use in the [Postman](https://www.postman.com/) application is available for this API.\n\n 1. Download the contents of the [Postman Docs](https://github.com/Podcastindex-org/docs-api/tree/master/Postman%20Docs) folder.\n 2. Import the `PodcastIndex.postman_collection.json` collection to Postman\n 3. Import the `PodcastIndexOrgEnvironment.postman_environment.json` to Postman\n 4. Click \"Environments\" on the left sidebar\n 5. Select the checkbox next to the PodcastIndexOrgEnvironment entry\n 6. Set `AuthKey` and `SeceretKey` values under the \"Current Value\" column using your API information \n 7. Click \"Collections\" from the sidebar\n 8. Select PodcastIndex\n 9. Select and run the endpoint to test\n\n# Contributing\n\nThe source for this API documentation is available at\n[https://github.com/Podcastindex-org/docs-api](https://github.com/Podcastindex-org/docs-api).\nSubmit an Issue or create a Pull Request.\n\n# Authentication Details\n\nSending an API request is easy. We use an Amazon-style request authorization token to secure each request.\n\nRegister for a free API key at https://api.podcastindex.org/\n\nThese headers parameters are required for each request: `User-Agent`, `X-Auth-Date`, `X-Auth-Key`, `Authorization`\n\nSee [Authentication](#auth) for description of parameters.\n\n# Legal\n\nLegal\n\n - [Privacy Policy](https://github.com/Podcastindex-org/legal/blob/main/PrivacyPolicy.md)\n - [Terms of Service](https://github.com/Podcastindex-org/legal/blob/main/TermsOfService.md)\n - [License](https://github.com/Podcastindex-org/docs-api/blob/master/LICENSE)\n",
5+
"description": "Download the openapi spec in [json](pi_api.json) or [yaml](pi_api.yaml) format.\n\n# Overview\n\nThe Podcast Index (Podcast Index LLC) is a software developer focused partnership that provides tools and data to\nanyone who aspires to create new and exciting Podcast experiences without the heavy lifting of indexing,\naggregation and data management.\n\n# Example Code\n\nUsers have provided example code for working the API in the following languages:\n\n - [AWS Lambda - python](https://github.com/tbowers/python-podcastindex-org-lambda)\n - [Bash](https://github.com/suorcd/Bash-podcastindex-org-example)\n - [C#](https://github.com/ComicStrip/csharp-podcastindex-org-example)\n - [Elisp](https://github.com/sabexx/elisp-example)\n - [Flutter/Dart](https://github.com/crediblecreative/flutter-dart-podcastindex-org-example)\n - [Go](https://github.com/ComicStrip/Go-podcastindex-org-example)\n - [Go](https://github.com/kilobit/podcast-index-client)\n - [Java](https://github.com/ComicStrip/Java-podcastindex-org-example)\n - [Java](https://github.com/stucoates/PodcastIndexJavaClient)\n - [Node.js](https://github.com/ComicStrip/node.js-podcastindex-org-example)\n - [PHP](https://github.com/Podcastindex-org/example-code)\n - [Python](https://github.com/tbowers/python-podcastindex-org-example)\n - [Swift](https://github.com/ComicStrip/Swift-podcastindex-org-example)\n - ... [More](https://github.com/Podcastindex-org-Examples)\n\nDon't see your desired language, create an example repo and create a\n[Pull Request](https://github.com/Podcastindex-org/docs-api/pulls) with a link to your example code project!\n\n# Libraries\n\nUser created libraries for working with the API:\n\n - Java\n - [podcast4j](https://github.com/yusufyilmazfr/podcast4j)\n - .NET\n - [PodcastIndexSharp](https://www.nuget.org/packages/PodcastIndexSharp)\n - Node.js/npm/yarn\n - [podcast-index-api](https://www.npmjs.com/package/podcast-index-api)\n - [podcastdx-client](https://www.npmjs.com/package/podcastdx-client)\n - PHP\n - [podcastindex-php](https://github.com/LowSociety/podcastindex-php)\n - Python/pip\n - [python-podcastindex](https://pypi.org/project/python-podcastindex/)\n - R\n - [podindexr](https://github.com/rpodcast/podindexr)\n - Ruby\n - [podcast-index](https://github.com/jasonyork/podcast-index)\n - Swift\n - [PodcastIndexKit](https://github.com/SparrowTek/PodcastIndexKit)\nAre we missing a library? Did you create one for a different language? Create a\n[Pull Request](https://github.com/Podcastindex-org/docs-api/pulls) with a link to the new library!\n\n# Postman\n\nA collection file for use in the [Postman](https://www.postman.com/) application is available for this API.\n\n 1. Download the contents of the [Postman Docs](https://github.com/Podcastindex-org/docs-api/tree/master/Postman%20Docs) folder.\n 2. Import the `PodcastIndex.postman_collection.json` collection to Postman\n 3. Import the `PodcastIndexOrgEnvironment.postman_environment.json` to Postman\n 4. Click \"Environments\" on the left sidebar\n 5. Select the checkbox next to the PodcastIndexOrgEnvironment entry\n 6. Set `AuthKey` and `SeceretKey` values under the \"Current Value\" column using your API information \n 7. Click \"Collections\" from the sidebar\n 8. Select PodcastIndex\n 9. Select and run the endpoint to test\n\n# Contributing\n\nThe source for this API documentation is available at\n[https://github.com/Podcastindex-org/docs-api](https://github.com/Podcastindex-org/docs-api).\nSubmit an Issue or create a Pull Request.\n\n# Authentication Details\n\nSending an API request is easy. We use an Amazon-style request authorization token to secure each request.\n\nRegister for a free API key at https://api.podcastindex.org/\n\nThese headers parameters are required for each request: `User-Agent`, `X-Auth-Date`, `X-Auth-Key`, `Authorization`\n\nSee [Authentication](#auth) for description of parameters.\n\n# Legal\n\nLegal\n\n - [Privacy Policy](https://github.com/Podcastindex-org/legal/blob/main/PrivacyPolicy.md)\n - [Terms of Service](https://github.com/Podcastindex-org/legal/blob/main/TermsOfService.md)\n - [License](https://github.com/Podcastindex-org/docs-api/blob/master/LICENSE)\n",
66
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
77
},
88
"item": [
@@ -1102,6 +1102,45 @@
11021102
},
11031103
"response": []
11041104
},
1105+
{
1106+
"name": "New Value Feeds",
1107+
"request": {
1108+
"method": "GET",
1109+
"header": [],
1110+
"url": {
1111+
"raw": "{{baseUrl}}/recent/newvaluefeeds",
1112+
"host": [
1113+
"{{baseUrl}}"
1114+
],
1115+
"path": [
1116+
"recent",
1117+
"newvaluefeeds"
1118+
],
1119+
"query": [
1120+
{
1121+
"key": "max",
1122+
"value": "20",
1123+
"description": "Maximum number of results to return.\n",
1124+
"disabled": true
1125+
},
1126+
{
1127+
"key": "since",
1128+
"value": "1612125785",
1129+
"description": "Return items since the specified time. The value can be a unix epoch timestamp or a negative integer that represents a number of seconds prior to right now.\n",
1130+
"disabled": true
1131+
},
1132+
{
1133+
"key": "pretty",
1134+
"value": "",
1135+
"description": "If present, makes the output “pretty” to help with debugging.\n\nParameter shall not have a value\n",
1136+
"disabled": true
1137+
}
1138+
]
1139+
},
1140+
"description": "This call returns feeds that have added a `value` tag in reverse chronological order.\n\nExample: https://api.podcastindex.org/api/1.0/recent/newvaluefeeds?pretty\n"
1141+
},
1142+
"response": []
1143+
},
11051144
{
11061145
"name": "Recent Data",
11071146
"request": {
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# language=Markdown
2+
description: >
3+
List of feeds matching request
4+
type: array
5+
items:
6+
type: object
7+
properties:
8+
id:
9+
$ref: '../properties/id_feed.yaml'
10+
url:
11+
$ref: '../properties/url_feed.yaml'
12+
title:
13+
$ref: '../properties/title_feed.yaml'
14+
author:
15+
$ref: '../properties/author.yaml'
16+
image:
17+
$ref: '../properties/image_feed.yaml'
18+
newestItemPublishTime:
19+
$ref: '../properties/newestItemPublishTime.yaml'
20+
itunesId:
21+
$ref: '../properties/itunesId_feed.yaml'
22+
trendScore:
23+
$ref: '../properties/trendScore.yaml'
24+
language:
25+
$ref: '../properties/language.yaml'
26+
categories:
27+
$ref: '../properties/categories.yaml'
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
description: Success
2+
content:
3+
application/json:
4+
schema:
5+
type: object
6+
properties:
7+
status:
8+
$ref: '../properties/status.yaml'
9+
feeds:
10+
$ref: '../properties/feeds_recent_value.yaml'
11+
count:
12+
$ref: '../properties/count.yaml'
13+
max:
14+
$ref: '../properties/max.yaml'
15+
since:
16+
$ref: '../properties/since.yaml'
17+
description:
18+
$ref: '../properties/description_response.yaml'
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
get:
2+
tags:
3+
- Recent
4+
summary: New Value Feeds
5+
# language=Markdown
6+
description: >
7+
This call returns feeds that have added a `value` tag in reverse chronological order.
8+
9+
10+
Example: https://api.podcastindex.org/api/1.0/recent/newvaluefeeds?pretty
11+
operationId: recent/newvaluefeeds
12+
security:
13+
- $ref: '../../components/security/security.yaml'
14+
parameters:
15+
- $ref: '../../components/parameters/max_recent_feeds.yaml'
16+
- $ref: '../../components/parameters/since.yaml'
17+
- $ref: '../../components/parameters/pretty.yaml'
18+
responses:
19+
'200':
20+
$ref: '../../components/responses/recent_newvaluefeeds.yaml'
21+
'400':
22+
$ref: '../../components/responses/400.yaml'
23+
'401':
24+
$ref: '../../components/responses/401.yaml'

api_src/root.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -213,6 +213,8 @@ paths:
213213
$ref: 'paths/recent/feeds.yaml'
214214
'/recent/newfeeds':
215215
$ref: 'paths/recent/newfeeds.yaml'
216+
'/recent/newvaluefeeds':
217+
$ref: 'paths/recent/newvaluefeeds.yaml'
216218
'/recent/data':
217219
$ref: 'paths/recent/data.yaml'
218220
'/recent/soundbites':

docs/pi_api.json

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2897,6 +2897,45 @@
28972897
}
28982898
}
28992899
},
2900+
"feeds_recent_value": {
2901+
"description": "List of feeds matching request\n",
2902+
"type": "array",
2903+
"items": {
2904+
"type": "object",
2905+
"properties": {
2906+
"id": {
2907+
"$ref": "#/components/schemas/id_feed"
2908+
},
2909+
"url": {
2910+
"$ref": "#/components/schemas/url_feed"
2911+
},
2912+
"title": {
2913+
"$ref": "#/components/schemas/title_feed"
2914+
},
2915+
"author": {
2916+
"$ref": "#/components/schemas/author"
2917+
},
2918+
"image": {
2919+
"$ref": "#/components/schemas/image_feed"
2920+
},
2921+
"newestItemPublishTime": {
2922+
"$ref": "#/components/schemas/newestItemPublishTime"
2923+
},
2924+
"itunesId": {
2925+
"$ref": "#/components/schemas/itunesId_feed"
2926+
},
2927+
"trendScore": {
2928+
"$ref": "#/components/schemas/trendScore"
2929+
},
2930+
"language": {
2931+
"$ref": "#/components/schemas/language"
2932+
},
2933+
"categories": {
2934+
"$ref": "#/components/schemas/categories"
2935+
}
2936+
}
2937+
}
2938+
},
29002939
"feedCount": {
29012940
"description": "Number of items in the `feeds` returned in request\n",
29022941
"type": "integer",
@@ -3736,6 +3775,36 @@
37363775
}
37373776
}
37383777
},
3778+
"recent_newvaluefeeds": {
3779+
"description": "Success",
3780+
"content": {
3781+
"application/json": {
3782+
"schema": {
3783+
"type": "object",
3784+
"properties": {
3785+
"status": {
3786+
"$ref": "#/components/schemas/status"
3787+
},
3788+
"feeds": {
3789+
"$ref": "#/components/schemas/feeds_recent_value"
3790+
},
3791+
"count": {
3792+
"$ref": "#/components/schemas/count"
3793+
},
3794+
"max": {
3795+
"$ref": "#/components/schemas/max"
3796+
},
3797+
"since": {
3798+
"$ref": "#/components/schemas/since"
3799+
},
3800+
"description": {
3801+
"$ref": "#/components/schemas/description_response"
3802+
}
3803+
}
3804+
}
3805+
}
3806+
}
3807+
},
37393808
"recent_data": {
37403809
"description": "Success",
37413810
"content": {
@@ -5058,6 +5127,46 @@
50585127
}
50595128
}
50605129
},
5130+
"/recent/newvaluefeeds": {
5131+
"get": {
5132+
"tags": [
5133+
"Recent"
5134+
],
5135+
"summary": "New Value Feeds",
5136+
"description": "This call returns feeds that have added a `value` tag in reverse chronological order.\n\nExample: https://api.podcastindex.org/api/1.0/recent/newvaluefeeds?pretty\n",
5137+
"operationId": "recent/newvaluefeeds",
5138+
"security": [
5139+
{
5140+
"API Key": [],
5141+
"User Agent": [],
5142+
"Date": [],
5143+
"Authorization": []
5144+
}
5145+
],
5146+
"parameters": [
5147+
{
5148+
"$ref": "#/components/parameters/max_recent_feeds"
5149+
},
5150+
{
5151+
"$ref": "#/components/parameters/since"
5152+
},
5153+
{
5154+
"$ref": "#/components/parameters/pretty"
5155+
}
5156+
],
5157+
"responses": {
5158+
"200": {
5159+
"$ref": "#/components/responses/recent_newvaluefeeds"
5160+
},
5161+
"400": {
5162+
"$ref": "#/components/responses/400"
5163+
},
5164+
"401": {
5165+
"$ref": "#/components/responses/401"
5166+
}
5167+
}
5168+
}
5169+
},
50615170
"/recent/data": {
50625171
"get": {
50635172
"tags": [

docs/pi_api.yaml

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2787,6 +2787,33 @@ components:
27872787
$ref: '#/components/schemas/contentHash'
27882788
language:
27892789
$ref: '#/components/schemas/language'
2790+
feeds_recent_value:
2791+
description: |
2792+
List of feeds matching request
2793+
type: array
2794+
items:
2795+
type: object
2796+
properties:
2797+
id:
2798+
$ref: '#/components/schemas/id_feed'
2799+
url:
2800+
$ref: '#/components/schemas/url_feed'
2801+
title:
2802+
$ref: '#/components/schemas/title_feed'
2803+
author:
2804+
$ref: '#/components/schemas/author'
2805+
image:
2806+
$ref: '#/components/schemas/image_feed'
2807+
newestItemPublishTime:
2808+
$ref: '#/components/schemas/newestItemPublishTime'
2809+
itunesId:
2810+
$ref: '#/components/schemas/itunesId_feed'
2811+
trendScore:
2812+
$ref: '#/components/schemas/trendScore'
2813+
language:
2814+
$ref: '#/components/schemas/language'
2815+
categories:
2816+
$ref: '#/components/schemas/categories'
27902817
feedCount:
27912818
description: |
27922819
Number of items in the `feeds` returned in request
@@ -3348,6 +3375,25 @@ components:
33483375
$ref: '#/components/schemas/max'
33493376
description:
33503377
$ref: '#/components/schemas/description_response'
3378+
recent_newvaluefeeds:
3379+
description: Success
3380+
content:
3381+
application/json:
3382+
schema:
3383+
type: object
3384+
properties:
3385+
status:
3386+
$ref: '#/components/schemas/status'
3387+
feeds:
3388+
$ref: '#/components/schemas/feeds_recent_value'
3389+
count:
3390+
$ref: '#/components/schemas/count'
3391+
max:
3392+
$ref: '#/components/schemas/max'
3393+
since:
3394+
$ref: '#/components/schemas/since'
3395+
description:
3396+
$ref: '#/components/schemas/description_response'
33513397
recent_data:
33523398
description: Success
33533399
content:
@@ -4493,6 +4539,35 @@ paths:
44934539
$ref: '#/components/responses/400'
44944540
'401':
44954541
$ref: '#/components/responses/401'
4542+
/recent/newvaluefeeds:
4543+
get:
4544+
tags:
4545+
- Recent
4546+
summary: New Value Feeds
4547+
description: >
4548+
This call returns feeds that have added a `value` tag in reverse
4549+
chronological order.
4550+
4551+
4552+
Example:
4553+
https://api.podcastindex.org/api/1.0/recent/newvaluefeeds?pretty
4554+
operationId: recent/newvaluefeeds
4555+
security:
4556+
- API Key: []
4557+
User Agent: []
4558+
Date: []
4559+
Authorization: []
4560+
parameters:
4561+
- $ref: '#/components/parameters/max_recent_feeds'
4562+
- $ref: '#/components/parameters/since'
4563+
- $ref: '#/components/parameters/pretty'
4564+
responses:
4565+
'200':
4566+
$ref: '#/components/responses/recent_newvaluefeeds'
4567+
'400':
4568+
$ref: '#/components/responses/400'
4569+
'401':
4570+
$ref: '#/components/responses/401'
44964571
/recent/data:
44974572
get:
44984573
tags:

0 commit comments

Comments
 (0)