Xsolla-logo

Authentifier par custom IDServer-side

post/users/login/server_custom_id

Authentifie l'utilisateur à l'aide d'un custom ID spécifique. Si l'utilisateur n'existe pas, il est créé.

SecurityServer
Request
query Parameters
projectId
string <uuid>

ID du projet de connexion issu du Compte éditeur. Si vous ne le spécifiez pas, la connexion fantôme est utilisée pour le paramètre publisher_project_id spécifié.

Vous n'avez pas besoin de passer l'ID de connexion fantôme à cet appel.

payload
string

Vos données personnalisées. La valeur du paramètre sera renvoyée dans la revendication payload du JWT utilisateur. La longueur maximale recommandée est de moins de 500 caractères. Notez que ce paramètre n'est disponible qu'avec un stockage de données utilisateur personnalisé.

publisher_project_id
integer

ID de projet issu du Compte éditeur pour lequel vous faites une requête.

Si vous le spécifiez, mais que vous ne spécifiez pas le paramètre project_id, le service sera lié à son propre project_id. Contactez votre responsable de la réussite client pour lier project_id à publisher_project_id.

with_logout
string
Default: "0"

Indique s'il faut désactiver les valeurs existantes du JWT utilisateur et activer celles générées par cet appel. Valeurs possibles :

  • 1 : pour désactiver les valeurs existantes et en activer une nouvelle ;
  • 0 : pour garder les valeurs existantes activées.
Request Body schema: application/json
server_custom_id
required
string <= 256 characters

Custom ID existant sur votre serveur. Note: Ce n'est pas le même ID que l'ID utilisateur Xsolla Login.

Array of objects

Attributs utilisateur mis à jour ou créés lors de l'authentification.

Array
key
required
string <= 256 characters [A-Za-z0-9_]+

Nom de l'attribut utilisé pour identifier l'attribut utilisateur. Il doit être unique pour chaque utilisateur.

value
required
any
attr_type
required
string

Définition du niveau d'accès de l'utilisateur aux attributs de service :

  • client : attribut modifiable par l'utilisateur. Les valeurs de ce type d'attributs sont saisies par l'utilisateur ou spécifiées selon la logique du jeu côté client. Par exemple : le nom et les statistiques du personnage, le niveau de difficulté du jeu, etc.
  • server : attribut en lecture seule. Les valeurs de ce type d'attributs sont saisies et modifiées côté serveur de votre application. Nous vous recommandons de les utiliser pour configurer les statistiques des personnages du jeu ou les paramètres utilisateur qui ne doivent pas changer régulièrement. Par exemple, les chances d'obtenir un bonus, les paramètres clés des personnages du jeu, les catégories d'utilisateurs, etc.
Enum: "client" "server"
permission
required
string

Définition du niveau d'accès de l'utilisateur aux attributs des autres utilisateurs.

Enum: "private" "public"
read_only
boolean
object

Profil social de l'utilisateur.

user_id
required
string

ID de l'utilisateur auprès d'un fournisseur de réseau social.

platform
required
string

Nom du fournisseur de réseau social.

object

User profile. This fields describe the user data.

nickname
required
string <= 255 characters

A value of field will be added to the user token. Nickname is not unique in login project. Can be added or updated during sign up or sign in.

Responses
200

OK

400

Bad Request

401

Unauthorized

404

Not Found

422

Unprocessable Entity

429

Too Many Requests

Request samples
application/json
{
  • "attributes": [
    ],
  • "server_custom_id": "1234567890asdfghjkl",
  • "social_profile": {
    },
  • "user_profile": {
    }
}
Response samples
application/json
{
  • "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJlbWFpbCI6IiIsImV4cCI6MTY1MzEyMzk5MCwiZ3JvdXBzIjpbXSwiaWF0IjoxNjUzMDM3NTkwLCJpc3MiOiJodHRwczovL2xvZ2luLnhzb2xsYS5jb20iLCJwdWJsaXNoZXJfaWQiOjMsInNlcnZlcl9jdXN0b21faWQiOiJteS1jdXN0b20taWQtbm90LWxpbmtlZCIsInN1YiI6IjI0MTBkNmMzLWFhZDEtNGY0OS04ODNlLTQ2Y2FkM2ZiMmJjMiIsInR5cGUiOiJzZXJ2ZXJfY3VzdG9tX2lkIiwidXNlcm5hbWUiOm51bGwsInhzb2xsYV9sb2dpbl9hY2Nlc3Nfa2V5IjoiSFhzTVZSWmRtd2tuZXNZMG1pNEpUMVhJUm43bVM4ZU5oc1FxaTU4bmtCayIsInhzb2xsYV9sb2dpbl9wcm9qZWN0X2lkIjoiMTM3NTkyM2ItODdmMy00YTIwLWFjMmItZDBhMjg3MzBlNDIwIn0.D8dFMN5Bmgnpejq1EhZUZQP_D5iFhpO_RXnVyE03qUI"
}