NamSor API v2
- API version: 2.0.11
- Build date: 2020-11-01T10:54:33.640+01:00[Europe/Berlin]
NamSor API v2 : enpoints to process personal names (gender, cultural origin or ethnicity) in all alphabets or languages. Use GET methods for small tests, but prefer POST methods for higher throughput (batch processing of up to 100 names at a time). Need something you can't find here? We have many more features coming soon. Let us know, we'll do our best to add it!
Refer to the NamSor API Doc for detailed API documentation.
Also, have a look at the Wiki NamSor Wiki Doc for release notes and taxonomies.
For more information, please visit http://www.namsor.com/
*Automatically generated by the OpenAPI Generator*11
Building the API client library requires:
- Java 1.7+
- Maven/Gradle
To install the API client library to your local Maven repository, simply execute:
mvn clean install
To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:
mvn clean deploy
Refer to the OSSRH Guide for more information.
Add this dependency to your project's POM:
<dependency>
<groupId>com.namsor</groupId>
<artifactId>namsor-sdk2</artifactId>
<version>2.0.11</version>
<scope>compile</scope>
</dependency>
Add this dependency to your project's build file:
compile "com.namsor:namsor-sdk2:2.0.11"
At first generate the JAR by executing:
mvn clean package
Then manually install the following JARs:
target/namsor-sdk2-2.0.11.jar
target/lib/*.jar
Please follow the installation instruction and execute the following Java code:
package com.namsor.namsorsample;
import com.namsor.sdk2.invoke.*;
import com.namsor.sdk2.invoke.auth.*;
import com.namsor.sdk2.model.*;
import com.namsor.sdk2.api.PersonalApi;
import java.io.File;
import java.util.*;
public class PersonalApiSample {
public static void main(String[] args) {
ApiClient defaultClient = Configuration.getDefaultApiClient();
// Configure API key authorization: api_key
ApiKeyAuth api_key = (ApiKeyAuth) defaultClient.getAuthentication("api_key");
api_key.setApiKey("YOUR API KEY");
// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//api_key.setApiKeyPrefix("Token");
PersonalApi apiInstance = new PersonalApi();
// should contain 10 to 100 names at a time, per API call
BatchFirstLastNameIn batchFirstLastNameIn = new BatchFirstLastNameIn(); // BatchFirstLastNameIn | A list of personal names
batchFirstLastNameIn.setPersonalNames(new ArrayList());
FirstLastNameIn name1 = new FirstLastNameIn();
name1.setId("123");
name1.setFirstName("Mary");
name1.setLastName("O'Neil");
batchFirstLastNameIn.getPersonalNames().add(name1);
FirstLastNameIn name2 = new FirstLastNameIn();
name2.setId("234");
name2.setFirstName("Roberto");
name2.setLastName("Rossini");
batchFirstLastNameIn.getPersonalNames().add(name2);
try {
BatchFirstLastNameOriginedOut result = apiInstance.originBatch(batchFirstLastNameIn);
System.out.println(result);
} catch (ApiException e) {
System.err.println("Exception when calling PersonalApi#originBatch");
e.printStackTrace();
}
}
}
This will output the following :
class BatchFirstLastNameOriginedOut {
personalNames: [class FirstLastNameOriginedOut {
id: 123
firstName: Mary
lastName: O'Neil
countryOrigin: IE
countryOriginAlt: GB
countriesOriginTop: [IE, GB, KE, GH, LR, FR, TZ, NG, IL, EG]
score: 26.729154354675913
regionOrigin: Europe
topRegionOrigin: Europe
subRegionOrigin: Northern Europe
probabilityCalibrated: 0.9303604468868103
probabilityAltCalibrated: 0.9930598411485871
}, class FirstLastNameOriginedOut {
id: 123
firstName: Roberto
lastName: Rossini
countryOrigin: IT
countryOriginAlt: ES
countriesOriginTop: [IT, ES, CH, ID, PT, ZA, IL, AT, FI, FR]
score: 36.490714227516584
regionOrigin: Europe
topRegionOrigin: Europe
subRegionOrigin: Southern Europe
probabilityCalibrated: 0.9824811693994274
probabilityAltCalibrated: 0.9930598411485871
}]
}
Authentication schemes defined for the API:
- Type: API key
- API key parameter name: X-API-KEY
- Location: HTTP header
All URIs are relative to https://v2.namsor.com/NamSorAPIv2
Class | Method | HTTP request | Description |
---|---|---|---|
PersonalApi | gender | GET /api2/json/gender/{firstName}/{lastName} | Infer the likely gender of a name. |
PersonalApi | genderBatch | POST /api2/json/genderBatch | Infer the likely gender of up to 100 names, detecting automatically the cultural context. |
PersonalApi | genderFull | GET /api2/json/genderFull/{fullName} | Infer the likely gender of a full name, ex. John H. Smith |
PersonalApi | genderFullBatch | POST /api2/json/genderFullBatch | Infer the likely gender of up to 100 full names, detecting automatically the cultural context. |
PersonalApi | genderFullGeo | GET /api2/json/genderFullGeo/{fullName}/{countryIso2} | Infer the likely gender of a full name, given a local context (ISO2 country code). |
PersonalApi | genderFullGeoBatch | POST /api2/json/genderFullGeoBatch | Infer the likely gender of up to 100 full names, with a given cultural context (country ISO2 code). |
PersonalApi | genderGeo | GET /api2/json/genderGeo/{firstName}/{lastName}/{countryIso2} | Infer the likely gender of a name, given a local context (ISO2 country code). |
PersonalApi | genderGeoBatch | POST /api2/json/genderGeoBatch | Infer the likely gender of up to 100 names, each given a local context (ISO2 country code). |
PersonalApi | country | GET /api2/json/country/{personalNameFull} | [USES 10 UNITS PER NAME] Infer the likely country of residence of a personal full name, or one surname. Assumes names as they are in the country of residence OR the country of origin. |
PersonalApi | countryBatch | POST /api2/json/countryBatch | [USES 10 UNITS PER NAME] Infer the likely country of residence of up to 100 personal full names, or surnames. Assumes names as they are in the country of residence OR the country of origin. |
PersonalApi | origin | GET /api2/json/origin/{firstName}/{lastName} | [USES 10 UNITS PER NAME] Infer the likely country of origin of a personal name. Assumes names as they are in the country of origin. For US, CA, AU, NZ and other melting-pots : use 'diaspora' instead. |
PersonalApi | originBatch | POST /api2/json/originBatch | [USES 10 UNITS PER NAME] Infer the likely country of origin of up to 100 names, detecting automatically the cultural context. |
PersonalApi | diaspora | GET /api2/json/diaspora/{countryIso2}/{firstName}/{lastName} | [USES 20 UNITS PER NAME] Infer the likely ethnicity/diaspora of a personal name, given a country of residence ISO2 code (ex. US, CA, AU, NZ etc.) |
PersonalApi | diasporaBatch | POST /api2/json/diasporaBatch | [USES 20 UNITS PER NAME] Infer the likely ethnicity/diaspora of up to 100 personal names, given a country of residence ISO2 code (ex. US, CA, AU, NZ etc.) |
PersonalApi | usRaceEthnicity | GET /api2/json/usRaceEthnicity/{firstName}/{lastName} | [USES 10 UNITS PER NAME] Infer a US resident's likely race/ethnicity according to US Census taxonomy W_NL (white, non latino), HL (hispano latino), A (asian, non latino), B_NL (black, non latino). |
PersonalApi | usRaceEthnicityBatch | POST /api2/json/usRaceEthnicityBatch | [USES 10 UNITS PER NAME] Infer up-to 100 US resident's likely race/ethnicity according to US Census taxonomy. |
PersonalApi | usRaceEthnicityZIP5 | GET /api2/json/usRaceEthnicityZIP5/{firstName}/{lastName}/{zip5Code} | [USES 10 UNITS PER NAME] Infer a US resident's likely race/ethnicity according to US Census taxonomy, using (optional) ZIP5 code info. Output is W_NL (white, non latino), HL (hispano latino), A (asian, non latino), B_NL (black, non latino). |
PersonalApi | usZipRaceEthnicityBatch | POST /api2/json/usZipRaceEthnicityBatch | [USES 10 UNITS PER NAME] Infer up-to 100 US resident's likely race/ethnicity according to US Census taxonomy, with (optional) ZIP code. |
PersonalApi | parseName | GET /api2/json/parseName/{nameFull} | Infer the likely first/last name structure of a name, ex. John Smith or SMITH, John or SMITH; John. |
PersonalApi | parseNameBatch | POST /api2/json/parseNameBatch | Infer the likely first/last name structure of a name, ex. John Smith or SMITH, John or SMITH; John. |
PersonalApi | parseNameGeo | GET /api2/json/parseName/{nameFull}/{countryIso2} | Infer the likely first/last name structure of a name, ex. John Smith or SMITH, John or SMITH; John. For better accuracy, provide a geographic context. |
PersonalApi | parseNameGeoBatch | POST /api2/json/parseNameGeoBatch | Infer the likely first/last name structure of a name, ex. John Smith or SMITH, John or SMITH; John. Giving a local context improves precision. |
PersonalApi | parsedGenderBatch | POST /api2/json/parsedGenderBatch | Infer the likely gender of up to 100 fully parsed names, detecting automatically the cultural context. |
PersonalApi | parsedGenderGeoBatch | POST /api2/json/parsedGenderGeoBatch | Infer the likely gender of up to 100 fully parsed names, detecting automatically the cultural context. |
AdminApi | apiStatus | GET /api2/json/apiStatus | Prints the current status of the classifiers. |
AdminApi | apiUsage | GET /api2/json/apiUsage | Print current API usage. |
AdminApi | apiUsageHistory | GET /api2/json/apiUsageHistory | Print historical API usage. |
AdminApi | apiUsageHistoryAggregate | GET /api2/json/apiUsageHistoryAggregate | Print historical API usage (in an aggregated view, by service, by day/hour/min). |
AdminApi | softwareVersion | GET /api2/json/softwareVersion | Get the current software version |
ChineseApi | chineseNameCandidates | GET /api2/json/chineseNameCandidates/{chineseSurnameLatin}/{chineseGivenNameLatin} | Identify Chinese name candidates, based on the romanized name ex. Wang Xiaoming |
ChineseApi | chineseNameCandidatesBatch | POST /api2/json/chineseNameCandidatesBatch | Identify Chinese name candidates, based on the romanized name (firstName = chineseGivenName; lastName=chineseSurname), ex. Wang Xiaoming |
ChineseApi | chineseNameCandidatesGenderBatch | POST /api2/json/chineseNameCandidatesGenderBatch | Identify Chinese name candidates, based on the romanized name (firstName = chineseGivenName; lastName=chineseSurname) ex. Wang Xiaoming. |
ChineseApi | chineseNameGenderCandidates | GET /api2/json/chineseNameGenderCandidates/{chineseSurnameLatin}/{chineseGivenNameLatin}/{knownGender} | Identify Chinese name candidates, based on the romanized name ex. Wang Xiaoming - having a known gender ('male' or 'female') |
ChineseApi | chineseNameMatch | GET /api2/json/chineseNameMatch/{chineseSurnameLatin}/{chineseGivenNameLatin}/{chineseName} | Return a score for matching Chinese name ex. 王晓明 with a romanized name ex. Wang Xiaoming |
ChineseApi | chineseNameMatchBatch | POST /api2/json/chineseNameMatchBatch | Identify Chinese name candidates, based on the romanized name (firstName = chineseGivenName; lastName=chineseSurname), ex. Wang Xiaoming |
ChineseApi | genderChineseName | GET /api2/json/genderChineseName/{chineseName} | Infer the likely gender of a Chinese full name ex. 王晓明 |
ChineseApi | genderChineseNameBatch | POST /api2/json/genderChineseNameBatch | Infer the likely gender of up to 100 full names ex. 王晓明 |
ChineseApi | genderChineseNamePinyin | GET /api2/json/genderChineseNamePinyin/{chineseSurnameLatin}/{chineseGivenNameLatin} | Infer the likely gender of a Chinese name in LATIN (Pinyin). |
ChineseApi | genderChineseNamePinyinBatch | POST /api2/json/genderChineseNamePinyinBatch | Infer the likely gender of up to 100 Chinese names in LATIN (Pinyin). |
ChineseApi | parseChineseName | GET /api2/json/parseChineseName/{chineseName} | Infer the likely first/last name structure of a name, ex. 王晓明 -> 王(surname) 晓明(given name) |
ChineseApi | parseChineseNameBatch | POST /api2/json/parseChineseNameBatch | Infer the likely first/last name structure of a name, ex. 王晓明 -> 王(surname) 晓明(given name). |
ChineseApi | pinyinChineseName | GET /api2/json/pinyinChineseName/{chineseName} | Romanize the Chinese name to Pinyin, ex. 王晓明 -> Wang (surname) Xiaoming (given name) |
ChineseApi | pinyinChineseNameBatch | POST /api2/json/pinyinChineseNameBatch | Romanize a list of Chinese name to Pinyin, ex. 王晓明 -> Wang (surname) Xiaoming (given name). |
GeneralApi | nameType | GET /api2/json/nameType/{properNoun} | Infer the likely type of a proper noun (personal name, brand name, place name etc.) |
GeneralApi | nameType1 | GET /api2/json/nameType/{properNoun}/{countryIso2} | Infer the likely type of a proper noun (personal name, brand name, place name etc.) |
JapaneseApi | genderJapaneseNameFull | GET /api2/json/genderJapaneseNameFull/{japaneseName} | Infer the likely gender of a Japanese full name ex. 王晓明 |
JapaneseApi | genderJapaneseNameFullBatch | POST /api2/json/genderJapaneseNameFullBatch | Infer the likely gender of up to 100 full names |
JapaneseApi | genderJapaneseNamePinyin | GET /api2/json/genderJapaneseName/{japaneseSurname}/{japaneseGivenName} | Infer the likely gender of a Japanese name in LATIN (Pinyin). |
JapaneseApi | genderJapaneseNamePinyinBatch | POST /api2/json/genderJapaneseNameBatch | Infer the likely gender of up to 100 Japanese names in LATIN (Pinyin). |
JapaneseApi | japaneseNameKanjiCandidates | GET /api2/json/japaneseNameKanjiCandidates/{japaneseSurnameLatin}/{japaneseGivenNameLatin} | Identify japanese name candidates in KANJI, based on the romanized name ex. Yamamoto Sanae |
JapaneseApi | japaneseNameKanjiCandidatesBatch | POST /api2/json/japaneseNameKanjiCandidatesBatch | Identify japanese name candidates in KANJI, based on the romanized name (firstName = japaneseGivenName; lastName=japaneseSurname), ex. Yamamoto Sanae |
JapaneseApi | japaneseNameLatinCandidates | GET /api2/json/japaneseNameLatinCandidates/{japaneseSurnameKanji}/{japaneseGivenNameKanji} | Romanize japanese name, based on the name in Kanji. |
JapaneseApi | japaneseNameLatinCandidatesBatch | POST /api2/json/japaneseNameLatinCandidatesBatch | Romanize japanese names, based on the name in KANJI |
JapaneseApi | japaneseNameMatch | GET /api2/json/japaneseNameMatch/{japaneseSurnameLatin}/{japaneseGivenNameLatin}/{japaneseName} | Return a score for matching Japanese name in KANJI ex. 山本 早苗 with a romanized name ex. Yamamoto Sanae |
JapaneseApi | japaneseNameMatchBatch | POST /api2/json/japaneseNameMatchBatch | Return a score for matching a list of Japanese names in KANJI ex. 山本 早苗 with romanized names ex. Yamamoto Sanae |
JapaneseApi | japaneseNameMatchFeedbackLoop | GET /api2/json/japaneseNameMatchFeedbackLoop/{japaneseSurnameLatin}/{japaneseGivenNameLatin}/{japaneseName} | [CREDITS 1 UNIT] Feedback loop to better perform matching Japanese name in KANJI ex. 山本 早苗 with a romanized name ex. Yamamoto Sanae |
JapaneseApi | parseJapaneseName | GET /api2/json/parseJapaneseName/{japaneseName} | Infer the likely first/last name structure of a name, ex. 山本 早苗 or Yamamoto Sanae |
JapaneseApi | parseJapaneseNameBatch | POST /api2/json/parseJapaneseNameBatch | Infer the likely first/last name structure of a name, ex. 山本 早苗 or Yamamoto Sanae |
SocialApi | phoneCode | GET /api2/json/phoneCode/{firstName}/{lastName}/{phoneNumber} | [USES 11 UNITS PER NAME] Infer the likely country and phone prefix, given a personal name and formatted / unformatted phone number. |
SocialApi | phoneCodeBatch | POST /api2/json/phoneCodeBatch | [USES 11 UNITS PER NAME] Infer the likely country and phone prefix, of up to 100 personal names, detecting automatically the local context given a name and formatted / unformatted phone number. |
SocialApi | phoneCodeGeo | GET /api2/json/phoneCodeGeo/{firstName}/{lastName}/{phoneNumber}/{countryIso2} | [USES 11 UNITS PER NAME] Infer the likely phone prefix, given a personal name and formatted / unformatted phone number, with a local context (ISO2 country of residence). |
SocialApi | phoneCodeGeoBatch | POST /api2/json/phoneCodeGeoBatch | [USES 11 UNITS PER NAME] Infer the likely country and phone prefix, of up to 100 personal names, with a local context (ISO2 country of residence). |
SocialApi | phoneCodeGeoFeedbackLoop | GET /api2/json/phoneCodeGeoFeedbackLoop/{firstName}/{lastName}/{phoneNumber}/{phoneNumberE164}/{countryIso2} | [CREDITS 1 UNIT] Feedback loop to better infer the likely phone prefix, given a personal name and formatted / unformatted phone number, with a local context (ISO2 country of residence). |
- APIBillingPeriodUsageOut
- APIClassifierOut
- APIClassifierTaxonomyOut
- APIClassifiersStatusOut
- APICounterV2Out
- APIKeyOut
- APIPeriodUsageOut
- APIPlanOut
- APIPlanSubscriptionOut
- APIPlansOut
- APIServiceOut
- APIServicesOut
- APIUsageAggregatedOut
- BatchFirstLastNameDiasporaedOut
- BatchFirstLastNameGenderIn
- BatchFirstLastNameGenderedOut
- BatchFirstLastNameGeoIn
- BatchFirstLastNameGeoZippedIn
- BatchFirstLastNameIn
- BatchFirstLastNameOriginedOut
- BatchFirstLastNamePhoneCodedOut
- BatchFirstLastNamePhoneNumberGeoIn
- BatchFirstLastNamePhoneNumberIn
- BatchFirstLastNameUSRaceEthnicityOut
- BatchMatchPersonalFirstLastNameIn
- BatchNameMatchCandidatesOut
- BatchNameMatchedOut
- BatchParsedFullNameGeoIn
- BatchParsedFullNameIn
- BatchPersonalNameGenderedOut
- BatchPersonalNameGeoIn
- BatchPersonalNameGeoOut
- BatchPersonalNameIn
- BatchPersonalNameParsedOut
- BillingHistoryOut
- BillingInfoInOut
- CacheMetricsOut
- ClassifierMetricsOut
- CurrenciesOut
- DeployUIOut
- ExpectedClassMetricsOut
- FeedbackLoopOut
- FirstLastNameDiasporaedOut
- FirstLastNameGenderIn
- FirstLastNameGenderedOut
- FirstLastNameGeoIn
- FirstLastNameGeoZippedIn
- FirstLastNameIn
- FirstLastNameOriginedOut
- FirstLastNameOut
- FirstLastNamePhoneCodedOut
- FirstLastNamePhoneNumberGeoIn
- FirstLastNamePhoneNumberIn
- FirstLastNameUSRaceEthnicityOut
- InlineObject
- InvoiceItemOut
- InvoiceOut
- MatchPersonalFirstLastNameIn
- NamSorCounterOut
- NameMatchCandidateOut
- NameMatchCandidatesOut
- NameMatchedOut
- ParsedFullNameGeoIn
- ParsedFullNameIn
- PersonalNameGenderedOut
- PersonalNameGeoIn
- PersonalNameGeoOut
- PersonalNameIn
- PersonalNameParsedOut
- ProperNounCategorizedOut
- RomanizedNameOut
- SoftwareVersionOut
- SourceDetailedMetricsOut
- SourceMetricsOut
- StripeCardOut
- StripeCustomerOut
- SystemMetricsOut
- UserInfoOut
It's recommended to create an instance of ApiClient
per thread in a multithreaded environment to avoid any potential issues.