Comment pouvons-nous vous aider?

[BETA] Démarrer avec l'API 10KC

Omar G
Omar G
  • Mise à jour

Ce document décrit le processus de demande à l'API 10KC qui nécessite l'interrogation d'un point de terminaison d'état pour déterminer quand un fichier d'exportation de données est prêt à être téléchargé. Cette méthode est utilisée pour les opérations asynchrones où le temps de traitement du fichier varie.


Conditions préalables à l'envoi de votre première demande à l'API 10KC



Avant de commencer à utiliser l'API, vous devez effectuer les opérations suivantes :

  1. Créer un compte Admin 10KC.
  2. Créez une clé API .
  3. Assurez-vous que NodeJS v20+ est installé sur votre machine et que le paquet NPM Axios est installé.


Création d'une clé API

  1. Naviguer vers Paramètres administratifs dans la barre de navigation supérieure
  2. Naviguer vers Clés API dans la barre de navigation de gauche
  3. Cliquez sur Ajouter nouveau
  4. Donnez un nom à votre clé API.
  5. Cliquez sur Créer.
  6. Copiez votre clé API dans un endroit sûr. Pour des raisons de sécurité, ne l'insérez pas directement dans votre code et ne la livrez pas dans un endroit public comme GitHub.

Screenshot 2024-02-09 at 2.35.22 PM.png

Stocker une clé API dans une variable d'environnement



10KC recommande de stocker votre clé API dans une variable d'environnement ou un fichier de configuration qui n'est pas stocké dans le contrôle de version.

Lorsque vous définissez une variable dans votre programme, cette variable est lisible par toute personne ou tout système qui peut accéder au fichier texte dans lequel elle est définie. Toutefois, une variable limitée à l'environnement dans lequel le code est exécuté, stockée en dehors du programme lui-même, est appelée variable d'environnement. Seuls les personnes et les programmes ayant accès à l'environnement peuvent lire la valeur attribuée à une variable d'environnement. Les variables d'environnement constituent donc un choix plus sûr pour le stockage d'informations d'identification telles que les clés API.

Suppression d'une clé API



Une fois que vous avez supprimé une clé, elle ne peut plus être utilisée pour accéder aux services API du 10KC.

Cliquez sur le bouton Supprimer dans la même ligne que la clé que vous souhaitez supprimer. Sélectionnez Supprimer la clé API. Cela supprimera la clé de façon permanente, la rendant inactive. Le 10KC rejettera tout appel API ultérieur utilisant cette clé API supprimée.



Demander le téléchargement d'un fichier CSV à l'aide de l'API

  1. Naviguez vers le Hub 10KC pour lequel vous souhaitez demander un téléchargement CSV pour les membres.
  2. Naviguez jusqu'au membre dans la barre de navigation de gauche.
  3. Copiez le sous-domaine et l'ID du groupe dans la barre de navigation

    ex - https://< SUBDOMAIN> .tenthousandcoffees.com/hub/puppy-treats-cafe/members?group=< GROUP_ID>
  4. Collez le SUBDOMAIN , le GROUP_ID et la clé API_KEY générée dans le script NodeJS ci-dessous.
const  axios = require('axios') ;
const fs = require('fs') ;

const API_KEY = 'API_KEY';
const GROUP_ID = 'GROUP_ID';
const SUBDOMAIN = 'SUBDOMAIN';

const pollInterval = 1000; // Millisecondes entre les requêtes

async function pollEndpoint(taskId = '') {
try {
const response = await axios.get(`https://${SUBDOMAIN}.tenthousandcoffees.com/api/v2/groups/${GROUP_ID}/files/members-csv/download/${taskId}`,
{
headers:{
Authorization: `Bearer ${API_KEY}`,
},
}) ;

if (response.status === 200) {
console.log('Members CSV is ready') ;
fs. xml-ph-0031@deepl.int
csv', response.data) ;
process.exit(0) ;
}

if (response.status === 202) {
console.log(`Server responded with status code ${response xml-ph-0031@deepl.inter
Retrying in ${pollInterval}ms...`) ;
setTimeout(() => pollEndpoint(response?.data?.taskId), pollInterval) ;
} else {
console.error(response) ;
process xml-
} catch (error) {
console.error('Error:', error) ;
process.exit(1) ;
}
}

pollEndpoint() ;

Associé à

Cet article vous a-t-il été utile?

Utilisateurs qui ont trouvé cela utile : 0 sur 0

Vous avez d’autres questions? Envoyer une demande

Commentaires

0 commentaire

Vous devez vous connecter pour laisser un commentaire.