server

package
v0.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 25, 2025 License: Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AccessTokenDuration    = 15 * time.Minute    // short-lived
	SessionTokenDuration   = 30 * 24 * time.Hour // long-lived
	SessionTokenCookieName = "session_token"
)
View Source
const (
	DeleteDataNetworkAction = "delete_data_network"
	CreateDataNetworkAction = "create_data_network"
	UpdateDataNetworkAction = "update_data_network"
)
View Source
const (
	UpdateOperatorSliceAction       = "update_operator_slice"
	UpdateOperatorTrackingAction    = "update_operator_tracking"
	UpdateOperatorIDAction          = "update_operator_id"
	UpdateOperatorCodeAction        = "update_operator_code"
	UpdateOperatorHomeNetworkAction = "update_operator_home_network"
)
View Source
const (
	CreatePolicyAction = "create_policy"
	UpdatePolicyAction = "update_policy"
	DeletePolicyAction = "delete_policy"
)
View Source
const (
	CreateRouteAction = "create_route"
	DeleteRouteAction = "delete_route"
)
View Source
const (
	CreateSubscriberAction = "create_subscriber"
	UpdateSubscriberAction = "update_subscriber"
	DeleteSubscriberAction = "delete_subscriber"
)
View Source
const (
	CreateUserAction         = "create_user"
	UpdateUserAction         = "update_user"
	DeleteUserAction         = "delete_user"
	UpdateUserPasswordAction = "update_user_password"
	CreateAPITokenAction     = "create_api_token"
	DeleteAPITokenAction     = "delete_api_token"
)
View Source
const (
	MaxNumUsers     = 50
	MaxNumAPITokens = 12
)
View Source
const (
	// User permissions
	PermListUsers            = "user:list"
	PermCreateUser           = "user:create"
	PermUpdateUser           = "user:update"
	PermUpdateUserPassword   = "user:update_password"
	PermReadUser             = "user:read"
	PermDeleteUser           = "user:delete"
	PermReadMyUser           = "user:read_my_user"
	PermUpdateMyUserPassword = "user:update_my_user_password" // #nosec: G101
	PermListMyAPITokens      = "user:list_my_api_tokens"      // #nosec: G101
	PermCreateMyAPIToken     = "user:create_my_api_token"
	PermDeleteMyAPIToken     = "user:delete_my_api_token"

	// Data Network permissions
	PermListDataNetworks  = "data_network:list"
	PermCreateDataNetwork = "data_network:create"
	PermUpdateDataNetwork = "data_network:update"
	PermReadDataNetwork   = "data_network:read"
	PermDeleteDataNetwork = "data_network:delete"

	// Operator permissions
	PermReadOperator              = "operator:read"
	PermUpdateOperatorSlice       = "operator:update_slice"
	PermGetOperatorSlice          = "operator:get_slice"
	PermUpdateOperatorTracking    = "operator:update_tracking"
	PermGetOperatorTracking       = "operator:get_tracking"
	PermUpdateOperatorID          = "operator:update_id"
	PermGetOperatorID             = "operator:get_id"
	PermUpdateOperatorCode        = "operator:update_code"
	PermUpdateOperatorHomeNetwork = "operator:update_home_network"

	// Subscriber permissions
	PermListSubscribers  = "subscriber:list"
	PermCreateSubscriber = "subscriber:create"
	PermUpdateSubscriber = "subscriber:update"
	PermReadSubscriber   = "subscriber:read"
	PermDeleteSubscriber = "subscriber:delete"

	// Policy permissions
	PermListPolicies = "policy:list"
	PermCreatePolicy = "policy:create"
	PermUpdatePolicy = "policy:update"
	PermReadPolicy   = "policy:read"
	PermDeletePolicy = "policy:delete"

	// Route permissions
	PermListRoutes  = "route:list"
	PermCreateRoute = "route:create"
	PermReadRoute   = "route:read"
	PermDeleteRoute = "route:delete"

	// NAT permissions
	PermGetNATInfo    = "nat:get"
	PermUpdateNATInfo = "nat:update"

	// Radio permissions
	PermListRadios = "radio:list"
	PermReadRadio  = "radio:read"

	// Backup and Restore permissions
	PermBackup  = "backup:create"
	PermRestore = "backup:restore"

	// Audit Log permissions
	PermGetAuditLogRetentionPolicy = "audit_logs:get_retention"
	PermSetAuditLogRetentionPolicy = "audit_logs:set_retention"
	PermListAuditLogs              = "audit_logs:list"

	// Subscriber Log permissions
	PermGetSubscriberLogRetentionPolicy = "subscriber_logs:get_retention"
	PermSetSubscriberLogRetentionPolicy = "subscriber_logs:set_retention"
	PermListSubscriberLogs              = "subscriber_logs:list"

	// Radio Log permissions
	PermGetRadioLogRetentionPolicy = "radio_logs:get_retention"
	PermSetRadioLogRetentionPolicy = "radio_logs:set_retention"
	PermListRadioLogs              = "radio_logs:list"
)
View Source
const AuthenticationAction = "user_authentication"
View Source
const BackupAction = "backup_database"
View Source
const (
	LoginAction = "auth_login"
)
View Source
const MaxNumDataNetworks = 12
View Source
const (
	MaxNumPolicies = 12
)
View Source
const (
	MaxNumRoutes = 12
)
View Source
const (
	MaxNumSubscribers = 1000
)
View Source
const (
	MaxSupportedTACs = 12
)
View Source
const RestoreAction = "restore_database"
View Source
const (
	UpdateAuditLogRetentionPolicyAction = "update_audit_log_retention_policy"
)
View Source
const (
	UpdateNATSettingsAction = "update_nat_settings"
)
View Source
const (
	UpdateRadioLogRetentionPolicyAction = "update_radio_log_retention_policy"
)
View Source
const (
	UpdateSubscriberLogRetentionPolicyAction = "update_subscriber_log_retention_policy"
)

