assets

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Mar 15, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AgentType

type AgentType string

Type of Red Cloak endpoint agent.

const (
	AgentTypeEndpointRedcloak       AgentType = "ENDPOINT_REDCLOAK"
	AgentTypeEndpointCarbonBlack    AgentType = "ENDPOINT_CARBON_BLACK"
	AgentTypeEndpointCrowdStrike    AgentType = "ENDPOINT_CROWD_STRIKE"
	AgentTypeEndpointMicrosoftAtp   AgentType = "ENDPOINT_MICROSOFT_ATP"
	AgentTypeEndpointCarbonBlackPsc AgentType = "ENDPOINT_CARBON_BLACK_PSC"
)

type Asset

type Asset struct {
	ID                 string            `json:"id"`
	HostId             string            `json:"hostId"`
	Rn                 string            `json:"rn"`
	TenantId           string            `json:"tenantId"`
	SensorTenant       string            `json:"sensorTenant"`
	SensorId           string            `json:"sensorId"`
	IngestTime         time.Time         `json:"ingestTime"`
	CreatedAt          time.Time         `json:"createdAt"`
	UpdatedAt          time.Time         `json:"updatedAt"`
	DeletedAt          *time.Time        `json:"deletedAt"`
	BiosSerial         *string           `json:"biosSerial"`
	FirstDiskSerial    *string           `json:"firstDiskSerial"`
	SystemVolumeSerial *string           `json:"systemVolumeSerial"`
	SensorVersion      *string           `json:"sensorVersion"`
	EndpointType       *string           `json:"endpointType"`
	EndpointPlatform   *string           `json:"endpointPlatform"`
	Hostnames          []Hostname        `json:"hostnames"`
	EthernetAddresses  []EthernetAddress `json:"ethernetAddresses"`
	IpAddresses        []IpAddress       `json:"ipAddresses"`
	Users              []User            `json:"users"`
	Architecture       *string           `json:"architecture"`
	OsFamily           *string           `json:"osFamily"`
	OsVersion          *string           `json:"osVersion"`
	OsDistributor      *string           `json:"osDistributor"`
	OsRelease          *string           `json:"osRelease"`
	SystemType         *string           `json:"systemType"`
	OsCodename         *string           `json:"osCodename"`
	KernelRelease      *string           `json:"kernelRelease"`
	KernelVersion      *string           `json:"kernelVersion"`
	Tags               []Tag             `json:"tags"`
}

Describes an Asset in Red Cloak Taegis.

type AssetCounts

type AssetCounts struct {
	Count int `json:"count"`
}

Count of assets

type AssetCountsByEndpointType

type AssetCountsByEndpointType struct {
	EndpointType string `json:"endpointType"`
	Count        int    `json:"count"`
}

type AssetHistory

