Podcasts
get
Authorizations
Query parameters
pageintegerOptional
A page number within the paginated result set.
page_sizeintegerOptional
Number of results to return per page.
Responses
200Success
application/json
get
GET /api/media/podcasts HTTP/1.1
Host: prosper-api-test.churchpad.com
Authorization: Bearer JWT
Accept: */*
200Success
{
"count": 123,
"next": "http://api.example.org/accounts/?page=4",
"previous": "http://api.example.org/accounts/?page=2",
"results": [
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"play_count": "text",
"last_played_at": "text",
"position": "text",
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"updated_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}
]
}
post
Authorizations
Body
idstring · uuidRead-onlyRequired
speakerstring · uuidOptional
categoriesstring · uuid[]Required
play_countstringRead-onlyRequired
last_played_atstringRead-onlyRequired
positionstringRead-onlyRequired
legacy_idstring | nullableOptional
nextgen_legacy_idstring | nullableOptional
created_atstring · date-time | nullableOptional
updated_atstring · date-timeRead-onlyRequired
namestring · max: 255Required
urlstring · uri | nullableOptional
descriptionstring | nullableOptional
bannerstring | nullableOptional
durationinteger · max: 2147483647Optional
published_atstring · date-time | nullableOptional
albumstring · uuid | nullableOptional
Responses
201Success
application/json
post
POST /api/media/podcasts HTTP/1.1
Host: prosper-api-test.churchpad.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 371
{
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}
201Success
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"play_count": "text",
"last_played_at": "text",
"position": "text",
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"updated_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}
get
Authorizations
Path parameters
idstring · uuidRequired
A UUID string identifying this podcast.
Responses
200Success
application/json
get
GET /api/media/podcasts/{id} HTTP/1.1
Host: prosper-api-test.churchpad.com
Authorization: Bearer JWT
Accept: */*
200Success
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"play_count": "text",
"last_played_at": "text",
"position": "text",
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"updated_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}
put
Authorizations
Path parameters
idstring · uuidRequired
A UUID string identifying this podcast.
Body
idstring · uuidRead-onlyRequired
speakerstring · uuidOptional
categoriesstring · uuid[]Required
play_countstringRead-onlyRequired
last_played_atstringRead-onlyRequired
positionstringRead-onlyRequired
legacy_idstring | nullableOptional
nextgen_legacy_idstring | nullableOptional
created_atstring · date-time | nullableOptional
updated_atstring · date-timeRead-onlyRequired
namestring · max: 255Required
urlstring · uri | nullableOptional
descriptionstring | nullableOptional
bannerstring | nullableOptional
durationinteger · max: 2147483647Optional
published_atstring · date-time | nullableOptional
albumstring · uuid | nullableOptional
Responses
200Success
application/json
put
PUT /api/media/podcasts/{id} HTTP/1.1
Host: prosper-api-test.churchpad.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 371
{
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}
200Success
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"play_count": "text",
"last_played_at": "text",
"position": "text",
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"updated_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}
delete
Authorizations
Path parameters
idstring · uuidRequired
A UUID string identifying this podcast.
Responses
204
No response body
delete
DELETE /api/media/podcasts/{id} HTTP/1.1
Host: prosper-api-test.churchpad.com
Authorization: Bearer JWT
Accept: */*
204
No response body
No content
patch
Authorizations
Path parameters
idstring · uuidRequired
A UUID string identifying this podcast.
Body
idstring · uuidRead-onlyOptional
speakerstring · uuidOptional
categoriesstring · uuid[]Optional
play_countstringRead-onlyOptional
last_played_atstringRead-onlyOptional
positionstringRead-onlyOptional
legacy_idstring | nullableOptional
nextgen_legacy_idstring | nullableOptional
created_atstring · date-time | nullableOptional
updated_atstring · date-timeRead-onlyOptional
namestring · max: 255Optional
urlstring · uri | nullableOptional
descriptionstring | nullableOptional
bannerstring | nullableOptional
durationinteger · max: 2147483647Optional
published_atstring · date-time | nullableOptional
albumstring · uuid | nullableOptional
Responses
200Success
application/json
patch
PATCH /api/media/podcasts/{id} HTTP/1.1
Host: prosper-api-test.churchpad.com
Authorization: Bearer JWT
Content-Type: application/json
Accept: */*
Content-Length: 371
{
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}
200Success
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"speaker": "123e4567-e89b-12d3-a456-426614174000",
"categories": [
"123e4567-e89b-12d3-a456-426614174000"
],
"play_count": "text",
"last_played_at": "text",
"position": "text",
"legacy_id": "text",
"nextgen_legacy_id": "text",
"created_at": "2025-07-23T12:34:09.364Z",
"updated_at": "2025-07-23T12:34:09.364Z",
"name": "text",
"url": "https://example.com",
"description": "text",
"banner": "text",
"duration": 1,
"published_at": "2025-07-23T12:34:09.364Z",
"album": "123e4567-e89b-12d3-a456-426614174000"
}