Variables

Functions

func Authenticate

func Authenticate(jwtSecret []byte, store *db.Database, next http.Handler) http.Handler

func Backup

func Backup(dbInstance *db.Database) http.HandlerFunc

func CreateDataNetwork added in v0.1.0

func CreateDataNetwork(dbInstance *db.Database) http.Handler

func CreateMyAPIToken added in v0.2.0

func CreateMyAPIToken(dbInstance *db.Database) http.Handler

func CreatePolicy added in v0.1.0

func CreatePolicy(dbInstance *db.Database) http.Handler

func CreateRoute added in v0.0.9

func CreateRoute(dbInstance *db.Database, kernelInt kernel.Kernel) http.Handler

func CreateSubscriber

func CreateSubscriber(dbInstance *db.Database) http.Handler

func CreateUser

func CreateUser(dbInstance *db.Database) http.Handler

func DeleteDataNetwork added in v0.1.0

func DeleteDataNetwork(dbInstance *db.Database) http.Handler

func DeleteMyAPIToken added in v0.2.0

func DeleteMyAPIToken(dbInstance *db.Database) http.Handler

func DeletePolicy added in v0.1.0

func DeletePolicy(dbInstance *db.Database) http.Handler

func DeleteRoute added in v0.0.9

func DeleteRoute(dbInstance *db.Database, kernelInt kernel.Kernel) http.Handler

func DeleteSubscriber

func DeleteSubscriber(dbInstance *db.Database) http.Handler

func DeleteUser

func DeleteUser(dbInstance *db.Database) http.Handler

func GetAuditLogRetentionPolicy added in v0.2.0

func GetAuditLogRetentionPolicy(dbInstance *db.Database) http.Handler

func GetDataNetwork added in v0.1.0

func GetDataNetwork(dbInstance *db.Database) http.Handler

func GetLoggedInUser

func GetLoggedInUser(dbInstance *db.Database) http.Handler

func GetMetrics

func GetMetrics() http.Handler

func GetNATInfo added in v0.3.0

func GetNATInfo(dbInstance *db.Database) http.Handler

func GetOperator

func GetOperator(dbInstance *db.Database) http.Handler

func GetOperatorID added in v0.0.12

func GetOperatorID(dbInstance *db.Database) http.Handler

func GetOperatorSlice

func GetOperatorSlice(dbInstance *db.Database) http.Handler

func GetOperatorTracking

func GetOperatorTracking(dbInstance *db.Database) http.Handler

func GetPolicy added in v0.1.0

func GetPolicy(dbInstance *db.Database) http.Handler

func GetRadio

func GetRadio() http.HandlerFunc

func GetRadioLogRetentionPolicy added in v0.3.0

func GetRadioLogRetentionPolicy(dbInstance *db.Database) http.Handler

func GetRoute added in v0.0.9

func GetRoute(dbInstance *db.Database) http.Handler

func GetStatus

func GetStatus(dbInstance *db.Database) http.Handler