type AssetHistory struct {
	ID        string    `json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
	AssetId   string    `json:"assetId"`
	TenantId  string    `json:"tenantId"`
	HostId    string    `json:"hostId"`
	Action    string    `json:"action"`
	Who       string    `json:"who"`
	Reason    string    `json:"reason"`
}

Describes the history of an asset.

type AssetHistoryContact

type AssetHistoryContact struct {
	Email *string `json:"email"`
	Name  *string `json:"name"`
	Sub   *string `json:"sub"`
}

Describes the contact of an asset history.

type AssetHistoryEvent

type AssetHistoryEvent struct {
	DomainName *string `json:"domainName"`
	HostName   *string `json:"hostName"`
}

Describes the event of an asset history.

type AssetHistoryId

type AssetHistoryId struct {
	HostId     *string `json:"hostId"`
	InstanceId *string `json:"instanceId"`
}

Contains the host id and instance id of an asset history.

type AssetInput

type AssetInput struct {
	ID   string   `json:"id"`
	Tags []string `json:"tags"`
}

Describes the input of Asset data for creating an Asset Tag

type AssetRedCloakHistory

type AssetRedCloakHistory struct {
	Action        *string              `json:"action"`
	AllowedDomain []string             `json:"allowedDomain"`
	AssetId       *string              `json:"assetId"`
	Contact       *AssetHistoryContact `json:"contact"`
	CreatedAt     *string              `json:"createdAt"`
	Event         *AssetHistoryEvent   `json:"event"`
	ID            *AssetHistoryId      `json:"id"`
	Reason        *string              `json:"reason"`
	TenantId      *string              `json:"tenantId"`
}

Describes the Red Cloak agent history of an asset.

type AssetStateFilter

type AssetStateFilter string
const (
	AssetStateFilterAll       AssetStateFilter = "All"
	AssetStateFilterDeleted   AssetStateFilter = "Deleted"
	AssetStateFilterActive    AssetStateFilter = "Active"
	AssetStateFilterUnhealthy AssetStateFilter = "Unhealthy"
)

type AssetsExportOutput

type AssetsExportOutput struct {
	ColumnDef  []string `json:"columnDef"`
	Rows       []string `json:"rows"`
	TotalCount *int     `json:"totalCount"`
}

type AssetsOrderByInput

type AssetsOrderByInput string

Describes the enums available for the ordering of the <code>AllAssets</code> and <code>SearchAssets</code> queries.

const (
	AssetsOrderByInputHostname      AssetsOrderByInput = "hostname"
	AssetsOrderByInputIpAddress     AssetsOrderByInput = "ip_address"
	AssetsOrderByInputMacAddress    AssetsOrderByInput = "mac_address"
	AssetsOrderByInputTag           AssetsOrderByInput = "tag"
	AssetsOrderByInputUsername      AssetsOrderByInput = "username"
	AssetsOrderByInputOsVersion     AssetsOrderByInput = "os_version"
	AssetsOrderByInputEndpointType  AssetsOrderByInput = "endpoint_type"
	AssetsOrderByInputCreatedAt     AssetsOrderByInput = "created_at"
	AssetsOrderByInputUpdatedAt     AssetsOrderByInput = "updated_at"
	AssetsOrderByInputDeletedAt     AssetsOrderByInput = "deleted_at"
	AssetsOrderByInputOsFamily      AssetsOrderByInput = "os_family"
	AssetsOrderByInputOsDistributor AssetsOrderByInput = "os_distributor"
)

type AssetsOrderDirectionInput

type AssetsOrderDirectionInput string

Describes the order direction available for the order field of the <code>AllAssets</code> and <code>SearchAssets</code> queries.

const (
	AssetsOrderDirectionInputAsc  AssetsOrderDirectionInput = "asc"
	AssetsOrderDirectionInputDesc AssetsOrderDirectionInput = "desc"
)

type AssetsResult

type AssetsResult struct {
	TotalResults int     `json:"totalResults"`
	Offset       int     `json:"offset"`
	Limit        int     `json:"limit"`
	Assets       []Asset `json:"assets"`
}

Describes the return type of the <code>AllAssets</code> and <code>SearchAssets</code> queries.

type Client

type Client struct {
	// contains filtered or unexported fields
}

Client provides an easy to use Go client to the Assets API

func New

func New(url string, opts ...client.Option) *Client

New returns a new Client, ready for use

func (*Client) CreateAssetTag

func (c *Client) CreateAssetTag(hostId string, tag string, opts ...graphql.RequestOption) (Tag, error)

CreateAssetTag will create a new tag for an asseti

func (*Client) CreateAssetTagCtx

func (c *Client) CreateAssetTagCtx(ctx context.Context, hostId string, tag string, opts ...graphql.RequestOption) (Tag, error)

CreateAssetTagCtx will create a new tag for an asseti

func (*Client) DeleteAssetTag

func (c *Client) DeleteAssetTag(id string, opts ...graphql.RequestOption) (*Tag, error)

DeleteAssetTag will deletes a tag for an asset

func (*Client) DeleteAssetTagCtx

func (c *Client) DeleteAssetTagCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (*Tag, error)

DeleteAssetTagCtx will deletes a tag for an asset

func (*Client) DeleteAssets

func (c *Client) DeleteAssets(ids []string, undelete *bool, opts ...graphql.RequestOption) (*bool, error)

DeleteAssets will delete or un-delete asset

func (*Client) DeleteAssetsCtx

func (c *Client) DeleteAssetsCtx(ctx context.Context, ids []string, undelete *bool, opts ...graphql.RequestOption) (*bool, error)

DeleteAssetsCtx will delete or un-delete asset

func (*Client) GetAllAssetHistories

func (c *Client) GetAllAssetHistories(offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetHistory, error)

GetAllAssetHistories will get a list of asset histories for the tenant

func (*Client) GetAllAssetHistoriesCtx

func (c *Client) GetAllAssetHistoriesCtx(ctx context.Context, offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetHistory, error)

GetAllAssetHistoriesCtx will get a list of asset histories for the tenant

func (*Client) GetAllAssets

func (c *Client) GetAllAssets(params *GetAllAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)

GetAllAssets will get a list of assets

func (*Client) GetAllAssetsCount

func (c *Client) GetAllAssetsCount(opts ...graphql.RequestOption) (AssetCounts, error)

GetAllAssetsCount will count of all assets

func (*Client) GetAllAssetsCountCtx

func (c *Client) GetAllAssetsCountCtx(ctx context.Context, opts ...graphql.RequestOption) (AssetCounts, error)

GetAllAssetsCountCtx will count of all assets

func (*Client) GetAllAssetsCtx

func (c *Client) GetAllAssetsCtx(ctx context.Context, params *GetAllAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)

GetAllAssetsCtx will get a list of assets

func (*Client) GetAllAssetsExport

func (c *Client) GetAllAssetsExport(offset *int, limit *int, opts ...graphql.RequestOption) (*AssetsResult, error)

GetAllAssetsExport will get a list of assets for export to CSV

func (*Client) GetAllAssetsExportCtx

func (c *Client) GetAllAssetsExportCtx(ctx context.Context, offset *int, limit *int, opts ...graphql.RequestOption) (*AssetsResult, error)

GetAllAssetsExportCtx will get a list of assets for export to CSV

func (*Client) GetAllUniqueTags

func (c *Client) GetAllUniqueTags(opts ...graphql.RequestOption) ([]string, error)

GetAllUniqueTags will get a list of all unique tags

func (*Client) GetAllUniqueTagsCtx

func (c *Client) GetAllUniqueTagsCtx(ctx context.Context, opts ...graphql.RequestOption) ([]string, error)

GetAllUniqueTagsCtx will get a list of all unique tags

func (*Client) GetAsset

func (c *Client) GetAsset(id string, opts ...graphql.RequestOption) (Asset, error)

GetAsset will get an asset by id

func (*Client) GetAssetCount

func (c *Client) GetAssetCount(endpoint_type *AgentType, opts ...graphql.RequestOption) (AssetCounts, error)

GetAssetCount will count of assets of a specific endpoint_type

func (*Client) GetAssetCountCtx

func (c *Client) GetAssetCountCtx(ctx context.Context, endpoint_type *AgentType, opts ...graphql.RequestOption) (AssetCounts, error)

GetAssetCountCtx will count of assets of a specific endpoint_type

func (*Client) GetAssetCountGroupByEndpointType

func (c *Client) GetAssetCountGroupByEndpointType(opts ...graphql.RequestOption) ([]*AssetCountsByEndpointType, error)

GetAssetCountGroupByEndpointType will count of assets of grouped by endpoint_type

func (*Client) GetAssetCountGroupByEndpointTypeCtx

func (c *Client) GetAssetCountGroupByEndpointTypeCtx(ctx context.Context, opts ...graphql.RequestOption) ([]*AssetCountsByEndpointType, error)

GetAssetCountGroupByEndpointTypeCtx will count of assets of grouped by endpoint_type

func (*Client) GetAssetCtx

func (c *Client) GetAssetCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (Asset, error)

GetAssetCtx will get an asset by id

func (*Client) GetAssetEndpointInfo

func (c *Client) GetAssetEndpointInfo(id string, opts ...graphql.RequestOption) (EndpointInfo, error)

GetAssetEndpointInfo will get RedCloak endpoint info by id

func (*Client) GetAssetEndpointInfoCtx

func (c *Client) GetAssetEndpointInfoCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (EndpointInfo, error)

GetAssetEndpointInfoCtx will get RedCloak endpoint info by id

func (*Client) GetAssetRedCloakHistories

func (c *Client) GetAssetRedCloakHistories(id string, offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetRedCloakHistory, error)

GetAssetRedCloakHistories will get history of actions on an asset by id (includes RedCloack history)

func (*Client) GetAssetRedCloakHistoriesCtx

func (c *Client) GetAssetRedCloakHistoriesCtx(ctx context.Context, id string, offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetRedCloakHistory, error)

GetAssetRedCloakHistoriesCtx will get history of actions on an asset by id (includes RedCloack history)

func (*Client) GetAssetsByHostIds

func (c *Client) GetAssetsByHostIds(hostIds []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByHostIds will bulk lookup by hostIds

func (*Client) GetAssetsByHostIdsCtx

func (c *Client) GetAssetsByHostIdsCtx(ctx context.Context, hostIds []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByHostIdsCtx will bulk lookup by hostIds

func (*Client) GetAssetsByIds

func (c *Client) GetAssetsByIds(ids []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByIds will bulk lookup by ids

func (*Client) GetAssetsByIdsCtx

func (c *Client) GetAssetsByIdsCtx(ctx context.Context, ids []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByIdsCtx will bulk lookup by ids

func (*Client) GetAssetsByIpAddresses

func (c *Client) GetAssetsByIpAddresses(ipAddresses []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByIpAddresses will bulk lookup by ipAddress

func (*Client) GetAssetsByIpAddressesCtx

func (c *Client) GetAssetsByIpAddressesCtx(ctx context.Context, ipAddresses []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByIpAddressesCtx will bulk lookup by ipAddress

func (*Client) GetAssetsByTag

func (c *Client) GetAssetsByTag(tags []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByTag will get a list of assets with tag

func (*Client) GetAssetsByTagCtx

func (c *Client) GetAssetsByTagCtx(ctx context.Context, tags []string, opts ...graphql.RequestOption) ([]*Asset, error)

GetAssetsByTagCtx will get a list of assets with tag

func (*Client) GetExportSearchAssets

func (c *Client) GetExportSearchAssets(input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsExportOutput, error)

GetExportSearchAssets will export search assets results

func (*Client) GetExportSearchAssetsCtx

func (c *Client) GetExportSearchAssetsCtx(ctx context.Context, input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsExportOutput, error)

GetExportSearchAssetsCtx will export search assets results

func (*Client) GetSearchAssets

func (c *Client) GetSearchAssets(params *GetSearchAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)

GetSearchAssets will search assets. Soon to be deprecated

func (*Client) GetSearchAssetsCtx

func (c *Client) GetSearchAssetsCtx(ctx context.Context, params *GetSearchAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)

GetSearchAssetsCtx will search assets. Soon to be deprecated

func (*Client) GetSearchAssetsV2

func (c *Client) GetSearchAssetsV2(input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsResult, error)

GetSearchAssetsV2 will search assets v2

func (*Client) GetSearchAssetsV2Ctx

func (c *Client) GetSearchAssetsV2Ctx(ctx context.Context, input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsResult, error)

GetSearchAssetsV2Ctx will search assets v2

func (*Client) GetTag

func (c *Client) GetTag(id string, opts ...graphql.RequestOption) (Tag, error)

GetTag will gen an asset tag by id

func (*Client) GetTagCtx

func (c *Client) GetTagCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (Tag, error)

GetTagCtx will gen an asset tag by id

func (*Client) IntegrateAsset

func (c *Client) IntegrateAsset(id string, reason string, opts ...graphql.RequestOption) (Asset, error)

IntegrateAsset will integate an asset by id

func (*Client) IntegrateAssetCtx

func (c *Client) IntegrateAssetCtx(ctx context.Context, id string, reason string, opts ...graphql.RequestOption) (Asset, error)

IntegrateAssetCtx will integate an asset by id

func (*Client) IsolateAsset

func (c *Client) IsolateAsset(id string, reason string, opts ...graphql.RequestOption) (Asset, error)

IsolateAsset will isolate an asset by id

func (*Client) IsolateAssetCtx

func (c *Client) IsolateAssetCtx(ctx context.Context, id string, reason string, opts ...graphql.RequestOption) (Asset, error)

IsolateAssetCtx will isolate an asset by id

func (*Client) UpdateAsset

func (c *Client) UpdateAsset(assetInput *AssetInput, opts ...graphql.RequestOption) (Asset, error)

func (*Client) UpdateAssetCtx

func (c *Client) UpdateAssetCtx(ctx context.Context, assetInput *AssetInput, opts ...graphql.RequestOption) (Asset, error)

func (*Client) UpdateAssetTag

func (c *Client) UpdateAssetTag(id string, tag string, opts ...graphql.RequestOption) (Tag, error)

UpdateAssetTag will updates a tag for an asset

func (*Client) UpdateAssetTagCtx

func (c *Client) UpdateAssetTagCtx(ctx context.Context, id string, tag string, opts ...graphql.RequestOption) (Tag, error)

UpdateAssetTagCtx will updates a tag for an asset

type EndpointInfo

type EndpointInfo struct {
	ActualIsolationStatus            *bool              `json:"actualIsolationStatus"`
	AllowedDomain                    []string           `json:"allowedDomain"`
	Color                            *string            `json:"color"`
	DesiredIsolationStatus           *bool              `json:"desiredIsolationStatus"`
	FirstConnectTime                 *string            `json:"firstConnectTime"`
	HostId                           *string            `json:"hostId"`
	HostName                         *string            `json:"hostName"`
	IgnitionDetails                  *IgnitionDetails   `json:"ignitionDetails"`
	LastConnectAddress               *string            `json:"lastConnectAddress"`
	LastConnectServer                *string            `json:"lastConnectServer"`
	LastConnectTime                  *string            `json:"lastConnectTime"`
	LastCrashCheck                   *string            `json:"lastCrashCheck"`
	LastModuleStatusTime             *string            `json:"lastModuleStatusTime"`
	LastPredicateAuthtap             *string            `json:"lastPredicateAuthtap"`
	LastPredicateCyclorama           *string            `json:"lastPredicateCyclorama"`
	LastPredicateEntwine             *string            `json:"lastPredicateEntwine"`
	LastPredicateGroundling          *string            `json:"lastPredicateGroundling"`
	LastPredicateHostel              *string            `json:"lastPredicateHostel"`
	LastPredicateLacuna              *string            `json:"lastPredicateLacuna"`
	LastPredicateMukluk              *string            `json:"lastPredicateMukluk"`
	LastPredicatePeriodicscanControl *string            `json:"lastPredicatePeriodicscanControl"`
	LastPredicatePeriodicscanResult  *string            `json:"lastPredicatePeriodicscanResult"`
	LastPredicateProcwall            *string            `json:"lastPredicateProcwall"`
	LastPredicateSystemInformation   *string            `json:"lastPredicateSystemInformation"`
	ModuleHealth                     []ModuleHealth     `json:"moduleHealth"`
	ModuleStatus                     []ModuleStatus     `json:"moduleStatus"`
	NotableEventCount                *int               `json:"notableEventCount"`
	SensorVersion                    *int               `json:"sensorVersion"`
	SystemInformation                *SystemInformation `json:"systemInformation"`
}

Describes the endpoint information of a Red Cloak agent asset.

type EthernetAddress

type EthernetAddress struct {
	ID        string    `json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
	HostId    string    `json:"hostId"`
	Mac       string    `json:"mac"`
}

