Créer une session d’authentification create-authentication-session

IMPORTANT
Le contenu de cette page est fourni à titre d’information uniquement. L’utilisation de cette API nécessite une licence Adobe actuelle. Aucune utilisation non autorisée n’est autorisée.
IMPORTANT
L’implémentation de l’API REST V2 est limitée par la documentation Mécanisme de limitation.

Requête request

HTTP
chemin
/api/v2/{serviceProvider}/sessions
méthode
POSTER
Paramètres de chemin
serviceProvider
Identifiant unique interne associé au fournisseur de services lors du processus d’intégration.
obligatoire
Paramètres du corps
mvpd
Identifiant unique interne associé au fournisseur d’identité lors du processus d’intégration.

Si la plateforme de l’appareil de diffusion en continu présente des limites dans la fourniture d’une valeur, une application doit reprendre la session d’authentification et fournir une valeur valide.
obligatoire
domainName
Domaine d’origine de l’application qui effectue la connexion à MVPD.

Si la plateforme de l’appareil de diffusion en continu présente des limites dans la fourniture d’une valeur, une application doit reprendre la session d’authentification et fournir une valeur valide.
obligatoire
redirectUrl
URL de redirection finale vers laquelle l’agent utilisateur accède une fois le flux d’authentification pour MVPD terminé.

La valeur doit être encodée en URL.

Si la plateforme de l’appareil de diffusion en continu présente des limites dans la fourniture d’une valeur, une application doit reprendre la session d’authentification et fournir une valeur valide.
obligatoire
En-têtes
Autorisation
La génération de la payload du jeton porteur est décrite dans la documentation d’en-tête Authorization.
obligatoire
Content-Type
Type de média accepté pour les ressources en cours d’envoi.

Il doit s’agir de application/x-www-form-urlencoded.
obligatoire
AP-Device-Identifier
La génération de la payload de l’identifiant d’appareil est décrite dans la documentation d’en-tête AP-Device-Identifier.
obligatoire
X-Device-Info
La génération de la payload d’informations sur le périphérique est décrite dans la documentation d’en-tête X-Device-Info.

Il est vivement recommandé de toujours l’utiliser lorsque la plateforme d’appareil de l’application permet la fourniture explicite de valeurs valides.

Lorsqu’il est fourni, le serveur principal d’authentification Adobe Pass fusionne implicitement (par défaut) les valeurs définies explicitement avec les valeurs extraites.

Lorsqu’il n’est pas fourni, le serveur principal de l’authentification Adobe Pass utilise implicitement (par défaut) les valeurs extraites.
obligatoire
X-Forwarded-For
Adresse IP de l’appareil de diffusion en continu.

Il est vivement recommandé de toujours l’utiliser pour les implémentations serveur à serveur, en particulier lorsque l’appel est effectué par le service de programmation plutôt que par l’appareil de diffusion en continu.

Pour les implémentations client à serveur, l’adresse IP de l’appareil de diffusion en continu est envoyée implicitement.
facultatif
Adobe-Subject-Token
or
X-Roku-Reserved-Roku-Connect-Token
La génération de la payload d’authentification unique pour la méthode d’identité de Platform est décrite dans la documentation de l’en-tête Adobe-Subject-Token / X-Roku-Reserved-Roku-Connect-Token.

Pour plus d’informations sur les flux activés pour l’authentification unique à l’aide d’une identité de plateforme, reportez-vous à la documentation Authentification unique à l’aide des flux d’identité de plateforme.
facultatif
Jeton de service AD
La génération de la payload d’authentification unique pour la méthode de jeton de service est décrite dans la documentation d’en-tête AD-Service-Token.

Pour plus d’informations sur les flux activés pour l’authentification unique à l’aide d’un jeton de service, reportez-vous à la documentation Authentification unique à l’aide de flux de jetons de service.
facultatif
AP-Visitor-Identifier
La génération de la payload de l’identifiant visiteur est décrite dans la documentation d’en-tête AP-Visitor-Identifier.
facultatif
Accepter
Type de média accepté par l’application cliente.

