# SDK officiels de GenderAPI.io V2

> Installez les SDK officiels de GenderAPI.io V2 pour Python, JavaScript, PHP, Ruby, Java, R et C#. Comparez les paquets, les prérequis et le comportement commun des requêtes.

Canonical HTML: https://www.genderapi.io/fr/docs/v2/sdks

Last reviewed: 2026-09-28

## Choisir un paquet

Les SDK officiels open source appellent la même API V2 que celle décrite dans ces guides. La version 2.x de chaque paquet utilise l'API V2. Installez la branche 2.x pour les nouveaux projets.

| Langage | Paquet | Installation | Prérequis |
| --- | --- | --- | --- |
| Python | `genderapi (PyPI)` | `pip install "genderapi>=2,<3"` | Python 3.9+ |
| JavaScript / TypeScript | `genderapi (npm)` | `npm install genderapi@2` | Node.js 18+ |
| PHP | `genderapi/genderapi (Packagist)` | `composer require "genderapi/genderapi:^2.0"` | PHP 8.1+ |
| Ruby | `genderapi (RubyGems)` | `gem install genderapi -v "~> 2.0"` | Ruby 3.0+ |
| Java | `com.github.GenderAPI:genderapi-java (JitPack)` | `implementation 'com.github.GenderAPI:genderapi-java:v2.0.0'` | Java 11+ |
| R | `genderapi (GitHub)` | `remotes::install_github("GenderAPI/genderapi-R", ref = "v2.0.0")` | R 4.1+ |
| C# / .NET | `GenderAPI (NuGet)` | `dotnet add package GenderAPI` | .NET 8 ou .NET Standard 2.0 |

## Remarques sur les registres

- Java : ajoutez https://jitpack.io à vos dépôts. La même version est également publiée sur GitHub Packages sous io.genderapi:genderapi, ce qui nécessite un jeton GitHub avec read:packages.
- R : CRAN distribue encore le paquet 1.x pendant que la version 2.0.0 est en cours d'examen par CRAN. Installez la 2.0.0 depuis le tag GitHub jusqu'à sa publication sur CRAN.
- JavaScript : le paquet est destiné aux environnements d'exécution côté serveur. Ne l'utilisez pas dans du code exécuté par le navigateur, car cela exposerait votre clé API.

## Comportement commun

- Chaque client lit la clé API dans GENDERAPI_API_KEY ou l'accepte dans le constructeur. Conservez la clé sur votre serveur.
- Sans clé API, les requêtes utilisent l'essai partagé par IP : 10 crédits par adresse IP sur 24 heures.
- Importer un paquet ou créer un client n'envoie aucune requête. Chaque appel de méthode envoie exactement une requête.
- Aucun SDK ne relance automatiquement une requête. Une nouvelle tentative est une nouvelle opération facturée normalement : vérifiez donc d'abord l'erreur et le statut de facturation.
- Les SDK ne suivent pas les redirections et le délai d'expiration par défaut est de 10 secondes.
- Un résultat inconnu est une réponse réussie : gender vaut null et la requête est facturée normalement.
- Les erreurs exposent le statut HTTP, le code d'erreur, l'identifiant de requête et, le cas échéant, la valeur de Retry-After.

- [Authentification et accès d'essai](https://www.genderapi.io/fr/docs/v2/authentication)
- [Crédits et utilisation](https://www.genderapi.io/fr/docs/v2/credits-and-usage)
- [Erreurs et nouvelles tentatives](https://www.genderapi.io/fr/docs/v2/errors-and-retries)

## Exemples de démarrage rapide

Chaque exemple envoie une prédiction pour un nom et coûte 1 crédit. Définissez d'abord GENDERAPI_API_KEY dans l'environnement du serveur. Le README de chaque dépôt couvre les requêtes par lot, la consultation de l'utilisation et la gestion des erreurs.

**Python**

```python
from genderapi import GenderAPI

client = GenderAPI()  # reads GENDERAPI_API_KEY
result = client.name("Alice", country="US")
print(result.data.gender, result.data.result_status)
print(result.meta.usage.charged_credits)
```

**JavaScript / TypeScript**

```javascript
import { GenderAPI } from "genderapi";

const client = new GenderAPI(); // reads GENDERAPI_API_KEY
const { data, meta } = await client.name("Andrea", { country: "IT" });
console.log(data.gender, data.result_status, meta.usage.charged_credits);
```

**PHP**

```php
<?php
require __DIR__ . '/vendor/autoload.php';

use GenderApi\Client;

$client = new Client(); // reads GENDERAPI_API_KEY
$result = $client->name('Antoine', country: 'FR');
echo $result->data->gender ?? 'unknown', ' ', $result->meta->usage->chargedCredits, "\n";
```

**Ruby**

```ruby
require "genderapi"

client = GenderAPI::Client.new # reads ENV["GENDERAPI_API_KEY"]
result = client.name("Andrea", country: "IT")
puts result.data.gender, result.usage.charged_credits
```

**Java**

```java
import io.genderapi.GenderApiClient;
import io.genderapi.model.GenderResponse;

GenderApiClient client = new GenderApiClient(); // reads GENDERAPI_API_KEY
GenderResponse response = client.name("Andrea", "IT");
System.out.println(response.getData().getGender());
System.out.println(response.getMeta().getUsage().getChargedCredits());
```

**R**

```r
library(genderapi)

res <- genderapi_name("Léa", country = "FR")  # reads GENDERAPI_API_KEY
res$data$gender
res$meta$usage$charged_credits
```

**C# / .NET**

```csharp
using GenderApi;

using var client = new GenderApiClient(); // reads GENDERAPI_API_KEY
GenderResponse res = await client.NameAsync("Alice", country: "US");
Console.WriteLine(res.Data!.Gender ?? "unknown");
Console.WriteLine(res.Meta!.Usage!.ChargedCredits);
```

## Conserver une intégration V1 sur 1.x

Les paquets de la version 1.x restent disponibles pour les intégrations V1 existantes et ne sont pas obsolètes. Fixez la version majeure pour qu'une mise à jour n'installe pas la 2.x, puis migrez chaque intégration lorsque vous êtes prêt.

| Langage | Installation 1.x |
| --- | --- |
| Python | `pip install "genderapi<2"` |
| JavaScript / TypeScript | `npm install genderapi@1` |
| PHP | `composer require "genderapi/genderapi:^1.0"` |
| Ruby | `gem install genderapi -v "~> 1.0"` |
| Java | `implementation 'com.github.GenderAPI:genderapi-java:v1.0.3'` |
| R | `remotes::install_version("genderapi", "1.0.3")` |

- [Migrer depuis la V1](https://www.genderapi.io/fr/docs/v2/migration)
- [Bibliothèques clientes de la version 1.x](https://www.genderapi.io/fr/docs-client-libraries)

## Code source et tickets

Chaque SDK est open source. Signalez les bugs ou demandez des fonctionnalités dans le dépôt GitHub correspondant.

- [SDK Python sur GitHub](https://github.com/GenderAPI/genderapi-python)
- [SDK JavaScript sur GitHub](https://github.com/GenderAPI/genderapi-js)
- [SDK PHP sur GitHub](https://github.com/GenderAPI/genderapi-php)
- [SDK Ruby sur GitHub](https://github.com/GenderAPI/genderapi-ruby)
- [SDK Java sur GitHub](https://github.com/GenderAPI/genderapi-java)
- [SDK R sur GitHub](https://github.com/GenderAPI/genderapi-R)
- [SDK C# sur GitHub](https://github.com/GenderAPI/genderapi-C)
