https://gateway.streamfizz.live/apiMet à jour la confidentialité d'une playlist.
| Nom | Type | Description |
|---|---|---|
id* | ID! | Identifiant unique de la playlist. |
type | ConfidentialityType | Type de confidentialité (PUBLIC ou PRIVATE). |
hasPublicPageAvailable | Boolean | Autorise l'accès à la page publique. |
hasRollAvailable | Boolean | Autorise les annonces (rolls) sur le contenu. |
hasEmbedAvailable | Boolean | Autorise l'intégration en iframe (embed). |
embedAllowedDomains | [String!] | Liste des domaines autorisés pour l'intégration embed. Chaque entrée est
ramenée à son nom d'hôte avant d'être enregistrée (protocole, |
isPasswordProtected | Boolean | Active la protection par mot de passe. |
password | String | Mot de passe pour accéder au contenu (requis si isPasswordProtected est true ; un mot de passe fait uniquement d'espaces compte comme absent). Un contenu créé hérite du mot de passe des préférences du compte seulement si ces préférences activent la protection par mot de passe. |
allowPreviewContent | Boolean | Autorise la prévisualisation du contenu avant déverrouillage. |
isIpProtected | Boolean | Active la restriction par adresse IP. |
ips | [String!] | Liste des adresses IP autorisées (requise si isIpProtected est true) : adresses IPv4 ou IPv6 exactes, sans plage CIDR ; les doublons sont ignorés. |
Playlist| Nom | Type | Description |
|---|---|---|
id | ID! | - |
title | String! | - |
myCapability | AuthzCapability! | Ce que l'appelant a le droit de faire sur ce contenu, compte tenu de ses
groupes et de ses accès directs : |
contentCount | Int | - |
mediaCount | Int | - |
liveCount | Int | - |
hasUniqueChapterFeed | Boolean | - |
waitingThumbKey | String | - |
waitingThumbCdnUrl | String | - |
rollOption | PlaylistRollOption | - |
note | String | - |
publicUrl | String | - |
publicEmbedUrl | String | - |
accessGroups | [Group!]! | - |
directUsers | [PublicUser!]! | - |
description | Json | - |
createdAt | DateTime! | - |
publisher | User! | - |
account | Account | - |
pageSetting | BrandSetting | - |
embedSetting | BrandSetting | - |
relatedTags | [Tag] | - |
relatedCategories | [Category] | - |
playlistContents | PlaylistContentConnection | Contenus de la playlist, dans l'ordre de lecture ( |
preRoll | RollPreset | - |
postRoll | RollPreset | - |
seo | SEO | - |
smartSections | [WebTVSmartSection] | - |
confidentiality | Confidentiality | - |
privacy | Privacy | Inscription des spectateurs. |
originalPublisher | DeletedUser | - |
| Code | Message | Description |
|---|---|---|
UNAUTHENTICATED | Invalid or expired API key | Clé API manquante ( |
API_ADDON_REQUIRED | This account does not have the API addon | La clé est valide mais le compte n'a pas l'option API. La réponse porte un code HTTP 403 ; la requête n'est pas exécutée. |
INPUT_VALIDATION_ERROR | Validation failed: {field}: {message} | Un ou plusieurs champs sont invalides (format, longueur, protocole…). Le détail est dans extensions.fieldErrors[]. Tout argument texte qui n'est pas de l'Unicode valide — caractère NUL ( |
GRAPHQL_VALIDATION_FAILED | Query depth limit of 10 exceeded, found {depth}. | Le document ne respecte pas le schéma : champ ou argument inconnu, valeur écrite en dur dans la requête qui n'a pas le type attendu (valeur d'enum inexistante…), ou limite par requête dépassée (profondeur, coût, alias, directives — voir Rate Limiting). La réponse porte un code HTTP 400 ; rien n'est exécuté. |
BAD_USER_INPUT | Variable "$name" got invalid value {value}; {reason} | Une variable ( |
INTERNAL_SERVER_ERROR | Internal server error | Erreur interne du serveur. Le message est volontairement générique : le détail est journalisé côté Streamfizz, jamais renvoyé. |
| Code | Message | Description |
|---|---|---|
NOT_FOUND | Playlist '{id}' has not been found | La playlist n'existe pas ou n'appartient pas au compte. |
INPUT_VALIDATION_ERROR | Validation failed: password: Password is required when isPasswordProtected is true | La protection par mot de passe serait active sans mot de passe : |
Validation failed: ips: IPs are required when isIpProtected is true | La protection par IP serait active sans aucune adresse : | |
Validation failed: ips.{index}: Invalid IP address: expected an exact IPv4 or IPv6 address | Une entrée de | |
Validation failed: embedAllowedDomains.{index}: Invalid domain: expected a host name such as example.com | Une entrée de |
60 requêtes par minute par clé API
En cas de dépassement, une erreur 429 Too Many Requests est retournée.