Describes the ethernet address of an asset.

type GetAllAssetsArguments

type GetAllAssetsArguments struct {
	Offset           *int                       `json:"offset"`
	Limit            *int                       `json:"limit"`
	OrderBy          *AssetsOrderByInput        `json:"order_by"`
	OrderDirection   *AssetsOrderDirectionInput `json:"order_direction"`
	FilterAssetState *AssetStateFilter          `json:"filter_asset_state"`
}

GetAllAssetsArguments is the parameters for GetAllAssets

type GetSearchAssetsArguments

type GetSearchAssetsArguments struct {
	Offset             *int                       `json:"offset"`
	Limit              *int                       `json:"limit"`
	Hostname           *string                    `json:"hostname"`
	HostId             *string                    `json:"host_id"`
	IpAddress          *string                    `json:"ip_address"`
	MacAddress         *string                    `json:"mac_address"`
	OsVersion          *string                    `json:"os_version"`
	OsFamily           *string                    `json:"os_family"`
	OsDistributor      *string                    `json:"os_distributor"`
	Username           *string                    `json:"username"`
	EndpointType       *string                    `json:"endpoint_type"`
	Tag                *string                    `json:"tag"`
	HostIdPartialMatch *bool                      `json:"host_id_partial_match"`
	OnlyMostRecent     *bool                      `json:"only_most_recent"`
	OrderBy            *AssetsOrderByInput        `json:"order_by"`
	OrderDirection     *AssetsOrderDirectionInput `json:"order_direction"`
	OrSearch           *bool                      `json:"or_search"`
	FilterAssetState   *AssetStateFilter          `json:"filter_asset_state"`
}

