intitools

package
v0.6.2 Latest Latest
Warning

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

Go to latest
Published: Nov 16, 2023 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ApiURL   = "https://app.intigriti.com/api"
	AppURL   = "https://app.intigriti.com"
	LoginURL = "https://login.intigriti.com"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Activity

type Activity struct {
	Discriminator   int            `json:"discriminator"`
	Newstatusid     int            `json:"newStatusId"`
	Oldstatusid     int            `json:"oldStatusId"`
	Trigger         int            `json:"trigger"`
	Title           string         `json:"title"`
	Description     string         `json:"description"`
	Newstate        ResponseState  `json:"newState"`
	User            ResponseUser   `json:"user"`
	UserName        string         `json:"username"`
	Newseverityid   int            `json:"newSeverityId"`
	NewPayoutAmount ResponsePayout `json:"newPayoutAmount"`
	NewPayoutType   int            `json:"newPayoutType"`
	Submissioncode  string         `json:"submissionCode"`
	Submissiontitle string         `json:"submissionTitle"`
	CreatedAt       int64          `json:"createdAt"`
	Programid       string         `json:"programId"`
	Programlogoid   string         `json:"programLogoId"`
	Programname     string         `json:"programName"`
	Programhandle   string         `json:"programHandle"`
	Companyhandle   string         `json:"companyHandle"`
	Newendpoint     string         `json:"newEndpointVulnerableComponent"`
}

type ActivityList

type ActivityList struct {
	Completed  bool       `json:"completed"`
	Activities []Activity `json:"activities"`
}

type ActivityOptions

type ActivityOptions struct {
	ProgramId          string
	ShowHiddenPrograms bool
	StartDate          int64
}

type Client

type Client struct {
	ApiURL   string
	AppURL   string
	LoginURL string

	Authenticated bool

	LastViewed  int64
	WebhookURL  string
	Ratelimiter *rate.Limiter
	HTTPClient  *http.Client
	HttpCtx     context.Context
	// contains filtered or unexported fields
}

func NewClient

func NewClient(username string, password string, secret string, rl *rate.Limiter) *Client

func (*Client) Authenticate

func (c *Client) Authenticate() error

func (*Client) CheckActivity

func (c *Client) CheckActivity() (int, error)

func (*Client) DiscordFormatActivity

func (c *Client) DiscordFormatActivity(a Activity) (string, error)

func (*Client) DiscordSend

func (c *Client) DiscordSend(ctx context.Context, message string) error

func (*Client) GetActivities

func (c *Client) GetActivities(ctx context.Context) (*ActivityList, error)

func (*Client) GetClosedState

func (c *Client) GetClosedState(state int) string

func (*Client) GetEndpointTier added in v0.6.0

func (c *Client) GetEndpointTier(tierId int) string

func (*Client) GetEndpointType added in v0.6.0

func (c *Client) GetEndpointType(typeId int) string

func (*Client) GetProgramContentDiff added in v0.6.0

func (c *Client) GetProgramContentDiff(a Activity, field string) string

func (*Client) GetProgramDomainsDiff added in v0.6.0

func (c *Client) GetProgramDomainsDiff(a Activity) string

func (*Client) GetProgramRulesDiff added in v0.6.0

func (c *Client) GetProgramRulesDiff(a Activity) string

func (*Client) GetProgramState

func (c *Client) GetProgramState(program int) string

func (*Client) GetSeverity

func (c *Client) GetSeverity(severity int) string

func (*Client) GetSubmissionState

func (c *Client) GetSubmissionState(state int) string

func (*Client) SlackFormatActivity

func (c *Client) SlackFormatActivity(a Activity) (string, error)

func (*Client) SlackSend

func (c *Client) SlackSend(message string) error

type Program

type Program struct {
	ProgramId               string                `json:"programId"`
	Status                  int                   `json:"status"`
	ConfidentialityLevel    int                   `json:"confidentialityLevel"`
	CompanyHandle           string                `json:"companyHandle"`
	CompanyName             string                `json:"companyName"`
	CompanySustainable      bool                  `json:"companySustainable"`
	Handle                  string                `json:"handle"`
	Name                    string                `json:"name"`
	Description             string                `json:"description"`
	MinBounty               string                `json:"minBounty"`
	MaxBounty               string                `json:"maxBounty"`
	LogoId                  string                `json:"logoId"`
	IdentityCheckedRequired bool                  `json:"identityCheckedRequired"`
	AwardRep                bool                  `json:"awardRep"`
	SkipTriage              bool                  `json:"skipTriage"`
	View                    int                   `json:"view"`
	OutScopes               []ProgramChanges      `json:"outOfScopes"`
	InScopes                []ProgramChanges      `json:"inScopes"`
	RulesOfEngagement       []ProgramRulesChanges `json:"rulesOfEngagements"`
	Faqs                    []ProgramChanges      `json:"faqs"`
	SeverityAssessments     []ProgramChanges      `json:"severityAssessments"`
	Domains                 []ProgramDomains      `json:"domains"`
}

type ProgramChanges added in v0.6.0

type ProgramChanges struct {
	CreatedAt int64                 `json:"createdAt"`
	Content   ProgramChangesContent `json:"content"`
}

type ProgramChangesContent added in v0.6.0

type ProgramChangesContent struct {
	Content string `json:"content"`
}

type ProgramChangesContentContent added in v0.6.0

type ProgramChangesContentContent struct {
	Description string `json:"description"`
}

type ProgramDomains added in v0.6.0

type ProgramDomains struct {
	CreatedAt int64                   `json:"createdAt"`
	Content   []ProgramDomainsContent `json:"content"`
}

type ProgramDomainsContent added in v0.6.0

type ProgramDomainsContent struct {
	Id           string `json:"id"`
	Type         int    `json:"type"`
	Endpoint     string `json:"endpoint"`
	BountyTierId int    `json:"bountyTierId"`
	Description  string `json:"description"`
}

type ProgramRulesChanges added in v0.6.0

type ProgramRulesChanges struct {
	CreatedAt int64                      `json:"createdAt"`
	Content   ProgramRulesChangesContent `json:"content"`
}

type ProgramRulesChangesContent added in v0.6.0

type ProgramRulesChangesContent struct {
	Content ProgramChangesContentContent `json:"content"`
}

type ResponsePayout added in v0.3.0

type ResponsePayout struct {
	Value    float32 `json:"value"`
	Currency string  `json:"currency"`
}

type ResponseState

type ResponseState struct {
	Status              int    `json:"status"`
	Closereason         int    `json:"closeReason"`
	Duplicatesubmission string `json:"duplicateSubmission"`
}

type ResponseUser

type ResponseUser struct {
	Role     string `json:"role"`
	Email    string `json:"email"`
	Userid   string `json:"userId"`
	Avatarid string `json:"avatarId"`
	Username string `json:"userName"`
}

Jump to

Keyboard shortcuts

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