Memulai

Infrastruktur jaringan seluler global beroperasi pada sistem yang dikenal sebagai jaringan sinyal SS7. Jaringan ini memfasilitasi pertukaran data pelanggan, perutean panggilan, transmisi SMS, dan pembaruan status konektivitas seluler real-time antar operator. Setiap jaringan seluler memelihara Home Location Register (HLR) - database inti yang menyimpan detail penting tentang pelanggannya.

Teknologi HLR Lookup memungkinkan bisnis untuk melakukan kueri pada register ini dan mengambil detail konektivitas dan jaringan langsung untuk nomor ponsel mana pun. Ini termasuk apakah ponsel dalam keadaan aktif, jaringan mana yang saat ini ditugaskan, apakah telah diporting, apakah nomor tersebut valid atau dinonaktifkan, dan apakah sedang roaming.

API HLR Lookups menyediakan akses real-time yang mulus ke data ini, memungkinkan bisnis untuk memverifikasi nomor ponsel, mengoptimalkan perutean, dan meningkatkan komunikasi pelanggan. Dokumentasi ini akan memandu Anda dalam mengintegrasikan HLR Lookups ke dalam perangkat lunak Anda, memungkinkan pengambilan otomatis intelijen seluler real-time.

Menggunakan API HLR Lookups

Menjalankan kueri HLR Lookup cepat, aman, dan mudah. Setelah Anda mendaftar dan mendapatkan API Key, Anda dapat melakukan autentikasi dan memulai lookup instan dengan permintaan HTTP POST sederhana, melalui POST /hlr-lookup. Atau, Anda dapat memproses kumpulan data besar dengan memilih permintaan API asinkron cepat dengan hasil yang dikirim kembali ke server Anda melalui webhook, seperti yang dijelaskan di bagian konsep.

Contoh Permintaan

curl -X POST 'https://www.hlr-lookups.com/api/v2/hlr-lookup' \
          -H "X-Digest-Key: YOUR_API_KEY" \
          -H "X-Digest-Signature: DIGEST_AUTH_SIGNATURE" \
          -H "X-Digest-Timestamp: UNIX_TIMESTAMP" \
          -d "@payload.json"

Autentikasi disediakan melalui header HTTP, dan payload.json harus (minimal) berisi objek JSON berikut:

Contoh Payload

{
   "msisdn": "+14156226819"
}

Setelah eksekusi berhasil, Anda akan menerima respons yang berisi detail konektivitas real-time untuk nomor ponsel yang ditentukan.

Respons Berhasil application/json

{
   "id":"f94ef092cb53",
   "msisdn":"+14156226819",
   "connectivity_status":"CONNECTED",
   "mccmnc":"310260",
   "mcc":"310",
   "mnc":"260",
   "imsi":"***************",
   "msin":"**********",
   "msc":"************",
   "original_network_name":"Verizon Wireless",
   "original_country_name":"United States",
   "original_country_code":"US",
   "original_country_prefix":"+1",
   "is_ported":true,
   "ported_network_name":"T-Mobile US",
   "ported_country_name":"United States",
   "ported_country_code":"US",
   "ported_country_prefix":"+1",
   "is_roaming":false,
   "roaming_network_name":null,
   "roaming_country_name":null,
   "roaming_country_code":null,
   "roaming_country_prefix":null,
   "cost":"0.0100",
   "timestamp":"2020-08-07 19:16:17.676+0300",
   "storage":"SYNC-API-2020-08",
   "route":"IP1",
   "processing_status":"COMPLETED",
   "error_code":null,
   "error_description":null,
   "data_source":"LIVE_HLR",
   "routing_instruction":"STATIC:IP1"
}

Untuk rincian lengkap atribut permintaan dan respons serta status konektivitas, lihat POST /hlr-lookup.

Layanan Lookup Tambahan

Lookup Mobile Number Portability (MNP)

Gunakan lookup MNP untuk menentukan kepemilikan jaringan dan detail portabilitas tanpa melakukan kueri konektivitas real-time. Jika Anda hanya memerlukan MCCMNC dari suatu nomor, lihat POST /mnp-lookup.

Lookup Deteksi Jenis Nomor (NT)

Tentukan apakah nomor telepon termasuk telepon rumah, seluler, tarif premium, VoIP, pager, atau rentang rencana penomoran lainnya dengan POST /nt-lookup.

Software Development Kit (SDK)

API HLR Lookups bekerja dengan klien REST apa pun dalam bahasa pemrograman apa pun dan kami telah menerbitkan SDK untuk PHP, Ruby, dan NodeJS di GitHub kami untuk membantu Anda memulai dengan cepat.

Alat

Untuk memastikan pengalaman pengembangan yang lancar, kami menawarkan rangkaian alat yang komprehensif, termasuk pemantauan permintaan API dan webhook di browser, whitelisting alamat IP, opsi autentikasi yang kuat, dan endpoint pengujian autentikasi.

Bukan Developer?

HLR Lookup dan Kueri Number Portability dapat dilakukan tanpa coding. Pelajari lebih lanjut tentang klien web enterprise dan fitur pelaporan berbasis browser kami.

Autentikasi

Untuk memastikan keamanan dan kontrol akses yang tepat, sebagian besar permintaan ke API HLR Lookups memerlukan autentikasi. Endpoint dikategorikan sebagai publik atau terlindungi. Saat mengakses endpoint terlindungi, permintaan Anda harus diautentikasi menggunakan kunci API dan secret melalui metode Digest-Auth atau Basic-Auth. Digest-Auth adalah opsi yang lebih aman dan sangat direkomendasikan. Gunakan endpoint GET /auth-test untuk memverifikasi pengaturan autentikasi Anda.

Kunci API dan Secret API

Dapatkan kunci API dan secret Anda dari halaman Pengaturan API. Anda juga dapat mengonfigurasi metode autentikasi pilihan dan mengaktifkan whitelist alamat IP untuk keamanan yang lebih baik. Jika Anda mencurigai secret API Anda telah dibobol, Anda dapat membuat yang baru kapan saja.

Dapatkan Kunci API
Basic Auth Digest Auth Whitelist IP

Autentikasi Basic standar mudah diimplementasikan dan didukung secara luas. Anda dapat melakukan autentikasi dengan mengirimkan kunci API dan secret sebagai pasangan user:pass dalam permintaan HTTP.

HTTP Basic Auth

curl 'https://YOUR_API_KEY:YOUR_API_SECRET@www.hlr-lookups.com/api/v2/auth-test'

Ini mengirimkan header Authorization:

Authorization: Basic BASE64(YOUR_API_KEY:YOUR_API_SECRET)

Direkomendasikan: Header X-Basic dengan SHA256

Untuk keamanan yang lebih baik, Anda dapat mengirimkan hash SHA256 dari kredensial Anda daripada mengirimkannya secara langsung sebagai base64. Untuk menggunakan metode ini, hitung hash dari pasangan YOUR_API_KEY:YOUR_API_SECRET Anda dan kirimkan melalui header X-Basic:

Permintaan Basic Auth

curl 'https://www.hlr-lookups.com/api/v2/auth-test' \
  -H "X-Basic: BASIC_AUTH_HASH"

Header Autentikasi Basic

Kunci Tipe Deskripsi
X-Basic string Hash SHA256 dari YOUR_API_KEY:YOUR_API_SECRET. Sertakan simbol titik dua (:) dalam hash. wajib

PHP Contoh Kode

$key = 'YOUR_API_KEY';
$secret = 'YOUR_API_SECRET';

$basicAuthHash = hash('sha256', $key . ':' . $secret);

Digest-Auth adalah metode yang direkomendasikan untuk mengamankan akses ke endpoint API HLR Lookup yang terlindungi. Setiap permintaan harus menyertakan header berikut: X-Digest-Key, X-Digest-Signature, dan X-Digest-Timestamp, yang dijelaskan di bawah ini.

Contoh Permintaan

curl 'https://www.hlr-lookups.com/api/v2/auth-test' \
  -H "X-Digest-Key: YOUR_API_KEY" \
  -H "X-Digest-Signature: DIGEST_AUTH_SIGNATURE" \
  -H "X-Digest-Timestamp: UNIX_TIMESTAMP"

Header Permintaan

Kunci Tipe Deskripsi
X-Digest-Key string Kunci API HLR Lookups unik Anda. wajib
X-Digest-Signature string Tanda tangan autentikasi unik (lihat di bawah). wajib
X-Digest-Timestamp integer Timestamp Unix saat ini (lihat juga GET /time). wajib

Membuat Tanda Tangan

X-Digest-Signature dibuat menggunakan hash HMAC SHA256, dengan secret API Anda sebagai kunci bersama.

String yang akan di-hash disusun sebagai berikut:

ENDPOINT_PATH . UNIX_TIMESTAMP . REQUEST_METHOD . REQUEST_BODY

Simbol . mewakili penggabungan string.

Komponen Tanda Tangan Digest

Komponen Tipe Deskripsi
ENDPOINT_PATH string Endpoint API yang diminta, misalnya /auth-test dalam huruf kecil.
UNIX_TIMESTAMP integer Timestamp Unix saat ini (harus dalam 30 detik). Lihat GET /time.
REQUEST_METHOD string Metode HTTP yang digunakan, misalnya POST atau GET.
REQUEST_BODY string Data body permintaan. Atur ke null untuk permintaan GET.

Contoh Kode

PHP PHP NodeJS NodeJS Ruby Ruby
$path = '/auth-test'
    $timestamp = time();
    $method = 'GET';
    $body = $method == 'GET' ? null : json_encode($params);
    $secret = 'YOUR_API_SECRET';

    $signature = hash_hmac('sha256', $path . $timestamp . $method . $body, $secret);
require('crypto');

    let path = '/auth-test'
    let timestamp = Date.now() / 1000 | 0;
    let method = 'GET'
    let body = method === 'GET' ? '' : JSON.stringify(params)
    let secret = 'YOUR_API_SECRET'

    let signature = crypto.createHmac('sha256', secret)
                    .update(path + timestamp + method + body)
                    .digest('hex');
require 'openssl'

path = '/auth-test'
timestamp = Time.now.to_i
method = 'GET'
body = method == 'GET' ? NIL : params.to_json
secret = 'YOUR_API_SECRET'

signature = OpenSSL::HMAC.hexdigest('sha256', secret, path + timestamp.to_s + method + body.to_s)

Gunakan Pengaturan API untuk membatasi akses ke alamat IP tertentu untuk keamanan yang lebih baik. Ini sangat direkomendasikan dalam lingkungan produksi.

Gulir ke Atas

Konsep

Mengimplementasikan HLR Lookup dalam bahasa pemrograman atau sistem apa pun melalui HTTP REST API kami sangat mudah dan efisien. Dengan proses integrasi yang sederhana, Anda dapat mulai melakukan query ke jaringan seluler secara real-time untuk mendapatkan wawasan instan tentang validitas nomor telepon, status konektivitas, dan detail routing.

Pemilihan API yang tepat bergantung pada kebutuhan spesifik Anda. Jika Anda memerlukan hasil lookup real-time untuk aplikasi seperti telefoni VoIP, deteksi fraud, atau routing SMS, API sinkron adalah pilihan terbaik. Namun, jika kebutuhan Anda melibatkan pemrosesan volume tinggi, lookup massal, atau verifikasi data skala besar, API asinkron menawarkan performa optimal dengan efisiensi bandwidth dan kemampuan lookup batch.

Konfigurasikan API untuk menggunakan salah satu opsi routing kustom kami guna mengoptimalkan kecepatan, akurasi, dan efektivitas biaya. Anda juga dapat menyimpan hasil lookup di storage untuk kemudahan download laporan CSV dan JSON, serta analitik lanjutan melalui antarmuka web.

API HLR Lookup Sinkron

Endpoint POST /hlr-lookup memproses satu nomor ponsel (MSISDN) per permintaan dan mengembalikan hasil secara instan dalam body respons HTTP. Hasil diformat dalam JSON dan ideal untuk aplikasi real-time, termasuk validasi nomor ponsel, routing panggilan, dan pengiriman pesan SMS.