S’il est spécifié, il doit s’agir d’application/json.
facultatif
User-Agent
Agent utilisateur de l’application cliente.
facultatif

Réponse response

Code
Texte
Description
200
OK
Le corps de la réponse contient des informations sur les actions suivantes nécessaires pour effectuer l’authentification.
400
Requête incorrecte
La requête n’est pas valide, le client doit la corriger et réessayer. Le corps de la réponse peut contenir des informations d’erreur conformes à la documentation Codes d’erreur améliorés.
401
Non Autorisé
Le jeton d’accès n’est pas valide, le client doit obtenir un nouveau jeton d’accès et réessayer. Pour plus d’informations, consultez la documentation Présentation de l’enregistrement client dynamique.
405
Méthode Non Autorisée
La méthode HTTP n’est pas valide, le client doit utiliser une méthode HTTP autorisée pour la ressource demandée et réessayer. Pour plus d’informations, consultez la section Requête.
500
Erreur de serveur interne
Un problème est survenu côté serveur. Le corps de la réponse peut contenir des informations d’erreur conformes à la documentation Codes d’erreur améliorés.

Succès success

En-têtes
Etat
200
obligatoire
Content-Type
application/json
obligatoire
Corps

Objet JSON possédant les attributs suivants :

table 0-row-3 1-row-3 2-row-3 3-row-3 4-row-3 5-row-3 6-row-3 7-row-3 8-row-3 9-row-3 10-row-3 11-row-3 1-bgcolor-eff2f7 2-bgcolor-eff2f7 3-bgcolor-eff2f7 5-bgcolor-deebff 9-bgcolor-deebff 13-bgcolor-deebff 17-bgcolor-deebff 21-bgcolor-deebff 25-bgcolor-deebff 29-bgcolor-deebff 33-bgcolor-deebff 37-bgcolor-deebff 41-bgcolor-deebff 45-bgcolor-deebff layout-auto html-authored
Attribut
actionName

Action que l’appareil de diffusion en continu doit effectuer pour terminer le flux d’authentification.

Les valeurs possibles sont les suivantes :

  • authentifier
    L’appareil de diffusion en continu ou un autre appareil doit ouvrir l’URL fournie dans un agent utilisateur.
  • resume
    L’appareil de diffusion en continu ou un autre appareil doit fournir les paramètres manquants et reprendre la session d’authentification à l’aide du code .
  • authorize
    L’appareil de diffusion en continu peut traiter directement les flux de décisions.
obligatoire
actionType

Type d’interaction que l’appareil de diffusion en continu doit effectuer pour continuer le flux avec l’action spécifiée par l’attribut « actionName ».

Les valeurs possibles sont les suivantes :

  • interactif
    Le flux se poursuit avec une navigation vers l’URL fournie à l’aide d’un agent utilisateur.
  • direct
    Le flux se poursuit par un appel direct à l’URL fournie à l’aide d’un client HTTP disponible pour l’implémentation du client.
obligatoire
reasonType

Type de raison qui explique le « actionName ».

Les valeurs possibles sont les suivantes :

  • none
    L’application cliente est requise pour continuer à s’authentifier.
  • authentifié
    L’application cliente est déjà authentifiée par le biais de flux d’accès de base.
  • temporaire
    L’application cliente est déjà authentifiée par le biais de flux d’accès temporaires.
  • degraded
    L’application cliente est déjà authentifiée par le biais de flux d’accès dégradés.
  • authenticatedSSO
    L’application cliente est déjà authentifiée par le biais de flux d’accès à authentification unique.
