Telefon Numarası Doğrulama ve Biçimlendirme API'si
Phone Validator API, 242 ülkede desteklenmektedir.
Telefon Numarası Doğrulama ve Biçimlendirme API'si, kullanıcılar tarafından çeşitli biçimlerde girilen telefon numaralarını kolayca işlemenizi sağlar. Giriş 1(212)-867-53-09
, +1 212 8675309
, 001-212.867.5309
gibi düzensiz veya sadece 2128675309
gibi sade olsa bile, API’miz yapıyı akıllıca algılar ve standartlaştırılmış bir versiyon döner.
Bu araç, girilen numarayı otomatik olarak uluslararası telefon numaraları için küresel olarak tanınan E.164 formatına dönüştürür. Örneğin, +1 212 867 5309
formatı +12128675309 olarak döner ve uluslararası arama sistemleri veya entegrasyonlar için uygun hale gelir.
Biçimlendirmenin ötesinde, API detaylı telefon numarası doğrulama yetenekleri sunar. Numaranın isValid: true
olup olmadığını — yani ulusal numaralandırma planlarına göre geçerli bir numara olup olmadığını — kontrol eder. Ayrıca isPossible: true
kontrolü ile numaranın henüz atanmış olmasa bile potansiyel olarak var olma ihtimalini değerlendirir. Bu, kayıt öncesi veya işlem öncesi ön-doğrulama için faydalıdır.
numberType parametresi sayesinde numaranın mobil, sabit hat ya da VoIP olup olmadığı belirlenebilir. Bu, özellikle yalnızca SMS doğrulamaları için mobil numaralara ya da ofis iletişimleri için sabit hatlara izin vermek istediğiniz senaryolarda faydalıdır.
Alan kodu tanıma desteğiyle API, numaranın coğrafi kökenini de algılayabilir. Örneğin, 212
alan koduyla başlayan bir numara otomatik olarak New York City (Manhattan) ile eşleştirilir. Bu özellik, lokasyona dayalı segmentasyon veya analiz gereken uygulamalar için idealdir.
Her numara ayrıca ülke düzeyinde detaylı meta verilerle birlikte gelir. Bu bilgiler arasında ISO bölge kodu (ör. US
) ve sayısal ülke kodu (ör. 1
) bulunur ve bu sayede uygulamalarınızda bölgeye özel mantık ve görünüm biçimleri uygulanabilir.
✅ API Yanıtı
Örnek JSON yanıtı:
{
"status": true,
"remaining_credits": 15709,
"expires": 0,
"duration": "18ms",
"regionCode": "US",
"countryCode": 1,
"country":"Unites States",
"national": "(212) 867-5309",
"international": "+1 212-867-5309",
"e164": "+12128675309",
"isValid": true,
"isPossible": true,
"numberType": "FIXED_LINE_OR_MOBILE",
"nationalSignificantNumber": "2128675309",
"rawInput": "+1 212 867 5309",
"isGeographical": true,
"areaCode": "212",
"location": "New York City (Manhattan)"
}
Telefon Doğrulama API'sini Kendiniz Deneyin
Temel Kullanım
Aşağıdaki uç noktaya bir telefon numarası gönderin:
https://api.genderapi.io/api/phone?key=YOUR_API_KEY&number=12128675309
Günlük ücretsiz 200 kredilik API anahtarınızı bu bağlantıdan alabilirsiniz.
Adres Parametresi
API, ayrıca opsiyonel bir address
parametresini de destekler. Bu parametre, telefon numarası uluslararası ülke kodu olmadan sağlandığında oldukça faydalıdır. Bu alan, sistemin hedef bölgeyi algılamasına ve numarayı doğru şekilde ayrıştırmasına yardımcı olur. Örneğin, giriş 2128675309
ise ve bir ülke kodu belirtilmemişse, address=US
, address=United States
ya da address=New York
olarak belirlemek API'nin bu numaranın Amerika Birleşik Devletleri’ne ait olduğunu anlamasını sağlar.
address
parametresi aşağıdaki formatlarda giriş kabul eder:
- ISO 3166-1 alpha-2 kodları (ör.
US
,DE
,TR
) Germany
,Turkey
,America
gibi ülke adlarıBerlin
,Istanbul
,New York
gibi şehir veya bölge adları
Opsiyonel olsa da, telefon numarası artı işaretiyle ve bir uluslararası kodla başlamıyorsa (ör. +1
, +44
, +90
), address
parametresi zorunlu hale gelir. Bu bağlamsal bilgi olmadan API, ulusal formatta girilen numarayı doğru şekilde yorumlayamayabilir.
Adres parametresiyle örnek:
https://api.genderapi.io/api/phone?key=YOUR_API_KEY&number=12128675309&address=US
Yanıt Alanları
Alan | Tür | Açıklama |
---|---|---|
status | Boolean | İstek başarılıysa true döner. |
remaining_credits | Integer | Bu isteğin ardından kalan API kredisi sayısı. |
expires | Integer (timestamp) | Kredinin UNIX formatında (saniye cinsinden) sona erme zamanı. |
duration | String | İsteğin işlenme süresi (ör. 308ms ). |
regionCode | String | Tespit edilen ülkenin ISO 3166-1 alpha-2 bölge kodu (ör. US ). |
countryCode | Integer | Ülkenin uluslararası telefon kodu (ör. 1 ABD için). |
country | String | İnsan tarafından okunabilir tam ülke adı (ör. United States). |
national | String | Telefon numarasının biçimlendirilmiş ulusal versiyonu (ör. (212) 867–5309 ). |
international | String | Biçimlendirilmiş uluslararası versiyon (ör. +1 212–867–5309 ). |
e164 | String | E.164 formatında telefon numarası (ör. +12128675309 ). |
isValid | Boolean | Numara bölgesel kurallara göre geçerliyse true . |
isPossible | Boolean | Numaranın geçerli bir yapısı varsa ve henüz atanmasa da var olabilir nitelikteyse true . |
numberType | Enum[String] | Telefon numarasının türü. Olası değerler: FIXED_LINE , MOBILE , FIXED_LINE_OR_MOBILE vb. |
nationalSignificantNumber | String | Ülke kodu olmadan tam ulusal numara (ör. 2128675309 ). |
rawInput | String | API isteğinde gönderilen orijinal telefon numarası. |
isGeographical | Boolean | Numara coğrafi bir alanla ilişkilendirilebiliyorsa (ör. sabit hatlar) true . |
areaCode | String | Numaranın alan kodu bölümü (ör. 212 ). |
location | String | Alan koduna karşılık gelen coğrafi konum (ör. New York City (Manhattan) ). |
Numara Türü Değerleri
Tür | Açıklama |
---|---|
FIXED_LINE | Coğrafi bir konuma bağlı standart sabit hat numarası. |
MOBILE | Arama ve SMS alabilen mobil veya hücresel numara. |
FIXED_LINE_OR_MOBILE | Numara sabit hat ya da mobil olabilir. Numara planında ayrım net değildir. |
TOLL_FREE | Ücretin alıcı tarafından ödendiği ücretsiz numara, örneğin ABD'deki 800'lü numaralar. |
PREMIUM_RATE | Genellikle eğlence veya bilgi hizmetleri için daha yüksek ücretli premium numaralar. |
SHARED_COST | Arayan ve alıcının maliyeti paylaştığı numara. |
VOIP | Skype veya Google Voice gibi internet tabanlı telefon hizmetlerinde kullanılan IP üzerinden ses (VoIP) numarası. |
PERSONAL_NUMBER | Kullanıcı tarafından istenilen herhangi bir telefon hattına yönlendirilebilen kişisel numara. |
PAGER | Metin tabanlı bildirimler için kullanılan (çoğunlukla artık kullanılmayan) çağrı cihazı numarası. |
UAN | Genellikle işletmelerin tek iletişim noktası olarak kullandığı Evrensel Erişim Numarası. |
VOICEMAIL | Sesli mesaj hizmetine erişim için ayrılmış numara. |
UNKNOWN | Numara türü belirlenemedi. |
+
işareti ya da ülke adlarındaki boşluklar) varsa,
GET isteği yapmadan önce bunları mutlaka URL ile kodlayın. Aksi takdirde, isteğiniz başarısız olabilir veya parametreler yanlış yorumlanabilir.
❌ Örnek (hatalı):
curl "https://api.genderapi.io/api/phone?number=+49 151 12345678&address=United States&key=YOUR_API_KEY"✅ Doğru kullanım (URL kodlanmış):
curl "https://api.genderapi.io/api/phone?number=%2B49%20151%2012345678&address=United%20States&key=YOUR_API_KEY"Parametreleri göndermeden önce programlama dilinizdeki URL kodlama fonksiyonlarını da kullanabilirsiniz.
POST İsteği ile Telefon Doğrulama API'si
Birleşik Devletler için bir telefon numarasını doğrulamak amacıyla POST yöntemini kullanabilirsiniz. E.164, ulusal veya uluslararası formatta numarayı ve ülke/bölge bilgisini sağlayın. API anahtarınız Bearer token olarak gönderilmelidir.
cURL Örneği
curl -X POST "https://api.genderapi.io/api/phone" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{"number": "+12128675309", "address": "US"}'
PHP cURL Örneği
<?php
$url = "https://api.genderapi.io/api/phone";
$data = array(
"number" => "+12128675309",
"address" => "US"
);
$payload = json_encode($data);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"Authorization: Bearer YOUR_API_KEY"
));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
?>
JavaScript fetch Örneği
fetch("https://api.genderapi.io/api/phone", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY"
},
body: JSON.stringify({
number: "+12128675309",
address: "United States"
})
})
.then(response => response.json())
.then(data => console.log(data));
Python requests Örneği
import requests
url = "https://api.genderapi.io/api/phone"
payload = {
"number": "+12128675309",
"address": "United States"
}
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY"
}
response = requests.post(url, headers=headers, json=payload)
print(response.json())
İstemci Kütüphaneleri
Entegrasyonu daha da kolaylaştırmak için farklı programlama dilleri için resmi ve topluluk destekli istemci kütüphaneleri sunuyoruz. Bu kütüphaneler sayesinde GenderAPI uç noktalarıyla — örneğin Telefon Numarası Doğrulama API'si — kolayca etkileşime geçebilir, manuel olarak HTTP isteği veya JSON ayrıştırma ile uğraşmadan işlem yapabilirsiniz. Ortamınıza uygun kütüphaneyi seçin, kurun ve minimum yapılandırmayla kullanmaya başlayın.
Mevcut istemci kütüphanelerini ve kurulum talimatlarını şu sayfada bulabilirsiniz:
https://www.genderapi.io/tr/docs-client-libraries
SSS - Sıkça Sorulan Sorular
1. Telefon Numarası Doğrulama ve Biçimlendirme API'si nedir?
Telefon Numarası Doğrulama ve Biçimlendirme API'si, dünya genelindeki telefon numaralarını doğrulamanıza, biçimlendirmenize ve analiz etmenize olanak tanıyan bir araçtır. Numaraları standart E.164 formatına dönüştürebilir ve bölge, tür (mobil/sabit hat), geçerlilik gibi meta verileri belirleyebilir.
2. Telefon Numarası Doğrulama ne için kullanılır?
Bir telefon numarasının geçerli olup olmadığını kontrol etmek, uluslararası kullanım için biçimlendirmek, numaranın türünü belirlemek (ör. mobil, VoIP), bölgesel meta verileri tespit etmek ve CRM, pazarlama araçları veya kullanıcı kayıtları için temiz ve standartlaştırılmış girişler sağlamak için kullanılır.
3. Kaç ülke destekleniyor?
API, dünya genelinde 242 ülke ve bölgeden gelen telefon numaralarını destekler. Bu sayede uluslararası veya bölgesel tüm uygulamalarda kapsamlı destek sağlar.
4. Hangi formatlar destekleniyor?
API; ulusal, uluslararası veya E.164 gibi çeşitli formatlarda numaraları kabul eder. Girişleri otomatik olarak algılar ve doğru formata dönüştürür.
5. Ülke veya adres parametresini atlamam durumunda ne olur?
Eğer telefon numarası '+' ile başlamıyorsa ve ülke/adres belirtilmemişse, API numarayı doğru bir şekilde yorumlayamayabilir. Bu yüzden address
parametresinin (ör. US
, United States
veya New York
) eklenmesi önerilir.
6. API numara türünü algılayabilir mi?
Evet. API, numaranın MOBILE
, FIXED_LINE
, VOIP
vb. türde olup olmadığını belirten numberType
alanını döner.
7. isValid
ile isPossible
arasındaki fark nedir?
isValid
, numaranın resmi olarak atanmış ve bölgesel kurallara uygun olduğunu gösterir. isPossible
ise, numaranın henüz atanmasa da yapısal olarak var olabileceğini belirtir.
8. API nasıl bir yanıt döner?
Başarılı bir yanıt; durum bilgisi, farklı biçimlerde numara (ulusal, uluslararası, E.164), bölge verileri, numara türü, kredi kullanımı ve daha fazlasını içerir. Tam örnek için "API Yanıtı" bölümüne bakınız.
9. API anahtarımı nasıl göndermeliyim?
GET isteklerinde ?key=YOUR_API_KEY
şeklinde parametre olarak ekleyin. POST isteklerinde ise header içine Bearer token olarak şu şekilde yazın:
"Authorization: Bearer YOUR_API_KEY"
.
10. Eğer status: false
yanıtı görürsem ne anlama gelir?
Bu, isteğin başarısız olduğu anlamına gelir. message
alanı, eksik parametreler, geçersiz telefon numarası veya yetersiz kredi gibi hata nedenini detaylı şekilde açıklar.
11. Girişte özel karakterler veya boşluklar kullanabilir miyim?
Evet, ancak GET istekleri için bu karakterler mutlaka URL ile kodlanmalıdır. Örneğin, boşluk yerine %20
kullanmalısınız. Doğru kullanım için yukarıdaki uyarı bölümüne göz atın.
12. Adresleri farklı formatlarda veya dillerde kullanabilir miyim?
Evet. US
, DE
, TR
gibi ISO 3166-1 alpha-2 kodlarının yanı sıra, tam ülke isimleri veya şehir adları — farklı dillerde bile olsa — kabul edilir. API, entegre yapay zekasıyla ülke veya bölgeyi akıllıca algılar ve doğru şekilde eşleştirir. Örnekler:
address=Deutschland
address=États-Unis
address=İstanbul
address=New York
address=Estados Unidos
Tüm bu girişler API tarafından doğru ülke veya bölgeye sorunsuz şekilde eşleştirilir.