Récupérer et mettre à jour les informations de compte d'un client

Pour récupérer et mettre à jour les informations d'un client à l'aide de l'API Reseller, recherchez le client de l'une des deux manières suivantes:

  • Identifiant unique du client (par exemple, C0123456)
  • Nom de domaine du client (par exemple, example.com)

Récupérer les informations du compte d'un client

Pour récupérer les informations d'un compte client, utilisez la requête GET suivante et incluez le jeton d'autorisation:

GET https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID

Remplacez CUSTOMER_ID par l'identifiant unique ou le nom de domaine de votre client.

Retours de réponse

Lorsque vous récupérez les informations du compte d'un client, l'une des réponses suivantes peut s'afficher:

  • Renvoie l'intégralité des paramètres client. Le client est l'un de vos clients existants. L'API Reseller vous permet de gérer le compte et les paramètres d'abonnement de ce client.

  • Renvoie les informations de compte client minimales. Si la réponse ne renvoie que les valeurs customerId, customerDomain et customerType, cela signifie que le client est géré par Google ou un autre revendeur. Vous ne pouvez pas créer un autre client dont l'adresse e-mail a été validée pour le client. Pour gérer ce client, procédez comme suit:

    1. Récupérez tous les abonnements transférables pour le client afin de déterminer si l'abonnement peut être transféré et le nombre minimal de licences utilisateur pour le transfert.
    2. Transférez l'abonnement.
  • Renvoie Multiple teams exist on this domain. Un ou plusieurs clients d'équipe sont associés à ce domaine. Pour ajouter une autre équipe à ce domaine, procédez comme suit:

    1. Commandez un compte client.
    2. Pour créer un client dont le domaine a été validé, demandez au client de souscrire un abonnement direct via Google, de valider son domaine, de prendre le contrôle des équipes existantes, puis de transférer l'abonnement vers votre compte.
  • Renvoie une erreur HTTP 404. Le client est nouveau sur Google et ne possède pas de compte. Pour gérer ce client, procédez comme suit:

    1. Vérifiez que vos enregistrements client ne contiennent pas d'anciennes données client avec une incohérence potentielle entre le nom de domaine principal d'un client et l'identifiant client Google unique. Lorsqu'un compte Google précédemment supprimé est rétabli, il est traité comme un nouveau compte et dispose d'une nouvelle valeur customerId, même si le compte peut conserver la même valeur customerDomain.
    2. Commandez un nouveau compte client.
    3. Créez un abonnement pour ce nouveau compte client.

Modifier les paramètres d'un client

Avec l'API Reseller, vous ne pouvez pas mettre à jour le customerType, mais vous pouvez valider le domaine d'un client team et devenir un client domain.

Pour mettre à jour les paramètres d'un client, utilisez la requête PUT suivante en incluant l'identifiant unique de votre client:

PUT https://reseller.googleapis.com/apps/reseller/v1/customers/CUSTOMER_ID

Le corps de la requête JSON met à jour les paramètres client suivants:

{
  "customerId": "C0CUSTOMER_ID123456",
  "customerDomain": "DOMAIN_NAME",
  "postalAddress": {
    "contactName": "NAME",
    "organizationName": "ORGANIZATION_NAME",
    "postalCode": "POSTAL_CODE",
    "countryCode": "COUNTRY_CODE"
  },
  "alternateEmail": "EMAIL_ADDRESS"
}

Remplacez les éléments suivants :

  • DOMAIN_NAME: domaine de votre client (par exemple, example.com)
  • NAME: nom de votre client (par exemple, Alex Cruz).
  • ORGANIZATION_NAME: nom de l'organisation de votre client (par exemple, Example Organization).
  • POSTAL_CODE: code postal de votre client (par exemple, 94043).
  • COUNTRY_CODE: code pays ISO à deux caractères de votre client.
  • EMAIL_ADDRESS: adresse e-mail de votre client (par exemple, cruz@example.com).

Une réponse JSON réussie renvoie un code d'état HTTP 200 et les paramètres client mis à jour:

{
  "kind": "reseller#customer",
  "customerId": "CUSTOMER_ID",
  "customerDomain": "DOMAIN_NAME",
  "postalAddress": {
    "kind": "customers#address",
    "contactName": "NAME",
    "organizationName": "ORGANIZATION_NAME",
    "postalCode": "POSTAL_CODE",
    "countryCode": "COUNTRY_CODE",
  },
  "alternateEmail": "EMAIL_ADDRESS"
}