mirror of
https://github.com/jakejarvis/sofa.git
synced 2026-10-16 06:25:42 -04:00
chore(docs): sync API spec
This commit is contained in:
4 files changed
+242
-11
No files matched your search
@@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
title: Get user's streaming platforms
|
||||||
|
full: true
|
||||||
|
_openapi:
|
||||||
|
method: GET
|
||||||
|
toc: []
|
||||||
|
structuredData:
|
||||||
|
headings: []
|
||||||
|
contents:
|
||||||
|
- content: Fetch the current user's subscribed streaming platform IDs.
|
||||||
|
---
|
||||||
|
|
||||||
|
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
|
||||||
|
|
||||||
|
Fetch the current user's subscribed streaming platform IDs.
|
||||||
|
|
||||||
|
<APIPage document={"./public/openapi.json"} operations={[{"path":"/account/platforms","method":"get"}]} />
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
title: Update streaming platforms
|
||||||
|
full: true
|
||||||
|
_openapi:
|
||||||
|
method: PUT
|
||||||
|
toc: []
|
||||||
|
structuredData:
|
||||||
|
headings: []
|
||||||
|
contents:
|
||||||
|
- content: Set the current user's subscribed streaming platforms.
|
||||||
|
---
|
||||||
|
|
||||||
|
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
|
||||||
|
|
||||||
|
Set the current user's subscribed streaming platforms.
|
||||||
|
|
||||||
|
<APIPage document={"./public/openapi.json"} operations={[{"path":"/account/platforms","method":"put"}]} />
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
---
|
||||||
|
title: List all platforms
|
||||||
|
full: true
|
||||||
|
_openapi:
|
||||||
|
method: GET
|
||||||
|
toc: []
|
||||||
|
structuredData:
|
||||||
|
headings: []
|
||||||
|
contents:
|
||||||
|
- content: Fetch all available streaming platforms, ordered by popularity.
|
||||||
|
---
|
||||||
|
|
||||||
|
{/* This file was generated by Fumadocs. Do not edit this file directly. Any changes should be made by running the generation command again. */}
|
||||||
|
|
||||||
|
Fetch all available streaming platforms, ordered by popularity.
|
||||||
|
|
||||||
|
<APIPage document={"./public/openapi.json"} operations={[{"path":"/platforms","method":"get"}]} />
|
||||||
+191
-11
@@ -1695,11 +1695,11 @@
|
|||||||
"allowReserved": true
|
"allowReserved": true
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "availableToStream",
|
"name": "onMyServices",
|
||||||
"in": "query",
|
"in": "query",
|
||||||
"schema": {
|
"schema": {
|
||||||
"type": "boolean",
|
"type": "boolean",
|
||||||
"description": "Only show titles with streaming availability"
|
"description": "Only show titles available on the user's streaming services"
|
||||||
},
|
},
|
||||||
"allowEmptyValue": true,
|
"allowEmptyValue": true,
|
||||||
"allowReserved": true
|
"allowReserved": true
|
||||||
@@ -2025,9 +2025,9 @@
|
|||||||
"items": {
|
"items": {
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"providerId": {
|
"platformId": {
|
||||||
"type": "number",
|
"type": "string",
|
||||||
"description": "JustWatch provider ID"
|
"description": "Platform ID"
|
||||||
},
|
},
|
||||||
"providerName": {
|
"providerName": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
@@ -2058,14 +2058,19 @@
|
|||||||
}
|
}
|
||||||
],
|
],
|
||||||
"description": "Direct link to watch on this provider"
|
"description": "Direct link to watch on this provider"
|
||||||
|
},
|
||||||
|
"isUserSubscribed": {
|
||||||
|
"type": "boolean",
|
||||||
|
"description": "Whether the user subscribes to this platform"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
"providerId",
|
"platformId",
|
||||||
"providerName",
|
"providerName",
|
||||||
"logoPath",
|
"logoPath",
|
||||||
"offerType",
|
"offerType",
|
||||||
"watchUrl"
|
"watchUrl",
|
||||||
|
"isUserSubscribed"
|
||||||
],
|
],
|
||||||
"description": "A streaming availability offer from a provider"
|
"description": "A streaming availability offer from a provider"
|
||||||
},
|
},
|
||||||
@@ -3486,8 +3491,8 @@
|
|||||||
{
|
{
|
||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"providerId": {
|
"platformId": {
|
||||||
"type": "number"
|
"type": "string"
|
||||||
},
|
},
|
||||||
"providerName": {
|
"providerName": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
@@ -3504,7 +3509,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
"providerId",
|
"platformId",
|
||||||
"providerName",
|
"providerName",
|
||||||
"logoPath"
|
"logoPath"
|
||||||
]
|
]
|
||||||
@@ -4335,7 +4340,18 @@
|
|||||||
"type": "object",
|
"type": "object",
|
||||||
"properties": {
|
"properties": {
|
||||||
"id": {
|
"id": {
|
||||||
"type": "number",
|
"type": "string",
|
||||||
|
"description": "Platform ID"
|
||||||
|
},
|
||||||
|
"tmdbProviderId": {
|
||||||
|
"anyOf": [
|
||||||
|
{
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "null"
|
||||||
|
}
|
||||||
|
],
|
||||||
"description": "TMDB provider ID"
|
"description": "TMDB provider ID"
|
||||||
},
|
},
|
||||||
"name": {
|
"name": {
|
||||||
@@ -4356,6 +4372,7 @@
|
|||||||
},
|
},
|
||||||
"required": [
|
"required": [
|
||||||
"id",
|
"id",
|
||||||
|
"tmdbProviderId",
|
||||||
"name",
|
"name",
|
||||||
"logoPath"
|
"logoPath"
|
||||||
]
|
]
|
||||||
@@ -4835,6 +4852,9 @@
|
|||||||
"required": false,
|
"required": false,
|
||||||
"schema": {
|
"schema": {
|
||||||
"type": "string",
|
"type": "string",
|
||||||
|
"minLength": 2,
|
||||||
|
"maxLength": 2,
|
||||||
|
"pattern": "^[a-z]{2}$",
|
||||||
"description": "ISO 639-1 original language code"
|
"description": "ISO 639-1 original language code"
|
||||||
},
|
},
|
||||||
"allowEmptyValue": true,
|
"allowEmptyValue": true,
|
||||||
@@ -6646,6 +6666,166 @@
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"/account/platforms": {
|
||||||
|
"get": {
|
||||||
|
"operationId": "account.platforms",
|
||||||
|
"summary": "Get user's streaming platforms",
|
||||||
|
"description": "Fetch the current user's subscribed streaming platform IDs.",
|
||||||
|
"tags": [
|
||||||
|
"Account"
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "List of platform IDs",
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"schema": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"platformIds": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"platformIds"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"session": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"put": {
|
||||||
|
"operationId": "account.updatePlatforms",
|
||||||
|
"summary": "Update streaming platforms",
|
||||||
|
"description": "Set the current user's subscribed streaming platforms.",
|
||||||
|
"tags": [
|
||||||
|
"Account"
|
||||||
|
],
|
||||||
|
"requestBody": {
|
||||||
|
"required": true,
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"schema": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"platformIds": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"description": "List of platform IDs the user subscribes to"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"platformIds"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "OK"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"session": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"/platforms": {
|
||||||
|
"get": {
|
||||||
|
"operationId": "platforms.list",
|
||||||
|
"summary": "List all platforms",
|
||||||
|
"description": "Fetch all available streaming platforms, ordered by popularity.",
|
||||||
|
"tags": [
|
||||||
|
"Platforms"
|
||||||
|
],
|
||||||
|
"responses": {
|
||||||
|
"200": {
|
||||||
|
"description": "All platforms with metadata",
|
||||||
|
"content": {
|
||||||
|
"application/json": {
|
||||||
|
"schema": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"platforms": {
|
||||||
|
"type": "array",
|
||||||
|
"items": {
|
||||||
|
"type": "object",
|
||||||
|
"properties": {
|
||||||
|
"id": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Platform ID"
|
||||||
|
},
|
||||||
|
"name": {
|
||||||
|
"type": "string",
|
||||||
|
"description": "Display name"
|
||||||
|
},
|
||||||
|
"tmdbProviderId": {
|
||||||
|
"anyOf": [
|
||||||
|
{
|
||||||
|
"type": "number"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "null"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "TMDB provider ID (null for custom platforms)"
|
||||||
|
},
|
||||||
|
"logoPath": {
|
||||||
|
"anyOf": [
|
||||||
|
{
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "null"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"description": "Logo image path"
|
||||||
|
},
|
||||||
|
"displayOrder": {
|
||||||
|
"type": "number",
|
||||||
|
"description": "Sort order"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"id",
|
||||||
|
"name",
|
||||||
|
"tmdbProviderId",
|
||||||
|
"logoPath",
|
||||||
|
"displayOrder"
|
||||||
|
],
|
||||||
|
"description": "A streaming platform"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"required": [
|
||||||
|
"platforms"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"security": [
|
||||||
|
{
|
||||||
|
"session": []
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
"/imports/parse-file": {
|
"/imports/parse-file": {
|
||||||
"post": {
|
"post": {
|
||||||
"operationId": "imports.parseFile",
|
"operationId": "imports.parseFile",
|
||||||
|
|||||||
Reference in new issue
Block a user