Documentation
¶
Index ¶
- Constants
- type ActionFilterConditionObject
- type ActionFilterObject
- type ActionGetParams
- type ActionObject
- type ActionOpcommandGrpObject
- type ActionOpcommandHstObject
- type ActionOperationCommandObject
- type ActionOperationConditionObject
- type ActionOperationMessageObject
- type ActionOperationObject
- type ActionOpgroupObject
- type ActionOpinventoryObject
- type ActionOpmessageGrpObject
- type ActionOpmessageUsrObject
- type ActionOptemplateObject
- type ActionRecoveryOperationObject
- type ActionUpdateOperationObject
- type Context
- func (z *Context) ActionCreate(params []ActionObject) ([]int, int, error)
- func (z *Context) ActionDelete(actionIDs []int) ([]int, int, error)
- func (z *Context) ActionGet(params ActionGetParams) ([]ActionObject, int, error)
- func (z *Context) GlobalmacroCreate(params []UsermacroObject) ([]int, int, error)
- func (z *Context) GlobalmacroDelete(globalmacroIDs []int) ([]int, int, error)
- func (z *Context) HistoryGet(params HistoryGetParams) (interface{}, int, error)
- func (z *Context) HostCreate(params []HostObject) ([]int, int, error)
- func (z *Context) HostDelete(hostIDs []int) ([]int, int, error)
- func (z *Context) HostGet(params HostGetParams) ([]HostObject, int, error)
- func (z *Context) HostUpdate(params []HostObject) ([]int, int, error)
- func (z *Context) HostgroupCreate(params []HostgroupObject) ([]int, int, error)
- func (z *Context) HostgroupDelete(groupIDs []int) ([]int, int, error)
- func (z *Context) HostgroupGet(params HostgroupGetParams) ([]HostgroupObject, int, error)
- func (z *Context) HostinterfaceCreate(params []HostinterfaceObject) ([]int, int, error)
- func (z *Context) HostinterfaceDelete(hostinterfaceIDs []int) ([]int, int, error)
- func (z *Context) HostinterfaceGet(params HostinterfaceGetParams) ([]HostinterfaceObject, int, error)
- func (z *Context) HostmacroCreate(params []UsermacroObject) ([]int, int, error)
- func (z *Context) HostmacroDelete(hostmacroIDs []int) ([]int, int, error)
- func (z *Context) ItemGet(params ItemGetParameters) ([]ItemObject, int, error)
- func (z *Context) Login(host, user, password string) error
- func (z *Context) Logout() error
- func (z *Context) MediatypeCreate(params []MediatypeObject) ([]int, int, error)
- func (z *Context) MediatypeDelete(mediatypeIDs []int) ([]int, int, error)
- func (z *Context) MediatypeGet(params MediatypeGetParams) ([]MediatypeObject, int, error)
- func (z *Context) ProblemGet(params ProblemGetParams) ([]ProblemObject, int, error)
- func (z *Context) TemplateCreate(params []TemplateObject) ([]int, int, error)
- func (z *Context) TemplateDelete(templateIDs []int) ([]int, int, error)
- func (z *Context) TemplateGet(params TemplateGetParams) ([]TemplateObject, int, error)
- func (z *Context) UserCreate(params []UserObject) ([]int, int, error)
- func (z *Context) UserDelete(userIDs []int) ([]int, int, error)
- func (z *Context) UserGet(params UserGetParams) ([]UserObject, int, error)
- func (z *Context) UsergroupCreate(params []UsergroupObject) ([]int, int, error)
- func (z *Context) UsergroupDelete(usergroupIDs []int) ([]int, int, error)
- func (z *Context) UsergroupGet(params UsergroupGetParams) ([]UsergroupObject, int, error)
- func (z *Context) UsergroupUpdate(params []UsergroupObject) ([]int, int, error)
- func (z *Context) UsermacroGet(params UsermacroGetParams) ([]UsermacroObject, int, error)
- type EventAcknowledgeActionType
- type GetParameters
- type Header
- type HistoryFloatObject
- type HistoryGetParams
- type HistoryIntegerObject
- type HistoryLogObject
- type HistoryStringObject
- type HistoryTextObject
- type HostGetParams
- type HostObject
- type HostTagObject
- type HostgroupGetParams
- type HostgroupObject
- type HostinterfaceDetailsTagObject
- type HostinterfaceGetParams
- type HostinterfaceObject
- type ItemGetParameters
- type ItemObject
- type MediaObject
- type MediatypeGetParams
- type MediatypeMessageTemplateObject
- type MediatypeObject
- type MediatypeWebhookParametersObject
- type PreprocessingStep
- type ProblemAcknowledgeObject
- type ProblemAcknowledgeType
- type ProblemEvalType
- type ProblemGetParams
- type ProblemMediaTypeURLObject
- type ProblemObject
- type ProblemObjectType
- type ProblemSeverityType
- type ProblemSourceType
- type ProblemSuppressedType
- type ProblemSuppressionObject
- type ProblemTagObject
- type QueryField
- type SelectFields
- type SelectQuery
- type TemplateGetParams
- type TemplateObject
- type TemplateTagObject
- type UserDataObject
- type UserGetParams
- type UserLoginParams
- type UserObject
- type UsergroupGetParams
- type UsergroupObject
- type UsergroupPermissionObject
- type UsergroupTagBasedPermissionObject
- type UsermacroGetParams
- type UsermacroObject
Constants ¶
const ( ActionStatusEnabled = 0 ActionStatusDisabled = 1 )
For `ActionObject` field: `Status`
const ( ActionPauseSuppressedEnabled = 0 ActionPauseSuppressedDisabled = 1 )
For `ActionObject` field: `PauseSuppressed`
const ( ActionOperationTypeSendMsg = 0 ActionOperationTypeRemoteCmd = 1 ActionOperationTypeAddHost = 2 ActionOperationTypeRmHost = 3 ActionOperationTypeAddToHostGroup = 4 ActionOperationTypeRmFromHostGroup = 5 ActionOperationTypeLinkToTpl = 6 ActionOperationTypeUnlinkFromTpl = 7 ActionOperationTypeEnableHost = 8 ActionOperationTypeDisableHost = 9 ActionOperationTypeSetHostInventoryMode = 10 )
For `ActionOperationObject` field: `OperationType`
const ( ActionOperationEvalTypeAndOR = 0 ActionOperationEvalTypeAnd = 1 ActionOperationEvalTypeOr = 2 )
For `ActionOperationObject` field: `EvalType`
const ( ActionOperationCommandTypeCustomScript = 0 ActionOperationCommandTypeIPMI = 1 ActionOperationCommandTypeSSH = 2 ActionOperationCommandTypeTelnet = 3 ActionOperationCommandTypeGlobalScript = 4 )
For `ActionOperationCommandObject` field: `Type`
const ( ActionOperationCommandAuthTypePassword = 0 ActionOperationCommandAuthTypePubKey = 1 )
For `ActionOperationCommandObject` field: `AuthType`
const ( ActionOperationCommandExecuteOnAgent = 0 ActionOperationCommandExecuteOnServer = 1 ActionOperationCommandExecuteOnProxy = 2 )
For `ActionOperationCommandObject` field: `ExecuteOn`
const ( ActionOperationMessageDefaultMsgFromOperation = 0 ActionOperationMessageDefaultMsgFromMediaType = 1 )
For `ActionOperationMessageObject` field: `DefaultMsg`
const ( ActionRecoveryOperationTypeSendMsg = 0 ActionRecoveryOperationTypeRemoteCmd = 1 ActionRecoveryOperationTypeNotifyAllInvolved = 11 )
For `ActionRecoveryOperationObject` field: `OperationType `
const ( ActionUpdateOperationTypeSendMsg = 0 ActionUpdateOperationTypeRemoteCmd = 1 ActionUpdateOperationTypeNotifyAllInvolved = 12 )
For `ActionUpdateOperationObject` field: `OperationType `
const ( ActionFilterEvalTypeAndOr = 0 ActionFilterEvalTypeAnd = 1 ActionFilterEvalTypeOr = 2 ActionFilterEvalTypeCustom = 3 )
For `ActionFilterObject` field: `EvalType`
const ( ActionFilterConditionTypeHostroup = 0 ActionFilterConditionTypeHost = 1 ActionFilterConditionTypeTrigger = 2 ActionFilterConditionTypeTriggerName = 3 ActionFilterConditionTypeTriggerSeverity = 4 ActionFilterConditionTypeTriggerValue = 5 ActionFilterConditionTypeTimePeriod = 6 ActionFilterConditionTypeHostIP = 7 ActionFilterConditionTypeDiscoveryServiceType = 8 ActionFilterConditionTypeDiscoveryServicePort = 9 ActionFilterConditionTypeDiscoveryStatus = 10 ActionFilterConditionTypeUpdownTimeDuration = 11 ActionFilterConditionTypeRcvValue = 12 ActionFilterConditionTypeHostTemplate = 13 ActionFilterConditionTypeApplication = 15 ActionFilterConditionTypeProblemIsSuppressed = 16 ActionFilterConditionTypeDiscRule = 18 ActionFilterConditionTypeDiscCheck = 19 ActionFilterConditionTypeProxy = 20 ActionFilterConditionTypeDiscObject = 21 ActionFilterConditionTypeHostName = 22 ActionFilterConditionTypeEventType = 23 ActionFilterConditionTypeHostMetadata = 24 ActionFilterConditionTypeTag = 25 ActionFilterConditionTypeTagValue = 26 )
For `ActionFilterConditionObject` field: `ConditionType`
const ( ActionFilterConditionOperatorEQ = 0 // = ActionFilterConditionOperatorNE = 1 // <> ActionFilterConditionOperatorContains = 2 // contains ActionFilterConditionOperatorNotrContain = 3 // does not contain ActionFilterConditionOperatorIN = 4 // in ActionFilterConditionOperatorGE = 5 // >= ActionFilterConditionOperatorLE = 6 // <= ActionFilterConditionOperatorNotIn = 7 // not in ActionFilterConditionOperatorMatches = 8 // matches ActionFilterConditionOperatorNotMatches = 9 // does not match ActionFilterConditionOperatorYes = 10 // yes ActionFilterConditionOperatorNo = 11 // no )
For `ActionFilterConditionObject` field: `Operator`
const ( HistoryObjectTypeFloat = 0 HistoryObjectTypeCharacter = 1 HistoryObjectTypeLog = 2 HistoryObjectTypeNumericUnsigned = 3 HistoryObjectTypeText = 4 )
For `HistoryGetParams` field: `History`
const ( HostAvailableUnknown = 0 HostAvailableAvailable = 1 )
For `HostObject` field: `Available`
const ( HostFlagsPlain = 0 HostFlagsDiscovered = 4 )
For `HostObject` field: `Flags`
const ( HostInventoryModeDisabled = -1 HostInventoryModeManual = 0 HostInventoryModeAutomatic = 1 )
For `HostObject` field: `Flags`
const ( HostIpmiAuthtypeDefault = -1 HostIpmiAuthtypeNone = 0 HostIpmiAuthtypeMD2 = 1 HostIpmiAuthtypeMD5 = 2 HostIpmiAuthtypeStraight = 4 HostIpmiAuthtypeOEM = 5 HostIpmiAuthtypeRMCP = 6 )
For `HostObject` field: `IpmiAuthtype`
const ( HostIpmiAvailableUnknown = 0 HostIpmiAvailableAvailable = 1 )
For `HostObject` field: `IpmiAvailable`
const ( HostIpmiPrivilegeCallback = 1 HostIpmiPrivilegeUser = 2 HostIpmiPrivilegeOperator = 3 HostIpmiPrivilegeAdmin = 4 HostIpmiPrivilegeOEM = 5 )
For `HostObject` field: `IpmiPrivilege`
const ( HostJmxAvailableUnknown = 0 HostJmxAvailableAvailable = 1 )
For `HostObject` field: `JmxAvailable`
const ( HostMaintenanceStatusDisable = 0 HostMaintenanceStatusEnable = 1 )
For `HostObject` field: `MaintenanceStatus`
const ( HostMaintenanceTypeDataCollectionEnabled = 0 HostMaintenanceTypeDataCollectionDisabled = 1 )
For `HostObject` field: `MaintenanceType`
const ( HostSnmpAvailableUnknown = 0 HostSnmpAvailableAvailable = 1 )
For `HostObject` field: `SnmpAvailable`
const ( HostStatusMonitored = 0 HostStatusUnmonitored = 1 )
For `HostObject` field: `Status`
const ( TLSConnectNoEncryption = 1 TLSConnectPSK = 2 TLSConnectCertificate = 4 )
For `HostObject` field: `TLSConnect`
const ( TLSAcceptNoEncryption = 1 TLSAcceptPSK = 2 TLSAcceptCertificate = 4 )
For `HostObject` field: `TLSAccept`
const ( HostEvaltypeAndOr = 0 HostEvaltypeOr = 2 )
For `HostGetParams` field: `Evaltype`
const ( HostTagOperatorContains = 0 HostTagOperatorEquals = 1 )
For `HostTag` field: `Operator`
const ( HostgroupFlagsPlain = 0 HostgroupFlagsDiscrovered = 4 )
For `HostgroupObject` field: `Status`
const ( HostgroupInternalFalse = 0 HostgroupInternalTrue = 1 )
For `HostgroupObject` field: `Internal`
const ( HostinterfaceMainNotDefault = 0 HostinterfaceMainDefault = 1 )
For `HostinterfaceObject` field: `Main`
const ( HostinterfaceTypeAgent = 1 HostinterfaceTypeSNMP = 2 HostinterfaceTypeIPMI = 3 HostinterfaceTypeJMX = 4 )
For `HostinterfaceObject` field: `Type`
const ( HostinterfaceUseipDNS = 0 HostinterfaceUseipIP = 1 )
For `HostinterfaceObject` field: `UseIP`
const ( HostinterfaceDetailsTagBulkDontUse = 0 HostinterfaceDetailsTagBulkUse = 1 )
For `HostinterfaceDetailsTagObject` field: `Bulk`
const ( HostinterfaceDetailsTagVersionSNMPv1 = 1 HostinterfaceDetailsTagVersionSNMPv2c = 2 HostinterfaceDetailsTagVersionSNMPv3 = 3 )
For `HostinterfaceDetailsTagObject` field: `Version`
const ( HostinterfaceDetailsTagSecurityLevelNoAuthNoPriv = 0 HostinterfaceDetailsTagSecurityLevelAuthNoPriv = 1 HostinterfaceDetailsTagSecurityLevelAuthPriv = 2 )
For `HostinterfaceDetailsTagObject` field: `SecurityLevel`
const ( HostinterfaceDetailsTagAuthProtocolMD5 = 0 HostinterfaceDetailsTagAuthProtocolSHA = 1 )
For `HostinterfaceDetailsTagObject` field: `AuthProtocol`
const ( HostinterfaceDetailsTagPrivProtocolDES = 0 HostinterfaceDetailsTagPrivProtocolAES = 1 )
For `HostinterfaceDetailsTagObject` field: `PrivProtocol`
const ( MediatypeEmail = 0 MediatypeScript = 1 MediatypeSMS = 2 MediatypeWebhook = 4 )
For `MediatypeObject` field: `Type`
const ( MediatypeSMTPSecurityNone = 0 MediatypeSMTPSecuritySTARTTLS = 1 MediatypeSMTPSecuritySSLTLS = 2 )
For `MediatypeObject` field: `SMTPSecurity`
const ( MediatypeSMTPVerifyHostNo = 0 MediatypeSMTPVerifyHostYes = 1 )
For `MediatypeObject` field: `SMTPVerifyHost`
const ( MediatypeSMTPVerifyPeerNo = 0 MediatypeSMTPVerifyPeerYes = 1 )
For `MediatypeObject` field: `SMTPVerifyPeer`
const ( MediatypeSMTPAuthenticationNone = 0 MediatypeSMTPAuthenticationNormalPassword = 1 )
For `MediatypeObject` field: `SMTPAuthentication`
const ( MediatypeStatusEnabled = 0 MediatypeScriptDisabled = 1 )
For `MediatypeObject` field: `Status`
const ( MediatypeContentTypePlainText = 0 MediatypeContentTypeHTML = 1 )
For `MediatypeObject` field: `ContentType`
const ( MediatypeProcessTagsNo = 0 MediatypeProcessTagsYes = 1 )
For `MediatypeObject` field: `ProcessTags`
const ( MediatypeShowEventMenuNo = 0 MediatypeShowEventMenuYes = 1 )
For `MediatypeObject` field: `ShowEventMenu`
const ( MediatypeMessageTemplateEventSourceTriggers = 0 MediatypeMessageTemplateEventSourceDiscovery = 1 MediatypeMessageTemplateEventSourceAutoregistration = 2 MediatypeMessageTemplateEventSourceInternal = 3 )
For `MediatypeMessageTemplateObject` field: `EventSource`
const ( MediatypeMessageTemplateRecoveryOperations = 0 MediatypeMessageTemplateRecoveryRecoveryOperations = 1 MediatypeMessageTemplateRecoveryUpdateOperations = 2 )
For `MediatypeMessageTemplateObject` field: `Recovery`
const ( TemplateEvaltypeAndOr = 0 TemplateEvaltypeOr = 2 )
For `TemplateGetParams` field: `Evaltype`
const ( TemplateTagOperatorContains = 0 TemplateTagOperatorEquals = 1 )
For `TemplateTag` field: `Operator`
const ( UserAutoLoginDisabled = 0 UserAutoLoginEnabled = 1 )
For `UserObject` field: `AutoLogin`
const ( UserThemeDefault = "default" UserThemeBlue = "blue-theme" UserThemeDark = "dark-theme" )
For `UserObject` field: `Theme`
const ( UserTypeUser = 1 UserTypeAdmin = 2 UserTypeSuperAdmin = 3 )
For `UserObject` field: `Type`
const ( MediaActiveEnabled = 0 MediaActiveDisabled = 1 )
For `MediaObject` field: `Active`
const ( UsergroupDebugModeDisabled = 0 UsergroupDebugModeEnabled = 1 )
For `UsergroupObject` field: `DebugMode`
const ( UsergroupGuiAccessSystemDefaultAuth = 0 UsergroupGuiAccessInternalAuth = 1 UsergroupGuiAccessLDAPAuth = 2 UsergroupGuiAccessDisableFrontend = 3 )
For `UsergroupObject` field: `GuiAccess`
const ( UsergroupUsersStatusEnabled = 0 UsergroupUsersStatusDisabled = 1 )
For `UsergroupObject` field: `UsersStatus`
const ( UsergroupPermissionDenied = 0 UsergroupPermissionRO = 2 UsergroupPermissionRW = 3 )
For `UsergroupPermissionObject` field: `Permission`
const ( UsermacroTypeText = 0 UsermacroTypeSecret = 1 )
For `UsermacroObject` field: `Type`
const ( SelectExtendedOutput = "extend" SelectCount = "count" )
Zabbix select constants
const ( GetParametersSortOrderASC = "ASC" GetParametersSortOrderDESC = "DESC" )
For `GetParameters` field: `SortOrder`
const (
ActionOperationConditionOperatorEq = 0
)
For `ActionOperationConditionObject` field: `Operator`
const (
ActionOperationConditionTypeEventAcknowledged = 14
)
For `ActionOperationConditionObject` field: `ConditionType`
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActionFilterConditionObject ¶
type ActionFilterConditionObject struct {
ConditionID int `json:"conditionid,omitempty"`
ConditionType int `json:"conditiontype"` // has defined consts, see above
Value string `json:"value"`
Value2 string `json:"value2,omitempty"`
ActionID int `json:"actionid,omitempty"`
FormulaID string `json:"formulaid,omitempty"`
Operator int `json:"operator,omitempty"` // has defined consts, see above
}
ActionFilterConditionObject struct is used to store action filter conditions
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/object#action_filter_condition
type ActionFilterObject ¶
type ActionFilterObject struct {
Conditions []ActionFilterConditionObject `json:"conditions"`
EvalType int `json:"evaltype"` // has defined consts, see above
EvalFormula string `json:"eval_formula,omitempty"`
Formula string `json:"formula,omitempty"`
}
ActionFilterObject struct is used to store action filters
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/object#action_filter
type ActionGetParams ¶
type ActionGetParams struct {
GetParameters
ActionIDs []int `json:"actionids,omitempty"`
GroupIDs []int `json:"groupids,omitempty"`
HostIDs []int `json:"hostids,omitempty"`
TriggerIDs []int `json:"triggerids,omitempty"`
MediatypeIDs []int `json:"mediatypeids,omitempty"`
UsrgrpIDs []int `json:"usrgrpids,omitempty"`
UserIDs []int `json:"userids,omitempty"`
ScriptIDs []int `json:"scriptids,omitempty"`
SelectFilter SelectQuery `json:"selectFilter,omitempty"`
SelectOperations SelectQuery `json:"selectOperations,omitempty"`
SelectRecoveryOperations SelectQuery `json:"selectRecoveryOperations,omitempty"`
SelectUpdateOperations SelectQuery `json:"selectUpdateOperations,omitempty"`
}
ActionGetParams struct is used for action get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/get#parameters
type ActionObject ¶
type ActionObject struct {
ActionID int `json:"actionid,omitempty"`
EscPeriod int `json:"esc_period"`
Eventsource int `json:"eventsource"`
Name string `json:"name"`
Status int `json:"status,omitempty"` // has defined consts, see above
PauseSuppressed int `json:"pause_suppressed,omitempty"` // has defined consts, see above
Operations []ActionOperationObject `json:"operations,omitempty"`
Filter ActionFilterObject `json:"filter,omitempty"`
RecoveryOperations []ActionRecoveryOperationObject `json:"recovery_operations,omitempty"`
AcknowledgeOperations []ActionRecoveryOperationObject `json:"acknowledge_operations,omitempty"`
}
ActionObject struct is used to store action operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/object#action
type ActionOpcommandGrpObject ¶
type ActionOpcommandGrpObject struct {
OpcommandGrpID int `json:"opcommand_grpid,omitempty"`
OperationID int `json:"operationid,omitempty"`
GroupID int `json:"groupid,omitempty"`
}
ActionOpcommandGrpObject struct is used to store action opcommand groups
type ActionOpcommandHstObject ¶
type ActionOpcommandHstObject struct {
OpcommandHstID int `json:"opcommand_hstid,omitempty"`
OperationID int `json:"operationid,omitempty"`
HostID int `json:"hostid,omitempty"`
}
ActionOpcommandHstObject struct is used to store action opcommand hosts
type ActionOperationCommandObject ¶
type ActionOperationCommandObject struct {
Command string `json:"command"`
Type int `json:"type"` // has defined consts, see above
AuthType int `json:"authtype,omitempty"` // has defined consts, see above
ExecuteOn int `json:"execute_on,omitempty"` // has defined consts, see above
Password string `json:"password,omitempty"`
Port string `json:"port,omitempty"`
PrivateKey string `json:"privatekey,omitempty"`
PublicKey string `json:"publickey,omitempty"`
ScriptID int `json:"scriptid,omitempty"`
UserName string `json:"username,omitempty"`
}
ActionOperationCommandObject struct is used to store action operation commands
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/object#action_operation_command
type ActionOperationConditionObject ¶
type ActionOperationConditionObject struct {
OpconditionID int `json:"opconditionid,omitempty"`
ConditionType int `json:"conditiontype"` // has defined consts, see above
Value string `json:"value"`
OperationID int `json:"operationid,omitempty"`
Operator int `json:"operator,omitempty"`
}
ActionOperationConditionObject struct is used to store action operation conditions
type ActionOperationMessageObject ¶
type ActionOperationMessageObject struct {
DefaultMsg int `json:"default_msg,omitempty"` // has defined consts, see above
MediatypeID int `json:"mediatypeid,omitempty"`
Message string `json:"message,omitempty"`
Subject string `json:"subject,omitempty"`
}
ActionOperationMessageObject struct is used to store action operation messages
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/object#action_operation_message
type ActionOperationObject ¶
type ActionOperationObject struct {
OperationID int `json:"operationid,omitempty"`
OperationType int `json:"operationtype"` // has defined consts, see above
ActionID int `json:"actionid,omitempty"`
EscPeriod int `json:"esc_period,omitempty"`
EscStepFrom int `json:"esc_step_from,omitempty"`
EscStepTo int `json:"esc_step_to,omitempty"`
EvalType int `json:"evaltype,omitempty"` // has defined consts, see above
Opcommand ActionOperationCommandObject `json:"opcommand,omitempty"`
OpcommandGrp []ActionOpcommandGrpObject `json:"opcommand_grp,omitempty"`
OpcommandHst []ActionOpcommandHstObject `json:"opcommand_hst,omitempty"`
Opconditions []ActionOperationConditionObject `json:"opconditions,omitempty"`
Opgroup []ActionOpgroupObject `json:"opgroup,omitempty"`
Opmessage ActionOperationMessageObject `json:"opmessage,omitempty"`
OpmessageGrp []ActionOpmessageGrpObject `json:"opmessage_grp,omitempty"`
OpmessageUsr []ActionOpmessageUsrObject `json:"opmessage_usr,omitempty"`
Optemplate []ActionOptemplateObject `json:"optemplate,omitempty"`
Opinventory ActionOpinventoryObject `json:"opinventory,omitempty"`
}
ActionOperationObject struct is used to store action operations
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/object#action_operation
type ActionOpgroupObject ¶
type ActionOpgroupObject struct {
OperationID int `json:"operationid,omitempty"`
GroupID int `json:"groupid,omitempty"`
}
ActionOpgroupObject struct is used to store action opgroups
type ActionOpinventoryObject ¶
type ActionOpinventoryObject struct {
OperationID int `json:"operationid,omitempty"`
InventoryMode int `json:"inventory_mode,omitempty"`
}
ActionOpinventoryObject struct is used to store action opinventory
type ActionOpmessageGrpObject ¶
type ActionOpmessageGrpObject struct {
OperationID int `json:"operationid,omitempty"`
UsrgrpID int `json:"usrgrpid,omitempty"`
}
ActionOpmessageGrpObject struct is used to store action opmessage groups
type ActionOpmessageUsrObject ¶
type ActionOpmessageUsrObject struct {
OperationID int `json:"operationid,omitempty"`
UserID int `json:"userid,omitempty"`
}
ActionOpmessageUsrObject struct is used to store action opmessage users
type ActionOptemplateObject ¶
type ActionOptemplateObject struct {
OperationID int `json:"operationid,omitempty"`
TemplateID int `json:"templateid,omitempty"`
}
ActionOptemplateObject struct is used to store action optemplates
type ActionRecoveryOperationObject ¶
type ActionRecoveryOperationObject struct {
OperationID int `json:"operationid"`
OperationType int `json:"operationtype,omitempty"` // has defined consts, see above
ActionID int `json:"actionid,omitempty"`
Opcommand ActionOperationCommandObject `json:"opcommand,omitempty"`
OpcommandGrp []ActionOpcommandGrpObject `json:"opcommand_grp,omitempty"`
OpcommandHst []ActionOpcommandHstObject `json:"opcommand_hst,omitempty"`
Opmessage ActionOperationMessageObject `json:"opmessage,omitempty"`
OpmessageGrp []ActionOpmessageGrpObject `json:"opmessage_grp,omitempty"`
OpmessageUsr []ActionOpmessageUsrObject `json:"opmessage_usr,omitempty"`
}
ActionRecoveryOperationObject struct is used to store action recovery operations
type ActionUpdateOperationObject ¶
type ActionUpdateOperationObject struct {
OperationID int `json:"operationid"`
OperationType int `json:"operationtype,omitempty"` // has defined consts, see above
Opcommand ActionOperationCommandObject `json:"opcommand,omitempty"`
OpcommandGrp []ActionOpcommandGrpObject `json:"opcommand_grp,omitempty"`
OpcommandHst []ActionOpcommandHstObject `json:"opcommand_hst,omitempty"`
Opmessage ActionOperationMessageObject `json:"opmessage,omitempty"`
OpmessageGrp []ActionOpmessageGrpObject `json:"opmessage_grp,omitempty"`
OpmessageUsr []ActionOpmessageUsrObject `json:"opmessage_usr,omitempty"`
}
ActionUpdateOperationObject struct is used to store action update operations
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/action/object#action_update_operation
type Context ¶
type Context struct {
// contains filtered or unexported fields
}
Context struct is used for store settings to communicate with Zabbix API
func (*Context) ActionCreate ¶
func (z *Context) ActionCreate(params []ActionObject) ([]int, int, error)
ActionCreate creates actions
func (*Context) ActionDelete ¶
ActionDelete deletes actions
func (*Context) ActionGet ¶
func (z *Context) ActionGet(params ActionGetParams) ([]ActionObject, int, error)
ActionGet gets actions
func (*Context) GlobalmacroCreate ¶
func (z *Context) GlobalmacroCreate(params []UsermacroObject) ([]int, int, error)
GlobalmacroCreate creates new globalmacros
func (*Context) GlobalmacroDelete ¶
GlobalmacroDelete deletes globalmacros
func (*Context) HistoryGet ¶
func (z *Context) HistoryGet(params HistoryGetParams) (interface{}, int, error)
HistoryGet gets history
func (*Context) HostCreate ¶
func (z *Context) HostCreate(params []HostObject) ([]int, int, error)
HostCreate creates hosts
func (*Context) HostDelete ¶
HostDelete deletes hosts
func (*Context) HostGet ¶
func (z *Context) HostGet(params HostGetParams) ([]HostObject, int, error)
HostGet gets hosts
func (*Context) HostUpdate ¶
func (z *Context) HostUpdate(params []HostObject) ([]int, int, error)
HostUpdate updates hosts
func (*Context) HostgroupCreate ¶
func (z *Context) HostgroupCreate(params []HostgroupObject) ([]int, int, error)
HostgroupCreate creates hostgroups
func (*Context) HostgroupDelete ¶
HostgroupDelete deletes hostgroups
func (*Context) HostgroupGet ¶
func (z *Context) HostgroupGet(params HostgroupGetParams) ([]HostgroupObject, int, error)
HostgroupGet gets hostgroups
func (*Context) HostinterfaceCreate ¶
func (z *Context) HostinterfaceCreate(params []HostinterfaceObject) ([]int, int, error)
HostinterfaceCreate creates hostinterfaces
func (*Context) HostinterfaceDelete ¶
HostinterfaceDelete deletes hostinterfaces
func (*Context) HostinterfaceGet ¶
func (z *Context) HostinterfaceGet(params HostinterfaceGetParams) ([]HostinterfaceObject, int, error)
HostinterfaceGet gets hostinterfaces
func (*Context) HostmacroCreate ¶
func (z *Context) HostmacroCreate(params []UsermacroObject) ([]int, int, error)
HostmacroCreate creates new hostmacros
func (*Context) HostmacroDelete ¶
HostmacroDelete deletes hostmacros
func (*Context) ItemGet ¶
func (z *Context) ItemGet(params ItemGetParameters) ([]ItemObject, int, error)
func (*Context) MediatypeCreate ¶
func (z *Context) MediatypeCreate(params []MediatypeObject) ([]int, int, error)
MediatypeCreate creates mediatypes
func (*Context) MediatypeDelete ¶
MediatypeDelete deletes mediatypes
func (*Context) MediatypeGet ¶
func (z *Context) MediatypeGet(params MediatypeGetParams) ([]MediatypeObject, int, error)
MediatypeGet gets mediatypes
func (*Context) ProblemGet ¶
func (z *Context) ProblemGet(params ProblemGetParams) ([]ProblemObject, int, error)
ProblemGet gets problems
func (*Context) TemplateCreate ¶
func (z *Context) TemplateCreate(params []TemplateObject) ([]int, int, error)
TemplateCreate creates templates
func (*Context) TemplateDelete ¶
TemplateDelete deletes templates
func (*Context) TemplateGet ¶
func (z *Context) TemplateGet(params TemplateGetParams) ([]TemplateObject, int, error)
TemplateGet gets templates
func (*Context) UserCreate ¶
func (z *Context) UserCreate(params []UserObject) ([]int, int, error)
UserCreate creates users
func (*Context) UserDelete ¶
UserDelete deletes users
func (*Context) UserGet ¶
func (z *Context) UserGet(params UserGetParams) ([]UserObject, int, error)
UserGet gets users
func (*Context) UsergroupCreate ¶
func (z *Context) UsergroupCreate(params []UsergroupObject) ([]int, int, error)
UsergroupCreate creates usergroups
func (*Context) UsergroupDelete ¶
UsergroupDelete deletes usergroups
func (*Context) UsergroupGet ¶
func (z *Context) UsergroupGet(params UsergroupGetParams) ([]UsergroupObject, int, error)
UsergroupGet gets usergroups
func (*Context) UsergroupUpdate ¶
func (z *Context) UsergroupUpdate(params []UsergroupObject) ([]int, int, error)
UsergroupUpdate updates usergroups
func (*Context) UsermacroGet ¶
func (z *Context) UsermacroGet(params UsermacroGetParams) ([]UsermacroObject, int, error)
UsermacroGet gets global or host macros according to the given parameters
type EventAcknowledgeActionType ¶
type EventAcknowledgeActionType int64
const ( EventAcknowledgeActionTypeClose EventAcknowledgeActionType = 1 EventAcknowledgeActionTypeAck EventAcknowledgeActionType = 2 EventAcknowledgeActionTypeAddMessage EventAcknowledgeActionType = 4 EventAcknowledgeActionTypeChangeSeverity EventAcknowledgeActionType = 8 EventAcknowledgeActionTypeUnack EventAcknowledgeActionType = 16 EventAcknowledgeActionTypeSuppress EventAcknowledgeActionType = 32 EventAcknowledgeActionTypeUnsuppress EventAcknowledgeActionType = 64 EventAcknowledgeActionTypeChangeEventRankCause EventAcknowledgeActionType = 128 EventAcknowledgeActionTypeChangeEventRankSymptom EventAcknowledgeActionType = 256 )
type GetParameters ¶
type GetParameters struct {
CountOutput bool `json:"countOutput,omitempty"`
Editable bool `json:"editable,omitempty"`
ExcludeSearch bool `json:"excludeSearch,omitempty"`
Filter map[string]interface{} `json:"filter,omitempty"`
Limit int `json:"limit,omitempty"`
Output SelectQuery `json:"output,omitempty"`
PreserveKeys bool `json:"preservekeys,omitempty"`
Search map[string]string `json:"search,omitempty"`
SearchByAny bool `json:"searchByAny,omitempty"`
SearchWildcardsEnabled bool `json:"searchWildcardsEnabled,omitempty"`
SortField []string `json:"sortfield,omitempty"`
SortOrder []string `json:"sortorder,omitempty"` // has defined consts, see above
StartSearch bool `json:"startSearch,omitempty"`
}
GetParameters struct is used as embedded struct for some other structs within package
see for details: https://www.zabbix.com/documentation/5.0/manual/api/reference_commentary#common_get_method_parameters
type HistoryFloatObject ¶
type HistoryFloatObject struct {
Clock int `json:"clock,omitempty"`
ItemID int `json:"itemid,omitempty"`
NS int `json:"ns,omitempty"`
Value float64 `json:"value,omitempty"`
}
HistoryFloatObject struct is used to store history float operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/history/object#float_history
type HistoryGetParams ¶
type HistoryGetParams struct {
GetParameters
History int `json:"history"` // has defined consts, see above
HostIDs []int `json:"hostids,omitempty"`
ItemIDs []int `json:"itemids,omitempty"`
TimeFrom int `json:"time_from,omitempty"`
TimeTill int `json:"time_till,omitempty"`
Sortfield string `json:"sortfield,omitempty"`
}
HistoryGetParams struct is used for history get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/history/get#parameters
type HistoryIntegerObject ¶
type HistoryIntegerObject struct {
Clock int `json:"clock,omitempty"`
ItemID int `json:"itemid,omitempty"`
NS int `json:"ns,omitempty"`
Value int `json:"value,omitempty"`
}
HistoryIntegerObject struct is used to store history integer operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/history/object#integer_history
type HistoryLogObject ¶
type HistoryLogObject struct {
ID int `json:"id,omitempty"`
Clock int `json:"clock,omitempty"`
ItemID int `json:"itemid,omitempty"`
LogeventID int `json:"logeventid,omitempty"`
NS int `json:"ns,omitempty"`
Severity int `json:"severity,omitempty"`
Source int `json:"source,omitempty"`
Timestamp int `json:"timestamp,omitempty"`
Value string `json:"value,omitempty"`
}
HistoryLogObject struct is used to store history log operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/history/object#log_history
type HistoryStringObject ¶
type HistoryStringObject struct {
Clock int `json:"clock,omitempty"`
ItemID int `json:"itemid,omitempty"`
NS int `json:"ns,omitempty"`
Value string `json:"value,omitempty"`
}
HistoryStringObject struct is used to store history string operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/history/object#string_history
type HistoryTextObject ¶
type HistoryTextObject struct {
ID int `json:"id,omitempty"`
Clock int `json:"clock,omitempty"`
ItemID int `json:"itemid,omitempty"`
NS int `json:"ns,omitempty"`
Value string `json:"value,omitempty"`
}
HistoryTextObject struct is used to store history text operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/history/object#text_history
type HostGetParams ¶
type HostGetParams struct {
GetParameters
GroupIDs []int `json:"groupids,omitempty"`
ApplicationIDs []int `json:"applicationids,omitempty"`
DserviceIDs []int `json:"dserviceids,omitempty"`
GraphIDs []int `json:"graphids,omitempty"`
HostIDs []int `json:"hostids,omitempty"`
HttptestIDs []int `json:"httptestids,omitempty"`
InterfaceIDs []int `json:"interfaceids,omitempty"`
ItemIDs []int `json:"itemids,omitempty"`
MaintenanceIDs []int `json:"maintenanceids,omitempty"`
MonitoredHosts bool `json:"monitored_hosts,omitempty"`
ProxyHosts bool `json:"proxy_hosts,omitempty"`
ProxyIDs []int `json:"proxyids,omitempty"`
TemplatedHosts bool `json:"templated_hosts,omitempty"`
TemplateIDs []int `json:"templateids,omitempty"`
TriggerIDs []int `json:"triggerids,omitempty"`
WithItems bool `json:"with_items,omitempty"`
WithItemPrototypes bool `json:"with_item_prototypes,omitempty"`
WithSimpleGraphItemPrototypes bool `json:"with_simple_graph_item_prototypes,omitempty"`
WithApplications bool `json:"with_applications,omitempty"`
WithGraphs bool `json:"with_graphs,omitempty"`
WithGraphPrototypes bool `json:"with_graph_prototypes,omitempty"`
WithHttptests bool `json:"with_httptests,omitempty"`
WithMonitoredHttptests bool `json:"with_monitored_httptests,omitempty"`
WithMonitoredItems bool `json:"with_monitored_items,omitempty"`
WithMonitoredTriggers bool `json:"with_monitored_triggers,omitempty"`
WithSimpleGraphItems bool `json:"with_simple_graph_items,omitempty"`
WithTriggers bool `json:"with_triggers,omitempty"`
WithProblemsSuppressed bool `json:"withProblemsSuppressed,omitempty"`
Evaltype int `json:"evaltype,omitempty"` // has defined consts, see above
Severities []int `json:"severities,omitempty"`
Tags []HostTagObject `json:"tags,omitempty"`
InheritedTags bool `json:"inheritedTags,omitempty"`
// SelectApplications SelectQuery `json:"selectApplications,omitempty"` // not implemented yet
// SelectDiscoveries SelectQuery `json:"selectDiscoveries,omitempty"` // not implemented yet
// SelectDiscoveryRule SelectQuery `json:"selectDiscoveryRule ,omitempty"` // not implemented yet
// SelectGraphs SelectQuery `json:"selectGraphs,omitempty"` // not implemented yet
SelectGroups SelectQuery `json:"selectGroups,omitempty"`
// SelectHostDiscovery SelectQuery `json:"selectHostDiscovery ,omitempty"` // not implemented yet
// SelectHTTPTests SelectQuery `json:"selectHttpTests,omitempty"` // not implemented yet
SelectInterfaces SelectQuery `json:"selectInterfaces,omitempty"`
// SelectInventory SelectQuery `json:"selectInventory,omitempty"` // not implemented yet
// SelectItems SelectQuery `json:"selectItems,omitempty"` // not implemented yet
SelectMacros SelectQuery `json:"selectMacros,omitempty"`
SelectParentTemplates SelectQuery `json:"selectParentTemplates,omitempty"`
// SelectScreens SelectQuery `json:"selectScreens,omitempty"` // not implemented yet
SelectTags SelectQuery `json:"selectTags,omitempty"`
SelectInheritedTags SelectQuery `json:"selectInheritedTags,omitempty"`
}
HostGetParams struct is used for host get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/host/get#parameters
type HostObject ¶
type HostObject struct {
HostID int `json:"hostid,omitempty"`
Host string `json:"host,omitempty"`
Available int `json:"available,omitempty"` // has defined consts, see above
Description string `json:"description,omitempty"`
DisableUntil int `json:"disable_until,omitempty"`
Error string `json:"error,omitempty"`
ErrorsFrom int `json:"errors_from,omitempty"`
Flags int `json:"flags,omitempty"` // has defined consts, see above
InventoryMode int `json:"inventory_mode,omitempty"` // has defined consts, see above
IpmiAuthtype int `json:"ipmi_authtype,omitempty"` // has defined consts, see above
IpmiAvailable int `json:"ipmi_available,omitempty"` // has defined consts, see above
IpmiDisableUntil int `json:"ipmi_disable_until,omitempty"`
IpmiError string `json:"ipmi_error,omitempty"`
IpmiErrorsFrom int `json:"ipmi_errors_from,omitempty"`
IpmiPassword string `json:"ipmi_password,omitempty"`
IpmiPrivilege int `json:"ipmi_privilege,omitempty"` // has defined consts, see above
IpmiUsername string `json:"ipmi_username,omitempty"`
JmxAvailable int `json:"jmx_available,omitempty"` // has defined consts, see above
JmxDisableUntil int `json:"jmx_disable_until,omitempty"`
JmxError string `json:"jmx_error,omitempty"`
JmxErrorsFrom int `json:"jmx_errors_from,omitempty"`
MaintenanceFrom int `json:"maintenance_from,omitempty"`
MaintenanceStatus int `json:"maintenance_status,omitempty"` // has defined consts, see above
MaintenanceType int `json:"maintenance_type,omitempty"` // has defined consts, see above
MaintenanceID int `json:"maintenanceid,omitempty"`
Name string `json:"name,omitempty"`
ProxyHostID int `json:"proxy_hostid,omitempty"`
SnmpAvailable int `json:"snmp_available,omitempty"` // has defined consts, see above
SnmpDisableUntil int `json:"snmp_disable_until,omitempty"`
SnmpError string `json:"snmp_error,omitempty"`
SnmpErrorsFrom int `json:"snmp_errors_from,omitempty"`
Status int `json:"status,omitempty"` // has defined consts, see above
TLSConnect int `json:"tls_connect,omitempty"` // has defined consts, see above
TLSAccept int `json:"tls_accept,omitempty"` // has defined consts, see above
TLSIssuer string `json:"tls_issuer,omitempty"`
TLSSubject string `json:"tls_subject,omitempty"`
TLSPSKIdentity string `json:"tls_psk_identity,omitempty"`
TLSPSK string `json:"tls_psk,omitempty"`
Groups []HostgroupObject `json:"groups,omitempty"`
Interfaces []HostinterfaceObject `json:"interfaces,omitempty"`
Tags []HostTagObject `json:"tags,omitempty"`
InheritedTags []HostTagObject `json:"inheritedTags,omitempty"`
Macros []UsermacroObject `json:"macros,omitempty"`
Templates []TemplateObject `json:"templates,omitempty"` // Used for `create` operations
ParentTemplates []TemplateObject `json:"parentTemplates,omitempty"` // Used to store result for `get` operations
}
HostObject struct is used to store host operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/host/object#host
type HostTagObject ¶
type HostTagObject struct {
Tag string `json:"tag"`
Value string `json:"value,omitempty"`
Operator int `json:"operator,omitempty"` // Used for `get` operations, has defined consts, see above
}
HostTagObject struct is used to store host tag
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/host/object#host_tag
type HostgroupGetParams ¶
type HostgroupGetParams struct {
GetParameters
GraphIDs []int `json:"graphids,omitempty"`
GroupIDs []int `json:"groupids,omitempty"`
HostIDs []int `json:"hostids,omitempty"`
MaintenanceIDs []int `json:"maintenanceids,omitempty"`
MonitoredHosts bool `json:"monitored_hosts,omitempty"`
RealHosts bool `json:"real_hosts,omitempty"`
TemplatedHosts bool `json:"templated_hosts,omitempty"`
TemplateIDs []int `json:"templateids,omitempty"`
TriggerIDs []int `json:"triggerids,omitempty"`
WithApplications bool `json:"with_applications,omitempty"`
WithGraphs bool `json:"with_graphs,omitempty"`
WithGraphPrototypes bool `json:"with_graph_prototypes,omitempty"`
WithHostsAndTemplates bool `json:"with_hosts_and_templates,omitempty"`
WithHttptests bool `json:"with_httptests,omitempty"`
WithItems bool `json:"with_items,omitempty"`
WithItemPrototypes bool `json:"with_item_prototypes,omitempty"`
WithSimpleGraphItemPrototypes bool `json:"with_simple_graph_item_prototypes,omitempty"`
WithMonitoredHttptests bool `json:"with_monitored_httptests,omitempty"`
WithMonitoredItems bool `json:"with_monitored_items,omitempty"`
WithMonitoredTriggers bool `json:"with_monitored_triggers,omitempty"`
WithSimpleGraphItems bool `json:"with_simple_graph_items,omitempty"`
WithTriggers bool `json:"with_triggers,omitempty"`
// SelectDiscoveryRule SelectQuery `json:"selectDiscoveryRule,omitempty"` // not implemented yet
// SelectGroupDiscovery SelectQuery `json:"selectGroupDiscovery,omitempty"` // not implemented yet
SelectHosts SelectQuery `json:"selectHosts,omitempty"`
SelectTemplates SelectQuery `json:"selectTemplates,omitempty"`
}
HostgroupGetParams struct is used for hostgroup get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/hostgroup/get#parameters
type HostgroupObject ¶
type HostgroupObject struct {
GroupID int `json:"groupid,omitempty"`
Name string `json:"name,omitempty"`
Flags int `json:"flags,omitempty"` // has defined consts, see above
Internal int `json:"internal,omitempty"` // has defined consts, see above
Hosts []HostObject `json:"hosts,omitempty"`
Templates []TemplateObject `json:"templates,omitempty"`
}
HostgroupObject struct is used to store hostgroup operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/hostgroup/object
type HostinterfaceDetailsTagObject ¶
type HostinterfaceDetailsTagObject struct {
Version int `json:"version,omitempty"` // has defined consts, see above
Bulk int `json:"bulk,omitempty"` // has defined consts, see above
Community string `json:"community,omitempty"`
SecurityName string `json:"securityname,omitempty"`
SecurityLevel int `json:"securitylevel,omitempty"` // has defined consts, see above
AuthPassPhrase string `json:"authpassphrase,omitempty"`
PrivPassPhrase string `json:"privpassphrase,omitempty"`
AuthProtocol int `json:"authprotocol,omitempty"` // has defined consts, see above
PrivProtocol int `json:"privprotocol,omitempty"` // has defined consts, see above
ContextName string `json:"contextname,omitempty"`
}
HostinterfaceDetailsTagObject struct is used to store hostinterface details
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/hostinterface/object#details_tag
type HostinterfaceGetParams ¶
type HostinterfaceGetParams struct {
GetParameters
HostIDs []int `json:"hostids,omitempty"`
InterfaceIDs []int `json:"interfaceids,omitempty"`
ItemIDs []int `json:"itemids,omitempty"`
TriggerIDs []int `json:"triggerids,omitempty"`
// SelectItems SelectQuery `json:"selectItems,omitempty"` // not implemented yet
SelectHosts SelectQuery `json:"selectHosts,omitempty"`
}
HostinterfaceGetParams struct is used for hostinterface get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/hostinterface/get#parameters
type HostinterfaceObject ¶
type HostinterfaceObject struct {
InterfaceID int `json:"interfaceid,omitempty"`
DNS string `json:"dns"`
HostID int `json:"hostid,omitempty"`
IP string `json:"ip"`
Main int `json:"main"` // has defined consts, see above
Port string `json:"port"`
Type int `json:"type"` // has defined consts, see above
UseIP int `json:"useip"` // has defined consts, see above
Details []HostinterfaceDetailsTagObject `json:"details,omitempty"`
// Items []ItemObject `json:"items,omitempty"` // not implemented yet
Hosts []HostObject `json:"hosts,omitempty"`
}
HostinterfaceObject struct is used to store hostinterface operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/hostinterface/object#hostinterface
type ItemGetParameters ¶
type ItemGetParameters struct {
GetParameters
ItemIDs []string `json:"itemids,omitempty"`
GroupIDs []string `json:"groupids,omitempty"`
TemplateIDs []string `json:"templateids,omitempty"`
HostIDs []string `json:"hostids,omitempty"`
ProxyIDs []string `json:"proxyids,omitempty"`
InterfaceIDs []string `json:"interfaceids,omitempty"`
GraphIDs []string `json:"graphids,omitempty"`
TriggerIDs []string `json:"triggerids,omitempty"`
ApplicationIDs []string `json:"applicationids,omitempty"`
WebItems bool `json:"webitems,omitempty"`
Inherited bool `json:"inherited,omitempty"`
Templated bool `json:"templated,omitempty"`
Monitored bool `json:"monitored,omitempty"`
Group string `json:"group,omitempty"`
Host string `json:"host,omitempty"`
Application string `json:"application,omitempty"`
WithTriggers bool `json:"with_triggers,omitempty"`
SelectHosts SelectQuery `json:"selectHosts,omitempty"`
SelectInterfaces SelectQuery `json:"selectInterfaces,omitempty"`
SelectTriggers SelectQuery `json:"selectTriggers,omitempty"`
SelectGraphs SelectQuery `json:"selectGraphs,omitempty"`
SelectApplications SelectQuery `json:"selectApplications,omitempty"`
SelectDiscoveryRule SelectQuery `json:"selectDiscoveryRule,omitempty"`
SelectItemDiscovery SelectQuery `json:"selectItemDiscovery,omitempty"`
SelectPreprocessing SelectQuery `json:"selectPreprocessing,omitempty"`
LimitSelects int `json:"limitSelects,omitempty"`
}
ItemGetParams struct is used for item get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/item/get#parameters
type ItemObject ¶
type ItemObject struct {
ItemID string `json:"itemid,omitempty"`
Type int `json:"type"`
SNMPCommunity string `json:"snmp_community,omitempty"`
SNMPOID string `json:"snmp_oid,omitempty"`
HostID string `json:"hostid"`
Name string `json:"name"`
Key string `json:"key_"`
Delay string `json:"delay"`
History string `json:"history,omitempty"`
Trends string `json:"trends,omitempty"`
Status int `json:"status"`
ValueType int `json:"value_type"`
AllowedHosts string `json:"allowed_hosts,omitempty"`
Units string `json:"units,omitempty"`
Delta int `json:"delta"`
Snmpv3Contextname string `json:"snmpv3_contextname,omitempty"`
Snmpv3SecurityName string `json:"snmpv3_securityname,omitempty"`
Snmpv3SecurityLevel int `json:"snmpv3_securitylevel,omitempty"`
Snmpv3AuthPassphrase string `json:"snmpv3_authpassphrase,omitempty"`
Snmpv3PrivPassphrase string `json:"snmpv3_privpassphrase,omitempty"`
Params string `json:"params,omitempty"`
IPMIAuthType int `json:"ipmi_auth_type,omitempty"`
IPMIPrivilege int `json:"ipmi_privilege,omitempty"`
IPMIUsername string `json:"ipmi_username,omitempty"`
IPMIPassword string `json:"ipmi_password,omitempty"`
DelayFlex string `json:"delay_flex,omitempty"`
ParamsEscaped string `json:"params_escaped,omitempty"`
InventoryLink int `json:"inventory_link,omitempty"`
Description string `json:"description,omitempty"`
Lifetime string `json:"lifetime,omitempty"`
Filter string `json:"filter,omitempty"`
DataType int `json:"data_type,omitempty"`
ValueMapID string `json:"valuemapid,omitempty"`
LogTimeFormat string `json:"logtimefmt,omitempty"`
JmxEndpoint string `json:"jmx_endpoint,omitempty"`
MasterItemID string `json:"master_itemid,omitempty"`
Timeout string `json:"timeout,omitempty"`
URL string `json:"url,omitempty"`
QueryFields []QueryField `json:"query_fields,omitempty"`
Posts string `json:"posts,omitempty"`
StatusCodes string `json:"status_codes,omitempty"`
FollowRedirects int `json:"follow_redirects,omitempty"`
PostType int `json:"post_type,omitempty"`
HTTPProxy string `json:"http_proxy,omitempty"`
Headers []Header `json:"headers,omitempty"`
RetrieveMode int `json:"retrieve_mode,omitempty"`
RequestMethod string `json:"request_method,omitempty"`
OutputFormat string `json:"output_format,omitempty"`
SSLVerifyPeer int `json:"ssl_verify_peer,omitempty"`
SSLVerifyHost int `json:"ssl_verify_host,omitempty"`
VerifyHost int `json:"verify_host,omitempty"`
SSLKeyFile string `json:"ssl_key_file,omitempty"`
SSLCertFile string `json:"ssl_cert_file,omitempty"`
SSLCAFile string `json:"ssl_ca_file,omitempty"`
SNMPTrapType int `json:"snmptrap_type,omitempty"`
SNMPTrapPort int `json:"snmptrap_port,omitempty"`
SNMPCommunity2 string `json:"snmp_community2,omitempty"`
SNMPTrapOid string `json:"snmptrap_oid,omitempty"`
SNMPTrapComm2 string `json:"snmptrap_comm2,omitempty"`
SNMPTrapOID2 string `json:"snmptrap_oid2,omitempty"`
SNMPTrapV1Comm2 string `json:"snmptrap_v1_comm2,omitempty"`
SNMPTrapV1OID2 string `json:"snmptrap_v1_oid2,omitempty"`
SNMPTrapV1Comm1 string `json:"snmptrap_v1_comm1,omitempty"`
SNMPTrapV1OID1 string `json:"snmptrap_v1_oid1,omitempty"`
PreprocessingSteps []PreprocessingStep `json:"preprocessing_steps,omitempty"`
IsItemPrototype bool `json:"is_item_prototype,omitempty"`
}
ItemObject struct is used to store item operations result
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/item/object
type MediaObject ¶
type MediaObject struct {
MediaID int `json:"mediaid,omitempty"`
MediaTypeID int `json:"mediatypeid,omitempty"`
SendTo []string `json:"sendto,omitempty"`
Active int `json:"active,omitempty"` // has defined consts, see above
Severity int `json:"severity,omitempty"`
Period string `json:"period,omitempty"`
}
MediaObject struct is used to store media operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/user/object#media
type MediatypeGetParams ¶
type MediatypeGetParams struct {
GetParameters
MediatypeIDs []int `json:"mediatypeids,omitempty"`
MediaIDs []int `json:"mediaids,omitempty"`
UserIDs []int `json:"userids,omitempty"`
SelectMessageTemplates SelectQuery `json:"selectMessageTemplates,omitempty"`
SelectUsers SelectQuery `json:"selectUsers,omitempty"`
}
MediatypeGetParams struct is used for mediatype get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/mediatype/get#parameters
type MediatypeMessageTemplateObject ¶
type MediatypeMessageTemplateObject struct {
EventSource int `json:"eventsource"` // has defined consts, see above
Recovery int `json:"recovery"` // has defined consts, see above
Subject string `json:"subject,omitempty"`
Message string `json:"message,omitempty"`
}
MediatypeMessageTemplateObject struct is used for mediatypes message template
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/mediatype/object#message_template
type MediatypeObject ¶
type MediatypeObject struct {
MediatypeID int `json:"mediatypeid,omitempty"`
Name string `json:"name,omitempty"`
Type int `json:"type,omitempty"` // has defined consts, see above
ExecPath string `json:"exec_path,omitempty"`
GsmModem string `json:"gsm_modem,omitempty"`
Passwd string `json:"passwd,omitempty"`
SMTPEmail string `json:"smtp_email,omitempty"`
SMTPHelo string `json:"smtp_helo,omitempty"`
SMTPServer string `json:"smtp_server,omitempty"`
SMTPPort int `json:"smtp_port,omitempty"`
SMTPSecurity int `json:"smtp_security,omitempty"` // has defined consts, see above
SMTPVerifyHost int `json:"smtp_verify_host,omitempty"` // has defined consts, see above
SMTPVerifyPeer int `json:"smtp_verify_peer,omitempty"` // has defined consts, see above
SMTPAuthentication int `json:"smtp_authentication,omitempty"` // has defined consts, see above
Status int `json:"status,omitempty"` // has defined consts, see above
Username string `json:"username,omitempty"`
ExecParams string `json:"exec_params,omitempty"`
MaxSessions int `json:"maxsessions,omitempty"`
MaxAttempts int `json:"maxattempts,omitempty"`
AttemptInterval string `json:"attempt_interval,omitempty"`
ContentType int `json:"content_type,omitempty"` // has defined consts, see above
Script string `json:"script,omitempty"`
Timeout string `json:"timeout,omitempty"`
ProcessTags int `json:"process_tags,omitempty"` // has defined consts, see above
ShowEventMenu int `json:"show_event_menu,omitempty"` // has defined consts, see above
EventMenuURL string `json:"event_menu_url,omitempty"`
EventMenuName string `json:"event_menu_name,omitempty"`
Parameters []MediatypeWebhookParametersObject `json:"parameters,omitempty"`
Description string `json:"description,omitempty"`
MessageTemplates []MediatypeMessageTemplateObject `json:"message_templates,omitempty"`
Users []UserObject `json:"users,omitempty"`
}
MediatypeObject struct is used to store mediatype operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/mediatype/object
type MediatypeWebhookParametersObject ¶
type MediatypeWebhookParametersObject struct {
Name string `json:"name,omitempty"`
Value string `json:"value,omitempty"`
}
MediatypeWebhookParametersObject struct is used for mediatypes webhook parameters
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/mediatype/object#webhook_parameters
type PreprocessingStep ¶
type PreprocessingStep struct {
Type int `json:"type"`
Params string `json:"params"`
ErrorHandler int `json:"error_handler"`
ErrorHandlerParams string `json:"error_handler_params"`
}
PreprocessingStep represents a preprocessing step object.
type ProblemAcknowledgeObject ¶
type ProblemAcknowledgeObject struct {
AcknowledgeID int64 `json:"acknowledgeid,omitempty"`
UserID int64 `json:"userid,omitempty"`
EventID int64 `json:"eventid,omitempty"`
Clock int64 `json:"clock,omitempty"`
Message string `json:"message,omitempty"`
Action EventAcknowledgeActionType `json:"action,omitempty"`
OldSeverity ProblemSeverityType `json:"old_severity,omitempty"`
NewSeverity ProblemSeverityType `json:"new_severity,omitempty"`
SuppressUntil int64 `json:"suppress_until,omitempty"`
TaskID int64 `json:"taskid,omitempty"`
}
type ProblemAcknowledgeType ¶
type ProblemAcknowledgeType int64
const ( ProblemAcknowledgeTypeFalse ProblemAcknowledgeType = 0 ProblemAcknowledgeTypeTrue ProblemAcknowledgeType = 1 )
type ProblemEvalType ¶
type ProblemEvalType int64
const ( ProblemEvalTypeAndOr ProblemEvalType = 0 ProblemEvalTypeOR ProblemEvalType = 2 )
type ProblemGetParams ¶
type ProblemGetParams struct {
GetParameters
EventIDs []int64 `json:"eventids,omitempty"`
GroupIDs []int64 `json:"groupids,omitempty"`
HostIDs []int64 `json:"hostids,omitempty"`
ObjectIDs []int64 `json:"objectids,omitempty"`
ApplicationIDs []int64 `json:"applicationids,omitempty"`
Source ProblemSourceType `json:"source,omitempty"`
Object ProblemObjectType `json:"object,omitempty"`
Acknowledged bool `json:"acknowledged,omitempty"`
Suppressed bool `json:"suppressed,omitempty"`
Severities []ProblemSeverityType `json:"severities,omitempty"`
Evaltype ProblemEvalType `json:"evaltype,omitempty"`
Tags []ProblemTagObject `json:"tags,omitempty"`
Recent bool `json:"recent,omitempty"`
EventIDFrom int64 `json:"eventid_from,omitempty"`
EventIDTill int64 `json:"eventid_till,omitempty"`
TimeFrom int64 `json:"time_from,omitempty"`
TimeTill int64 `json:"time_till,omitempty"`
SelectAcknowledges SelectQuery `json:"selectAcknowledges,omitempty"`
SelectTags SelectQuery `json:"selectTags,omitempty"`
SelectSuppressionData SelectQuery `json:"selectSuppressionData,omitempty"`
SortField []string `json:"sortfield,omitempty"`
}
ProblemGetParams struct is used for problem get requests
see: https://www.zabbix.com/documentation/5.0/en/manual/api/reference/problem/get#parameters
type ProblemObject ¶
type ProblemObject struct {
EventID int64 `json:"eventid,omitempty"`
Source ProblemSourceType `json:"source,omitempty"`
Object ProblemObjectType `json:"object,omitempty"`
ObjectID int64 `json:"objectid,omitempty"`
Clock int64 `json:"clock,omitempty"`
Ns int64 `json:"ns,omitempty"`
REventID int64 `json:"r_eventid,omitempty"`
RClock int64 `json:"r_clock,omitempty"`
RNs int64 `json:"r_ns,omitempty"`
CauseEventID int64 `json:"cause_eventid,omitempty"`
CorrelationID int64 `json:"correlationid,omitempty"`
UserID int64 `json:"userid,omitempty"`
Name string `json:"name,omitempty"`
Acknowledged ProblemAcknowledgeType `json:"acknowledged,omitempty"`
Severity ProblemSeverityType `json:"severity,omitempty"`
Suppressed ProblemSuppressedType `json:"suppressed,omitempty"`
OpData string `json:"opdata,omitempty"`
URLs []ProblemMediaTypeURLObject `json:"urls,omitempty"`
Acknowledges []ProblemAcknowledgeObject `json:"acknowledges,omitempty"`
Tags []ProblemTagObject `json:"tags,omitempty"`
Suppression []ProblemSuppressionObject `json:"suppression_data,omitempty"`
}
ProblemObject struct is used to store problem operations results
see: https://www.zabbix.com/documentation/5.0/en/manual/api/reference/problem/object
type ProblemObjectType ¶
type ProblemObjectType int64
const ( ProblemObjectTypeTrigger ProblemObjectType = 0 ProblemObjectTypeItem ProblemObjectType = 4 ProblemObjectTypeLLDRule ProblemObjectType = 5 ProblemObjectTypeService ProblemObjectType = 6 )
type ProblemSeverityType ¶
type ProblemSeverityType int64
const ( ProblemSeverityTypeNotClassified ProblemSeverityType = 0 ProblemSeverityTypeInformation ProblemSeverityType = 1 ProblemSeverityTypeWarning ProblemSeverityType = 2 ProblemSeverityTypeAverage ProblemSeverityType = 3 ProblemSeverityTypeHigh ProblemSeverityType = 4 ProblemSeverityTypeDisaster ProblemSeverityType = 5 )
type ProblemSourceType ¶
type ProblemSourceType int64
const ( ProblemSourceTypeTrigger ProblemSourceType = 0 ProblemSourceTypeInternal ProblemSourceType = 3 ProblemSourceTypeServiceStatusUpdate ProblemSourceType = 4 )
type ProblemSuppressedType ¶
type ProblemSuppressedType int64
const ( ProblemSuppressedTypeNormalState ProblemSuppressedType = 0 ProblemSuppressedTypeSuppressed ProblemSuppressedType = 1 )
type ProblemTagObject ¶
type QueryField ¶
QueryField represents a query field object.
type TemplateGetParams ¶
type TemplateGetParams struct {
GetParameters
TemplateIDs []int `json:"templateids,omitempty"`
GroupIDs []int `json:"groupids,omitempty"`
ParentTemplateIDs []int `json:"parentTemplateids,omitempty"`
HostIDs []int `json:"hostids,omitempty"`
GraphIDs []int `json:"graphids,omitempty"`
ItemIDs []int `json:"itemids,omitempty"`
TriggerIDs []int `json:"triggerids,omitempty"`
WithItems bool `json:"with_items,omitempty"`
WithTriggers bool `json:"with_triggers,omitempty"`
WithGraphs bool `json:"with_graphs,omitempty"`
WithHttptests bool `json:"with_httptests,omitempty"`
Evaltype int `json:"evaltype,omitempty"` // has defined consts, see above
Tags []TemplateTagObject `json:"tags,omitempty"`
SelectGroups SelectQuery `json:"selectGroups,omitempty"`
SelectTags SelectQuery `json:"selectTags,omitempty"`
SelectHosts SelectQuery `json:"selectHosts,omitempty"`
SelectTemplates SelectQuery `json:"selectTemplates,omitempty"`
SelectParentTemplates SelectQuery `json:"selectParentTemplates,omitempty"`
SelectMacros SelectQuery `json:"selectMacros,omitempty"`
}
TemplateGetParams struct is used for template get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/template/get#parameters
type TemplateObject ¶
type TemplateObject struct {
TemplateID int `json:"templateid,omitempty"`
Host string `json:"host,omitempty"`
Description string `json:"description,omitempty"`
Name string `json:"name,omitempty"`
Groups []HostgroupObject `json:"groups,omitempty"`
Tags []TemplateTagObject `json:"tags,omitempty"`
Templates []TemplateObject `json:"templates,omitempty"`
ParentTemplates []TemplateObject `json:"parentTemplates,omitempty"`
Macros []UsermacroObject `json:"macros,omitempty"`
Hosts []HostObject `json:"hosts,omitempty"`
}
TemplateObject struct is used to store template operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/template/object
type TemplateTagObject ¶
type TemplateTagObject struct {
Tag string `json:"tag,omitempty"`
Value string `json:"value,omitempty"`
Operator int `json:"operator,omitempty"` // Used for `get` operations, has defined consts, see above
}
TemplateTagObject struct is used to store template tag data
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/template/object#template_tag
type UserDataObject ¶
type UserDataObject struct {
DebugMode bool `json:"debug_mode,omitempty"`
GUIAccess int `json:"gui_access,omitempty"`
SessionID string `json:"sessionid,omitempty"`
UserIP string `json:"userip,omitempty"`
}
UserDataObject struct is used to store authenticated user additional info
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/user/login#return_values
type UserGetParams ¶
type UserGetParams struct {
GetParameters
MediaIDs []int `json:"mediaids,omitempty"`
NediatypeIDs []int `json:"mediatypeids,omitempty"`
UserIDs []int `json:"userids,omitempty"`
UsrgrpIDs []int `json:"usrgrpids,omitempty"`
GetAccess bool `json:"getAccess,omitempty"`
SelectMedias SelectQuery `json:"selectMedias,omitempty"`
SelectMediatypes SelectQuery `json:"selectMediatypes,omitempty"`
SelectUsrgrps SelectQuery `json:"selectUsrgrps,omitempty"`
}
UserGetParams struct is used for user get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/user/get#parameters
type UserLoginParams ¶
type UserLoginParams struct {
User string `json:"user"`
Password string `json:"password"`
UserData string `json:"userData,omitempty"`
}
UserLoginParams struct is used for login requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/user/login#parameters
type UserObject ¶
type UserObject struct {
UserID int `json:"userid,omitempty"`
Alias string `json:"alias,omitempty"`
AttemptClock int `json:"attempt_clock,omitempty"`
AttemptFailed int `json:"attempt_failed,omitempty"`
AttemptIP string `json:"attempt_ip,omitempty"`
AutoLogin int `json:"autologin,omitempty"` // has defined consts, see above
AutoLogout string `json:"autologout"`
Lang string `json:"lang,omitempty"`
Name string `json:"name,omitempty"`
Refresh string `json:"refresh,omitempty"`
RowsPerPage int `json:"rows_per_page,omitempty"`
Surname string `json:"surname,omitempty"`
Theme string `json:"theme,omitempty"` // has defined consts, see above
Type int `json:"type,omitempty"` // has defined consts, see above
URL string `json:"url,omitempty"`
// used for user.login
UserDataObject
Medias []MediaObject `json:"medias,omitempty"`
Mediatypes []MediatypeObject `json:"mediatypes,omitempty"`
Usrgrps []UsergroupObject `json:"usrgrps,omitempty"`
// used when new user created
UserMedias []MediaObject `json:"user_medias,omitempty"`
Passwd string `json:"passwd,omitempty"`
}
UserObject struct is used to store user operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/user/object
type UsergroupGetParams ¶
type UsergroupGetParams struct {
GetParameters
Status []int `json:"status,omitempty"`
UserIDs []int `json:"userids,omitempty"`
UsrgrpIDs []int `json:"usrgrpids,omitempty"`
WithGuiAccess []int `json:"with_gui_access,omitempty"`
SelectTagFilters SelectQuery `json:"selectTagFilters,omitempty"`
SelectUsers SelectQuery `json:"selectUsers,omitempty"`
SelectRights SelectQuery `json:"selectRights,omitempty"`
}
UsergroupGetParams struct is used for usergroup get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/usergroup/get#parameters
type UsergroupObject ¶
type UsergroupObject struct {
UsrgrpID int `json:"usrgrpid,omitempty"`
Name string `json:"name,omitempty"`
DebugMode int `json:"debug_mode,omitempty"` // has defined consts, see above
GuiAccess int `json:"gui_access,omitempty"` // has defined consts, see above
UsersStatus int `json:"users_status,omitempty"` // has defined consts, see above
Users []UserObject `json:"users,omitempty"`
Rights []UsergroupPermissionObject `json:"rights,omitempty"`
TagFilters []UsergroupTagBasedPermissionObject `json:"tag_filters,omitempty"`
// used when new usergroup created or updated
UserIDs []int `json:"userids,omitempty"`
}
UsergroupObject struct is used to store usergroup operations results
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/usergroup/object#user_group
type UsergroupPermissionObject ¶
type UsergroupPermissionObject struct {
ID int `json:"id"`
Permission int `json:"permission"` // has defined consts, see above
}
UsergroupPermissionObject struct is used to store usergroup permissions
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/usergroup/object#permission
type UsergroupTagBasedPermissionObject ¶
type UsergroupTagBasedPermissionObject struct {
GroupID int `json:"groupid,omitempty"`
Tag string `json:"tag,omitempty"`
Value string `json:"value,omitempty"`
}
UsergroupTagBasedPermissionObject struct is used to store usergroup tag based permission
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/usergroup/object#tag_based_permission
type UsermacroGetParams ¶
type UsermacroGetParams struct {
GetParameters
Globalmacro bool `json:"globalmacro,omitempty"`
GlobalmacroIDs []int `json:"globalmacroids,omitempty"`
GroupIDs []int `json:"groupids,omitempty"`
HostIDs []int `json:"hostids,omitempty"`
HostmacroIDs []int `json:"hostmacroids,omitempty"`
TemplateIDs []int `json:"templateids,omitempty"`
SelectGroups SelectQuery `json:"selectGroups,omitempty"`
SelectHosts SelectQuery `json:"selectHosts,omitempty"`
SelectTemplates SelectQuery `json:"selectTemplates,omitempty"`
}
UsermacroGetParams struct is used for hostmacro get requests
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/usermacro/get#parameters
type UsermacroObject ¶
type UsermacroObject struct {
// Gobal macro fields only
GlobalmacroID int `json:"globalmacroid,omitempty"`
// Host macro fields only
HostmacroID int `json:"hostmacroid,omitempty"`
HostID int `json:"hostid,omitempty"`
// Common fields
Macro string `json:"macro,omitempty"`
Value string `json:"value,omitempty"`
Type int `json:"type,omitempty"` // has defined consts, see above
Description string `json:"description,omitempty"`
Groups []HostgroupObject `json:"groups,omitempty"`
Hosts []HostObject `json:"hosts,omitempty"`
Templates []TemplateObject `json:"templates,omitempty"`
}
UsermacroObject struct is used to store hostmacro and globalmacro operations results. In API docs Global and Host it is a two different object types that are joined in this package into one object `UsermacroObject` that includes fields form both API objects. The reason is the some other objects do not separates this types.
see: https://www.zabbix.com/documentation/5.0/manual/api/reference/usermacro/object#host_macro and https://www.zabbix.com/documentation/5.0/manual/api/reference/usermacro/object#global_macro