github.com/mysteriumnetwork/node@v0.0.0-20240516044423-365054f76801/tequilapi/contract/location.go (about) 1 /* 2 * Copyright (C) 2020 The "MysteriumNetwork/node" Authors. 3 * 4 * This program is free software: you can redistribute it and/or modify 5 * it under the terms of the GNU General Public License as published by 6 * the Free Software Foundation, either version 3 of the License, or 7 * (at your option) any later version. 8 * 9 * This program is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 * GNU General Public License for more details. 13 * 14 * You should have received a copy of the GNU General Public License 15 * along with this program. If not, see <http://www.gnu.org/licenses/>. 16 */ 17 18 package contract 19 20 // IPDTO describes IP metadata. 21 // swagger:model IPDTO 22 type IPDTO struct { 23 // public IP address 24 // example: 127.0.0.1 25 IP string `json:"ip"` 26 } 27 28 // LocationDTO describes IP location metadata. 29 // swagger:model LocationDTO 30 type LocationDTO struct { 31 // IP address 32 // example: 1.2.3.4 33 IP string `json:"ip"` 34 // Autonomous system number 35 // example: 62179 36 ASN int `json:"asn"` 37 // Internet Service Provider name 38 // example: Telia Lietuva, AB 39 ISP string `json:"isp"` 40 41 // Continent 42 // example: EU 43 Continent string `json:"continent"` 44 // Node Country 45 // example: LT 46 Country string `json:"country"` 47 // Node Region 48 // example: Vilnius region 49 Region string `json:"region"` 50 // Node City 51 // example: Vilnius 52 City string `json:"city"` 53 54 // IP type (data_center, residential, etc.) 55 // example: residential 56 IPType string `json:"ip_type"` 57 }