Um cliente PHP para conexão com os serviços API fornecidos pelo BigDataCloud.
BigDataCloud oferece uma variedade de APIs extremamente úteis e rápidas que podem ser utilizadas em cenários de back-end e front-end. Desde a validação ao vivo da entrada do cliente até a próxima geração de tecnologia de geolocalização IP, o BigDataCloud possui uma API adequada às suas necessidades.
Você pode acessar toda e qualquer API BigDataCloud com uma chave de API gratuita. Para obter sua chave API, basta acessar sua conta e recuperá-la no painel da conta. Se você ainda não é cliente, a adesão é totalmente gratuita.
Todas as APIs BigDataCloud são agrupadas em cinco pacotes de API diferentes. Cada pacote de API tem seus próprios planos e preços de assinatura.
Você pode encontrar mais detalhes na página dos respectivos pacotes de API.
Para documentação específica deste cliente API, leia abaixo. Para documentação mais específica das APIs disponíveis, incluindo endpoints, dados de solicitação e resposta, visite a página do respectivo pacote de API.
Para usar este cliente API você deve ter uma chave API BigDataCloud. Para obter sua chave pessoal, basta acessar sua conta e recuperá-la no Painel da Conta. Se você ainda não é cliente, a adesão é totalmente gratuita.
Basta fornecer esta chave ao iniciar o php api client e ela será incluída em todas as solicitações ao servidor API BigDataCloud. Veja o exemplo abaixo.
composer require bigdatacloudapi/php-api-client
<?php
//Installed via Composer
require_once __DIR__ . ' /vendor/autoload.php ' ;
//Installed manually
//Using composer installed location for example, simply reference the /src/Client.php where extracted/installed instead.
//require_once __DIR__ . '/vendor/bigdatacloudapi/php-api-client/src/Client.php';
$ apiKey = " XXX " ; // Your api key found at: https://www.bigdatacloud.com/account
$ client = new BigDataCloud Api Client ( $ apiKey );
/*
Can specify the api endpoint using either camelised magic methods, or by calling the communicate command directly.
Example magic method: "GET" from "ip-geolocation-full" endpoint becomes: getIpGeolocationFull();
*/
//$result=$client->communicate('ip-geolocation-full','GET',['ip'=>'8.8.8.8']);
$ result = $ client -> getIpGeolocationFull ([ ' ip ' => ' 8.8.8.8 ' ]);
var_dump ( $ result );
{
"ip" : "8.8.8.8" ,
"country" : {
"isoAlpha2" : "US" ,
"isoAlpha3" : "USA" ,
"m49Code" : 840 ,
"isoName" : "United States of America (the)" ,
"isoAdminLanguages" : [
{
"isoAlpha3" : "eng" ,
"isoAlpha2" : "en" ,
"isoName" : "English"
}
] ,
"unRegion" : "Americas/Northern America" ,
"currency" : {
"numericCode" : 840 ,
"code" : "USD" ,
"name" : "US Dollar" ,
"minorUnits" : 2
} ,
"wbRegion" : {
"id" : "NAC" ,
"iso2Code" : "XU" ,
"value" : "North America"
} ,
"wbIncomeLevel" : {
"id" : "HIC" ,
"iso2Code" : "XD" ,
"value" : "High income"
} ,
"callingCode" : "1" ,
"countryFlagEmoji" : "??"
} ,
"location" : {
"isoPrincipalSubdivision" : "California" ,
"isoPrincipalSubdivisionCode" : "US-CA" ,
"city" : "Mountain View" ,
"postcode" : "94043" ,
"latitude" : 37.42 ,
"longitude" : - 122.09 ,
"timeZone" : {
"ianaTimeId" : "America/Los_Angeles" ,
"displayName" : "(UTC-08:00) Pacific Time (US & Canada)" ,
"effectiveTimeZoneFull" : "Pacific Daylight Time" ,
"effectiveTimeZoneShort" : "PDT" ,
"UtcOffsetSeconds" : - 25200 ,
"UtcOffset" : "-07" ,
"isDaylightSavingTime" : true ,
"localTime" : "2019-04-06T04:06:39.1691744"
}
} ,
"lastUpdated" : "2019-04-06T09:09:36.1877959Z" ,
"network" : {
"registry" : "ARIN" ,
"registryStatus" : "assigned" ,
"registeredCountry" : "US" ,
"registeredCountryName" : "United States of America (the)" ,
"organisation" : "Google LLC" ,
"isReachableGlobally" : true ,
"isBogon" : false ,
"bgpPrefix" : "8.8.8.0/24" ,
"bgpPrefixNetworkAddress" : "8.8.8.0" ,
"bgpPrefixLastAddress" : "8.8.8.255" ,
"totalAddresses" : 256 ,
"carriers" : [
{
"asn" : "AS15169" ,
"asnNumeric" : 15169 ,
"organisation" : "Google LLC" ,
"name" : "GOOGLE" ,
"registry" : "ARIN" ,
"registeredCountry" : "US" ,
"registeredCountryName" : "United States of America (the)" ,
"registrationDate" : "2000-03-30" ,
"registrationLastChange" : "2012-02-25" ,
"totalIpv4Addresses" : 8698103 ,
"totalIpv4Prefixes" : 435 ,
"totalIpv4BogonPrefixes" : 0 ,
"rank" : 53 ,
"rankText" : "#53 out of 62,872"
}
] ,
"viaCarriers" : [
{
"asn" : "AS7018" ,
"asnNumeric" : 7018 ,
"organisation" : "ATT Services Inc." ,
"registeredCountry" : "US" ,
"registeredCountryName" : "United States of America (the)" ,
"rank" : 2
} ,
/*........*/
{
"asn" : "AS31019" ,
"asnNumeric" : 31019 ,
"organisation" : "Paulus M. Hoogsteder trading as Meanie" ,
"registeredCountry" : "NL" ,
"registeredCountryName" : "Netherlands (the)" ,
"rank" : 51153
}
]
} ,
"confidence" : "low" ,
"confidenceArea" : [
{
"latitude" : 18.0256672 ,
"longitude" : - 66.5275345
} ,
/*........*/
{
"latitude" : 18.0256672 ,
"longitude" : - 66.5275345
}
] ,
"securityThreat" : "unknown" ,
"hazardReport" : {
"isKnownAsTorServer" : false ,
"isKnownAsProxy" : false ,
"isKnownAsMailServer" : false ,
"isKnownAsPublicRouter" : false ,
"isBogon" : false ,
"isUnreachable" : false
}
}