Πριν στείλετε το αίτημα
Στείλτε τα αιτήματα πρόβλεψης στο GenderAPI.io V2 με POST https://api.genderapi.io/api/v2/gender, με τα type και value στο σώμα JSON. Χρησιμοποιήστε το υπάρχον κλειδί GenderAPI.io σας σε Authorization: Bearer YOUR_API_KEY και Content-Type: application/json. Διαβάστε το αποτέλεσμα στο data και τις πληροφορίες πρόσβασης και χρέωσης στο meta. Κάθε αίτημα επεξεργάζεται ανεξάρτητα.
Επιλέξτε τη γλώσσα προγραμματισμού στο παράδειγμα κώδικα. Ορίστε το GENDERAPI_API_KEY στο περιβάλλον της διεργασίας πριν από την εκτέλεση. Τα κλειδιά που λείπουν ή δεν αναγνωρίζονται μπορεί να χρησιμοποιήσουν την κοινόχρηστη δοκιμαστική πρόσβαση IP. Γι' αυτό, όταν ενσωματώνετε έναν λογαριασμό, ελέγξτε ότι το meta.access.mode έχει την τιμή api_key.
Φύλο από όνομα
| Παράμετρος | Τύπος | Υποχρεωτικό | Προεπιλογή | Περιγραφή |
|---|---|---|---|---|
type | string | Ναι | — | Κατηγορία εισόδου: name, email ή username. |
value | string | Ναι | — | Υποχρεωτικό. 1–254 χαρακτήρες, όχι κενό και χωρίς χαρακτήρες ελέγχου. Οι τιμές email πρέπει να έχουν έγκυρη σύνταξη email. |
country | string | Όχι | — | Προαιρετικός κωδικός ISO 3166-1 alpha-2 με κεφαλαία γράμματα, για παράδειγμα TR ή US. Μια αναζήτηση για συγκεκριμένη χώρα μπορεί να καταφύγει στο καθολικό σύνολο δεδομένων. |
forceToGenderize | boolean | Όχι | false | Ελέγχει πρώτα το σύνολο δεδομένων και, αν δεν υπάρξει αποτέλεσμα, χρησιμοποιεί AI με ανάλυση ψευδωνύμων. Υποστηρίζεται για name, email και username. |
options | object | Όχι | — | Πεδίο με τις επιλογές AI για κάθε είσοδο. |
options.ai_mode | string | Όχι | fallback | Επιτρεπόμενες τιμές: off, fallback, always. Με forceToGenderize: true, παραλείψτε αυτό το πεδίο ή χρησιμοποιήστε fallback. |
id | string | Όχι | — | Προαιρετικό αναγνωριστικό 1–64 χαρακτήρων στο JSON του POST. Επιστρέφεται δίπλα στο αντίστοιχο αποτέλεσμα της παρτίδας και πρέπει να είναι μοναδικό μέσα στην παρτίδα. Στις μεμονωμένες προβλέψεις γίνεται δεκτό, αλλά δεν επιστρέφεται. Δεν υποστηρίζεται στα ερωτήματα GET. |
Για ένα μικρό ή πλήρες όνομα, στείλτε type: name και ολόκληρη την είσοδο στο value στο POST https://api.genderapi.io/api/v2/gender. Το GenderAPI.io V2 χρησιμοποιεί τα ίδια πεδία αιτήματος και για τις δύο μορφές. Ακόμη και μια επιτυχής απόκριση μπορεί να περιέχει data.gender: null. Τα μεμονωμένα αιτήματα ελέγχουν πρώτα το σύνολο δεδομένων και, από προεπιλογή, χρησιμοποιούν AI όταν από εκεί δεν είναι δυνατό να προσδιοριστεί φύλο.
Επιλέξτε γλώσσα προγραμματισμού. Ρυθμίστε το κλειδί API σας, και έπειτα εκτελέστε το παράδειγμα στον διακομιστή σας.
Κάθε αίτημα πρόβλεψης είναι μια νέα χρεώσιμη λειτουργία, ακόμη και όταν πρόκειται για νέα προσπάθεια. Αυτά τα παραδείγματα δεν επαναλαμβάνουν αυτόματα το αίτημα. Ελέγξτε την κατάσταση χρέωσης πριν στείλετε άλλο αίτημα.
Πριν από την εκτέλεση: πρόσβαση και χειρισμός σφαλμάτων
Εκτελέστε αυτά τα παραδείγματα στον διακομιστή σας. Ορίστε στο περιβάλλον της διεργασίας το GENDERAPI_API_KEY με το υπάρχον κλειδί API σας. Ελέγξτε ότι το meta.access.mode έχει την τιμή api_key, επειδή ένα κλειδί που δεν αναγνωρίζεται μπορεί να οδηγήσει στη δοκιμαστική πρόσβαση IP.
Στις αποκρίσεις JSON με HTTP 4xx και 5xx διατηρείται το σώμα του σφάλματος και το παράδειγμα τερματίζει με μη μηδενικό κωδικό εξόδου. Ελέγξτε τα code, action και meta.usage.billing_status πριν δοκιμάσετε ξανά.
Οδηγός για σφάλματα και νέες προσπάθειες →cURL 7.76+ σε κέλυφος POSIX. Εκτελέστε το στο τερματικό. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Node.js 22+ με ενσωματωμένο fetch. Αποθηκεύστε ως example.mjs και εκτελέστε node example.mjs. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Python 3.10+ με την τυπική βιβλιοθήκη. Αποθηκεύστε ως example.py και εκτελέστε python3 example.py. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
PHP 8+ με την επέκταση cURL. Αποθηκεύστε ως example.php και εκτελέστε php example.php. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Java 17+ με τον τυπικό πελάτη HTTP. Αποθηκεύστε ως GenderApiExample.java και εκτελέστε java GenderApiExample.java. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Εφαρμογή κονσόλας .NET 8+. Χρησιμοποιήστε το ως Program.cs σε ένα έργο κονσόλας και έπειτα εκτελέστε dotnet run. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Go 1.22+ με την τυπική βιβλιοθήκη. Αποθηκεύστε ως main.go και εκτελέστε go run main.go. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Παράδειγμα απόκρισης
Αυτή είναι μια πραγματική απόκριση που λήφθηκε την 1η Οκτωβρίου 2026 με κλειδί API. Αντικαταστάθηκε μόνο το υπόλοιπο του λογαριασμού. Δεν αποτελεί μέτρο ακρίβειας και ένα αίτημα σε πραγματικό χρόνο μπορεί να επιστρέψει διαφορετικό αποτέλεσμα. Τα αιτήματα με κλειδί API επιστρέφουν meta.access.mode: api_key και null στα πεδία ορίου που ισχύουν μόνο για τη δοκιμαστική πρόσβαση, ενώ τα αιτήματα μέσω της δοκιμαστικής πρόσβασης IP επιστρέφουν ip_trial. Διαβάστε το data για την πρόβλεψη και το meta.usage για το αποτέλεσμα της χρέωσης της λειτουργίας.
{
"data": {
"input": {
"type": "name",
"value": "Γιώργος",
"country": "GR"
},
"name": "γιώργος",
"gender": "male",
"country": "GR",
"confidence": 0.9958419958419958,
"confidence_kind": "observed_frequency",
"sample_count": 481,
"source": "dataset",
"result_status": "identified",
"reason": null,
"country_source": "dataset",
"match": {
"name": "γιώργος",
"method": "normalized",
"scope": "country",
"country": "GR"
}
},
"meta": {
"request_id": "6e0323de-a249-46fe-88fc-9d60bfd59bd3",
"duration_ms": 10,
"access": {
"mode": "api_key",
"reason": null
},
"usage": {
"charged_credits": 1,
"remaining_credits": 49999,
"billing_status": "confirmed",
"resets_at": null,
"limit": null,
"period_seconds": null
}
}
}Πεδία απόκρισης πρόβλεψης
| Πεδίο | Τύπος | Μπορεί να είναι null | Παράδειγμα | Περιγραφή |
|---|---|---|---|---|
data.input | object | Όχι | {"type":"name","value":"Γιώργος","country":"GR"} | Τύπος εισόδου, τιμή και χώρα. Το forceToGenderize περιλαμβάνεται όταν είναι true. |
data.name | string | Ναι | "γιώργος" | Μικρό όνομα που αντιστοιχίστηκε ή εξήχθη. null όταν δεν είναι διαθέσιμο. |
data.gender | string | Ναι | "male" | male, female ή JSON null. Πρόκειται για πρόβλεψη, όχι για επαληθευμένη ταυτότητα ενός ατόμου. |
data.result_status | string | Όχι | "identified" | identified όταν επιστρέφεται φύλο, διαφορετικά unknown. |
data.reason | string | Ναι | null | null για τα αποτελέσματα identified. Λόγοι για unknown: not_found, no_name_candidate, ambiguous ή insufficient_evidence. |
data.confidence | number | Ναι | 0.95 | Τιμή από 0 έως 1 ή null. Όταν το gender είναι null, και ο βαθμός βεβαιότητας είναι null. |
data.confidence_kind | string | Ναι | "observed_frequency" | observed_frequency: το πλήθος της επικρατέστερης κατηγορίας στο σύνολο δεδομένων διαιρεμένο με το συνολικό πλήθος. model_reported: τιμή που αναφέρει το AI, όχι βαθμονομημένη πιθανότητα. null όταν δεν είναι διαθέσιμη. |
data.sample_count | integer | Ναι | 1200 | Μέγεθος δείγματος στο σύνολο δεδομένων ή null. Το AI δεν επινοεί πλήθος δειγμάτων. |
data.source | string | Όχι | "dataset" | dataset, ai ή none. |
data.country | string | Ναι | "GR" | Συσχέτιση χώρας από dataset ή ai_association ή null. Δεν καθορίζει εθνικότητα, τόπο κατοικίας ούτε εθνοτική καταγωγή. |
data.country_source | string | Ναι | "dataset" | Προέλευση της συσχέτισης χώρας: dataset, ai_association ή null. |
data.match | object | Όχι | {"name":"γιώργος","method":"normalized","scope":"country","country":"GR"} | Όνομα που αντιστοιχίστηκε στο σύνολο δεδομένων, μέθοδος (normalized, token, substring ή model_inference), εύρος country ή global και χώρα της αντιστοίχισης. Τα τεκμήρια που δεν είναι διαθέσιμα είναι null. |
Μεταδεδομένα πρόσβασης, χρέωσης και αιτήματος
| Πεδίο | Τύπος | Μπορεί να είναι null | Παράδειγμα | Περιγραφή |
|---|---|---|---|---|
meta.request_id | string | Όχι | "550e8400-e29b-41d4-a716-446655440000" | Μοναδικό αναγνωριστικό αυτής της απόπειρας HTTP. Αποστέλλεται και στο X-Request-ID. |
meta.duration_ms | integer | Όχι | 42 | Χρόνος επεξεργασίας του αιτήματος σε χιλιοστά του δευτερολέπτου. |
meta.access.mode | string | Όχι | "api_key" | api_key, ip_trial ή unauthenticated. Με λογαριασμό επί πληρωμή ελέγξτε ότι επιστρέφεται api_key. |
meta.access.reason | string | Ναι | null | Λόγος μετάβασης στη δοκιμαστική πρόσβαση IP: api_key_missing, api_key_invalid ή api_key_not_found. Διαφορετικά null. |
meta.usage.charged_credits | integer | Ναι | 1 | Καθαρές πιστώσεις που χρεώθηκαν. Μηδέν πριν από τη χρέωση ή μετά από πλήρη επιβεβαιωμένη επιστροφή πιστώσεων. null όταν η χρέωση δεν έχει επιβεβαιωθεί. |
meta.usage.remaining_credits | integer | Ναι | 99 | Υπόλοιπο κατά την ολοκλήρωση της λειτουργίας. Μπορεί να είναι αρνητικό. null αν δεν είναι διαθέσιμο ή αν η χρέωση δεν έχει επιβεβαιωθεί. |
meta.usage.billing_status | string | Όχι | "confirmed" | not_charged, confirmed ή unconfirmed. Ελέγξτε το πριν επαναλάβετε μια πρόβλεψη που απέτυχε. |
meta.usage.resets_at | string | Ναι | "2026-09-27T12:00:00.000Z" | Χρονική στιγμή επαναφοράς της δοκιμαστικής πρόσβασης IP σε UTC (ISO 8601). null για λογαριασμούς με κλειδί API ή όταν είναι άγνωστη. |
meta.usage.limit | integer | Ναι | 10 | Όριο πιστώσεων της δοκιμαστικής πρόσβασης IP. null για λογαριασμούς με κλειδί API. |
meta.usage.period_seconds | integer | Ναι | 86400 | Διάρκεια της περιόδου της δοκιμαστικής πρόσβασης IP σε δευτερόλεπτα. null για λογαριασμούς με κλειδί API. |
Πλαίσιο χώρας και άγνωστα ονόματα
Δώστε country μόνο όταν διαθέτετε σχετικό πλαίσιο. Το API μπορεί να επιλέξει μια γραμμή του συνόλου δεδομένων για τη συγκεκριμένη χώρα ή να καταφύγει σε μια καθολική γραμμή. Το data.match.scope δείχνει ποια επιλέχθηκε. Η χώρα που επιστρέφεται δεν καθορίζει πού ζει το άτομο.
Από προεπιλογή τα μεμονωμένα αιτήματα χρησιμοποιούν την εφεδρική χρήση AI, με συνολικό κόστος 1 πίστωση. Για να χρησιμοποιήσετε μόνο το σύνολο δεδομένων, στείλτε options: {"ai_mode": "off"}. Οι είσοδοι χωρίς αποτέλεσμα μπορεί να επιστρέψουν gender: null και χρεώνονται κανονικά όταν η λειτουργία ολοκληρώνεται επιτυχώς. Ένα πλήρες όνομα μπορεί να αντιστοιχιστεί μέσω ενός από τα μέρη του. Το data.match καταγράφει τον υποψήφιο που επιλέχθηκε και τη μέθοδο αντιστοίχισης.
Για τιμές τύπου name που μοιάζουν με ψευδώνυμο, το forceToGenderize: true επιτρέπει πρόβλεψη χωρίς πραγματικό μικρό όνομα. Ένα αποτέλεσμα από το σύνολο δεδομένων κοστίζει 1 πίστωση, διαφορετικά το AI με ανάλυση ψευδωνύμων κοστίζει συνολικά 2 πιστώσεις. Αρκεί ένα θετικό αρχικό υπόλοιπο και το τελικό υπόλοιπο μπορεί να γίνει αρνητικό.
Αναζήτηση πλήρους ονόματος χωρίς να θεωρείτε δεδομένο ότι μετρά η πρώτη λέξη
Στείλτε το αρχικό όνομα σε Unicode. Η αντιστοίχιση με το σύνολο δεδομένων χρησιμοποιεί κανονικοποίηση NFKC, πεζά γράμματα και εξαγωγή των μερών του ονόματος, επομένως δεν χρειάζεται να μετατρέψετε το όνομα σε ASCII. Από τους διαθέσιμους υποψηφίους, το API επιλέγει την εγγραφή του συνόλου δεδομένων με το υψηλότερο αποθηκευμένο συνολικό πλήθος. Ο υποψήφιος μπορεί να είναι ένα μεταγενέστερο μέρος του ονόματος, γι' αυτό μη θεωρείτε δεδομένο ότι επιλέχθηκε η πρώτη λέξη ή το μικρό όνομα.
Αυτό το αίτημα χρησιμοποιεί μόνο το σύνολο δεδομένων, ώστε να ελέγχονται πιο εύκολα τα τεκμήρια που επιλέχθηκαν. Διαβάστε το data.input.value για το πλήρες όνομα που στάλθηκε, το data.match.name για τον υποψήφιο που αναζητήθηκε και το data.match.method για τη μέθοδο αντιστοίχισης. Το παράδειγμα δεν υπόσχεται συγκεκριμένο φύλο ούτε συγκεκριμένο μέρος του ονόματος. Οι υποψήφιοι του συνόλου δεδομένων πρέπει να έχουν περισσότερους από δύο χαρακτήρες και οι σύντομες είσοδοι μπορεί να μείνουν χωρίς αποτέλεσμα. Χρησιμοποιήστε την κανονική εφεδρική χρήση AI όταν η πρόσθετη πρόβλεψη είναι κατάλληλη για την εφαρμογή σας.
Επιλέξτε γλώσσα προγραμματισμού. Ρυθμίστε το κλειδί API σας, και έπειτα εκτελέστε το παράδειγμα στον διακομιστή σας.
Κάθε αίτημα πρόβλεψης είναι μια νέα χρεώσιμη λειτουργία, ακόμη και όταν πρόκειται για νέα προσπάθεια. Αυτά τα παραδείγματα δεν επαναλαμβάνουν αυτόματα το αίτημα. Ελέγξτε την κατάσταση χρέωσης πριν στείλετε άλλο αίτημα.
Πριν από την εκτέλεση: πρόσβαση και χειρισμός σφαλμάτων
Εκτελέστε αυτά τα παραδείγματα στον διακομιστή σας. Ορίστε στο περιβάλλον της διεργασίας το GENDERAPI_API_KEY με το υπάρχον κλειδί API σας. Ελέγξτε ότι το meta.access.mode έχει την τιμή api_key, επειδή ένα κλειδί που δεν αναγνωρίζεται μπορεί να οδηγήσει στη δοκιμαστική πρόσβαση IP.
Στις αποκρίσεις JSON με HTTP 4xx και 5xx διατηρείται το σώμα του σφάλματος και το παράδειγμα τερματίζει με μη μηδενικό κωδικό εξόδου. Ελέγξτε τα code, action και meta.usage.billing_status πριν δοκιμάσετε ξανά.
Οδηγός για σφάλματα και νέες προσπάθειες →cURL 7.76+ σε κέλυφος POSIX. Εκτελέστε το στο τερματικό. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Node.js 22+ με ενσωματωμένο fetch. Αποθηκεύστε ως example.mjs και εκτελέστε node example.mjs. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Python 3.10+ με την τυπική βιβλιοθήκη. Αποθηκεύστε ως example.py και εκτελέστε python3 example.py. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
PHP 8+ με την επέκταση cURL. Αποθηκεύστε ως example.php και εκτελέστε php example.php. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Java 17+ με τον τυπικό πελάτη HTTP. Αποθηκεύστε ως GenderApiExample.java και εκτελέστε java GenderApiExample.java. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Εφαρμογή κονσόλας .NET 8+. Χρησιμοποιήστε το ως Program.cs σε ένα έργο κονσόλας και έπειτα εκτελέστε dotnet run. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Go 1.22+ με την τυπική βιβλιοθήκη. Αποθηκεύστε ως main.go και εκτελέστε go run main.go. Τεκμηρίωση του περιβάλλοντος εκτέλεσης
Έλεγχος του πλαισίου χώρας που πράγματι συνέβαλε
Χρησιμοποιήστε κωδικό χώρας ISO μόνο όταν διαθέτετε σχετικό πλαίσιο. Μην τον συνάγετε από το αποτέλεσμα που προβλέφθηκε. Για κάθε υποψήφιο, μια υπάρχουσα γραμμή χώρας έχει προτεραιότητα έναντι της καθολικής γραμμής του ίδιου υποψηφίου. Αν δεν υπάρχει γραμμή χώρας, ο υποψήφιος μπορεί να χρησιμοποιήσει μια καθολική γραμμή. Μια γραμμή χώρας με ισοπαλία δεν αντικαθίσταται από την καθολική της γραμμή. Αν η επιλεγμένη γραμμή έχει ισοπαλία, το αποτέλεσμα του συνόλου δεδομένων είναι unknown και μπορεί να ακολουθήσει ενεργοποιημένη εφεδρική χρήση AI.
| Τεκμήριο στην απόκριση | Ερμηνεία | Ενέργεια στην εφαρμογή |
|---|---|---|
| match.scope: country, match.country: TR | Ο υποψήφιος που επιλέχθηκε στο σύνολο δεδομένων προέρχεται από τη γραμμή της χώρας που δόθηκε στο αίτημα. | Αποθηκεύστε τον υποψήφιο που επιλέχθηκε και το εύρος χώρας μαζί με την πρόβλεψη. |
| match.scope: global, match.country: null | Ο υποψήφιος που επιλέχθηκε προέρχεται από καθολική γραμμή, ακόμη κι αν το αίτημα όριζε χώρα. | Μη σημειώνετε το αποτέλεσμα ως αντιστοίχιση για τη συγκεκριμένη χώρα. |
| country_source: dataset ή ai_association | Εξηγεί την προέλευση του data.country, όχι το εύρος της αναζήτησης στο σύνολο δεδομένων ούτε την εθνικότητα του ατόμου. | Διαβάστε αυτό το πεδίο ξεχωριστά από το match.country. Κανένα από τα δύο δεν επιβεβαιώνει τόπο κατοικίας ή εθνικότητα. |
| source: ai, match.scope: null | Η τελική απόκριση προέρχεται από το AI, επομένως δεν περιέχει επιλεγμένη γραμμή του συνόλου δεδομένων. | Ακολουθήστε τις οδηγίες για τον βαθμό βεβαιότητας των αποτελεσμάτων AI και διατηρήστε τα άγνωστα αποτελέσματα. |