obligatoire
missingParameters Paramètres manquants qui doivent être fournis pour terminer le flux d’authentification de base. facultatif
url URL dans laquelle l’application cliente doit naviguer. facultatif
code Code d’authentification qui peut être utilisé sur une application secondaire pour reprendre la session d’authentification. obligatoire
sessionId Identifiant opaque pouvant être utilisé pour le suivi de l’activité des utilisateurs et utilisatrices. obligatoire
mvpd Identifiant unique interne associé au fournisseur d’identité lors du processus d’intégration. facultatif
serviceProvider Identifiant unique interne associé au fournisseur de services lors du processus d’intégration. obligatoire
notBefore Date et heure, en millisecondes, avant lesquelles le code d’authentification n’est pas valide. facultatif
notAfter Date et heure en millisecondes au-delà desquelles le code d’authentification n’est pas valide. facultatif
obligatoire

Erreur error

En-têtes
Etat
400, 401, 405, 500
obligatoire
Content-Type
application/json
obligatoire
Corps
Le corps de la réponse peut fournir des informations d’erreur supplémentaires conformes à la documentation Codes d’erreur améliorés.
obligatoire

Exemples samples

​1. Créer une session d’authentification sans paramètres manquants

Requête
code language-https
POST /api/v2/REF30/sessions HTTP/1.1

    Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjNGZjM2U3ZS0xMmQ5LTQ5NWQtYjc0Mi02YWVhYzhhNDkwZTciLCJuYmYiOjE3MjQwODc4NjgsImlzcyI6ImF1dGguYWRvYmUuY29tIiwic2NvcGVzIjoiYXBpOmNsaWVudDp2MiIsImV4cCI6MTcyNDEwOTQ2OCwiaWF0IjoxNzI0MDg3ODY4fQ.DJ9GFl_yKAp2Qw-NVcBeRSnxIhqrwxhns5T5jU31N2tiHxCucKLSQ5guBygqkkJx6D0N_93f50meEEyfb7frbHhVHHwmRjHYjkfrWqHCpviwVjVZKKwl8Y3FEMb0bjKIB8p_E3txX9IbzeNGWRufZBRh2sxB5Q9B7XYINpVfh8s_sFvskrbDu5c01neCx5kEagEW5CtE0_EXTgEb5FSr_SfQG3UUu_iwlkOggOh_kOP_5GueElf9jn-bYBMnpObyN5s-FzuHDG5Rtac5rvcWqVW2reEqFTHqLI4rVC7UKQb6DSvPBPV4AgrutAvk30CYgDsOQILVyrjniincp7r9Ww
    Content-Type: application/x-www-form-urlencoded
    AP-Device-Identifier: fingerprint YmEyM2QxNDEtZDcxNS01NjFjLTk0ZjQtZTllNGM5NjZiMWVi
    X-Device-Info: ewoJInByaW1hcnlIYXJkd2FyZVR5cGUiOiAiU2V0VG9wQm94IiwKCSJtb2RlbCI6ICJUViA1dGggR2VuIiwKCSJtYW51ZmFjdHVyZXIiOiAiQXBwbGUiLAoJIm9zTmFtZSI6ICJ0dk9TIgoJIm9zVmVuZG9yIjogIkFwcGxlIiwKCSJvc1ZlcnNpb24iOiAiMTEuMCIKfQ==
    Accept: application/json
    User-Agent: Mozilla/5.0 (Apple TV; U; CPU AppleTV5,3 OS 11.0 like Mac OS X; en_US)

Body:

mvpd=Cablevision&domainName=adobe.com&redirectUrl=https%3A%2F%2Fadobe.com
Réponse
code language-https
HTTP/1.1 200 OK

Content-Type: application/json;charset=UTF-8

{
    "actionName": "authenticate",
    "actionType": "interactive",
    "reasonType": "none",
    "url": "/api/v2/authenticate/REF30/8ER640M",
    "code": "8ER640M",
    "sessionId": "1b614390-6610-4d14-9421-6565f6e75958",
    "mvpd": "Cablevision",
    "serviceProvider": "REF30",
    "notBefore": "1733735289035",
    "notAfter": "1733737089035"
}