Panggilan API sinkron terdiri dari permintaan dan respons HTTP langsung. Sistem Anda mengirimkan satu MSISDN (nomor ponsel) per permintaan dan menerima respons langsung yang berisi hasil HLR lookup real-time dalam format JSON. API ini dioptimalkan untuk kebutuhan yang memerlukan verifikasi instan dan pengecekan konektivitas, seperti deteksi fraud, routing panggilan VoIP, dan optimasi gateway SMS.

API Pencarian HLR Asinkron

Endpoint POST /hlr-lookups dirancang untuk pemrosesan massal dan volume tinggi, memungkinkan Anda mengirimkan hingga 1,000 MSISDN per permintaan. Alih-alih mengembalikan hasil secara instan, API ini menggunakan webhook otomatis untuk mengirim hasil secara progresif ke server Anda. Hasil lookup dikembalikan sebagai objek JSON melalui callback HTTP POST.

API asinkron dioptimalkan untuk kecepatan, efisiensi, dan skalabilitas. API ini menghilangkan masalah latensi jaringan yang terkait dengan panggilan sinkron, menjadikannya ideal untuk bisnis yang memerlukan lookup throughput tinggi. Sistem Anda mengirimkan hingga 1,000 MSISDN per permintaan, dan platform kami memprosesnya secara paralel, mengirimkan hasil kembali ke server Anda melalui webhook HTTP dalam batch hingga 1,000 hasil per callback.

SDK (Software Development Kit)

Software Development Kit (SDK) kami untuk PHP, NodeJS, dan Ruby mempermudah proses integrasi, memungkinkan Anda terhubung dengan HLR Lookups API secara efisien dan dengan upaya minimal.

SDK ini menyediakan fungsi siap pakai, penanganan autentikasi, dan template permintaan API terstruktur, mengurangi waktu pengembangan dan memastikan praktik terbaik.

Jelajahi daftar lengkap SDK yang tersedia di GitHub dan mulai integrasi hari ini.

PHP PHP NodeJS NodeJS Ruby Ruby
Logo PHP

SDK PHP

Integrasi API Instan untuk PHP
1   include('HLRLookupClient.class.php');
2
3   $client = new HLRLookupClient(
4       'YOUR-API-KEY',
5       'YOUR-API-SECRET',
6       '/var/log/hlr-lookups.log'
7   );
8
9   $params = array('msisdn' => '+14156226819');
10  $response = $client->post('/hlr-lookup', $params);
Logo NodeJS

SDK NodeJS

Integrasi API Instan untuk NodeJS
1   require('node-hlr-client');
2
3   let response = await client.post('/hlr-lookup', {msisdn: '+491788735000'});
4
5   if (response.status === 200) {
6      // lookup was successful
7      let data = response.data;
8   }
Logo Ruby

SDK Ruby

Integrasi API Instan untuk Ruby
1   require 'ruby_hlr_client/client'
2
3   client = HlrLookupsSDK::Client.new(
4       'YOUR-API-KEY',
5       'YOUR-API-SECRET',
6       '/var/log/hlr-lookups.log'
7   )
8
9   params = { :msisdn => '+14156226819' }
10  response = client.get('/hlr-lookup', params)
Gulir ke Atas

POST/hlr-lookupdilindungi

Melakukan HLR Lookup secara sinkron, memberikan data konektivitas dan portabilitas nomor ponsel secara real-time langsung dari operator jaringan. Endpoint ini ideal untuk skenario lalu lintas langsung di mana aplikasi yang sensitif terhadap waktu memerlukan verifikasi segera apakah nomor telepon saat ini dapat dijangkau (terhubung) atau tidak tersedia (dimatikan). Selain itu, membantu membedakan nomor aktif dari nomor yang tidak valid, tidak dikenal, atau palsu.

Untuk pemrosesan massal dataset besar yang tidak memerlukan hasil instan, pertimbangkan untuk menggunakan POST /hlr-lookups asinkron, yang dioptimalkan untuk pemrosesan batch berkecepatan tinggi.

Jika fokus utama Anda adalah mengambil data portabilitas nomor ponsel (MCCMNC) dan Anda tidak memerlukan status konektivitas langsung, POST /mnp-lookup menyediakan alternatif hemat biaya untuk kueri portabilitas nomor ponsel.

Permintaan Respons Berhasil Respons Error Referensi Status
curl -X POST 'https://www.hlr-lookups.com/api/v2/hlr-lookup' \
          -d "@payload.json"

Payload