func GetSubscriber

func GetSubscriber(dbInstance *db.Database) http.Handler

func GetSubscriberLogRetentionPolicy added in v0.3.0

func GetSubscriberLogRetentionPolicy(dbInstance *db.Database) http.Handler

func GetUser

func GetUser(dbInstance *db.Database) http.Handler

func ListAuditLogs added in v0.2.0

func ListAuditLogs(dbInstance *db.Database) http.Handler

func ListDataNetworks added in v0.1.0

func ListDataNetworks(dbInstance *db.Database) http.Handler

func ListMyAPITokens added in v0.2.0

func ListMyAPITokens(dbInstance *db.Database) http.Handler

func ListPolicies added in v0.1.0

func ListPolicies(dbInstance *db.Database) http.Handler

func ListRadioLogs added in v0.3.0

func ListRadioLogs(dbInstance *db.Database) http.Handler

func ListRadios

func ListRadios() http.HandlerFunc

func ListRoutes added in v0.0.9

func ListRoutes(dbInstance *db.Database) http.Handler

func ListSubscriberLogs added in v0.3.0

func ListSubscriberLogs(dbInstance *db.Database) http.Handler

func ListSubscribers

func ListSubscribers(dbInstance *db.Database) http.Handler

func ListUsers

func ListUsers(dbInstance *db.Database) http.Handler

func Login

func Login(dbInstance *db.Database, secureCookie bool) http.Handler

func Logout added in v0.3.0

func Logout(dbInstance *db.Database, secureCookie bool) http.Handler

func LookupToken

func LookupToken(dbInstance *db.Database, jwtSecret []byte) http.Handler

func NewHandler

func NewHandler(dbInstance *db.Database, upf UPFReloader, kernel kernel.Kernel, jwtSecret []byte, tracingEnabled bool, secureCookie bool, embedFS fs.FS, registerExtraRoutes func(mux *http.ServeMux)) http.Handler

func Refresh added in v0.3.0

func Refresh(dbInstance *db.Database, jwtSecret []byte) http.Handler

func RequirePermission added in v0.0.19

func RequirePermission(permission string, jwtSecret []byte, next http.Handler) http.Handler

func RequirePermissionOrFirstUser added in v0.0.19

func RequirePermissionOrFirstUser(permission string, database *db.Database, jwtSecret []byte, next http.Handler) http.Handler

func Restore

func Restore(dbInstance *db.Database) http.HandlerFunc

func TracingMiddleware added in v0.0.19

func TracingMiddleware(serviceName string, handler http.Handler) http.Handler

TracingMiddleware wraps the handler in OpenTelemetry HTTP middleware

func UpdateAuditLogRetentionPolicy added in v0.2.0

func UpdateAuditLogRetentionPolicy(dbInstance *db.Database) http.Handler

func UpdateDataNetwork added in v0.1.0

func UpdateDataNetwork(dbInstance *db.Database) http.Handler

func UpdateMyUserPassword added in v0.2.0

func UpdateMyUserPassword(dbInstance *db.Database) http.Handler

func UpdateNATInfo added in v0.3.0

func UpdateNATInfo(dbInstance *db.Database, upf UPFReloader) http.Handler

func UpdateOperatorCode

func UpdateOperatorCode(dbInstance *db.Database) http.Handler

func UpdateOperatorHomeNetwork

func UpdateOperatorHomeNetwork(dbInstance *db.Database) http.Handler

func UpdateOperatorID added in v0.0.12

func UpdateOperatorID(dbInstance *db.Database) http.Handler

func UpdateOperatorSlice

func UpdateOperatorSlice(dbInstance *db.Database) http.Handler

func UpdateOperatorTracking

func UpdateOperatorTracking(dbInstance *db.Database) http.Handler

func UpdatePolicy added in v0.1.0

func UpdatePolicy(dbInstance *db.Database) http.Handler

func UpdateRadioLogRetentionPolicy added in v0.3.0

func UpdateRadioLogRetentionPolicy(dbInstance *db.Database) http.Handler

func UpdateSubscriber

func UpdateSubscriber(dbInstance *db.Database) http.Handler

func UpdateSubscriberLogRetentionPolicy added in v0.3.0

func UpdateSubscriberLogRetentionPolicy(dbInstance *db.Database) http.Handler

func UpdateUser

func UpdateUser(dbInstance *db.Database) http.Handler

func UpdateUserPassword

func UpdateUserPassword(dbInstance *db.Database) http.Handler

