IP Intel | Golang SDK
The IP Intel service allows you to retrieve security information about known IP addresses that have been collected across the internet for several decades, giving you insight into the reputation of an IP.
Geolocate
func (e *ipIntel) Geolocate(ctx context.Context, input *IpGeolocateRequest) (*pangea.PangeaResponse[IpGeolocateResult], error)Retrieve geolocation information for an IP address from a provider, including an optional detailed report.
input := &ip_intel.IpGeolocateRequest{
Ip: "93.231.182.110",
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, err := ipintel.Geolocate(ctx, input)
Geolocate V2
func (e *ipIntel) GeolocateBulk(ctx context.Context, input *IpGeolocateBulkRequest) (*pangea.PangeaResponse[IpGeolocateBulkResult], error)Retrieve geolocation information for a list of IP addresses, from a provider, including an optional detailed report.
ips := [...]string{"93.231.182.110"}
input := &ip_intel.IpGeolocateBulkRequest{
Ips: ips,
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, err := ipintel.GeolocateBulk(ctx, input)
Domain
func (e *ipIntel) GetDomain(ctx context.Context, input *IpDomainRequest) (*pangea.PangeaResponse[IpDomainResult], error)Retrieve the domain name associated with an IP address.
input := &ip_intel.IpDomainRequest{
Ip: "93.231.182.110",
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, err := ipintel.GetDomain(ctx, input)
Domain V2
func (e *ipIntel) GetDomainBulk(ctx context.Context, input *IpDomainBulkRequest) (*pangea.PangeaResponse[IpDomainBulkResult], error)Retrieve the domain names associated with a list of IP addresses.
ips := [...]string{"93.231.182.110"}
input := &ip_intel.IpDomainBulkRequest{
Ip: ips,
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, err := ipintel.GetDomainBulk(ctx, input)
Proxy
func (e *ipIntel) IsProxy(ctx context.Context, input *IpProxyRequest) (*pangea.PangeaResponse[IpProxyResult], error)Determine if an IP address originates from a proxy.
input := &ip_intel.IpProxyRequest{
Ip: "93.231.182.110",
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, err := ipintel.IsProxy(ctx, input)
Proxy V2
func (e *ipIntel) IsProxyBulk(ctx context.Context, input *IpProxyBulkRequest) (*pangea.PangeaResponse[IpProxyBulkResult], error)Determine which IP addresses originate from a proxy.
ips := [...]string{"93.231.182.110"}
input := &ip_intel.IpProxyBulkRequest{
Ip: ips,
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, err := ipintel.IsProxyBulk(ctx, input)
VPN
func (e *ipIntel) IsVPN(ctx context.Context, input *IpVPNRequest) (*pangea.PangeaResponse[IpVPNResult], error)Determine if an IP address originates from a VPN.
input := &ip_intel.IpVPNRequest{
Ip: "93.231.182.110",
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, _, err := ipintel.IsVPN(ctx, input)
VPN V2
func (e *ipIntel) IsVPNBulk(ctx context.Context, input *IpVPNBulkRequest) (*pangea.PangeaResponse[IpVPNBulkResult], error)Determine which IP addresses originate from a VPN.
ips := [...]string{"93.231.182.110"}
input := &ip_intel.IpVPNBulkRequest{
Ip: ips,
Raw: true,
Verbose: true,
Provider: "digitalelement",
}
checkOutput, err := ipintel.IsVPNBulk(ctx, input)
Reputation
func (e *ipIntel) Reputation(ctx context.Context, input *IpReputationRequest) (*pangea.PangeaResponse[IpReputationResult], error)Retrieve a reputation score for an IP address from a provider, including an optional detailed report.
input := &ip_intel.IpReputationRequest{
Ip: "93.231.182.110",
Raw: true,
Verbose: true,
Provider: "crowdstrike",
}
checkOutput, err := ipintel.Reputation(ctx, input)
Reputation V2
func (e *ipIntel) ReputationBulk(ctx context.Context, input *IpReputationBulkRequest) (*pangea.PangeaResponse[IpReputationBulkResult], error)Retrieve a reputation scores for a list of IP addresses, from a provider, including an optional detailed report.
ips := [...]string{"93.231.182.110"}
input := &ip_intel.IpReputationBulkRequest{
Ip: ips,
Raw: true,
Verbose: true,
Provider: "crowdstrike",
}
checkOutput, err := ipintel.ReputationBulk(ctx, input)
Type Client
type Client interfacetype Client interface {
Reputation(ctx context.Context, req *IpReputationRequest) (*pangea.PangeaResponse[IpReputationResult], error)
Geolocate(ctx context.Context, req *IpGeolocateRequest) (*pangea.PangeaResponse[IpGeolocateResult], error)
GetDomain(ctx context.Context, req *IpDomainRequest) (*pangea.PangeaResponse[IpDomainResult], error)
IsVPN(ctx context.Context, req *IpVPNRequest) (*pangea.PangeaResponse[IpVPNResult], error)
IsProxy(ctx context.Context, req *IpProxyRequest) (*pangea.PangeaResponse[IpProxyResult], error)
ReputationBulk(ctx context.Context, req *IpReputationBulkRequest) (*pangea.PangeaResponse[IpReputationBulkResult], error)
GeolocateBulk(ctx context.Context, req *IpGeolocateBulkRequest) (*pangea.PangeaResponse[IpGeolocateBulkResult], error)
GetDomainBulk(ctx context.Context, req *IpDomainBulkRequest) (*pangea.PangeaResponse[IpDomainBulkResult], error)
IsVPNBulk(ctx context.Context, req *IpVPNBulkRequest) (*pangea.PangeaResponse[IpVPNBulkResult], error)
IsProxyBulk(ctx context.Context, req *IpProxyBulkRequest) (*pangea.PangeaResponse[IpProxyBulkResult], error)
// Base service methods
pangea.BaseServicer
}
Type DomainData
type DomainData structtype DomainData struct {
DomainFound bool `json:"domain_found"`
Domain string `json:"domain,omitempty"`
}
Type GeolocateData
type GeolocateData structtype GeolocateData struct {
Country string `json:"country"`
City string `json:"city"`
Latitude float32 `json:"latitude"`
Longitude float32 `json:"longitude"`
PostalCode string `json:"postal_code"`
CountryCode string `json:"country_code"`
}
Type IpDomainBulkRequest
type IpDomainBulkRequest structtype IpDomainBulkRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ips []string `json:"ips"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpDomainBulkResult
type IpDomainBulkResult structtype IpDomainBulkResult struct {
Data map[string]DomainData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpDomainRequest
type IpDomainRequest structtype IpDomainRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ip string `json:"ip"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpDomainResult
type IpDomainResult structtype IpDomainResult struct {
Data DomainData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpGeolocateBulkRequest
type IpGeolocateBulkRequest structtype IpGeolocateBulkRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ips []string `json:"ips"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpGeolocateBulkResult
type IpGeolocateBulkResult structtype IpGeolocateBulkResult struct {
Data map[string]GeolocateData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpGeolocateRequest
type IpGeolocateRequest structtype IpGeolocateRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ip string `json:"ip"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpGeolocateResult
type IpGeolocateResult structtype IpGeolocateResult struct {
Data GeolocateData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpProxyBulkRequest
type IpProxyBulkRequest structtype IpProxyBulkRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ips []string `json:"ips"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpProxyBulkResult
type IpProxyBulkResult structtype IpProxyBulkResult struct {
Data map[string]ProxyData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpProxyRequest
type IpProxyRequest structtype IpProxyRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ip string `json:"ip"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpProxyResult
type IpProxyResult structtype IpProxyResult struct {
Data ProxyData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpReputationBulkRequest
type IpReputationBulkRequest structtype IpReputationBulkRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ips []string `json:"ips"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpReputationBulkResult
type IpReputationBulkResult structtype IpReputationBulkResult struct {
Data map[string]ReputationData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpReputationRequest
type IpReputationRequest structtype IpReputationRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ip string `json:"ip"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpReputationResult
type IpReputationResult structtype IpReputationResult struct {
Data ReputationData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpVPNBulkRequest
type IpVPNBulkRequest structtype IpVPNBulkRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ips []string `json:"ips"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpVPNBulkResult
type IpVPNBulkResult structtype IpVPNBulkResult struct {
Data map[string]VPNData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type IpVPNRequest
type IpVPNRequest structtype IpVPNRequest struct {
// Base request has ConfigID for multi-config projects
pangea.BaseRequest
Ip string `json:"ip"`
Verbose *bool `json:"verbose,omitempty"`
Raw *bool `json:"raw,omitempty"`
Provider string `json:"provider,omitempty"`
}
Type IpVPNResult
type IpVPNResult structtype IpVPNResult struct {
Data VPNData `json:"data"`
Parameters interface{} `json:"parameters,omitempty"`
RawData interface{} `json:"raw_data,omitempty"`
}
Type ProxyData
type ProxyData structtype ProxyData struct {
IsProxy bool `json:"is_proxy"`
}
Type ReputationData
type ReputationData structtype ReputationData struct {
Category []string `json:"category"`
Score int `json:"score"`
Verdict string `json:"verdict"`
}
Type VPNData
type VPNData structtype VPNData struct {
IsVPN bool `json:"is_vpn"`
}
Type ipIntel
type ipIntel structtype ipIntel struct {
pangea.BaseService
}