GeoIPy API

GeoIPy একটি শক্তিশালী জিওলোকেশন সেবা প্রদান করে যা সঠিক IP ভিত্তিক তথ্য, যেমন দেশ, অঞ্চল এবং শহরের তথ্য সহ প্রদান করে। GeoIPy এর সহজেই ব্যবহারযোগ্য API এবং স্পষ্ট ইন্টারফেস দিয়ে আপনার এনালাইটিক্স, সুরক্ষা এবং ব্যবহারকারীর অভিজ্ঞতা উন্ন ত করুন।

এই নথিপত্রটি API এর বৈশিষ্ট্য, উপলব্ধ বিকল্প এবং বিভিন্ন প্রোগ্রামিং ভাষার জন্য ইন্টিগ্রেশন নির্দেশিকা সহ আপনার উপর প্রভাব ফেলতে।

API অ্যাক্সেস টোকেন

আপনার API অ্যাক্সেস টোকেন একটি বিশেষ প্রমাণপত্র যা GeoIPy API এ সুরক্ষিতভাবে অ্যাক্সেস করার জন্য প্রয়োজন হয়। API এর সাথে অথেন্টিকেশন করতে, API এর বেস URL এ access_key প্যারামিটারটি যুক্ত করে এবং তার মানটি আপনার access token এর মানটি প্রদান করুন।

টোকেন URL:
https://www.geoipy.com/

API অ্যাক্সেস কী যুক্ত করুন: নিম্নলিখিত উদাহরণে আপনি GeoIPy API এ access key ব্যবহার করে API রিকোয়েস্ট করার জন্য অথেন্টিকেশন কীভাবে ব্যবহার করা হয় তা দেখানো হয়েছেঃ
https://www.geoipy.com/api/IPsInfo/?ip=@(Model.IP)
&key=@(Key)

API আউটপুট

GeoIPy API তথ্য প্রদান করতে পারে JSON ফরম্যাটে। নিম্নলিখিত উদাহরণে পূর্ববর্তী বিভাগ থেকে অ্যাপিটি কল করার প্রতিক্রিয়া হিসাবে GeoIPy কী প্রদান করে। যা IP ঠিকানার জন্য তথ্য অনুরোধ করে।

{
  "ip": "18.189.184.99",
  "hostname": "18.189.184.99",
  "type": "ipv4",
  "continent_code": "NA",
  "continent_name": "North America",
  "country_code": "US",
  "country_name": "United States",
  "region_code": "OH",
  "region_name": "Ohio",
  "city": "Columbus",
  "zip": "43201",
  "latitude": 39.995578765869141,
  "longitude": -82.999458312988281,
  "msa": "18140",
  "dma": "535",
  "radius": "41.01305",
  "ip_routing_type": "fixed",
  "connection_type": "tx",
  "location": {
    "geoname_id": 4509177,
    "capital": "Washington D.C.",
    "languages": [
      {
        "code": "en",
        "name": "English",
        "native": "English"
      }
    ],
    "country_flag": "https://www.geoipy.com/flags/us.svg",
    "country_flag_emoji": "🇺🇸",
    "country_flag_emoji_unicode": "U+1F1FA U+1F1F8",
    "calling_code": "1",
    "is_eu": false
  },
  "time_zone": {
    "id": "America/New_York",
    "current_time": "2024-11-21T12:01:46+03:00",
    "gmt_offset": -18000,
    "code": "EST",
    "is_daylight_saving": false
  },
  "currency": {
    "code": "USD",
    "name": "US Dollar",
    "plural": "US dollars",
    "symbol": "$",
    "symbol_native": "$"
  },
  "connection": {
    "asn": 16509,
    "isp": "amazon.com Inc.",
    "sld": "amazonaws",
    "tld": "com",
    "carrier": "amazon.com  inc.",
    "home": false,
    "organization_type": "Retail",
    "isic_code": "G4791",
    "naics_code": "004541"
  }
}
                            


API রেসপন্সগুলি অবস্থান, মুদ্রা, সময় অঞ্চল এবং সংযোগের সম্পর্কে বিস্তারিত তথ্য সহ অন্যান্য তথ্য সরবরাহ করে ।

ত্রুটি কোড

