Utilisation de l'API Subaccounts
Vue d'ensemble
Cette rubrique décrit un cas d'utilisation dans lequel un partenaire utilise l'API Subaccounts pour gérer avec succès les clients finaux.
Conditions préalables
Vous devez connaître le Concepts principaux associée à l'API Subaccounts.
Création d'un Subaccounts
Un partenaire décide de créer un Subaccounts pour chaque client final et peut ainsi utiliser des identifiants API distincts pour chacun des clients finaux et voir leurs dépenses. Ceci est illustré dans le diagramme suivant :

Pour créer un Subaccounts, le code suivant peut être utilisé :
Rédiger le code
Ajouter ce qui suit à create-subaccount.sh:
curl -X "POST" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
-H "Content-Type: application/json" \
-d $'{"name":"'$NEW_SUBACCOUNT_NAME'", "secret":"'$NEW_SUBACCOUNT_SECRET'"}'Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/subaccountsCréez un fichier nommé create-subaccount.js et ajoutez le code suivant :
const { SubAccounts } = require('@vonage/subaccounts');
const subAccountClient = new SubAccounts({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Rédiger le code
Ajouter ce qui suit à create-subaccount.js:
subAccountClient.createSubAccount({
name: NEW_SUBACCOUNT_NAME,
secret: NEW_SUBACCOUNT_SECRET,
})
.then((newSubAccount) => console.log(newSubAccount))
.catch((error) => console.error(error));Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Créez un fichier nommé CreateSubaccount et ajoutez le code suivant à la méthode main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier CreateSubaccount:
val subaccount = client.subaccounts.createSubaccount(
name = SUBACCOUNT_NAME,
secret = SUBACCOUNT_SECRET
)Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.subaccounts par le paquet contenant CreateSubaccount:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé CreateSubaccount et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier CreateSubaccount:
Account subaccount = client.getSubaccountsClient().createSubaccount(
CreateSubaccountRequest.builder()
.name(SUBACCOUNT_NAME)
.secret(SUBACCOUNT_SECRET)
.build()
);Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.subaccounts par le paquet contenant CreateSubaccount:
Conditions préalables
Install-Package VonageCréez un fichier nommé CreateSubAccountRequest.cs et ajoutez le code suivant :
using Vonage;
using Vonage.Request;Ajouter ce qui suit à CreateSubAccountRequest.cs:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);Rédiger le code
Ajouter ce qui suit à CreateSubAccountRequest.cs:
var request = Vonage.SubAccounts.CreateSubAccount.CreateSubAccountRequest.Build()
.WithName(NEW_SUBACCOUNT_NAME)
.WithSecret(NEW_SUBACCOUNT_SECRET)
.Create();
var response = await client.SubAccountsClient.CreateSubAccountAsync(request);Conditions préalables
composer require vonage/clientCréez un fichier nommé create-subaccount.php et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRédiger le code
Ajouter ce qui suit à create-subaccount.py:
from vonage import Auth, Vonage
from vonage_subaccounts import NewSubaccount, SubaccountOptions
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
response: NewSubaccount = client.subaccounts.create_subaccount(
SubaccountOptions(name=SUBACCOUNT_NAME, secret=SUBACCOUNT_SECRET)
)
print(response)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageCréez un fichier nommé create-subaccount.rb et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Transfert de crédits
Le partenaire ne pouvait pas contrôler les dépenses de ses clients finaux parce qu'ils partageaient tous le même solde. Un client final avait l'habitude de consommer occasionnellement tout le solde partagé, bloquant ainsi l'accès aux API de Vonage pour les autres clients finaux du partenaire. Le partenaire a décidé de fixer un solde individuel et d'attribuer une limite de crédit à ce client final.
NOTE : Le partenaire aurait pu faire en sorte que ses comptes soient prépayés.
Chaque Subaccounts peut se voir attribuer un solde individuel et une limite de crédit, comme le montre le diagramme suivant :

L'extrait de code suivant illustre l'attribution d'un montant de crédit spécifié à un Subaccounts :
Rédiger le code
Ajouter ce qui suit à transfer-credit.sh:
curl -X "POST" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/credit-transfers" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
-H "Content-Type: application/json" \
-d $'{"from":"'$VONAGE_API_KEY'", "to":"'$SUBACCOUNT_KEY'", "amount": '$AMOUNT'}'Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/subaccountsCréez un fichier nommé transfer-credit.js et ajoutez le code suivant :
const { SubAccounts } = require('@vonage/subaccounts');
const subAccountClient = new SubAccounts({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Rédiger le code
Ajouter ce qui suit à transfer-credit.js:
subAccountClient.transferCredit({
from: VONAGE_API_KEY,
to: SUBACCOUNT_KEY,
amount: AMOUNT,
})
.then((creditTransfer) => console.log(creditTransfer))
.catch((error) => console.error(error));Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Créez un fichier nommé TransferCredit et ajoutez le code suivant à la méthode main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier TransferCredit:
val receipt = client.subaccounts.transferCredit(
from = VONAGE_API_KEY,
to = SUBACCOUNT_KEY,
amount = SUBACCOUNT_CREDIT_AMOUNT
)Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.subaccounts par le paquet contenant TransferCredit:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé TransferCredit et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier TransferCredit:
MoneyTransfer receipt = client.getSubaccountsClient().transferCredit(
MoneyTransfer.builder()
.from(VONAGE_API_KEY).to(SUBACCOUNT_KEY)
.amount(SUBACCOUNT_CREDIT_AMOUNT).build()
);
System.out.println("Transfer successful: "+receipt.getId());Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.subaccounts par le paquet contenant TransferCredit:
Conditions préalables
Install-Package VonageCréez un fichier nommé TransferCreditRequest.cs et ajoutez le code suivant :
using Vonage;
using Vonage.Request;
using Vonage.SubAccounts.TransferAmount;Ajouter ce qui suit à TransferCreditRequest.cs:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);Rédiger le code
Ajouter ce qui suit à TransferCreditRequest.cs:
var request = TransferAmountRequest.Build()
.WithFrom(VONAGE_API_KEY)
.WithTo(SUBACCOUNT_KEY)
.WithAmount(amount)
.Create();
var response = await client.SubAccountsClient.TransferCreditAsync(request);Conditions préalables
composer require vonage/clientCréez un fichier nommé transfer-credit.php et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRédiger le code
Ajouter ce qui suit à transfer-credit.py:
from vonage import Auth, Vonage
from vonage_subaccounts import Transfer, TransferRequest
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
request = TransferRequest(
from_=VONAGE_API_KEY, to=SUBACCOUNT_KEY, amount=SUBACCOUNT_CREDIT_AMOUNT
)
response: Transfer = client.subaccounts.transfer_credit(request)
print(response)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageCréez un fichier nommé transfer-credit.rb et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Vérification du solde de tous les Subaccounts
Le partenaire décide de mettre en place un suivi. Il est possible de vérifier périodiquement le solde de tous les Subaccounts à l'aide de l'extrait de code suivant :
Rédiger le code
Ajouter ce qui suit à get-subaccounts.sh:
curl "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts" -u $VONAGE_API_KEY:$VONAGE_API_SECRETExécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/subaccountsCréez un fichier nommé get-subaccounts.js et ajoutez le code suivant :
const { SubAccounts } = require('@vonage/subaccounts');
const subAccountClient = new SubAccounts({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Rédiger le code
Ajouter ce qui suit à get-subaccounts.js:
subAccountClient.getSubAccounts()
.then((subAccounts) => console.log(subAccounts))
.catch((error) => console.error(error));Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Créez un fichier nommé ListSubaccounts et ajoutez le code suivant à la méthode main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier ListSubaccounts:
val subaccounts = client.subaccounts.listSubaccounts()Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.subaccounts par le paquet contenant ListSubaccounts:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé ListSubaccounts et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier ListSubaccounts:
ListSubaccountsResponse response = client.getSubaccountsClient().listSubaccounts();Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.subaccounts par le paquet contenant ListSubaccounts:
Conditions préalables
Install-Package VonageCréez un fichier nommé GetSubAccountsRequest.cs et ajoutez le code suivant :
using Vonage;
using Vonage.Request;Ajouter ce qui suit à GetSubAccountsRequest.cs:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);Rédiger le code
Ajouter ce qui suit à GetSubAccountsRequest.cs:
var response = await client.SubAccountsClient.GetSubAccountsAsync();Conditions préalables
composer require vonage/clientCréez un fichier nommé get-subaccounts.php et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRédiger le code
Ajouter ce qui suit à list-subaccounts.py:
from vonage import Auth, Vonage
from vonage_subaccounts import ListSubaccountsResponse
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
response: ListSubaccountsResponse = client.subaccounts.list_subaccounts()
print(response)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageCréez un fichier nommé list-subaccounts.rb et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Attribution de crédits supplémentaires
Après un certain temps, le partenaire a remarqué que le client final 1 (sous-compte 1) avait utilisé tout son crédit (40 sur 40) et ne pouvait plus effectuer d'appels API. Le partenaire avait le choix entre attendre que le client final 1 le paye (et ensuite effectuer un paiement à Vonage et transférer un solde correspondant au sous-compte) ou augmenter la limite de crédit du client final immédiatement afin que le client final 1 puisse continuer à utiliser l'API de Vonage. Le partenaire a décidé d'allouer un crédit supplémentaire. Le Partenaire a 40 = |-60| - |-20| crédit disponible, et décide d'allouer 20 au Subaccounts. Ceci est illustré dans le diagramme suivant :

Transferts de solde en fin de mois
À la fin du mois, le partenaire a reçu une facture de 70 € de Vonage (pour toutes les dépenses de tous ses Account). Le client final 1 (sous-compte 1) a couvert 45 des 50 € qu'il avait dépensés. Le partenaire a donc transféré 45 € au solde du sous-compte 1. Ceci est illustré dans le diagramme suivant :

Le code suivant montre comment transférer le solde vers un Subaccounts :
Rédiger le code
Ajouter ce qui suit à transfer-balance.sh:
curl -X "POST" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/balance-transfers" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
-H "Content-Type: application/json" \
-d $'{"from":"'$VONAGE_API_KEY'", "to":"'$SUBACCOUNT_KEY'", "amount": '$AMOUNT'}'Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/subaccountsCréez un fichier nommé transfer-balance.js et ajoutez le code suivant :
const { SubAccounts } = require('@vonage/subaccounts');
const subAccountClient = new SubAccounts({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Rédiger le code
Ajouter ce qui suit à transfer-balance.js:
subAccountClient.transferBalance({
from: VONAGE_API_KEY,
to: SUBACCOUNT_KEY,
amount: AMOUNT,
})
.then((balanceTransfer) => console.log(balanceTransfer))
.catch((error) => console.error(error));Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Créez un fichier nommé TransferBalance et ajoutez le code suivant à la méthode main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier TransferBalance:
val receipt = client.subaccounts.transferBalance(
from = VONAGE_API_KEY,
to = SUBACCOUNT_KEY,
amount = SUBACCOUNT_BALANCE_AMOUNT
)Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.subaccounts par le paquet contenant TransferBalance:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé TransferBalance et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier TransferBalance:
MoneyTransfer receipt = client.getSubaccountsClient().transferBalance(
MoneyTransfer.builder()
.from(VONAGE_API_KEY).to(SUBACCOUNT_KEY)
.amount(SUBACCOUNT_BALANCE_AMOUNT).build()
);
System.out.println("Transfer successful: "+receipt.getId());Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.subaccounts par le paquet contenant TransferBalance:
Conditions préalables
Install-Package VonageCréez un fichier nommé TransferBalanceRequest.cs et ajoutez le code suivant :
using Vonage;
using Vonage.Request;
using Vonage.SubAccounts.TransferAmount;Ajouter ce qui suit à TransferBalanceRequest.cs:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);Rédiger le code
Ajouter ce qui suit à TransferBalanceRequest.cs:
var request = TransferAmountRequest.Build()
.WithFrom(VONAGE_API_KEY)
.WithTo(SUBACCOUNT_KEY)
.WithAmount(amount)
.Create();
var response = await client.SubAccountsClient.TransferBalanceAsync(request);Conditions préalables
composer require vonage/clientCréez un fichier nommé transfer-balance.php et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRédiger le code
Ajouter ce qui suit à transfer-balance.py:
from vonage import Auth, Vonage
from vonage_subaccounts import Transfer, TransferRequest
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
request = TransferRequest(
from_=VONAGE_API_KEY, to=SUBACCOUNT_KEY, amount=SUBACCOUNT_BALANCE_AMOUNT
)
transfer: Transfer = client.subaccounts.transfer_balance(request)
print(transfer)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageCréez un fichier nommé transfer-balance.rb et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Suspension d'un Subaccounts
Le Partenaire a apprécié la possibilité de contrôler les dépenses du sous-compte et a décidé d'affecter le solde individuel et le crédit de 30 € au client final 2 (sous-compte2). Le Partenaire, qui surveillait les dépenses de ses sous-comptes, a remarqué que le sous-compte2 avait consommé 25 € de son solde. Alarmé par le taux de dépense du sous-compte 2, le Partenaire a décidé de suspendre temporairement le sous-compte 2. Le code pour suspendre un Subaccounts est montré ici :
Rédiger le code
Ajouter ce qui suit à suspend-subaccount.sh:
curl -X "PATCH" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts/$SUBACCOUNT_KEY" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
-H "Content-Type: application/json" \
-d $'{"suspended":true}'Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/subaccountsCréez un fichier nommé suspend-subaccount.js et ajoutez le code suivant :
const { SubAccounts } = require('@vonage/subaccounts');
const subAccountClient = new SubAccounts({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Rédiger le code
Ajouter ce qui suit à suspend-subaccount.js:
subAccountClient.updateSubAccount(
SUBACCOUNT_KEY,
{ suspended: true },
)
.then((subAccount) => console.log(subAccount))
.catch((error) => console.error(error));Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Créez un fichier nommé SuspendSubaccount et ajoutez le code suivant à la méthode main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier SuspendSubaccount:
val subaccount = client.subaccounts.subaccount(SUBACCOUNT_KEY).suspended(true)Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.subaccounts par le paquet contenant SuspendSubaccount:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé DeactivateSubaccount et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier DeactivateSubaccount:
Account subaccount = client.getSubaccountsClient().updateSubaccount(
UpdateSubaccountRequest.builder(SUBACCOUNT_KEY).suspended(true).build()
);Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.subaccounts par le paquet contenant DeactivateSubaccount:
Conditions préalables
Install-Package VonageCréez un fichier nommé SuspendAccountRequest.cs et ajoutez le code suivant :
using Vonage;
using Vonage.Request;
using Vonage.SubAccounts.UpdateSubAccount;Ajouter ce qui suit à SuspendAccountRequest.cs:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);Rédiger le code
Ajouter ce qui suit à SuspendAccountRequest.cs:
var request = UpdateSubAccountRequest.Build().WithSubAccountKey(SUBACCOUNT_KEY)
.SuspendAccount()
.Create();
var response = await client.SubAccountsClient.UpdateSubAccountAsync(request);Conditions préalables
composer require vonage/clientCréez un fichier nommé suspend-subaccount.php et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRédiger le code
Ajouter ce qui suit à suspend-subaccount.py:
from vonage import Auth, Vonage
from vonage_subaccounts import ModifySubaccountOptions, Subaccount
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
response: Subaccount = client.subaccounts.modify_subaccount(
subaccount_api_key=SUBACCOUNT_KEY,
options=ModifySubaccountOptions(suspended=True),
)
print(response)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageCréez un fichier nommé suspend-subaccount.rb et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Réactivation d'un Subaccounts
Après avoir discuté avec le sous-compte2, le Partenaire décide de réactiver le compte du sous-compte2. Ceci peut être réalisé en utilisant le code suivant :
Rédiger le code
Ajouter ce qui suit à reactivate-subaccount.sh:
curl -X "PATCH" "https://api.nexmo.com/accounts/$VONAGE_API_KEY/subaccounts/$SUBACCOUNT_KEY" -u $VONAGE_API_KEY:$VONAGE_API_SECRET \
-H "Content-Type: application/json" \
-d $'{"suspended":false}'Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
npm install @vonage/subaccountsCréez un fichier nommé reactivate-subaccount.js et ajoutez le code suivant :
const { SubAccounts } = require('@vonage/subaccounts');
const subAccountClient = new SubAccounts({
apiKey: VONAGE_API_KEY,
apiSecret: VONAGE_API_SECRET,
});Rédiger le code
Ajouter ce qui suit à reactivate-subaccount.js:
subAccountClient.updateSubAccount(
SUBACCOUNT_KEY,
{ suspended: false },
)
.then((subAccount) => console.log(subAccount))
.catch((error) => console.error(error));Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk-kotlin:2.1.1'Créez un fichier nommé ReactivateSubaccount et ajoutez le code suivant à la méthode main:
val client = Vonage {
apiKey(VONAGE_API_KEY)
apiSecret(VONAGE_API_SECRET)
}Rédiger le code
Ajouter ce qui suit à la méthode main du fichier ReactivateSubaccount:
val subaccount = client.subaccounts.subaccount(SUBACCOUNT_KEY).suspended(false)Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.kt.subaccounts par le paquet contenant ReactivateSubaccount:
Conditions préalables
Ajouter ce qui suit à build.gradle:
implementation 'com.vonage:server-sdk:9.3.1'Créez un fichier nommé ReactivateSubaccount et ajoutez le code suivant à la méthode main:
VonageClient client = VonageClient.builder()
.apiKey(VONAGE_API_KEY)
.apiSecret(VONAGE_API_SECRET)
.build();Rédiger le code
Ajouter ce qui suit à la méthode main du fichier ReactivateSubaccount:
Account subaccount = client.getSubaccountsClient().updateSubaccount(
UpdateSubaccountRequest.builder(SUBACCOUNT_KEY).suspended(false).build()
);Exécutez votre code
Nous pouvons utiliser le plugin Applications pour Gradle afin de simplifier l'exécution de notre application. Mettez à jour votre build.gradle avec ce qui suit :
apply plugin: 'application'
mainClassName = project.hasProperty('main') ? project.getProperty('main') : ''Exécutez la commande gradle suivante pour exécuter votre application, en remplaçant com.vonage.quickstart.subaccounts par le paquet contenant ReactivateSubaccount:
Conditions préalables
Install-Package VonageCréez un fichier nommé EnableAccountRequest.cs et ajoutez le code suivant :
using Vonage;
using Vonage.Request;
using Vonage.SubAccounts.UpdateSubAccount;Ajouter ce qui suit à EnableAccountRequest.cs:
var credentials = Credentials.FromApiKeyAndSecret(VONAGE_API_KEY, VONAGE_API_SECRET);
var client = new VonageClient(credentials);Rédiger le code
Ajouter ce qui suit à EnableAccountRequest.cs:
var request = UpdateSubAccountRequest.Build().WithSubAccountKey(SUBACCOUNT_KEY)
.EnableAccount()
.Create();
var response = await client.SubAccountsClient.UpdateSubAccountAsync(request);Conditions préalables
composer require vonage/clientCréez un fichier nommé reactivate-subaccount.php et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
pip install vonage python-dotenvRédiger le code
Ajouter ce qui suit à reactivate-subaccount.py:
from vonage import Auth, Vonage
from vonage_subaccounts import ModifySubaccountOptions, Subaccount
client = Vonage(Auth(api_key=VONAGE_API_KEY, api_secret=VONAGE_API_SECRET))
response: Subaccount = client.subaccounts.modify_subaccount(
subaccount_api_key=SUBACCOUNT_KEY,
options=ModifySubaccountOptions(suspended=False),
)
print(response)Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Conditions préalables
gem install vonageCréez un fichier nommé reactivate-subaccount.rb et ajoutez le code suivant :
Exécutez votre code
Enregistrez ce fichier sur votre machine et exécutez-le :
Résumé
Dans cette rubrique, vous avez vu comment utiliser l'API Subaccounts pour gérer les clients finaux dans des scénarios typiques.