​2. Créer une session d’authentification avec des paramètres manquants

Requête
code language-https
POST /api/v2/REF30/sessions HTTP/1.1

    Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjNGZjM2U3ZS0xMmQ5LTQ5NWQtYjc0Mi02YWVhYzhhNDkwZTciLCJuYmYiOjE3MjQwODc4NjgsImlzcyI6ImF1dGguYWRvYmUuY29tIiwic2NvcGVzIjoiYXBpOmNsaWVudDp2MiIsImV4cCI6MTcyNDEwOTQ2OCwiaWF0IjoxNzI0MDg3ODY4fQ.DJ9GFl_yKAp2Qw-NVcBeRSnxIhqrwxhns5T5jU31N2tiHxCucKLSQ5guBygqkkJx6D0N_93f50meEEyfb7frbHhVHHwmRjHYjkfrWqHCpviwVjVZKKwl8Y3FEMb0bjKIB8p_E3txX9IbzeNGWRufZBRh2sxB5Q9B7XYINpVfh8s_sFvskrbDu5c01neCx5kEagEW5CtE0_EXTgEb5FSr_SfQG3UUu_iwlkOggOh_kOP_5GueElf9jn-bYBMnpObyN5s-FzuHDG5Rtac5rvcWqVW2reEqFTHqLI4rVC7UKQb6DSvPBPV4AgrutAvk30CYgDsOQILVyrjniincp7r9Ww
    Content-Type: application/x-www-form-urlencoded
    AP-Device-Identifier: fingerprint YmEyM2QxNDEtZDcxNS01NjFjLTk0ZjQtZTllNGM5NjZiMWVi
    X-Device-Info: ewoJInByaW1hcnlIYXJkd2FyZVR5cGUiOiAiU2V0VG9wQm94IiwKCSJtb2RlbCI6ICJUViA1dGggR2VuIiwKCSJtYW51ZmFjdHVyZXIiOiAiQXBwbGUiLAoJIm9zTmFtZSI6ICJ0dk9TIgoJIm9zVmVuZG9yIjogIkFwcGxlIiwKCSJvc1ZlcnNpb24iOiAiMTEuMCIKfQ==
    Accept: application/json
    User-Agent: Mozilla/5.0 (Apple TV; U; CPU AppleTV5,3 OS 11.0 like Mac OS X; en_US)

Body:
Réponse
code language-https
HTTP/1.1 200 OK

Content-Type: application/json;charset=UTF-8

{
    "actionName": "resume",
    "actionType": "direct",
    "reasonType": "none",
    "url": "/api/v2/REF30/sessions/8ER640M",
    "missingParameters": ["mvpd", "domain", "redirectUrl"],
    "code": "8ER640M",
    "sessionId": "1b614390-6610-4d14-9421-6565f6e75958",
    "serviceProvider": "REF30",
    "notBefore": "1733735289035",
    "notAfter": "1733737089035"
}

​3. Créer une session d’authentification lorsqu’un profil valide existe déjà