যদি কোনও অনুরোধকৃত সম্পদ অনুপস্থিত থাকে বা API কলে সমস্যা সম্পন্ন হয়, তবে একটি JSON ত্রুটি প্রদান করা হবে। এই ত্রুটিগুলি সর্বদা একটি ত্রুটি কোড এবং একটি বর্ণনা সহ দেওয়া হয়।

ত্রুটি উদাহরণঃ নীচের ত্রুটি হয়েছে যখন আপনার মাসিক API অনুরোধ সীমা অতিক্রম করে।
{
  "success": false,
  "error": {
    "code": 100,
    "type": "missing_access_key",
    "info": "No API Key was specified."
  }
}


কোড প্রকার তথ্য
100 missing_access_key No API Key was specified.
101 invalid_access_key No API Key was specified or an invalid API Key was specified.
102 inactive_user The current user account is not active. User will be prompted to get in touch with Customer Support.
103 invalid_api_function The requested API endpoint does not exist.
104 usage_limit_reached The maximum allowed amount of monthly API requests has been reached.
105 function_access_restricted The current subscription plan does not support this API endpoint.
106 https_access_restricted The user's current subscription plan does not support HTTPS Encryption.
301 invalid_fields One or more invalid fields were specified using the fields parameter.
302 too_many_ips Too many IPs have been specified for the Bulk Lookup Endpoint. (max. 50)
303 batch_not_supported_on_plan The Bulk Lookup Endpoint is not supported on the current subscription plan
404 404_not_found The requested resource does not exist.

PHP (cURL)

//IP ঠিকানা এবং API অ্যাক্সেস কী নির্ধারণ করুন
$ip = '18.189.184.99';
$key = 'veluihrPp9w0CekwtTlTo7TzaofQaIwp'; // CURL শুরু করুন:
$ch = curl_init('https://www.geoipy.com/api/IPsInfo?ip='.$ip.'&key='.$key.'');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// ডেটা সংরক্ষণ করুন:
$json = curl_exec($ch);
curl_close($ch);

// JSON প্রতিস্থাপন করুন:
$api_result = json_decode($json, true);

// "location" অবজেক্টের ভিতরে থাকা "capital" অবজেক্টটি আউটপুট করুন
echo $api_result['location']['capital'];

জাভাস্ক্রিপ্ট (jQuery.ajax)

// IP ঠিকানা এবং API অ্যাক্সেস কী নির্ধারণ করুন
var ip = '18.189.184.99'
var key = 'veluihrPp9w0CekwtTlTo7TzaofQaIwp'; // jQuery.ajax এর মাধ্যমে API ফলাফল পেতে
$.ajax({
url: 'https://www.geoipy.com/api/IPsInfo?ip=' + ip + '&key=' + key,
dataType: 'jsonp',
success: function(json) {

// "location" অবজেক্টের ভিতরে থাকা "capital" অবজেক্টটি আউটপুট করুন
alert(json.location.capital);

}
});

C#

using System.Net.Http;
using Newtonsoft.Json.Linq;

// ...

// IP ঠিকানা এবং API অ্যাক্সেস কী নির্ধারণ করুন
string ip = "18.189.184.99";
string Key = "veluihrPp9w0CekwtTlTo7TzaofQaIwp";

// HttpClient ইনস্ট্যান্স শুরু করুন
using (var httpClient = new HttpClient())
{
// নির্দিষ্ট URL এ একটি HTTP GET অনুরোধ পাঠানো হয়
var response = await httpClient.GetAsync($"https://www.geoipy.com/api/IPsInfo?ip={ip}&key={Key}");


// যদি সফল হয়ে থাকে তবে রেসপন্সটি পড়ুন একটি JSON স্ট্রিং হিসাবে
string jsonResponse = await response.Content.ReadAsStringAsync();

// JSON স্ট্রিংটি একটি JObject তে ডিসিরিয়েলাইজ করুন
JObject apiResult = JObject.Parse(jsonResponse);

// "location" অবজেক্টের ভিতরে থাকা "capital" অবজেক্টটি পুনঃনির্দেশ করুন
string capital = apiResult["location"]["capital"].ToString();

// ক্যাপিটালটি আউটপুট করুন
Console.WriteLine(capital);
}
else
{
Console.WriteLine("তথ্য পোয়া সময়ে ত্রুটি হয়েছে");
}
}