GetSearchAssetsArguments is the parameters for GetSearchAssets

type Hostname

type Hostname struct {
	ID        string    `json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
	HostId    string    `json:"hostId"`
	Hostname  string    `json:"hostname"`
}

Describes the hostname of an asset.

type IClient

type IClient interface {
	GetTagCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (Tag, error)
	GetTag(id string, opts ...graphql.RequestOption) (Tag, error)
	GetAssetCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (Asset, error)
	GetAsset(id string, opts ...graphql.RequestOption) (Asset, error)
	GetAssetsByTagCtx(ctx context.Context, tags []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAssetsByTag(tags []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAllUniqueTagsCtx(ctx context.Context, opts ...graphql.RequestOption) ([]string, error)
	GetAllUniqueTags(opts ...graphql.RequestOption) ([]string, error)
	GetAssetEndpointInfoCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (EndpointInfo, error)
	GetAssetEndpointInfo(id string, opts ...graphql.RequestOption) (EndpointInfo, error)
	GetAllAssetsCtx(ctx context.Context, params *GetAllAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetAllAssets(params *GetAllAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetAllAssetsExportCtx(ctx context.Context, offset *int, limit *int, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetAllAssetsExport(offset *int, limit *int, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetAssetCountCtx(ctx context.Context, endpoint_type *AgentType, opts ...graphql.RequestOption) (AssetCounts, error)
	GetAssetCount(endpoint_type *AgentType, opts ...graphql.RequestOption) (AssetCounts, error)
	GetAssetCountGroupByEndpointTypeCtx(ctx context.Context, opts ...graphql.RequestOption) ([]*AssetCountsByEndpointType, error)
	GetAssetCountGroupByEndpointType(opts ...graphql.RequestOption) ([]*AssetCountsByEndpointType, error)
	GetAllAssetsCountCtx(ctx context.Context, opts ...graphql.RequestOption) (AssetCounts, error)
	GetAllAssetsCount(opts ...graphql.RequestOption) (AssetCounts, error)
	GetAssetsByIdsCtx(ctx context.Context, ids []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAssetsByIds(ids []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAssetsByHostIdsCtx(ctx context.Context, hostIds []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAssetsByHostIds(hostIds []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAssetsByIpAddressesCtx(ctx context.Context, ipAddresses []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAssetsByIpAddresses(ipAddresses []string, opts ...graphql.RequestOption) ([]*Asset, error)
	GetAllAssetHistoriesCtx(ctx context.Context, offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetHistory, error)
	GetAllAssetHistories(offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetHistory, error)
	GetAssetRedCloakHistoriesCtx(ctx context.Context, id string, offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetRedCloakHistory, error)
	GetAssetRedCloakHistories(id string, offset *int, limit *int, opts ...graphql.RequestOption) ([]*AssetRedCloakHistory, error)
	GetSearchAssetsCtx(ctx context.Context, params *GetSearchAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetSearchAssets(params *GetSearchAssetsArguments, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetSearchAssetsV2Ctx(ctx context.Context, input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetSearchAssetsV2(input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsResult, error)
	GetExportSearchAssetsCtx(ctx context.Context, input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsExportOutput, error)
	GetExportSearchAssets(input SearchAssetsInput, paginationInput *SearchAssetsPaginationInput, opts ...graphql.RequestOption) (*AssetsExportOutput, error)
	IsolateAssetCtx(ctx context.Context, id string, reason string, opts ...graphql.RequestOption) (Asset, error)
	IsolateAsset(id string, reason string, opts ...graphql.RequestOption) (Asset, error)
	IntegrateAssetCtx(ctx context.Context, id string, reason string, opts ...graphql.RequestOption) (Asset, error)
	IntegrateAsset(id string, reason string, opts ...graphql.RequestOption) (Asset, error)
	DeleteAssetsCtx(ctx context.Context, ids []string, undelete *bool, opts ...graphql.RequestOption) (*bool, error)
	DeleteAssets(ids []string, undelete *bool, opts ...graphql.RequestOption) (*bool, error)
	CreateAssetTagCtx(ctx context.Context, hostId string, tag string, opts ...graphql.RequestOption) (Tag, error)
	CreateAssetTag(hostId string, tag string, opts ...graphql.RequestOption) (Tag, error)
	UpdateAssetTagCtx(ctx context.Context, id string, tag string, opts ...graphql.RequestOption) (Tag, error)
	UpdateAssetTag(id string, tag string, opts ...graphql.RequestOption) (Tag, error)
	DeleteAssetTagCtx(ctx context.Context, id string, opts ...graphql.RequestOption) (*Tag, error)
	DeleteAssetTag(id string, opts ...graphql.RequestOption) (*Tag, error)
	UpdateAssetCtx(ctx context.Context, assetInput *AssetInput, opts ...graphql.RequestOption) (Asset, error)
	UpdateAsset(assetInput *AssetInput, opts ...graphql.RequestOption) (Asset, error)
}

IClient can be used to help mock out the Client in tests

type IgnitionDetails

type IgnitionDetails struct {
	IsEndpointConfigExist *bool   `json:"isEndpointConfigExist"`
	RequestStatus         *string `json:"requestStatus"`
}

Describes the ignition details of a Red Cloak agent asset.

type IpAddress

type IpAddress struct {
	ID        string    `json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
	Ip        string    `json:"ip"`
	HostId    string    `json:"hostId"`
}