Requête
code language-https
POST /api/v2/REF30/sessions HTTP/1.1

    Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjNGZjM2U3ZS0xMmQ5LTQ5NWQtYjc0Mi02YWVhYzhhNDkwZTciLCJuYmYiOjE3MjQwODc4NjgsImlzcyI6ImF1dGguYWRvYmUuY29tIiwic2NvcGVzIjoiYXBpOmNsaWVudDp2MiIsImV4cCI6MTcyNDEwOTQ2OCwiaWF0IjoxNzI0MDg3ODY4fQ.DJ9GFl_yKAp2Qw-NVcBeRSnxIhqrwxhns5T5jU31N2tiHxCucKLSQ5guBygqkkJx6D0N_93f50meEEyfb7frbHhVHHwmRjHYjkfrWqHCpviwVjVZKKwl8Y3FEMb0bjKIB8p_E3txX9IbzeNGWRufZBRh2sxB5Q9B7XYINpVfh8s_sFvskrbDu5c01neCx5kEagEW5CtE0_EXTgEb5FSr_SfQG3UUu_iwlkOggOh_kOP_5GueElf9jn-bYBMnpObyN5s-FzuHDG5Rtac5rvcWqVW2reEqFTHqLI4rVC7UKQb6DSvPBPV4AgrutAvk30CYgDsOQILVyrjniincp7r9Ww
    Content-Type: application/x-www-form-urlencoded
    AP-Device-Identifier: fingerprint YmEyM2QxNDEtZDcxNS01NjFjLTk0ZjQtZTllNGM5NjZiMWVi
    X-Device-Info: ewoJInByaW1hcnlIYXJkd2FyZVR5cGUiOiAiU2V0VG9wQm94IiwKCSJtb2RlbCI6ICJUViA1dGggR2VuIiwKCSJtYW51ZmFjdHVyZXIiOiAiQXBwbGUiLAoJIm9zTmFtZSI6ICJ0dk9TIgoJIm9zVmVuZG9yIjogIkFwcGxlIiwKCSJvc1ZlcnNpb24iOiAiMTEuMCIKfQ==
    Accept: application/json
    User-Agent: Mozilla/5.0 (Apple TV; U; CPU AppleTV5,3 OS 11.0 like Mac OS X; en_US)

Body:

mvpd=Cablevision&domainName=adobe.com&redirectUrl=https%3A%2F%2Fadobe.com
Réponse
code language-https
HTTP/1.1 200 OK

Content-Type: application/json;charset=UTF-8

{
    "actionName": "authorize",
    "actionType": "direct",
    "reasonType": "authenticated",
    "url": "/api/v2/REF30/decisions/authorize/Cablevision",
    "sessionId": "1b614390-6610-4d14-9421-6565f6e75958",
    "mvpd": "Cablevision",
    "serviceProvider": "REF30"
}

​4. Créer une session d’authentification à l’aide du TempPass de base ou promotionnel (non requis)

Requête
code language-https
POST /api/v2/REF30/sessions HTTP/1.1

    Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjNGZjM2U3ZS0xMmQ5LTQ5NWQtYjc0Mi02YWVhYzhhNDkwZTciLCJuYmYiOjE3MjQwODc4NjgsImlzcyI6ImF1dGguYWRvYmUuY29tIiwic2NvcGVzIjoiYXBpOmNsaWVudDp2MiIsImV4cCI6MTcyNDEwOTQ2OCwiaWF0IjoxNzI0MDg3ODY4fQ.DJ9GFl_yKAp2Qw-NVcBeRSnxIhqrwxhns5T5jU31N2tiHxCucKLSQ5guBygqkkJx6D0N_93f50meEEyfb7frbHhVHHwmRjHYjkfrWqHCpviwVjVZKKwl8Y3FEMb0bjKIB8p_E3txX9IbzeNGWRufZBRh2sxB5Q9B7XYINpVfh8s_sFvskrbDu5c01neCx5kEagEW5CtE0_EXTgEb5FSr_SfQG3UUu_iwlkOggOh_kOP_5GueElf9jn-bYBMnpObyN5s-FzuHDG5Rtac5rvcWqVW2reEqFTHqLI4rVC7UKQb6DSvPBPV4AgrutAvk30CYgDsOQILVyrjniincp7r9Ww
    Content-Type: application/x-www-form-urlencoded
    AP-Device-Identifier: fingerprint YmEyM2QxNDEtZDcxNS01NjFjLTk0ZjQtZTllNGM5NjZiMWVi
    X-Device-Info: ewoJInByaW1hcnlIYXJkd2FyZVR5cGUiOiAiU2V0VG9wQm94IiwKCSJtb2RlbCI6ICJUViA1dGggR2VuIiwKCSJtYW51ZmFjdHVyZXIiOiAiQXBwbGUiLAoJIm9zTmFtZSI6ICJ0dk9TIgoJIm9zVmVuZG9yIjogIkFwcGxlIiwKCSJvc1ZlcnNpb24iOiAiMTEuMCIKfQ==
    Accept: application/json
    User-Agent: Mozilla/5.0 (Apple TV; U; CPU AppleTV5,3 OS 11.0 like Mac OS X; en_US)

