package api
type AccessKeyResponse struct {
ID string `json:"id"`
Name string `json:"name"`
Password string `json:"password"`
Port int `json:"port"`
Method string `json:"method"`
AccessURL string `json:"accessUrl"`
DataLimit *DataLimitJSON `json:"dataLimit,omitempty"`
AWG *AWGKeyResponse `json:"awg,omitempty"`
}
type AWGKeyResponse struct {
PublicKey string `json:"publicKey"`
AllowedIP string `json:"allowedIP"`
Endpoint string `json:"endpoint"`
}
type DataLimitJSON struct {
Bytes int64 `json:"bytes"`
}
type ServerResponse struct {
Name string `json:"name"`
ServerID string `json:"serverId"`
MetricsEnabled bool `json:"metricsEnabled"`
CreatedTimestampMs int64 `json:"createdTimestampMs"`
Version string `json:"version"`
HostnameForAccessKeys string `json:"hostnameForAccessKeys"`
PortForNewAccessKeys int `json:"portForNewAccessKeys"`
AccessKeyDataLimit *DataLimitJSON `json:"accessKeyDataLimit,omitempty"`
}
type CreateAccessKeyRequest struct {
ID string `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Method string `json:"method,omitempty"`
Password string `json:"password,omitempty"`
Port int `json:"port,omitempty"`
DataLimit *DataLimitJSON `json:"limit,omitempty"`
}
type SetDataLimitRequest struct {
Limit DataLimitJSON `json:"limit"`
}
type SetPortRequest struct {
Port int `json:"port"`
}
type SetHostnameRequest struct {
Hostname string `json:"hostname"`
}
type SetNameRequest struct {
Name string `json:"name"`
}
type MetricsEnabledResponse struct {
MetricsEnabled bool `json:"metricsEnabled"`
}
type TransferMetricsResponse struct {
BytesTransferredByUserId map[string]int64 `json:"bytesTransferredByUserId"`
}