Describes the IP Address of an asset.

type ModuleHealth

type ModuleHealth struct {
	Enabled           *string `json:"enabled"`
	LastPredicateTime *string `json:"lastPredicateTime"`
	LastRunningTime   *string `json:"lastRunningTime"`
	ModuleColor       *string `json:"moduleColor"`
	ModuleDisplayName *string `json:"moduleDisplayName"`
}

Describes the ModuleHealth of a Red Cloak agent asset.

type ModuleStatus

type ModuleStatus struct {
	Enabled     *bool   `json:"enabled"`
	ModuleName  *string `json:"moduleName"`
	ModuleState *string `json:"moduleState"`
}

Describes the module status of a Red Cloak agent asset.

type SearchAssetsInput

type SearchAssetsInput struct {
	Hostname           *string           `json:"hostname"`
	HostId             *string           `json:"host_id"`
	IpAddress          *string           `json:"ip_address"`
	MacAddress         *string           `json:"mac_address"`
	OsVersion          *string           `json:"os_version"`
	OsFamily           *string           `json:"os_family"`
	OsDistributor      *string           `json:"os_distributor"`
	Username           *string           `json:"username"`
	EndpointType       *string           `json:"endpoint_type"`
	Tag                *string           `json:"tag"`
	HostIdPartialMatch *bool             `json:"host_id_partial_match"`
	OnlyMostRecent     *bool             `json:"only_most_recent"`
	OrSearch           *bool             `json:"or_search"`
	FilterAssetState   *AssetStateFilter `json:"filter_asset_state"`
}