Types

type APIToken added in v0.3.0

type APIToken struct {
	ID        string `json:"id"`
	Name      string `json:"name"`
	ExpiresAt string `json:"expires_at"`
}

type AuditLog added in v0.3.0

type AuditLog struct {
	ID        int    `json:"id"`
	Timestamp string `json:"timestamp"`
	Level     string `json:"level"`
	Actor     string `json:"actor"`
	Action    string `json:"action"`
	IP        string `json:"ip"`
	Details   string `json:"details"`
}

type CreateAPITokenParams added in v0.2.0

type CreateAPITokenParams struct {
	Name      string `json:"name"`
	ExpiresAt string `json:"expires_at"`
}

type CreateAPITokenResponse added in v0.2.0

type CreateAPITokenResponse struct {
	Token string `json:"token"`
}

type CreateDataNetworkParams added in v0.1.0

type CreateDataNetworkParams struct {
	Name   string `json:"name"`
	IPPool string `json:"ip_pool,omitempty"`
	DNS    string `json:"dns,omitempty"`
	MTU    int32  `json:"mtu,omitempty"`
}

type CreatePolicyParams added in v0.1.0

type CreatePolicyParams struct {
	Name            string `json:"name"`
	BitrateUplink   string `json:"bitrate_uplink,omitempty"`
	BitrateDownlink string `json:"bitrate_downlink,omitempty"`
	Var5qi          int32  `json:"var5qi,omitempty"`
	PriorityLevel   int32  `json:"priority_level,omitempty"`
	DataNetworkName string `json:"data_network_name,omitempty"`
}

type CreateRouteParams added in v0.0.9

type CreateRouteParams struct {
	Destination string `json:"destination"`
	Gateway     string `json:"gateway"`
	Interface   string `json:"interface"`
	Metric      int    `json:"metric"`
}

type CreateSubscriberParams

type CreateSubscriberParams struct {
	Imsi           string `json:"imsi"`
	Key            string `json:"key"`
	Opc            string `json:"opc,omitempty"`
	SequenceNumber string `json:"sequenceNumber"`
	PolicyName     string `json:"policyName"`
}

type CreateSuccessResponse added in v0.0.9

type CreateSuccessResponse struct {
	Message string `json:"message"`
	ID      int64  `json:"id"`
}

type CreateUserParams

type CreateUserParams struct {
	Email    string `json:"email"`
	Password string `json:"password"`
	RoleID   RoleID `json:"role_id"`
}

type DataNetwork added in v0.3.0

type DataNetwork struct {
	Name   string            `json:"name"`
	IPPool string            `json:"ip_pool"`
	DNS    string            `json:"dns,omitempty"`
	MTU    int32             `json:"mtu,omitempty"`
	Status DataNetworkStatus `json:"status"`
}

type DataNetworkStatus added in v0.2.0

type DataNetworkStatus struct {
	Sessions int `json:"sessions"`
}

type ErrorResponse added in v0.3.0

type ErrorResponse struct {
	Error string `json:"error"`
}

type GetAuditLogsRetentionPolicyResponse added in v0.2.0

type GetAuditLogsRetentionPolicyResponse struct {
	Days int `json:"days"`
}

type GetNATInfoResponse added in v0.3.0

type GetNATInfoResponse struct {
	Enabled bool `json:"enabled"`
}

type GetOperatorHomeNetworkResponse

type GetOperatorHomeNetworkResponse struct {
	PublicKey string `json:"publicKey,omitempty"`
}

type GetOperatorIDResponse added in v0.0.12

type GetOperatorIDResponse struct {
	Mcc string `json:"mcc,omitempty"`
	Mnc string `json:"mnc,omitempty"`
}

type GetOperatorResponse

type GetOperatorResponse struct {
	ID          GetOperatorIDResponse          `json:"id,omitempty"`
	Slice       GetOperatorSliceResponse       `json:"slice,omitempty"`
	Tracking    GetOperatorTrackingResponse    `json:"tracking,omitempty"`
	HomeNetwork GetOperatorHomeNetworkResponse `json:"homeNetwork,omitempty"`
}

type GetOperatorSliceResponse

type GetOperatorSliceResponse struct {
	Sst int `json:"sst,omitempty"`
	Sd  int `json:"sd,omitempty"`
}

type GetOperatorTrackingResponse

type GetOperatorTrackingResponse struct {
	SupportedTacs []string `json:"supportedTacs,omitempty"`
}