Body:

mvpd=TempPass_TEST40&domainName=adobe.com&redirectUrl=https%3A%2F%2Fadobe.com
Réponse
code language-https
HTTP/1.1 200 OK

Content-Type: application/json;charset=UTF-8

{
    "actionName": "authorize",
    "actionType": "direct",
    "reasonType": "temporary",
    "url": "/api/v2/REF30/decisions/authorize/TempPass_TEST40",
    "sessionId": "1b614390-6610-4d14-9421-6565f6e75958",
    "mvpd": "TempPass_TEST40",
    "serviceProvider": "REF30"
}

​5. Créer une session d’authentification lorsque la dégradation est appliquée

Requête
code language-https
POST /api/v2/REF30/sessions HTTP/1.1

    Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOiJjNGZjM2U3ZS0xMmQ5LTQ5NWQtYjc0Mi02YWVhYzhhNDkwZTciLCJuYmYiOjE3MjQwODc4NjgsImlzcyI6ImF1dGguYWRvYmUuY29tIiwic2NvcGVzIjoiYXBpOmNsaWVudDp2MiIsImV4cCI6MTcyNDEwOTQ2OCwiaWF0IjoxNzI0MDg3ODY4fQ.DJ9GFl_yKAp2Qw-NVcBeRSnxIhqrwxhns5T5jU31N2tiHxCucKLSQ5guBygqkkJx6D0N_93f50meEEyfb7frbHhVHHwmRjHYjkfrWqHCpviwVjVZKKwl8Y3FEMb0bjKIB8p_E3txX9IbzeNGWRufZBRh2sxB5Q9B7XYINpVfh8s_sFvskrbDu5c01neCx5kEagEW5CtE0_EXTgEb5FSr_SfQG3UUu_iwlkOggOh_kOP_5GueElf9jn-bYBMnpObyN5s-FzuHDG5Rtac5rvcWqVW2reEqFTHqLI4rVC7UKQb6DSvPBPV4AgrutAvk30CYgDsOQILVyrjniincp7r9Ww
    Content-Type: application/x-www-form-urlencoded
    AP-Device-Identifier: fingerprint YmEyM2QxNDEtZDcxNS01NjFjLTk0ZjQtZTllNGM5NjZiMWVi
    X-Device-Info: ewoJInByaW1hcnlIYXJkd2FyZVR5cGUiOiAiU2V0VG9wQm94IiwKCSJtb2RlbCI6ICJUViA1dGggR2VuIiwKCSJtYW51ZmFjdHVyZXIiOiAiQXBwbGUiLAoJIm9zTmFtZSI6ICJ0dk9TIgoJIm9zVmVuZG9yIjogIkFwcGxlIiwKCSJvc1ZlcnNpb24iOiAiMTEuMCIKfQ==
    Accept: application/json
    User-Agent: Mozilla/5.0 (Apple TV; U; CPU AppleTV5,3 OS 11.0 like Mac OS X; en_US)

Body:

mvpd=Cablevision&domainName=adobe.com&redirectUrl=https%3A%2F%2Fadobe.com
Réponse
code language-https
HTTP/1.1 200 OK

Content-Type: application/json;charset=UTF-8

{
    "actionName": "authorize",
    "actionType": "direct",
    "reasonType": "degraded",
    "url": "/api/v2/REF30/decisions/authorize/Cablevision",
    "sessionId": "1b614390-6610-4d14-9421-6565f6e75958",
    "mvpd": "Cablevision",
    "serviceProvider": "REF30"
}
recommendation-more-help
3f5e655c-af63-48cc-9769-2b6803cc5f4b