type SearchAssetsPaginationInput

type SearchAssetsPaginationInput struct {
	Offset         *int                       `json:"offset"`
	Limit          *int                       `json:"limit"`
	OrderBy        *AssetsOrderByInput        `json:"order_by"`
	OrderDirection *AssetsOrderDirectionInput `json:"order_direction"`
}

type SystemInformation

type SystemInformation struct {
	Architecture             *string  `json:"architecture"`
	BiosSerial               *string  `json:"biosSerial"`
	EthernetAddress          []string `json:"ethernetAddress"`
	FirstDiskSerial          *string  `json:"firstDiskSerial"`
	HostName                 *string  `json:"hostName"`
	IpAddress                []string `json:"ipAddress"`
	IsServerR2For2003And2008 *bool    `json:"isServerR2For2003And2008"`
	ProductType              *string  `json:"productType"`
	RedcloakVersion          *int     `json:"redcloakVersion"`
	ServicePack              *string  `json:"servicePack"`
	SystemVolumeSerial       *string  `json:"systemVolumeSerial"`
	WindowsVersion           *string  `json:"windowsVersion"`
}

Describes the system information of a Red Cloak agent asset.

type Tag

type Tag struct {
	ID        string    `json:"id"`
	HostId    string    `json:"hostId"`
	TenantId  string    `json:"tenantId"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
	Tag       string    `json:"tag"`
}

Describes the tag data associated with an asset

type UpdateTag

type UpdateTag struct {
	ID       string `json:"id"`
	TenantId string `json:"tenantId"`
	Tag      string `json:"tag"`
}

Describes the tag data associated with an asset

type User

type User struct {
	ID        string    `json:"id"`
	CreatedAt time.Time `json:"createdAt"`
	UpdatedAt time.Time `json:"updatedAt"`
	HostId    string    `json:"hostId"`
	Username  string    `json:"username"`
}

Describes the user of an asset.

Jump to

Keyboard shortcuts

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