type GetRadioLogsRetentionPolicyResponse added in v0.3.0

type GetRadioLogsRetentionPolicyResponse struct {
	Days int `json:"days"`
}

type GetSubscriberLogsRetentionPolicyResponse added in v0.3.0

type GetSubscriberLogsRetentionPolicyResponse struct {
	Days int `json:"days"`
}

type ListAPITokensResponse added in v0.3.0

type ListAPITokensResponse struct {
	Items      []APIToken `json:"items"`
	Page       int        `json:"page"`
	PerPage    int        `json:"per_page"`
	TotalCount int        `json:"total_count"`
}

type ListAuditLogsResponse added in v0.3.0

type ListAuditLogsResponse struct {
	Items      []AuditLog `json:"items"`
	Page       int        `json:"page"`
	PerPage    int        `json:"per_page"`
	TotalCount int        `json:"total_count"`
}

type ListDataNetworksResponse added in v0.3.0

type ListDataNetworksResponse struct {
	Items      []DataNetwork `json:"items"`
	Page       int           `json:"page"`
	PerPage    int           `json:"per_page"`
	TotalCount int           `json:"total_count"`
}

type ListPoliciesResponse added in v0.3.0

type ListPoliciesResponse struct {
	Items      []Policy `json:"items"`
	Page       int      `json:"page"`
	PerPage    int      `json:"per_page"`
	TotalCount int      `json:"total_count"`
}

type ListRadioLogsResponse added in v0.3.0

type ListRadioLogsResponse struct {
	Items      []RadioLog `json:"items"`
	Page       int        `json:"page"`
	PerPage    int        `json:"per_page"`
	TotalCount int        `json:"total_count"`
}

type ListRadiosResponse added in v0.3.0

type ListRadiosResponse struct {
	Items      []Radio `json:"items"`
	Page       int     `json:"page"`
	PerPage    int     `json:"per_page"`
	TotalCount int     `json:"total_count"`
}

type ListRoutesResponse added in v0.3.0

type ListRoutesResponse struct {
	Items      []Route `json:"items"`
	Page       int     `json:"page"`
	PerPage    int     `json:"per_page"`
	TotalCount int     `json:"total_count"`
}

type ListSubscriberLogsResponse added in v0.3.0

type ListSubscriberLogsResponse struct {
	Items      []SubscriberLog `json:"items"`
	Page       int             `json:"page"`
	PerPage    int             `json:"per_page"`
	TotalCount int             `json:"total_count"`
}

type ListSubscribersResponse added in v0.3.0

type ListSubscribersResponse struct {
	Items      []Subscriber `json:"items"`
	Page       int          `json:"page"`
	PerPage    int          `json:"per_page"`
	TotalCount int          `json:"total_count"`
}

type ListUsersResponse added in v0.3.0

type ListUsersResponse struct {
	Items      []User `json:"items"`
	Page       int    `json:"page"`
	PerPage    int    `json:"per_page"`
	TotalCount int    `json:"total_count"`
}

type LoginParams

type LoginParams struct {
	Email    string `json:"email"`
	Password string `json:"password"`
}

type LookupTokenResponse

type LookupTokenResponse struct {
	Valid bool `json:"valid"`
}

type PlmnID added in v0.0.12

type PlmnID struct {
	Mcc string `json:"mcc"`
	Mnc string `json:"mnc"`
}

type Policy added in v0.3.0

type Policy struct {
	Name            string `json:"name"`
	BitrateUplink   string `json:"bitrate_uplink,omitempty"`
	BitrateDownlink string `json:"bitrate_downlink,omitempty"`
	Var5qi          int32  `json:"var5qi,omitempty"`
	PriorityLevel   int32  `json:"priority_level,omitempty"`
	DataNetworkName string `json:"data_network_name,omitempty"`
}

type Radio added in v0.3.0

type Radio struct {
	Name          string         `json:"name"`
	ID            string         `json:"id"`
	Address       string         `json:"address"`
	SupportedTAIs []SupportedTAI `json:"supported_tais"`
}

type RadioLog added in v0.3.0

type RadioLog struct {
	ID        int    `json:"id"`
	Timestamp string `json:"timestamp"`
	Level     string `json:"level"`
	RanID     string `json:"ran_id"`
	Event     string `json:"event"`
	Details   string `json:"details"`
}

type RefreshResponse added in v0.3.0

type RefreshResponse struct {
	Token string `json:"token"`
}

type Response added in v0.3.0