{
   "msisdn":"+14156226819",
   "route":null,
   "storage":null
}

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
msisdn string Nomor ponsel (MSISDN) yang akan dikueri, disediakan dalam format internasional (misalnya, +14156226819 atau 0014156226819). Kode negara harus disertakan. null wajib
route string(3) Pengenal tiga karakter opsional yang menentukan rute untuk lookup ini. Atur ke null atau abaikan parameter ini untuk menerapkan peta routing kustom Anda atau biarkan sistem kami secara otomatis menentukan rute terbaik untuk lookup ini. null opsional
storage string Pengenal penyimpanan opsional yang menentukan laporan tempat hasil akan disimpan untuk tinjauan manual, analitik, dan pelaporan. Sistem secara otomatis menambahkan timestamp dengan bulan saat ini. Jika diabaikan atau diatur ke null, sistem akan secara otomatis mengelompokkan hasil berdasarkan bulan untuk tujuan pelaporan. null opsional
{
   "id":"f94ef092cb53",
   "msisdn":"+14156226819",
   "connectivity_status":"CONNECTED",
   "mccmnc":"310260",
   "mcc":"310",
   "mnc":"260",
   "imsi":"***************",
   "msin":"**********",
   "msc":"************",
   "original_network_name":"Verizon Wireless",
   "original_country_name":"United States",
   "original_country_code":"US",
   "original_country_prefix":"+1",
   "is_ported":true,
   "ported_network_name":"T-Mobile US",
   "ported_country_name":"United States",
   "ported_country_code":"US",
   "ported_country_prefix":"+1",
   "is_roaming":false,
   "roaming_network_name":null,
   "roaming_country_name":null,
   "roaming_country_code":null,
   "roaming_country_prefix":null,
   "cost":"0.0100",
   "timestamp":"2020-08-07 19:16:17.676+0300",
   "storage":"SYNC-API-2020-08",
   "route":"IP1",
   "processing_status":"COMPLETED",
   "error_code":null,
   "error_description":null,
   "data_source":"LIVE_HLR",
   "routing_instruction":"STATIC:IP1"
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
id string(12) Pengidentifikasi unik yang ditetapkan untuk permintaan lookup ini. false
msisdn string Nomor telepon seluler yang ditanyakan, diformat dalam format internasional (misalnya, +14156226819 atau 0014156226819). false
connectivity_status string Menunjukkan apakah status konektivitas nomor berhasil diambil. Nilai yang mungkin: CONNECTED , ABSENT , INVALID_MSISDN , atau UNDETERMINED . false
mccmnc string(5|6) Kode Mobile Country Code (MCC) dan Mobile Network Code (MNC) lima atau enam digit yang mengidentifikasi jaringan yang saat ini terkait dengan nomor telepon. true
mcc string(3) Kode Mobile Country Code (MCC) tiga digit yang mengidentifikasi negara tempat nomor telepon terdaftar. true
mnc string(2|3) Kode Mobile Network Code (MNC) dua atau tiga digit yang mengidentifikasi jaringan spesifik tempat nomor telepon terdaftar. true
imsi string International Mobile Subscriber Identity (IMSI), pengidentifikasi unik untuk kartu SIM yang terkait dengan nomor ini. Ketersediaan bergantung pada konfigurasi jaringan. true
msin string(10) Mobile Subscription Identification Number (MSIN) dalam database operator seluler. Ketersediaan bergantung pada konfigurasi jaringan. true
msc string(12) Mobile Switching Center (MSC) yang saat ini menangani komunikasi pelanggan ini. Ketersediaan bergantung pada konfigurasi jaringan. true
original_network_name string Nama operator jaringan asli (native) yang terkait dengan nomor ini. true
original_country_name string Nama lengkap negara tempat nomor telepon seluler awalnya terdaftar, disediakan dalam bahasa Inggris. true
original_country_code string(2) Kode negara ISO dua karakter yang mewakili negara tempat nomor telepon pertama kali ditetapkan. true
original_country_prefix string Kode panggil internasional (country calling code) yang sesuai dengan negara asal nomor telepon seluler. true
is_ported boolean Menunjukkan apakah nomor seluler telah dipindahkan dari jaringan aslinya ke operator yang berbeda. true
ported_network_name string Nama operator jaringan tempat nomor seluler telah dipindahkan, jika berlaku. true
ported_country_name string Nama negara tempat nomor seluler dipindahkan, jika berlaku. true
ported_country_code string(2) Kode negara ISO dua karakter yang mewakili negara tempat nomor seluler dipindahkan, jika berlaku. true
ported_country_prefix string Kode panggil internasional (country calling code) untuk negara tempat nomor seluler dipindahkan, jika berlaku. true
is_roaming boolean Menunjukkan apakah nomor seluler saat ini melakukan roaming di jaringan luar negeri. Ketersediaan status roaming bergantung pada operator jaringan seluler. true
roaming_network_name string Nama jaringan tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
roaming_country_name string Nama negara tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
roaming_country_code string(2) Kode negara ISO dua karakter dari negara tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
roaming_country_prefix string Kode panggil internasional (country calling code) dari negara tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
cost string Nilai desimal yang direpresentasikan sebagai string, menunjukkan biaya lookup dalam EUR. true
timestamp string Timestamp berformat W3C termasuk zona waktu, yang menentukan kapan lookup diselesaikan. true
storage string Nama penyimpanan tempat hasil lookup disimpan. Ini sesuai dengan nama laporan dan unduhan CSV yang tersedia melalui antarmuka web. true
route string(3) Pengidentifikasi tiga karakter yang menunjukkan metode routing yang digunakan untuk permintaan lookup ini. true
processing_status string Hasil pemrosesan lookup. Nilai yang mungkin: COMPLETED (berhasil), REJECTED (jaringan tidak dapat dijangkau, tidak ada biaya yang dikenakan), atau FAILED (terjadi kesalahan selama pemrosesan). false
error_code integer Kode kesalahan internal opsional yang memberikan informasi diagnostik tambahan untuk dukungan pelanggan. true
error_description string Penjelasan singkat tentang kode kesalahan yang diberikan (jika ada) dalam teks biasa bahasa Inggris. true
data_source string Sumber data yang digunakan untuk permintaan ini. Nilai yang mungkin: LIVE_HLR (kueri HLR real-time) atau MNP_DB (database portabilitas nomor seluler statis). Lihat opsi routing untuk detail. false
routing_instruction string String yang dibatasi titik dua yang menjelaskan instruksi routing yang digunakan dalam permintaan. Komponen pertama adalah STATIC ketika Anda menentukan rute atau AUTO untuk routing otomatis; komponen kedua adalah pengidentifikasi rute, dan untuk permintaan routing otomatis komponen ketiga menunjukkan asal yang menjadi dasar keputusan routing (yaitu SCORE, CUSTOM_GLOBAL_COUNTRY, CUSTOM_GLOBAL_MCCMNC, CUSTOM_GLOBAL_PREFIX, CUSTOM_USER_COUNTRY, CUSTOM_USER_MCCMNC, CUSTOM_USER_PREFIX, MNP_FALLBACK, PLATFORM_DEFAULT, USER_DEFAULT). false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Status Deskripsi
CONNECTED Nomor valid dan perangkat tujuan saat ini terhubung ke jaringan seluler. Panggilan, SMS, dan layanan lainnya dapat menjangkau penerima dengan sukses.
ABSENT Nomor valid, tetapi perangkat tujuan sedang dimatikan atau sementara berada di luar jangkauan jaringan. Pesan atau panggilan mungkin tidak terkirim hingga perangkat terhubung kembali ke jaringan.
INVALID_MSISDN Nomor tidak valid atau saat ini tidak terdaftar pada pelanggan mana pun di jaringan seluler. Panggilan dan pesan ke nomor ini akan gagal.
UNDETERMINED Status konektivitas nomor tidak dapat ditentukan. Hal ini mungkin disebabkan oleh nomor yang tidak valid, respons error SS7, atau kurangnya konektivitas dengan operator jaringan tujuan. Periksa kode error dan deskripsinya untuk diagnostik tambahan.
Gulir ke Atas

POST/hlr-lookupsdilindungi

Memulai batch pencarian HLR asinkron, mengambil data konektivitas dan portabilitas ponsel secara langsung dari operator jaringan. Hasil dikirimkan melalui webhook ke server Anda. Metode ini dioptimalkan untuk memproses volume nomor yang besar yang tidak memerlukan respons langsung, seperti pembersihan dan verifikasi database. Untuk aplikasi real-time seperti perutean panggilan atau pengiriman SMS, pertimbangkan untuk menggunakan endpoint POST /hlr-lookup sebagai gantinya.

Endpoint ini ideal untuk pemrosesan massal ketika tujuannya adalah mengidentifikasi nomor telepon yang saat ini dapat dijangkau (terhubung) atau tidak tersedia (ponsel dimatikan) sambil menyaring nomor yang tidak valid, tidak ditugaskan, atau palsu. Selain itu, endpoint ini menyediakan status portabilitas langsung (MCCMNC) bersama dengan detail konektivitas.

Sebelum menggunakan endpoint ini, pastikan URL webhook telah dikonfigurasi untuk menerima hasil pencarian secara asinkron. Anda dapat mengaturnya di pengaturan API Anda.

Permintaan Respons Berhasil Respons Error Webhook Referensi Status
curl -X POST 'https://www.hlr-lookups.com/api/v2/hlr-lookups' \
          -d "@payload.json"

Payload

{
   "msisdns":["+14156226819","+491788735000","+905536939460"],
   "route":null,
   "storage":null
}

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
msisdns array Array nomor ponsel (MSISDN) dalam format internasional (misalnya +14156226819 atau 0014156226819). Anda dapat menyertakan hingga 1000 nomor per permintaan. null wajib
route string(3) Pengenal tiga karakter opsional yang menentukan rute untuk lookup ini. Atur ke null atau abaikan parameter ini untuk menerapkan peta routing kustom Anda atau biarkan sistem kami secara otomatis menentukan rute terbaik untuk lookup ini. null opsional
storage string Pengenal penyimpanan opsional yang menentukan laporan tempat hasil akan disimpan untuk tinjauan manual, analitik, dan pelaporan. Sistem secara otomatis menambahkan timestamp dengan bulan saat ini. Jika diabaikan atau diatur ke null, sistem akan secara otomatis mengelompokkan hasil berdasarkan bulan untuk tujuan pelaporan. null opsional
{
   "accepted":[
      {
         "id":"0424928f332e",
         "msisdn":"+491788735000"
      }
   ],
   "accepted_count":1,
   "rejected":[
      {
         "id":null,
         "msisdn":"+31"
      }
   ],
   "rejected_count":1,
   "total_count":2,
   "cost":"0.01",
   "storage":"ASYNC-API-2020-08",
   "route":"IP1",
   "webhook_urls":[
      "https://your-server.com/endpoint"
   ]
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
accepted array Daftar objek yang berisi pengidentifikasi unik dan MSISDN yang telah diterima untuk diproses. false
accepted_count integer Jumlah total MSISDN yang berhasil diterima untuk diproses. false
rejected array Daftar objek yang berisi pengidentifikasi unik dan MSISDN yang ditolak untuk diproses, biasanya karena nomor tidak valid. Tidak ada biaya yang dikenakan untuk entri yang ditolak. false
rejected_count integer Jumlah total MSISDN yang ditolak karena kesalahan validasi. false
total_count integer Jumlah total MSISDN yang diterima dan ditolak yang diajukan untuk diproses. false
cost string Nilai desimal yang direpresentasikan sebagai string, menunjukkan total biaya dalam EUR untuk pencarian yang diterima. false
storage string Nama penyimpanan tempat hasil pencarian ditambahkan, digunakan untuk pelaporan dan unduhan CSV melalui antarmuka web. false
route string(3|4) Pengidentifikasi tiga atau empat karakter yang menentukan rute yang digunakan untuk permintaan pencarian ini. Berisi AUTO jika perutean otomatis berbasis nomor diminta. false
webhook_urls array URL webhook yang dikonfigurasi di pengaturan API Anda. Hasil dikirimkan kembali ke sini. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false

Memproses Webhook

Setelah dikirim, platform kami mulai memproses nomor telepon yang diberikan dan mengirimkan hasilnya ke URL webhook yang telah ditentukan sebelumnya di server Anda. Hasil dikirimkan sebagai permintaan HTTP POST dengan objek JSON di dalam body permintaan.

Autentikasi

Autentikasi webhook dengan memeriksa header HTTP X-Signatures.

Header X-Signatures berisi daftar tanda tangan yang dipisahkan dengan titik koma. Setiap tanda tangan dalam daftar dibuat menggunakan salah satu API secret yang dikonfigurasi di akun Anda. Untuk memverifikasi webhook, buat hash SHA-256 menggunakan API key, secret, dan raw HTTP body Anda - kemudian bandingkan dengan tanda tangan dalam daftar.

Kecocokan mengonfirmasi bahwa permintaan tersebut autentik dan ditandatangani dengan secret yang Anda kontrol.

PHP Contoh Kode

$signaturesHeader = (getallheaders() ?? [])['X-Signatures'] ?? ''; // list of signatures
$key = getenv('AUTH_KEY'); // Your API Key
$secret = getenv('AUTH_SECRET'); // Your API Secret
$payload = file_get_contents('php://input'); // The HTTP body of the incoming POST request

// Generate the expected signature
$expectedSignature = hash('sha256', $key . $secret . $payload);

// Split the header into individual signatures
$providedSignatures = explode(';', $signaturesHeader);

// Check if any signature matches
$valid = false;
foreach ($providedSignatures as $sig) {
    if (hash_equals($expectedSignature, $sig)) {
        $valid = true;
        break;
    }
}

Permintaan valid jika salah satu tanda tangan yang diberikan di header sama dengan hash SHA256 yang dihitung dari gabungan string API key, secret, dan HTTP body Anda.

Mengonfirmasi Penerimaan

Server Anda diharapkan merespons dengan kode status HTTP 200 OK untuk mengonfirmasi penerimaan yang berhasil. Jika kode respons lain dikembalikan, terjadi timeout (10 detik), atau masalah pengiriman lainnya muncul, sistem akan secara otomatis mencoba ulang webhook setelah satu menit. Jika permintaan terus gagal, percobaan ulang akan mengikuti strategi exponential backoff, dengan upaya berikutnya setelah 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 menit.

Mekanisme percobaan ulang ini memastikan keandalan maksimal dalam mengirimkan hasil lookup ke infrastruktur Anda. Ini meminimalkan risiko kehilangan data akibat masalah jaringan sementara atau downtime server.

Payload Webhook

{
   "type":"HLR",
   "results":[
      {
         "id":"3b4ac4b6ed1b",
         "msisdn":"+905536939460",
         "connectivity_status":"CONNECTED",
         "mccmnc":"28603",
         "mcc":"286",
         "mnc":"03",
         "imsi":"28603XXXXXXXXXX",
         "msin":"XXXXXXXXXX",
         "msc":"XXXXXXXXXX",
         "original_network_name":"Turk Telekom (AVEA)",
         "original_country_name":"Turkey",
         "original_country_code":"TR",
         "original_country_prefix":"+90",
         "is_ported":false,
         "ported_network_name":null,
         "ported_country_name":null,
         "ported_country_code":null,
         "ported_country_prefix":null,
         "is_roaming":false,
         "roaming_network_name":null,
         "roaming_country_name":null,
         "roaming_country_code":null,
         "roaming_country_prefix":null,
         "cost":"0.0100",
         "timestamp":"2020-08-13 00:04:38.261+0300",
         "storage":"ASYNC-API-2020-08",
         "route":"IP1",
         "processing_status":"COMPLETED",
         "error_code":null,
         "error_description":null,
         "data_source":"LIVE_HLR",
         "routing_instruction":"STATIC:IP1"
      }
   ]
}

Atribut Payload Webhook

Objek JSON berisi atribut type => HLR bersama dengan atribut results yang mencakup daftar objek pencarian, seperti yang didokumentasikan di bawah ini.

Nama Tipe Deskripsi Dapat Bernilai Null
id string(12) Pengidentifikasi unik yang ditetapkan untuk permintaan lookup ini. false
msisdn string Nomor telepon seluler yang ditanyakan, diformat dalam format internasional (misalnya, +14156226819 atau 0014156226819). false
connectivity_status string Menunjukkan apakah status konektivitas nomor berhasil diambil. Nilai yang mungkin: CONNECTED , ABSENT , INVALID_MSISDN , atau UNDETERMINED . false
mccmnc string(5|6) Kode Mobile Country Code (MCC) dan Mobile Network Code (MNC) lima atau enam digit yang mengidentifikasi jaringan yang saat ini terkait dengan nomor telepon. true
mcc string(3) Kode Mobile Country Code (MCC) tiga digit yang mengidentifikasi negara tempat nomor telepon terdaftar. true
mnc string(2|3) Kode Mobile Network Code (MNC) dua atau tiga digit yang mengidentifikasi jaringan spesifik tempat nomor telepon terdaftar. true
imsi string International Mobile Subscriber Identity (IMSI), pengidentifikasi unik untuk kartu SIM yang terkait dengan nomor ini. Ketersediaan bergantung pada konfigurasi jaringan. true
msin string(10) Mobile Subscription Identification Number (MSIN) dalam database operator seluler. Ketersediaan bergantung pada konfigurasi jaringan. true
msc string(12) Mobile Switching Center (MSC) yang saat ini menangani komunikasi pelanggan ini. Ketersediaan bergantung pada konfigurasi jaringan. true
original_network_name string Nama operator jaringan asli (native) yang terkait dengan nomor ini. true
original_country_name string Nama lengkap negara tempat nomor telepon seluler awalnya terdaftar, disediakan dalam bahasa Inggris. true
original_country_code string(2) Kode negara ISO dua karakter yang mewakili negara tempat nomor telepon pertama kali ditetapkan. true
original_country_prefix string Kode panggil internasional (country calling code) yang sesuai dengan negara asal nomor telepon seluler. true
is_ported boolean Menunjukkan apakah nomor seluler telah dipindahkan dari jaringan aslinya ke operator yang berbeda. true
ported_network_name string Nama operator jaringan tempat nomor seluler telah dipindahkan, jika berlaku. true
ported_country_name string Nama negara tempat nomor seluler dipindahkan, jika berlaku. true
ported_country_code string(2) Kode negara ISO dua karakter yang mewakili negara tempat nomor seluler dipindahkan, jika berlaku. true
ported_country_prefix string Kode panggil internasional (country calling code) untuk negara tempat nomor seluler dipindahkan, jika berlaku. true
is_roaming boolean Menunjukkan apakah nomor seluler saat ini melakukan roaming di jaringan luar negeri. Ketersediaan status roaming bergantung pada operator jaringan seluler. true
roaming_network_name string Nama jaringan tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
roaming_country_name string Nama negara tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
roaming_country_code string(2) Kode negara ISO dua karakter dari negara tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
roaming_country_prefix string Kode panggil internasional (country calling code) dari negara tempat nomor seluler saat ini melakukan roaming, jika berlaku. true
cost string Nilai desimal yang direpresentasikan sebagai string, menunjukkan biaya lookup dalam EUR. true
timestamp string Timestamp berformat W3C termasuk zona waktu, yang menentukan kapan lookup diselesaikan. true
storage string Nama penyimpanan tempat hasil lookup disimpan. Ini sesuai dengan nama laporan dan unduhan CSV yang tersedia melalui antarmuka web. true
route string(3) Pengidentifikasi tiga karakter yang menunjukkan metode routing yang digunakan untuk permintaan lookup ini. true
processing_status string Hasil pemrosesan lookup. Nilai yang mungkin: COMPLETED (berhasil), REJECTED (jaringan tidak dapat dijangkau, tidak ada biaya yang dikenakan), atau FAILED (terjadi kesalahan selama pemrosesan). false
error_code integer Kode kesalahan internal opsional yang memberikan informasi diagnostik tambahan untuk dukungan pelanggan. true
error_description string Penjelasan singkat tentang kode kesalahan yang diberikan (jika ada) dalam teks biasa bahasa Inggris. true
data_source string Sumber data yang digunakan untuk permintaan ini. Nilai yang mungkin: LIVE_HLR (kueri HLR real-time) atau MNP_DB (database portabilitas nomor seluler statis). Lihat opsi routing untuk detail. false
routing_instruction string String yang dibatasi titik dua yang menjelaskan instruksi routing yang digunakan dalam permintaan. Komponen pertama adalah STATIC ketika Anda menentukan rute atau AUTO untuk routing otomatis; komponen kedua adalah pengidentifikasi rute, dan untuk permintaan routing otomatis komponen ketiga menunjukkan asal yang menjadi dasar keputusan routing (yaitu SCORE, CUSTOM_GLOBAL_COUNTRY, CUSTOM_GLOBAL_MCCMNC, CUSTOM_GLOBAL_PREFIX, CUSTOM_USER_COUNTRY, CUSTOM_USER_MCCMNC, CUSTOM_USER_PREFIX, MNP_FALLBACK, PLATFORM_DEFAULT, USER_DEFAULT). false
Status Deskripsi
CONNECTED Nomor valid dan perangkat tujuan saat ini terhubung ke jaringan seluler. Panggilan, SMS, dan layanan lainnya dapat menjangkau penerima dengan sukses.
ABSENT Nomor valid, tetapi perangkat tujuan sedang dimatikan atau sementara berada di luar jangkauan jaringan. Pesan atau panggilan mungkin tidak terkirim hingga perangkat terhubung kembali ke jaringan.
INVALID_MSISDN Nomor tidak valid atau saat ini tidak terdaftar pada pelanggan mana pun di jaringan seluler. Panggilan dan pesan ke nomor ini akan gagal.
UNDETERMINED Status konektivitas nomor tidak dapat ditentukan. Hal ini mungkin disebabkan oleh nomor yang tidak valid, respons error SS7, atau kurangnya konektivitas dengan operator jaringan tujuan. Periksa kode error dan deskripsinya untuk diagnostik tambahan.
Gulir ke Atas

POST/mnp-lookupdilindungi

Melakukan pencarian MNP secara sinkron dan menyediakan informasi portabilitas nomor seluler serta jaringan. Endpoint ini cocok jika tujuan utama Anda adalah mengekstrak MCCMNC terkini dari nomor telepon seluler tertentu dan menentukan jaringan asal dan jaringan saat ini secara real-time.

Untuk pemrosesan massal dataset besar yang tidak memerlukan hasil instan, pertimbangkan untuk menggunakan POST /mnp-lookups asinkron, yang dioptimalkan untuk pemrosesan batch berkecepatan tinggi.

Kueri MNP secara andal menentukan informasi portabilitas dan jaringan tetapi tidak menunjukkan apakah ponsel target saat ini terhubung ke jaringan dan dapat dijangkau. Untuk mengekstrak informasi konektivitas langsung, silakan gunakan endpoint POST /hlr-lookup.

Permintaan Respons Berhasil Respons Error
curl -X POST 'https://www.hlr-lookups.com/api/v2/mnp-lookup' \
          -d "@payload.json"

Payload

{
   "msisdn":"+14156226819",
   "route":null,
   "storage":null
}

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
msisdn string Nomor ponsel (MSISDN) yang akan dikueri, disediakan dalam format internasional (misalnya, +14156226819 atau 0014156226819). Kode negara harus disertakan. null wajib
route string(3) Pengenal tiga karakter opsional yang menentukan rute untuk lookup ini. Atur ke null atau abaikan parameter ini untuk menerapkan peta routing kustom Anda atau biarkan sistem kami secara otomatis menentukan rute terbaik untuk lookup ini. null opsional
storage string Pengenal penyimpanan opsional yang menentukan laporan tempat hasil akan disimpan untuk tinjauan manual, analitik, dan pelaporan. Sistem secara otomatis menambahkan timestamp dengan bulan saat ini. Jika diabaikan atau diatur ke null, sistem akan secara otomatis mengelompokkan hasil berdasarkan bulan untuk tujuan pelaporan. null opsional
{
   "id":"e428acb1c0ae",
   "msisdn":"+14156226819",
   "query_status":"OK",
   "mccmnc":"310260",
   "mcc":"310",
   "mnc":"260",
   "is_ported":true,
   "original_network_name":"Verizon Wireless:6006 - SVR/2",
   "original_country_name":"United States",
   "original_country_code":"US",
   "original_country_prefix":"+1415",
   "ported_network_name":"T-Mobile US:6529 - SVR/2",
   "ported_country_name":"United States",
   "ported_country_code":"US",
   "ported_country_prefix":"+1",
   "extra":"LRN:4154250000",
   "cost":"0.0050",
   "timestamp":"2020-08-05 21:21:33.490+0300",
   "storage":"WEB-CLIENT-SOLO-MNP-2020-08",
   "route":"PTX",
   "error_code":null
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
id string(12) Pengenal unik 12 karakter untuk pencarian ini. false
msisdn string Nomor telepon seluler yang dievaluasi dalam permintaan pencarian ini. false
query_status string Menunjukkan apakah pengambilan informasi portabilitas dan jaringan berhasil. Nilai yang mungkin adalah OK atau FAILED. false
mccmnc string(5|6) MCCMNC lima atau enam karakter (tupel kode negara seluler dan kode jaringan seluler) yang mengidentifikasi jaringan tempat nomor telepon seluler saat ini terdaftar. true
mcc string(3) MCC tiga karakter (kode negara seluler) yang mewakili negara yang terkait dengan jaringan saat ini dari nomor telepon seluler. true
mnc string(2|3) MNC dua atau tiga karakter (kode jaringan seluler) yang mengidentifikasi operator jaringan saat ini untuk nomor telepon seluler. true
is_ported boolean Menunjukkan apakah nomor telepon telah dipindahkan dari jaringan aslinya ke operator baru. true
original_network_name string String arbitrer (dalam bahasa Inggris) yang menentukan nama operator jaringan asal dari nomor telepon seluler yang diperiksa. true
original_country_name string String arbitrer (dalam bahasa Inggris) yang menunjukkan negara asal dari nomor telepon seluler yang diperiksa. true
original_country_code string(2) Kode negara ISO dua karakter yang mewakili negara asal dari nomor telepon seluler yang diperiksa. true
original_country_prefix string Kode panggil negara asal yang terkait dengan nomor telepon seluler yang diperiksa. true
ported_network_name string Menentukan operator jaringan tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
ported_country_name string Menentukan negara tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
ported_country_code string(2) Kode negara ISO dua karakter yang mewakili negara tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
ported_country_prefix string Kode panggil negara tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
extra string String arbitrer yang memberikan detail tambahan opsional tentang nomor telepon. true
cost string Nilai desimal, direpresentasikan sebagai string, yang menunjukkan biaya dalam EUR untuk pencarian ini. true
timestamp string Stempel waktu berformat W3C, termasuk informasi zona waktu, yang menunjukkan kapan pencarian selesai. true
storage string Nama penyimpanan (atau nama laporan) tempat hasil pencarian ditambahkan. Ini digunakan untuk unduhan CSV dan pelaporan melalui antarmuka web. true
route string(3) Pengenal tiga karakter yang menentukan rute yang digunakan untuk permintaan pencarian ini. true
error_code integer Kode kesalahan internal opsional yang memberikan konteks tambahan untuk diagnostik dukungan pelanggan. true
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

POST/mnp-lookupsdilindungi

Memulai batch pencarian MNP (mobile number portability) asinkron, mengambil MCCMNC saat ini dan menentukan jaringan asal dan jaringan saat ini secara real-time. Hasil dikirimkan melalui webhook ke server Anda. Metode ini dioptimalkan untuk memproses volume nomor yang besar yang tidak memerlukan respons langsung, seperti pembersihan dan verifikasi database. Untuk aplikasi real-time seperti perutean panggilan atau pengiriman SMS, pertimbangkan untuk menggunakan endpoint POST /mnp-lookup sebagai gantinya.

Kueri MNP secara andal menentukan informasi portabilitas dan jaringan tetapi tidak menunjukkan apakah ponsel target saat ini terhubung ke jaringan dan dapat dijangkau. Untuk mengekstrak informasi konektivitas langsung, silakan gunakan endpoint POST /hlr-lookups.

Sebelum menggunakan endpoint ini, pastikan URL webhook telah dikonfigurasi untuk menerima hasil pencarian secara asinkron. Anda dapat mengaturnya di pengaturan API Anda.

Permintaan Respons Berhasil Respons Error Webhook
curl -X POST 'https://www.hlr-lookups.com/api/v2/mnp-lookups' \
          -d "@payload.json"

Payload

{
   "msisdns":["+14156226819","+491788735000","+905536939460"],
   "route":null,
   "storage":null
}

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
msisdns array Array nomor ponsel (MSISDN) dalam format internasional (misalnya +14156226819 atau 0014156226819). Anda dapat menyertakan hingga 1000 nomor per permintaan. null wajib
route string(3) Pengenal tiga karakter opsional yang menentukan rute untuk pencarian ini. Atur ke null atau abaikan parameter ini untuk menerapkan peta routing kustom Anda atau biarkan sistem kami menentukan secara otomatis rute terbaik untuk permintaan ini. null opsional
storage string Pengenal penyimpanan opsional yang menentukan laporan tempat hasil akan disimpan untuk tinjauan manual, analitik, dan pelaporan. Sistem secara otomatis menambahkan timestamp dengan bulan saat ini. Jika diabaikan atau diatur ke null, sistem akan secara otomatis mengelompokkan hasil berdasarkan bulan untuk tujuan pelaporan. null opsional
{
   "accepted":[
      {
         "id":"0424928f332e",
         "msisdn":"+491788735000"
      }
   ],
   "accepted_count":1,
   "rejected":[
      {
         "id":null,
         "msisdn":"+31"
      }
   ],
   "rejected_count":1,
   "total_count":2,
   "cost":"0.01",
   "storage":"ASYNC-API-2020-08",
   "route":"IP1",
   "webhook_urls":[
      "https://your-server.com/endpoint"
   ]
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
accepted array Daftar objek yang berisi pengidentifikasi unik dan MSISDN yang telah diterima untuk diproses. false
accepted_count integer Jumlah total MSISDN yang berhasil diterima untuk diproses. false
rejected array Daftar objek yang berisi pengidentifikasi unik dan MSISDN yang ditolak untuk diproses, biasanya karena nomor tidak valid. Tidak ada biaya yang dikenakan untuk entri yang ditolak. false
rejected_count integer Jumlah total MSISDN yang ditolak karena kesalahan validasi. false
total_count integer Jumlah total MSISDN yang diterima dan ditolak yang diajukan untuk diproses. false
cost string Nilai desimal yang direpresentasikan sebagai string, menunjukkan total biaya dalam EUR untuk pencarian yang diterima. false
storage string Nama penyimpanan tempat hasil pencarian ditambahkan, digunakan untuk pelaporan dan unduhan CSV melalui antarmuka web. false
route string(3) Pengenal tiga karakter yang menentukan rute yang digunakan untuk permintaan pencarian ini. false
webhook_urls array URL webhook yang dikonfigurasi di pengaturan API Anda. Hasil dikirimkan kembali ke sini. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false

Memproses Webhook

Setelah dikirim, platform kami mulai memproses nomor telepon yang diberikan dan mengirimkan hasilnya ke URL webhook yang telah ditentukan sebelumnya di server Anda. Hasil dikirimkan sebagai permintaan HTTP POST dengan objek JSON di dalam body permintaan.

Autentikasi

Autentikasi webhook dengan memeriksa header HTTP X-Signatures.

Header X-Signatures berisi daftar tanda tangan yang dipisahkan dengan titik koma. Setiap tanda tangan dalam daftar dibuat menggunakan salah satu API secret yang dikonfigurasi di akun Anda. Untuk memverifikasi webhook, buat hash SHA-256 menggunakan API key, secret, dan raw HTTP body Anda - kemudian bandingkan dengan tanda tangan dalam daftar.

Kecocokan mengonfirmasi bahwa permintaan tersebut autentik dan ditandatangani dengan secret yang Anda kontrol.

PHP Contoh Kode

$signaturesHeader = (getallheaders() ?? [])['X-Signatures'] ?? ''; // list of signatures
$key = getenv('AUTH_KEY'); // Your API Key
$secret = getenv('AUTH_SECRET'); // Your API Secret
$payload = file_get_contents('php://input'); // The HTTP body of the incoming POST request

// Generate the expected signature
$expectedSignature = hash('sha256', $key . $secret . $payload);

// Split the header into individual signatures
$providedSignatures = explode(';', $signaturesHeader);

// Check if any signature matches
$valid = false;
foreach ($providedSignatures as $sig) {
    if (hash_equals($expectedSignature, $sig)) {
        $valid = true;
        break;
    }
}

Permintaan valid jika salah satu tanda tangan yang diberikan di header sama dengan hash SHA256 yang dihitung dari gabungan string API key, secret, dan HTTP body Anda.

Mengonfirmasi Penerimaan

Server Anda diharapkan merespons dengan kode status HTTP 200 OK untuk mengonfirmasi penerimaan yang berhasil. Jika kode respons lain dikembalikan, terjadi timeout (10 detik), atau masalah pengiriman lainnya muncul, sistem akan secara otomatis mencoba ulang webhook setelah satu menit. Jika permintaan terus gagal, percobaan ulang akan mengikuti strategi exponential backoff, dengan upaya berikutnya setelah 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 menit.

Mekanisme percobaan ulang ini memastikan keandalan maksimal dalam mengirimkan hasil lookup ke infrastruktur Anda. Ini meminimalkan risiko kehilangan data akibat masalah jaringan sementara atau downtime server.

Payload Webhook

{
    "type":"MNP",
    "results":[
        {
           "id":"e428acb1c0ae",
           "msisdn":"+14156226819",
           "query_status":"OK",
           "mccmnc":"310260",
           "mcc":"310",
           "mnc":"260",
           "is_ported":true,
           "original_network_name":"Verizon Wireless:6006 - SVR/2",
           "original_country_name":"United States",
           "original_country_code":"US",
           "original_country_prefix":"+1415",
           "ported_network_name":"T-Mobile US:6529 - SVR/2",
           "ported_country_name":"United States",
           "ported_country_code":"US",
           "ported_country_prefix":"+1",
           "extra":"LRN:4154250000",
           "cost":"0.0050",
           "timestamp":"2020-08-05 21:21:33.490+0300",
           "storage":"WEB-CLIENT-SOLO-MNP-2020-08",
           "route":"PTX",
           "error_code":null
        }
    ]
}

Atribut Payload Webhook

Objek JSON berisi atribut type => MNP bersama dengan atribut results yang mencakup daftar objek pencarian, seperti yang didokumentasikan di bawah ini.

Nama Tipe Deskripsi Dapat Bernilai Null
id string(12) Pengenal unik 12 karakter untuk pencarian ini. false
msisdn string Nomor telepon seluler yang dievaluasi dalam permintaan pencarian ini. false
query_status string Menunjukkan apakah pengambilan informasi portabilitas dan jaringan berhasil. Nilai yang mungkin adalah OK atau FAILED. false
mccmnc string(5|6) MCCMNC lima atau enam karakter (tupel kode negara seluler dan kode jaringan seluler) yang mengidentifikasi jaringan tempat nomor telepon seluler saat ini terdaftar. true
mcc string(3) MCC tiga karakter (kode negara seluler) yang mewakili negara yang terkait dengan jaringan saat ini dari nomor telepon seluler. true
mnc string(2|3) MNC dua atau tiga karakter (kode jaringan seluler) yang mengidentifikasi operator jaringan saat ini untuk nomor telepon seluler. true
is_ported boolean Menunjukkan apakah nomor telepon telah dipindahkan dari jaringan aslinya ke operator baru. true
original_network_name string String arbitrer (dalam bahasa Inggris) yang menentukan nama operator jaringan asal dari nomor telepon seluler yang diperiksa. true
original_country_name string String arbitrer (dalam bahasa Inggris) yang menunjukkan negara asal dari nomor telepon seluler yang diperiksa. true
original_country_code string(2) Kode negara ISO dua karakter yang mewakili negara asal dari nomor telepon seluler yang diperiksa. true
original_country_prefix string Kode panggil negara asal yang terkait dengan nomor telepon seluler yang diperiksa. true
ported_network_name string Menentukan operator jaringan tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
ported_country_name string Menentukan negara tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
ported_country_code string(2) Kode negara ISO dua karakter yang mewakili negara tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
ported_country_prefix string Kode panggil negara tempat nomor telepon seluler yang diperiksa telah dipindahkan, jika berlaku. true
extra string String arbitrer yang memberikan detail tambahan opsional tentang nomor telepon. true
cost string Nilai desimal, direpresentasikan sebagai string, yang menunjukkan biaya dalam EUR untuk pencarian ini. true
timestamp string Stempel waktu berformat W3C, termasuk informasi zona waktu, yang menunjukkan kapan pencarian selesai. true
storage string Nama penyimpanan (atau nama laporan) tempat hasil pencarian ditambahkan. Ini digunakan untuk unduhan CSV dan pelaporan melalui antarmuka web. true
route string(3) Pengenal tiga karakter yang menentukan rute yang digunakan untuk permintaan pencarian ini. true
error_code integer Kode kesalahan internal opsional yang memberikan konteks tambahan untuk diagnostik dukungan pelanggan. true
Gulir ke Atas

POST/nt-lookupdilindungi

Melakukan pencarian jenis nomor (NT) secara sinkron. Endpoint ini ideal jika tujuan utama Anda adalah menentukan apakah nomor telepon yang diberikan termasuk dalam rentang penomoran telepon tetap, seluler, tarif premium, VoIP, pager, atau lainnya secara real-time.

Kueri NT dapat mendeteksi jenis nomor telepon secara andal; namun, tidak menunjukkan apakah nomor tujuan saat ini terhubung ke jaringan dan dapat dijangkau. Untuk mendapatkan informasi konektivitas langsung, silakan gunakan endpoint POST /hlr-lookup.

Jika kasus penggunaan Anda memerlukan informasi jaringan dan portabilitas (MCCMNC) yang akurat tetapi tidak memerlukan status konektivitas langsung, silakan gunakan endpoint POST /mnp-lookup untuk kueri portabilitas nomor seluler.

Permintaan Respons Berhasil Respons Error Referensi Tipe
curl -X POST 'https://www.hlr-lookups.com/api/v2/nt-lookup' \
          -d "@payload.json"

Payload

{
   "number":"+14156226819",
   "route":null,
   "storage":null
}

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
number string Nomor telepon dalam format internasional (misalnya +4989702626 atau 004989702626). null mandatory
route string(3) Pengenal tiga karakter opsional yang menentukan rute untuk pencarian ini. Atur ke null atau abaikan parameter ini untuk menerapkan peta routing kustom Anda atau biarkan sistem kami menentukan secara otomatis rute terbaik untuk permintaan ini. null opsional
storage string Pengenal penyimpanan opsional yang menentukan laporan tempat hasil akan disimpan untuk tinjauan manual, analitik, dan pelaporan. Sistem secara otomatis menambahkan timestamp dengan bulan saat ini. Jika diabaikan atau diatur ke null, sistem akan secara otomatis mengelompokkan hasil berdasarkan bulan untuk tujuan pelaporan. null opsional
{
     "id":"2ed0788379c6",
     "number":"+4989702626",
     "number_type":"LANDLINE",
     "query_status":"OK",
     "is_valid":true,
     "invalid_reason":null,
     "is_possibly_ported":false,
     "is_vanity_number":false,
     "qualifies_for_hlr_lookup":false,
     "mccmnc":null,
     "mcc":null,
     "mnc":null,
     "original_network_name":null,
     "original_country_name":"Germany",
     "original_country_code":"DE",
     "regions":[
        "Munich"
     ],
     "timezones":[
        "Europe/Berlin"
     ],
     "info_text":"This is a landline number.",
     "cost":"0.0050",
     "timestamp":"2015-12-04 10:36:41.866283+00",
     "storage":"SYNC-API-NT-2015-12",
     "route":"LC1"
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
id string(12) Pengidentifikasi unik yang ditetapkan untuk permintaan lookup ini. false
number string Nomor telepon yang dievaluasi selama permintaan lookup ini. false
number_type string Jenis nomor yang terdeteksi. Nilai yang mungkin meliputi: LANDLINE , MOBILE , MOBILE_OR_LANDLINE , TOLL_FREE , PREMIUM_RATE , SHARED_COST , VOIP , PAGER , UAN , VOICEMAIL , UNKNOWN . false
query_status string Menunjukkan apakah informasi jenis nomor berhasil diperoleh. Mengembalikan OK jika berhasil, atau FAILED jika lookup gagal. false
is_valid boolean Menunjukkan apakah nomor telepon valid secara sintaksis. true
invalid_reason string Pesan teks dalam bahasa Inggris yang menjelaskan mengapa nomor telepon dianggap tidak valid (misalnya "too short" atau "invalid prefix"), atau null jika nomor valid. true
is_possibly_ported boolean Menunjukkan apakah nomor telepon mungkin telah dipindahkan dari operator aslinya ke operator lain. Untuk informasi portabilitas yang pasti, gunakan lookup MNP. true
is_vanity_number boolean Menunjukkan apakah nomor telepon adalah nomor vanity, yang berarti mengandung karakter alfabet. true
qualifies_for_hlr_lookup boolean Menunjukkan apakah nomor telepon memenuhi syarat untuk query tambahan melalui lookup HLR. true
mccmnc string(5|6) String lima atau enam karakter yang mewakili tupel MCCMNC (mobile country code dan mobile network code) yang mengidentifikasi jaringan asli dari nomor telepon seluler. true
mcc string(3) String tiga karakter yang mewakili MCC (mobile country code) yang mengidentifikasi negara yang terkait dengan jaringan seluler asli dari nomor telepon. true
mnc string(2|3) String dua atau tiga karakter yang mewakili MNC (mobile network code) yang mengidentifikasi operator jaringan seluler asli dari nomor telepon. true
original_network_name string String teks dalam bahasa Inggris yang menentukan nama operator jaringan asli dari nomor telepon seluler yang diperiksa. true
original_country_name string String teks dalam bahasa Inggris yang menentukan negara asli yang terkait dengan nomor telepon seluler yang diperiksa. true
original_country_code string(2) Kode negara ISO dua karakter yang menunjukkan negara asli dari nomor telepon seluler yang diperiksa. true
regions array Daftar string dalam bahasa Inggris yang mudah dibaca yang menentukan wilayah geografis yang terkait dengan nomor telepon ini. true
timezones array Daftar zona waktu (dalam format Olson) yang terkait dengan nomor telepon ini. true
info_text string String yang dapat berisi informasi tambahan tentang nomor telepon. true
cost string Nilai desimal yang direpresentasikan sebagai string, menunjukkan biaya (dalam EUR) dari lookup ini. true
timestamp string Timestamp berformat W3C (termasuk zona waktu) yang menunjukkan kapan lookup selesai. true
storage string Menentukan nama penyimpanan di mana hasil lookup telah ditambahkan. Ini sesuai dengan nama laporan yang digunakan untuk unduhan CSV dan analitik melalui antarmuka web. true
route string(3) Pengenal tiga karakter yang menentukan rute yang digunakan untuk permintaan pencarian ini. true
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Tipe Deskripsi
LANDLINE Nomor telepon rumah.
MOBILE Nomor telepon seluler. Memenuhi syarat untuk pencarian HLR guna memperoleh informasi tambahan tentang status koneksi, jaringan, portabilitas, dan roaming.
MOBILE_OR_LANDLINE Nomor telepon rumah atau seluler. Mungkin memenuhi syarat untuk pencarian HLR.
TOLL_FREE Nomor telepon bebas pulsa.
PREMIUM_RATE Nomor telepon tarif premium dengan biaya tambahan.
SHARED_COST Nomor telepon berbagi biaya. Umumnya lebih murah daripada nomor telepon tarif premium.
VOIP Nomor telepon Voice over IP. Termasuk nomor telepon TSoIP (Telephony Service over IP).
PAGER Nomor telepon pager. Umumnya tidak memiliki fungsi suara.
UAN Nomor Akses Universal (Nomor Perusahaan). Dapat diarahkan ke kantor tertentu namun memungkinkan satu nomor digunakan untuk seluruh perusahaan.
VOICEMAIL Nomor telepon pesan suara.
UNKNOWN Jenis nomor tidak dapat ditentukan.
Gulir ke Atas

POST/nt-lookups dilindungi

Endpoint ini memulai serangkaian pencarian tipe nomor asinkron dengan hasil yang dikirim kembali ke server Anda melalui webhook. Cocok jika tujuan utama Anda adalah menentukan apakah nomor telepon tertentu termasuk dalam rentang landline, mobile, premium rate, VoIP, pager, atau rentang numbering plan lainnya. Dioptimalkan untuk pemrosesan cepat volume besar nomor, endpoint ini ideal untuk operasi massal (misalnya sanitasi database). Untuk lalu lintas langsung dan kasus penggunaan yang sensitif waktu, silakan gunakan endpoint POST /nt-lookup sebagai gantinya.

Anda perlu menentukan URL webhook di pengaturan API Anda sebagai prasyarat untuk memanggil endpoint ini.

Permintaan Respons Berhasil Respons Error Webhook Referensi Tipe
curl -X POST 'https://www.hlr-lookups.com/api/v2/nt-lookups' \
          -d "@payload.json"

Payload

{
   "numbers":["+14156226819","+4989702626"],
   "route":null,
   "storage":null
}

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
numbers array Array nomor telepon dalam format internasional (misalnya +14156226819 atau 004989702626). Maksimal 1000 nomor dapat disertakan per permintaan. null wajib
route string(3) Pengenal tiga karakter opsional yang menentukan rute untuk pencarian ini. Atur ke null atau hilangkan parameter ini untuk menerapkan peta routing kustom Anda atau biarkan sistem kami menentukan secara otomatis rute terbaik untuk permintaan ini. null opsional
storage string Pengenal penyimpanan opsional yang menentukan laporan tempat hasil akan disimpan untuk tinjauan manual, analitik, dan pelaporan. Sistem secara otomatis menambahkan timestamp dengan bulan saat ini. Jika diabaikan atau diatur ke null, sistem akan secara otomatis mengelompokkan hasil berdasarkan bulan untuk tujuan pelaporan. null opsional
{
   "accepted":[
      {
         "id":"9f8a52cfa7d2",
         "number":"+905536939460"
      }
   ],
   "accepted_count":1,
   "rejected":[
      {
         "id":null,
         "number":"+31"
      }
   ],
   "rejected_count":2,
   "total_count":3,
   "cost":0.005,
   "storage":"ASYNC-API-NT-2020-08",
   "route":"LC1",
   "webhook_urls":[
      "https://your-server.com/endpoint"
   ]
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
accepted array Array objek, masing-masing berisi pengenal unik dan nomor telepon yang telah diterima untuk diproses. false
accepted_count integer Total jumlah nomor telepon yang diterima untuk diproses. false
rejected array Array objek, masing-masing berisi pengenal unik dan nomor telepon yang ditolak untuk diproses. Umumnya, nomor-nomor ini tidak valid, dan tidak ada biaya yang dikenakan. false
rejected_count integer Total jumlah nomor telepon yang ditolak untuk diproses. false
total_count integer Total jumlah nomor telepon yang diterima dan ditolak yang diajukan untuk diproses. false
cost string String yang mewakili nilai desimal yang menunjukkan biaya dalam EUR untuk pencarian ini. false
storage string Nama penyimpanan (laporan) tempat hasil pencarian telah ditambahkan. Nama ini digunakan untuk unduhan CSV dan analitik melalui antarmuka web. false
route string(3) Pengenal tiga karakter yang menentukan rute yang digunakan untuk permintaan pencarian ini. false
webhook_urls array URL webhook yang dikonfigurasi di pengaturan API Anda. Hasil dikirimkan kembali ke sini. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false

Memproses Webhook

Setelah dikirim, platform kami mulai memproses nomor telepon yang diberikan dan mengirimkan hasilnya ke URL webhook yang telah ditentukan sebelumnya di server Anda. Hasil dikirimkan sebagai permintaan HTTP POST dengan objek JSON di dalam body permintaan.

Autentikasi

Autentikasi webhook dengan memeriksa header HTTP X-Signatures.

Header X-Signatures berisi daftar tanda tangan yang dipisahkan dengan titik koma. Setiap tanda tangan dalam daftar dibuat menggunakan salah satu API secret yang dikonfigurasi di akun Anda. Untuk memverifikasi webhook, buat hash SHA-256 menggunakan API key, secret, dan raw HTTP body Anda - kemudian bandingkan dengan tanda tangan dalam daftar.

Kecocokan mengonfirmasi bahwa permintaan tersebut autentik dan ditandatangani dengan secret yang Anda kontrol.

PHP Contoh Kode

$signaturesHeader = (getallheaders() ?? [])['X-Signatures'] ?? ''; // list of signatures
$key = getenv('AUTH_KEY'); // Your API Key
$secret = getenv('AUTH_SECRET'); // Your API Secret
$payload = file_get_contents('php://input'); // The HTTP body of the incoming POST request

// Generate the expected signature
$expectedSignature = hash('sha256', $key . $secret . $payload);

// Split the header into individual signatures
$providedSignatures = explode(';', $signaturesHeader);

// Check if any signature matches
$valid = false;
foreach ($providedSignatures as $sig) {
    if (hash_equals($expectedSignature, $sig)) {
        $valid = true;
        break;
    }
}

Permintaan valid jika salah satu tanda tangan yang diberikan di header sama dengan hash SHA256 yang dihitung dari gabungan string API key, secret, dan HTTP body Anda.

Mengonfirmasi Penerimaan

Server Anda diharapkan merespons dengan kode status HTTP 200 OK untuk mengonfirmasi penerimaan yang berhasil. Jika kode respons lain dikembalikan, terjadi timeout (10 detik), atau masalah pengiriman lainnya muncul, sistem akan secara otomatis mencoba ulang webhook setelah satu menit. Jika permintaan terus gagal, percobaan ulang akan mengikuti strategi exponential backoff, dengan upaya berikutnya setelah 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 menit.

Mekanisme percobaan ulang ini memastikan keandalan maksimal dalam mengirimkan hasil lookup ke infrastruktur Anda. Ini meminimalkan risiko kehilangan data akibat masalah jaringan sementara atau downtime server.

Payload Webhook

{
   "type":"NT",
   "results":[
      {
         "id":"9f8a52cfa7d2",
         "number":"+905536939460",
         "numbertype":"MOBILE",
         "state":"COMPLETED",
         "isvalid":"Yes",
         "invalidreason":null,
         "ispossiblyported":"Yes",
         "isvanitynumber":"No",
         "qualifiesforhlrlookup":"Yes",
         "originalcarrier":"Turk Telekom (AVEA)",
         "mccmnc":"28603",
         "mcc":"286",
         "mnc":"03",
         "countrycode":"TR",
         "regions":[
            "Turkey"
         ],
         "timezones":[
            "Europe\/Istanbul"
         ],
         "infotext":"This number qualifies for HLR lookups. Determine if this subscriber number is connected, absent or invalid by running an HLR lookup. This is a mobile number and might be in roaming state. Run an HLR lookup to obtain roaming information (if available). This number is possibly ported and the carrier information might be inaccurate. To obtain portability information run an HLR lookup.",
         "usercharge":"0.0050",
         "inserttime":"2020-08-13 01:57:15.897+0300",
         "storage":"ASYNC-API-NT-2020-08",
         "route":"LC1",
         "interface":"Async API"
      }
   ]
}

Atribut Payload Webhook

Objek JSON berisi atribut type => NT bersama dengan atribut results yang mencakup daftar objek pencarian, seperti yang didokumentasikan di bawah ini.

Nama Tipe Deskripsi Dapat Bernilai Null
id string(12) Pengidentifikasi unik yang ditetapkan untuk permintaan lookup ini. false
number string Nomor telepon yang dievaluasi selama permintaan lookup ini. false
number_type string Jenis nomor yang terdeteksi. Nilai yang mungkin meliputi: LANDLINE , MOBILE , MOBILE_OR_LANDLINE , TOLL_FREE , PREMIUM_RATE , SHARED_COST , VOIP , PAGER , UAN , VOICEMAIL , UNKNOWN . false
query_status string Menunjukkan apakah informasi jenis nomor berhasil diperoleh. Mengembalikan OK jika berhasil, atau FAILED jika lookup gagal. false
is_valid boolean Menunjukkan apakah nomor telepon valid secara sintaksis. true
invalid_reason string Pesan teks dalam bahasa Inggris yang menjelaskan mengapa nomor telepon dianggap tidak valid (misalnya "too short" atau "invalid prefix"), atau null jika nomor valid. true
is_possibly_ported boolean Menunjukkan apakah nomor telepon mungkin telah dipindahkan dari operator aslinya ke operator lain. Untuk informasi portabilitas yang pasti, gunakan lookup MNP. true
is_vanity_number boolean Menunjukkan apakah nomor telepon adalah nomor vanity, yang berarti mengandung karakter alfabet. true
qualifies_for_hlr_lookup boolean Menunjukkan apakah nomor telepon memenuhi syarat untuk query tambahan melalui lookup HLR. true
mccmnc string(5|6) String lima atau enam karakter yang mewakili tupel MCCMNC (mobile country code dan mobile network code) yang mengidentifikasi jaringan asli dari nomor telepon seluler. true
mcc string(3) String tiga karakter yang mewakili MCC (mobile country code) yang mengidentifikasi negara yang terkait dengan jaringan seluler asli dari nomor telepon. true
mnc string(2|3) String dua atau tiga karakter yang mewakili MNC (mobile network code) yang mengidentifikasi operator jaringan seluler asli dari nomor telepon. true
original_network_name string String teks dalam bahasa Inggris yang menentukan nama operator jaringan asli dari nomor telepon seluler yang diperiksa. true
original_country_name string String teks dalam bahasa Inggris yang menentukan negara asli yang terkait dengan nomor telepon seluler yang diperiksa. true
original_country_code string(2) Kode negara ISO dua karakter yang menunjukkan negara asli dari nomor telepon seluler yang diperiksa. true
regions array Daftar string dalam bahasa Inggris yang mudah dibaca yang menentukan wilayah geografis yang terkait dengan nomor telepon ini. true
timezones array Daftar zona waktu (dalam format Olson) yang terkait dengan nomor telepon ini. true
info_text string String yang dapat berisi informasi tambahan tentang nomor telepon. true
cost string Nilai desimal yang direpresentasikan sebagai string, menunjukkan biaya (dalam EUR) dari lookup ini. true
timestamp string Timestamp berformat W3C (termasuk zona waktu) yang menunjukkan kapan lookup selesai. true
storage string Menentukan nama penyimpanan di mana hasil lookup telah ditambahkan. Ini sesuai dengan nama laporan yang digunakan untuk unduhan CSV dan analitik melalui antarmuka web. true
route string(3) Pengenal tiga karakter yang menentukan rute yang digunakan untuk permintaan pencarian ini. true
Tipe Deskripsi
LANDLINE Nomor telepon rumah.
MOBILE Nomor telepon seluler. Memenuhi syarat untuk pencarian HLR guna memperoleh informasi tambahan tentang status koneksi, jaringan, portabilitas, dan roaming.
MOBILE_OR_LANDLINE Nomor telepon rumah atau seluler. Mungkin memenuhi syarat untuk pencarian HLR.
TOLL_FREE Nomor telepon bebas pulsa.
PREMIUM_RATE Nomor telepon tarif premium dengan biaya tambahan.
SHARED_COST Nomor telepon berbagi biaya. Umumnya lebih murah daripada nomor telepon tarif premium.
VOIP Nomor telepon Voice over IP. Termasuk nomor telepon TSoIP (Telephony Service over IP).
PAGER Nomor telepon pager. Umumnya tidak memiliki fungsi suara.
UAN Nomor Akses Universal (Nomor Perusahaan). Dapat diarahkan ke kantor tertentu namun memungkinkan satu nomor digunakan untuk seluruh perusahaan.
VOICEMAIL Nomor telepon pesan suara.
UNKNOWN Jenis nomor tidak dapat ditentukan.
Gulir ke Atas

GET/routedilindungi

Mengambil rute yang akan dipilih secara otomatis saat Anda menjalankan pencarian HLR tanpa menentukan parameter route.

Pemilihan rute otomatis didasarkan pada peta routing yang dapat diambil dengan endpoint GET /hlr-coverage, yang terutama berasal dari GET /routing-map. Anda dapat menyesuaikan peta routing dan menentukan aturan khusus di pengaturan akun Anda.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/route?msisdn=+491788735000'

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
msisdn string MSISDN untuk mengambil informasi routing yang dipilih secara otomatis. null wajib
{
   "route":"V11",
   "confidence_level":"HIGH",
   "mccmnc":"26203",
   "origin":"SCORE"
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
route string Rute yang direkomendasikan. false
confidence_level string Tingkat kepercayaan pemilihan rute ini, yaitu LOW, NORMAL, HIGH, MNP_FALLBACK. false
mccmnc string MCCMNC berdasarkan numbering plan untuk nomor ini. false
origin string Sumber yang menjadi dasar keputusan routing, yaitu SCORE, CUSTOM_GLOBAL_COUNTRY, CUSTOM_GLOBAL_MCCMNC, CUSTOM_GLOBAL_PREFIX, CUSTOM_USER_COUNTRY, CUSTOM_USER_MCCMNC, CUSTOM_USER_PREFIX, MNP_FALLBACK, PLATFORM_DEFAULT, USER_DEFAULT false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/routesdilindungi

Endpoint ini mengembalikan daftar rute HLR, MNP, dan NT yang tersedia. Setiap rute, beserta fitur dan batasannya, dijelaskan pada halaman detail routing.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/routes'
{
   "routes":{
      "HLR":[
         "V11",
         "E10",
         "MS9",
         "DV8",
         "SV3",
         "IP1"
      ],
      "MNP":[
         "PTX",
         "IP4"
      ],
      "NT":[
         "LC1"
      ]
   }
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
routes object Objek dengan rute yang dikelompokkan berdasarkan jenis rute. false
HLR|MNP|NT string[] Berisi daftar identifikasi rute. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/routing-mapdilindungi

Mengambil konfigurasi routing otomatis yang saat ini diterapkan pada HLR Lookup untuk akun Anda. Konfigurasi default ini digunakan setiap kali Anda mengirimkan HLR lookup tanpa menentukan parameter route. Anda dapat menyesuaikan peta routing dan membuat aturan khusus di pengaturan akun Anda.

Hierarki konfigurasi mengalir dari aturan tingkat negara ke aturan tingkat MCCMNC, dan akhirnya ke pemetaan prefix nomor telepon individual. Dalam praktiknya, ini berarti bahwa pemetaan prefix nomor telepon individual memiliki prioritas lebih tinggi daripada penetapan MCCMNC yang bertentangan, yang pada gilirannya mengesampingkan aturan tingkat negara. Harap dicatat bahwa fallback MNP mengesampingkan aturan khusus yang bertentangan saat diaktifkan.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/routing-map'
{
   "routing":{
      "map":{
         "defaultRoute":"V11",
         "mnpFallback":true,
         "mccmncs":[
            {
               "mccmnc":20201,
               "countrycode":"GR",
               "route":"E10",
               "mno":"Cosmote",
               "confidence":"HIGH",
               "origin":"SCORE"
            }
         ],
         "prefixes":[
            {
               "countrycode":"DE",
               "cns":"+4917821",
               "route":"DV8",
               "mccmnc":"26203",
               "mno":"O2"
            }
         ],
         "countries":[
            {
               "countrycode":"US",
               "route":"DV8"
            }
         ]
      }
   }
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
default_route string Route default yang digunakan ketika tidak ada opsi routing yang dipilih dapat ditentukan untuk MSISDN dan tidak ada aturan routing khusus yang berlaku. false
mnp_fallback boolean Menunjukkan apakah fallback MNP diaktifkan. Ketika diaktifkan dan query HLR tidak didukung oleh jaringan (status konektivitas tidak tersedia), sistem akan melakukan lookup MNP sebagai gantinya. false
mccmncs array Pemetaan kode MCCMNC ke route yang dipilih secara otomatis. Ketika melakukan HLR lookup untuk nomor dalam MCCMNC tertentu, route yang sesuai akan digunakan. false
mccmnc string(5|6) MCCMNC lima atau enam karakter (kombinasi mobile country code dan mobile network code) yang mengidentifikasi operator jaringan seluler. false
countrycode string(2) Kode negara ISO dua karakter, yang mengidentifikasi negara jaringan. false
route string(3) Route yang dipilih untuk jaringan. false
mno string Merek yang digunakan jaringan ini dalam beroperasi untuk konsumen. false
confidence string Tingkat keyakinan dalam pemilihan yang dilakukan. Nilai yang mungkin adalah: HIGH, NORMAL, LOW, MNP_REDIRECT. Dalam kasus terakhir, sistem mengalihkan traffic ke jaringan ini ke MNP, jika perilaku ini diaktifkan di akun Anda. Jika tidak, sistem menggunakan route default di akun. false
origin string Asal yang menjadi dasar pemilihan. Nilai yang mungkin adalah: SCORE, CUSTOM_GLOBAL_COUNTRY, CUSTOM_GLOBAL_MCCMNC, CUSTOM_GLOBAL_PREFIX, CUSTOM_USER_COUNTRY, CUSTOM_USER_MCCMNC, CUSTOM_USER_PREFIX, MNP_FALLBACK, PLATFORM_DEFAULT, USER_DEFAULT false
prefixes array Daftar aturan routing berbasis prefix khusus yang dikonfigurasi di akun Anda, jika ada. false
countrycode string(2) Kode negara ISO dua karakter, yang mengidentifikasi negara prefix. false
cns string Prefix yang berlaku untuk aturan routing. false
route string(3) Route yang dipilih untuk prefix. false
mccmnc string(5|6) MCCMNC lima atau enam karakter (kombinasi mobile country code dan mobile network code) yang mengidentifikasi operator jaringan seluler. true
mno string Merek yang digunakan jaringan ini dalam beroperasi untuk konsumen. true
countries array Daftar aturan berbasis negara khusus yang dikonfigurasi di akun Anda, jika ada. false
countrycode string(2) Kode negara ISO dua karakter, yang mengidentifikasi negara. false
route string(3) Route yang dipilih untuk negara. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/hlr-coverage dilindungi

Mengembalikan wawasan cakupan HLR untuk mendukung pengambilan keputusan berbasis data. Endpoint ini membantu Anda menganalisis opsi routing HLR real-time di seluruh jaringan seluler, mengidentifikasi jalur paling efektif untuk wilayah target Anda, dan mengonfigurasi routing otomatis Anda.

Rute yang direkomendasikan dari GET /route didasarkan pada data cakupan yang diambil di sini. Data cakupan juga tersedia di halaman cakupan jaringan. Anda dapat menyesuaikan peta routing dan menentukan aturan di pengaturan akun Anda.

Kami merekomendasikan untuk membiasakan diri dengan panduan ini untuk membantu menginterpretasikan hasil.

Permintaan Respons Berhasil Respons Error Referensi Status
curl 'https://www.hlr-lookups.com/api/v2/hlr-coverage?countrycode=XX'

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
countrycode string(2) Kode negara ISO dua huruf yang wajib digunakan untuk memfilter hasil, hanya mengembalikan catatan yang terkait dengan negara yang ditentukan. null wajib
sample_size string Parameter opsional yang menentukan ukuran sampel. Nilai yang memungkinkan adalah LARGE, MEDIUM, SMALL. Sampel yang lebih besar mencakup jangka waktu lebih panjang, sampel yang lebih kecil mencakup jangka waktu yang sangat terkini. LARGE opsional
{
   "name":"Germany",
   "countrycode":"DE",
   "prefix":"+49",
   "mccs":[
      "262"
   ],
   "carriers":[
      {
         "mno":"Telekom",
         "mccmnc":"26201",
         "mcc":"262",
         "mnc":"01 ",
         "routes":[
            {
               "route":"V11",
               "selected":true,
               "selection_confidence":"HIGH",
               "n":361579,
               "CONNECTED":275273,
               "CONNECTED_PCT":76.13,
               "ABSENT":21529,
               "ABSENT_PCT":5.95,
               "INVALID_MSISDN":62582,
               "INVALID_MSISDN_PCT":17.3,
               "UNDETERMINED":2195,
               "UNDETERMINED_PCT":0.6
            },
            {
               "route":"E10",
               "selected":false,
               "selection_confidence":null,
               "n":122600,
               "CONNECTED":13721,
               "CONNECTED_PCT":11.19,
               "ABSENT":133,
               "ABSENT_PCT":0.1,
               "INVALID_MSISDN":55,
               "INVALID_MSISDN_PCT":0.04,
               "UNDETERMINED":108691,
               "UNDETERMINED_PCT":88.65
            }
         ]
      }
   ]
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
name string Nama negara yang dipilih dalam teks bahasa Inggris. false
countrycode string(2) Kode negara ISO dua karakter dari negara yang dipilih. false
prefix string Prefiks panggilan internasional dari negara yang dipilih. false
mccs string[] Daftar MCC (mobile country code) yang terkait dengan negara yang dipilih. false
carriers object[] Daftar objek operator dengan metrik konektivitas spesifik rute. false
mno string Nama operator jaringan seluler dalam teks bahasa Inggris. false
mccmnc string MCCMNC operator jaringan seluler. false
mcc string MCC (mobile country code) operator jaringan seluler. false
mnc string MNC (mobile network code) operator jaringan seluler. false
routes object[] Daftar hasil konektivitas spesifik rute. false
route string Rute yang berlaku untuk informasi konektivitas. false
selected bool Menunjukkan apakah ini adalah rute yang dipilih untuk routing otomatis. false
selection_confidence string Tingkat kepercayaan pemilihan rute ini, yaitu LOW, NORMAL, HIGH, MNP_FALLBACK. Berisi null jika ini bukan rute yang dipilih. true
n int Jumlah total lookup dalam sampel ini. false
CONNECTED int Jumlah lookup HLR yang mengembalikan status CONNECTED. false
CONNECTED_PCT float Persentase lookup HLR yang mengembalikan status CONNECTED. false
ABSENT int Jumlah lookup HLR yang mengembalikan status ABSENT. false
ABSENT_PCT float Persentase lookup HLR yang mengembalikan status ABSENT. false
INVALID_MSISDN int Jumlah lookup HLR yang mengembalikan status INVALID_MSISDN. false
INVALID_MSISDN_PCT float Persentase lookup HLR yang mengembalikan status INVALID_MSISDN. false
UNDETERMINED int Jumlah lookup HLR yang mengembalikan status UNDETERMINED. false
UNDETERMINED_PCT float Persentase lookup HLR yang mengembalikan status UNDETERMINED. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Status Deskripsi
CONNECTED Nomor valid dan perangkat tujuan saat ini terhubung ke jaringan seluler. Panggilan, SMS, dan layanan lainnya dapat menjangkau penerima dengan sukses.
ABSENT Nomor valid, tetapi perangkat tujuan sedang dimatikan atau sementara berada di luar jangkauan jaringan. Pesan atau panggilan mungkin tidak terkirim hingga perangkat terhubung kembali ke jaringan.
INVALID_MSISDN Nomor tidak valid atau saat ini tidak terdaftar pada pelanggan mana pun di jaringan seluler. Panggilan dan pesan ke nomor ini akan gagal.
UNDETERMINED Status konektivitas nomor tidak dapat ditentukan. Hal ini mungkin disebabkan oleh nomor yang tidak valid, respons error SS7, atau kurangnya konektivitas dengan operator jaringan tujuan. Periksa kode error dan deskripsinya untuk diagnostik tambahan.
Gulir ke Atas

GET/mnp-coveragedilindungi

Endpoint ini mengembalikan daftar operator jaringan seluler beserta identifikasi MCCMNC yang saat ini didukung untuk pencarian portabilitas nomor seluler.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/mnp-coverage?countrycode=XX'

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
countrycode string(2) Kode negara ISO dua huruf opsional yang digunakan untuk memfilter hasil MCCMNC, mengembalikan hanya data yang relevan dengan negara yang ditentukan. null opsional
{
   "items":[
      {
         "country_name":"Germany",
         "country_code":"DE",
         "mccmnc":"26201",
         "mcc":"262",
         "mnc":"01 ",
         "brand":"Telekom",
         "operator":"Telekom Deutschland GmbH"
      },
      {
         "country_name":"Germany",
         "country_code":"DE",
         "mccmnc":"26202",
         "mcc":"262",
         "mnc":"02 ",
         "brand":"Vodafone",
         "operator":"Vodafone D2 GmbH"
      }
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
items[] array Daftar operator jaringan seluler. false
country_name string Nama negara dalam bahasa Inggris. false
country_code string(2) Kode negara ISO dua huruf. false
mccmnc string(5|6) MCCMNC lima atau enam karakter (kombinasi mobile country code dan mobile network code) yang mengidentifikasi operator jaringan seluler. false
mcc string(3) MCC tiga karakter (mobile country code) yang mewakili negara dari jaringan tersebut. false
mnc string(2|3) MNC dua atau tiga karakter (mobile network code) yang mewakili operator jaringan seluler tertentu. false
brand string Merek yang digunakan jaringan ini dalam beroperasi untuk konsumen. true
operator string Nama legal operator jaringan seluler. true
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/price-listdilindungi

Endpoint ini mengembalikan daftar negara di mana hanya pencarian MNP yang didukung, dan kueri HLR tidak tersedia untuk tujuan ini.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/mnp-countries'
{
   "countries":[
      "AG",
      "AI",
      "AR",
      "AS",
      "AW",
      "BB",
      "BM",
      ...
      "US",
      "UY",
      "VC",
      "VE",
      "VG",
      "VN"
   ]
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
countries string[] Daftar kode negara ISO dua karakter. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/mccmncsdilindungi

Endpoint ini mengembalikan daftar lengkap operator jaringan seluler beserta identifikasi MCCMNC dan informasi kontekstual tambahan.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/mccmncs?countrycode=XX'

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
countrycode string(2) Kode negara ISO dua huruf opsional yang digunakan untuk memfilter hasil MCCMNC, hanya mengembalikan data yang terkait dengan negara yang ditentukan. null opsional
{
   "items":[
      {
         "country_name":"Germany",
         "country_code":"DE",
         "mccmnc":"26201",
         "mcc":"262",
         "mnc":"01 ",
         "brand":"Telekom",
         "operator":"Telekom Deutschland GmbH"
      },
      {
         "country_name":"Germany",
         "country_code":"DE",
         "mccmnc":"26202",
         "mcc":"262",
         "mnc":"02 ",
         "brand":"Vodafone",
         "operator":"Vodafone D2 GmbH"
      }
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
items object[] Daftar operator jaringan seluler. false
country_name string Nama lengkap negara dalam bahasa Inggris. false
country_code string(2) Kode negara ISO dua huruf yang mewakili negara operator seluler. false
mccmnc string(5|6) String lima atau enam karakter yang mewakili MCCMNC, yang secara unik mengidentifikasi operator jaringan seluler. false
mcc string(3) Mobile Country Code (MCC) tiga karakter yang mengidentifikasi negara tempat jaringan seluler beroperasi. false
mnc string(2|3) Mobile Network Code (MNC) dua atau tiga karakter yang menentukan jaringan seluler dalam MCC yang diberikan. false
brand string Nama merek komersial di mana jaringan beroperasi dan dikenal oleh konsumen. true
operator string Nama resmi operator jaringan seluler, biasanya entitas hukum yang mengelola jaringan. true
parent_mccmnc string(5|6) String lima atau enam karakter yang mewakili MCCMNC dari operator jaringan seluler induk, jika ada. true
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/pricedilindungi

Endpoint ini mengembalikan harga untuk pencarian HLR, MNP, atau NT.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/price?msisdn=+491788735000&route_type=HLR'

Parameter Permintaan

Kunci Tipe Deskripsi Default Wajib
msisdn string Nomor telepon yang akan diambil harganya. Dalam format internasional. null wajib
route_type string Jenis rute, yaitu HLR, MNP, NT. null wajib
route string(3) Rute yang akan dihitung harganya. Secara default menggunakan rute yang ditentukan oleh routing otomatis. null opsional
{
   "price":{
      "amount":"0.01000",
      "msisdn":"+491788735000",
      "route_type":"HLR",
      "route":"DV8"
   }
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
price object Objek dengan detail harga. false
amount string Jumlah dalam EUR. false
msisdn string MSISDN yang berlaku untuk harga ini. false
route_type string(2|3) Jenis rute yang berlaku untuk harga ini. false
route string(3) Rute yang berlaku untuk harga ini. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/price-listdilindungi

Endpoint ini mengembalikan informasi harga di akun Anda.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/price-list'
{
   "pricing":[
      {
         "route":"V11",
         "countrycode":null,
         "countryname":null,
         "mccmnc":null,
         "cns":null,
         "route_type":"HLR",
         "price":"0.0090"
      },
      {
         "route":"V11",
         "countrycode":"DE",
         "countryname":"Germany",
         "mccmnc":"26201",
         "cns":null,
         "route_type":"HLR",
         "price":"0.0070"
      },
      {
         "route":"V11",
         "countrycode":"DE",
         "countryname":"Germany",
         "mccmnc":"26203",
         "cns":"4917821",
         "route_type":"HLR",
         "price":"0.0070"
      },
      {
         "route":"V11",
         "countrycode":"DE",
         "countryname":"Germany",
         "mccmnc":null,
         "cns":null,
         "route_type":"HLR",
         "price":"0.0070"
      },
      {
         "route":"PTX",
         "countrycode":null,
         "countryname":null,
         "mccmnc":null,
         "cns":null,
         "route_type":"MNP",
         "price":"0.00500"
      },
      ...
      {
         "route":"IP1",
         "countrycode":null,
         "countryname":null,
         "mccmnc":null,
         "cns":null,
         "route_type":"MIX",
         "price":"0.01000"
      },
      {
         "route":"LC1",
         "countrycode":null,
         "countryname":null,
         "mccmnc":null,
         "cns":null,
         "route_type":"NT",
         "price":"0.00500"
      }
   ]
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
pricing object[] Daftar objek dengan informasi harga. false
route string Rute yang berlaku untuk harga ini. false
countrycode string Kode negara ISO dua karakter yang berlaku untuk harga ini pada rute terkait, jika ada. true
countryname string Nama negara dalam bahasa Inggris yang sesuai dengan kode negara, jika ada. true
mccmnc string MCCMNC yang berlaku untuk harga ini pada rute terkait, jika ada. Menggantikan harga tingkat negara. true
cns string Prefix panggilan yang berlaku untuk harga ini pada rute terkait, jika ada. Menggantikan harga tingkat negara dan harga tingkat MCCMNC. true
route_type string Jenis rute terkait, yaitu HLR, MNP, NT. false
route_type string Harga terkait dalam EUR. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/balancedilindungi

Endpoint ini mengambil saldo akun Anda saat ini, memungkinkan Anda mengotomatiskan proses berdasarkan status kredit Anda. Ini bekerja dengan lancar bersama notifikasi email kredit rendah yang dapat Anda konfigurasi di halaman pembayaran Anda.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/balance'
{
    "balance":"1002.90"
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
balance string Saldo akun Anda saat ini dalam EUR. Nilai desimal bertipe string. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/pingpublik

Endpoint ini mengirimkan permintaan ping ke API, menyediakan metode sederhana untuk menguji koneksi Anda ke HLR Lookups API.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/ping'
{
    "success":true
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
success boolean Menunjukkan bahwa permintaan berhasil diproses. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/timepublik

Endpoint ini mengembalikan timestamp Unix yang merepresentasikan waktu saat ini di server HLR Lookups. Gunakan untuk menyinkronkan jam server Anda saat membuat signature Digest-Auth untuk autentikasi, memastikan perbedaan waktu antara server Anda dan server HLR Lookups terkoreksi.

Permintaan Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/time'
{
    "time":1525898643
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
time integer Timestamp Unix yang merepresentasikan waktu server HLR Lookups saat ini. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

GET/auth-testdilindungi

Endpoint ini berfungsi sebagai pengujian awal untuk implementasi Basic-Auth atau, lebih disarankan, Digest-Auth Anda.

Permintaan Basic Auth Permintaan Digest Auth Respons Berhasil Respons Error
curl 'https://www.hlr-lookups.com/api/v2/auth-test' \
  -H "X-Basic: YOUR_API_KEY" 

Header Permintaan

Kunci Tipe Deskripsi
X-Basic string Hash SHA256 dari YOUR_API_KEY:YOUR_API_SECRET. Sertakan simbol titik dua (:) dalam hash.
curl 'https://www.hlr-lookups.com/api/v2/auth-test' \
  -H "X-Digest-Key: YOUR_API_KEY" \
  -H "X-Digest-Signature: DIGEST_AUTH_SIGNATURE" \
  -H "X-Digest-Timestamp: UNIX_TIMESTAMP" 

Header Permintaan

Kunci Tipe Deskripsi
X-Digest-Key string Kunci API HLR Lookups Anda
X-Digest-Signature string Tanda tangan Digest-Auth unik (lihat autentikasi)
X-Digest-Timestamp integer Timestamp Unix saat ini (lihat juga GET /time)
{
    "success":true
}

Atribut Respons Berhasil

Nama Tipe Deskripsi Dapat Bernilai Null
success boolean Menunjukkan bahwa permintaan berhasil diproses. false
{
    "errors":[
        "Service unavailable."
    ]
}

Parameter Respons Error

Nama Tipe Deskripsi Dapat Bernilai Null
errors[] string[] Daftar string yang menjelaskan error. false
Gulir ke Atas

Dokumentasi API Lama

Harap dicatat bahwa API lama sudah tidak digunakan lagi dan dijadwalkan untuk dihentikan di masa mendatang. Kami sangat menyarankan untuk meningkatkan ke versi terbaru sesegera mungkin.

Jika Anda mengimplementasikan HLR Lookups API kami antara tahun 2013 dan awal 2020, Anda menggunakan API lama kami. Silakan lihat dokumentasi API lama kami dalam hal ini.

Dokumentasi API Lama
Pemuat Berputar Gif Transparan