type Response struct {
	Result any `json:"result,omitempty"`
}

type RoleID added in v0.0.20

type RoleID int
const (
	RoleAdmin          RoleID = 1
	RoleReadOnly       RoleID = 2
	RoleNetworkManager RoleID = 3
)

type Route added in v0.3.0

type Route struct {
	ID          int64  `json:"id"`
	Destination string `json:"destination"`
	Gateway     string `json:"gateway"`
	Interface   string `json:"interface"`
	Metric      int    `json:"metric"`
}

type Snssai

type Snssai struct {
	Sst int32  `json:"sst"`
	Sd  string `json:"sd"`
}

type StatusResponse

type StatusResponse struct {
	Version     string `json:"version"`
	Initialized bool   `json:"initialized"`
}

type Subscriber added in v0.3.0

type Subscriber struct {
	Imsi           string           `json:"imsi"`
	Opc            string           `json:"opc"`
	SequenceNumber string           `json:"sequenceNumber"`
	Key            string           `json:"key"`
	PolicyName     string           `json:"policyName"`
	Status         SubscriberStatus `json:"status"`
}

type SubscriberLog added in v0.3.0

type SubscriberLog struct {
	ID        int    `json:"id"`
	Timestamp string `json:"timestamp"`
	Level     string `json:"level"`
	IMSI      string `json:"imsi"`
	Event     string `json:"event"`
	Details   string `json:"details"`
}

type SubscriberSession added in v0.1.0

type SubscriberSession struct {
	IPAddress string `json:"ipAddress"`
}

type SubscriberStatus added in v0.1.0

type SubscriberStatus struct {
	Registered bool                `json:"registered"`
	Sessions   []SubscriberSession `json:"sessions"`
}

type SuccessResponse

type SuccessResponse struct {
	Message string `json:"message"`
}

type SupportedTAI

type SupportedTAI struct {
	Tai     Tai      `json:"tai"`
	SNssais []Snssai `json:"snssais"`
}

type Tai

type Tai struct {
	PlmnID PlmnID `json:"plmnID"`
	Tac    string `json:"tac"`
}

type UPFReloader added in v0.3.0

type UPFReloader interface {
	Reload(natEnabled bool) error
}

type UpdateAuditLogsRetentionPolicyParams added in v0.2.0

type UpdateAuditLogsRetentionPolicyParams struct {
	Days int `json:"days"`
}

type UpdateMyUserPasswordParams added in v0.2.0

type UpdateMyUserPasswordParams struct {
	Password string `json:"password"`
}

type UpdateNATInfoParams added in v0.3.0

type UpdateNATInfoParams struct {
	Enabled bool `json:"enabled"`
}

type UpdateOperatorCodeParams

type UpdateOperatorCodeParams struct {
	OperatorCode string `json:"operatorCode,omitempty"`
}

type UpdateOperatorHomeNetworkParams

type UpdateOperatorHomeNetworkParams struct {
	PrivateKey string `json:"privateKey,omitempty"`
}

type UpdateOperatorIDParams added in v0.0.12

type UpdateOperatorIDParams struct {
	Mcc string `json:"mcc,omitempty"`
	Mnc string `json:"mnc,omitempty"`
}

type UpdateOperatorSliceParams

type UpdateOperatorSliceParams struct {
	Sst int `json:"sst,omitempty"`
	Sd  int `json:"sd,omitempty"`
}

type UpdateOperatorTrackingParams

type UpdateOperatorTrackingParams struct {
	SupportedTacs []string `json:"supportedTacs,omitempty"`
}

type UpdateRadioLogsRetentionPolicyParams added in v0.3.0

type UpdateRadioLogsRetentionPolicyParams struct {
	Days int `json:"days"`
}

type UpdateSubscriberLogsRetentionPolicyParams added in v0.3.0

type UpdateSubscriberLogsRetentionPolicyParams struct {
	Days int `json:"days"`
}

type UpdateSubscriberParams

type UpdateSubscriberParams struct {
	Imsi       string `json:"imsi"`
	PolicyName string `json:"policyName"`
}

type UpdateUserParams

type UpdateUserParams struct {
	Email  string `json:"email"`
	RoleID RoleID `json:"role_id"`
}

type UpdateUserPasswordParams

type UpdateUserPasswordParams struct {
	Email    string `json:"email"`
	Password string `json:"password"`
}

type User added in v0.3.0

type User struct {
	Email  string `json:"email"`
	RoleID RoleID `json:"role_id"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL