ctclient

package
v0.3.12 Latest Latest
Warning

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

Go to latest
Published: Mar 29, 2024 License: MPL-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package ctclient provides a client for interacting with the Kion application.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AssociationChanged

func AssociationChanged(d *schema.ResourceData, fieldname string) ([]int, []int, bool, error)

AssociationChanged returns arrays of which values to change. The fields needs to be at the top level.

func AssociationChangedInt

func AssociationChangedInt(d *schema.ResourceData, fieldname string) (*int, *int, bool, error)

AssociationChangedInt returns an int of a value to change. The fields needs to be at the top level.

func FieldsChanged

func FieldsChanged(iOld interface{}, iNew interface{}, fields []string) (map[string]interface{}, string, bool)

FieldsChanged -

func FilterStringArray

func FilterStringArray(items []string) []string

FilterStringArray -

func FlattenAssociateLabels added in v0.3.6

func FlattenAssociateLabels(d *schema.ResourceData, key string) *[]AssociateLabel

func FlattenBoolArray

func FlattenBoolArray(items []interface{}) []bool

FlattenBoolArray -

func FlattenBoolPointer

func FlattenBoolPointer(d *schema.ResourceData, key string) *bool

FlattenBoolPointer -

func FlattenGenericIDArray

func FlattenGenericIDArray(d *schema.ResourceData, key string) []int

FlattenGenericIDArray -

func FlattenGenericIDPointer

func FlattenGenericIDPointer(d *schema.ResourceData, key string) *[]int

FlattenGenericIDPointer -

func FlattenIntArray

func FlattenIntArray(items []interface{}) []int

FlattenIntArray -

func FlattenIntArrayPointer

func FlattenIntArrayPointer(items []interface{}) *[]int

FlattenIntArrayPointer -

func FlattenIntPointer

func FlattenIntPointer(d *schema.ResourceData, key string) *int

FlattenIntPointer -

func FlattenStringArray

func FlattenStringArray(items []interface{}) []string

FlattenStringArray -

func FlattenStringArrayPointer

func FlattenStringArrayPointer(d *schema.ResourceData, key string) *[]string

FlattenStringArrayPointer -

func FlattenStringPointer

func FlattenStringPointer(d *schema.ResourceData, key string) *string

FlattenStringPointer -

func FlattenTags added in v0.3.4

func FlattenTags(d *schema.ResourceData, key string) *[]Tag

func GenerateAccTestChecksForResourceOwners

func GenerateAccTestChecksForResourceOwners(
	resourceType, resourceName string,
	ownerUserIds, ownerUserGroupIds *[]int,
) (funcs []resource.TestCheckFunc)

GenerateAccTestChecksForResourceOwners returns a list of acceptance test checks for the Owner User & User Group ID slices of a given resource.

func GenerateOwnerClausesForResourceTest

func GenerateOwnerClausesForResourceTest(ownerUserIds, ownerUserGroupIds *[]int) (ownerClauses string)

GenerateOwnerClausesForResourceTest generates a string of owner_users & owner_user_groups clauses to be used in a resource declaration for acceptance tests.

func InflateArrayOfIDs added in v0.3.5

func InflateArrayOfIDs(arr []int) []interface{}

InflateArrayOfIDs - Transforms an array of IDs into a map with an "id" key

func InflateObjectWithID

func InflateObjectWithID(arr []ObjectWithID) []interface{}

InflateObjectWithID -

func InflateSingleObjectWithID

func InflateSingleObjectWithID(single *ObjectWithID) interface{}

InflateSingleObjectWithID -

func InflateTags added in v0.3.4

func InflateTags(arr []Tag) map[string]string

func IsSupportedResourceType added in v0.3.6

func IsSupportedResourceType(resourceType string) bool

func NewRequestError added in v0.3.7

func NewRequestError(statusCode int, err error) error

func OptionalBool added in v0.3.7

func OptionalBool(d *schema.ResourceData, fieldname string) *bool

func OptionalInt added in v0.3.7

func OptionalInt(d *schema.ResourceData, fieldname string) *int

func PutAppLabelIDs added in v0.3.6

func PutAppLabelIDs(c *Client, labels *[]AssociateLabel, resourceType string, resourceID string) error

func ReadResourceLabels added in v0.3.6

func ReadResourceLabels(c *Client, resourceType string, resourceID string) (map[string]interface{}, error)

func TestAccOUGenerateDataSourceDeclarationAll

func TestAccOUGenerateDataSourceDeclarationAll(dataSourceName, localName string) string

TestAccOUGenerateDataSourceDeclarationAll declares a data source to get all items

func TestAccOUGenerateDataSourceDeclarationFilter

func TestAccOUGenerateDataSourceDeclarationFilter(dataSourceName, localName, name string) string

TestAccOUGenerateDataSourceDeclarationFilter declares a data source to get an object that matches the name filter

Types

type AccountCacheListResponse added in v0.3.7

type AccountCacheListResponse struct {
	Data []struct {
		ID                        uint   `json:"id"`
		AccountNumber             string `json:"account_number"`
		Name                      string `json:"account_name"`
		Email                     string `json:"account_email"`
		LinkedRole                string `json:"linked_role"`
		PayerID                   uint   `json:"payer_id"`
		AccountTypeID             uint   `json:"account_type_id"`
		SkipAccessChecking        bool   `json:"skip_access_checking"`
		UseOrgAccountInfo         bool   `json:"use_org_account_info"`
		LinkedAccountNumber       string `json:"linked_account_number"`
		IncludeLinkedAccountSpend bool   `json:"include_linked_account_spend"`
		CARExternalID             string `json:"car_external_id"`
		ServiceExternalID         string `json:"service_external_id"`
		CreatedAt                 string `json:"created_at"`
	} `json:"data"`
	Status int `json:"status"`
}

AccountCacheListResponse for GET /api/v3/account-cache

type AccountCacheNewAWSCreate added in v0.3.7

type AccountCacheNewAWSCreate struct {
	Name                      string                   `json:"account_name"`
	PayerID                   int                      `json:"payer_id"`
	AccountEmail              string                   `json:"account_email,omitempty"`
	CommercialAccountName     string                   `json:"commercial_account_name,omitempty"`
	GovAccountName            string                   `json:"gov_account_name,omitempty"`
	CreateGovcloud            *bool                    `json:"create_govcloud,omitempty"`
	IncludeLinkedAccountSpend *bool                    `json:"include_linked_account_spend,omitempty"`
	LinkedRole                string                   `json:"linked_role,omitempty"`
	OrganizationalUnit        *PayerOrganizationalUnit `json:"organizational_unit,omitempty"`
}

AccountCacheNewAWSCreate for: POST /api/v3/account-cache/create?account-type=aws

type AccountCacheNewAWSImport added in v0.3.7

type AccountCacheNewAWSImport struct {
	AccountEmail              string `json:"account_email,omitempty"`
	Name                      string `json:"account_name"`
	AccountNumber             string `json:"account_number"`
	AccountTypeID             *int   `json:"account_type_id,omitempty"`
	IncludeLinkedAccountSpend *bool  `json:"include_linked_account_spend,omitempty"`
	LinkedAccountNumber       string `json:"linked_aws_account_number,omitempty"`
	LinkedRole                string `json:"linked_role,omitempty"`
	PayerID                   int    `json:"payer_id"`
	SkipAccessChecking        *bool  `json:"skip_access_checking,omitempty"`
}

AccountCacheNewAWSImport for: POST /api/v3/account-cache?account-type=aws

type AccountCacheNewAzureCreate added in v0.3.7

type AccountCacheNewAzureCreate struct {
	Name                       string                      `json:"account_name"`
	SubscriptionName           string                      `json:"name"`
	ParentManagementGroupID    string                      `json:"parent_management_group_id,omitempty"`
	PayerID                    int                         `json:"payer_id"`
	SubscriptionEABillingInfo  *SubscriptionEABillingInfo  `json:"ea,omitempty"`
	SubscriptionMCABillingInfo *SubscriptionMCABillingInfo `json:"mca,omitempty"`
	SubscriptionCSPBillingInfo *SubscriptionCSPBillingInfo `json:"csp,omitempty"`
}

AccountCacheNewAzureCreate for: POST /api/v3/account-cache/create?account-type=azure

type AccountCacheNewAzureImport added in v0.3.7

type AccountCacheNewAzureImport struct {
	SubscriptionUUID   string `json:"subscription_uuid"`
	ResourceGroupName  string `json:"resource_group_name,omitempty"`
	Name               string `json:"account_name"`
	Email              string `json:"account_email,omitempty"`
	PayerID            int    `json:"payer_id"`
	SkipAccessChecking *bool  `json:"skip_access_checking,omitempty"`
	AccountTypeID      *int   `json:"account_type_id,omitempty"`
}

AccountCacheNewAzureImport for: POST /api/v3/account-cache?account-type=azure

type AccountCacheNewGCPCreate added in v0.3.7

type AccountCacheNewGCPCreate struct {
	DisplayName           string `json:"display_name"`
	PayerID               int    `json:"payer_id"`
	GoogleCloudParentName string `json:"google_cloud_parent_name,omitempty"`
	GoogleCloudProjectID  string `json:"google_cloud_project_id,omitempty"`
}

AccountCacheNewGCPCreate for: POST /api/v3/account-cache/create?account-type=google-cloud

type AccountCacheNewGCPImport added in v0.3.7

type AccountCacheNewGCPImport struct {
	Name                 string `json:"account_name"`
	PayerID              int    `json:"payer_id"`
	AccountTypeID        *int   `json:"account_type_id,omitempty"`
	GoogleCloudProjectID string `json:"google_cloud_project_id"`
	SkipAccessChecking   *bool  `json:"skip_access_checking,omitempty"`
}

AccountCacheNewGCPImport for: POST /api/v3/account-cache?account-type=google-cloud

type AccountCacheResponse added in v0.3.7

type AccountCacheResponse struct {
	Data struct {
		ID                        uint   `json:"id"`
		AccountNumber             string `json:"account_number"`
		Name                      string `json:"account_name"`
		Email                     string `json:"account_email"`
		LinkedRole                string `json:"linked_role"`
		PayerID                   uint   `json:"payer_id"`
		AccountTypeID             uint   `json:"account_type_id"`
		SkipAccessChecking        bool   `json:"skip_access_checking"`
		LinkedAccountNumber       string `json:"linked_account_number"`
		IncludeLinkedAccountSpend bool   `json:"include_linked_account_spend"`
		CARExternalID             string `json:"car_external_id"`
		ServiceExternalID         string `json:"service_external_id"`
		CreatedAt                 string `json:"created_at"`
	}
	Status int `json:"status"`
}

AccountResponse for: GET /api/v3/account/cache/{id}

func (AccountCacheResponse) ToMap added in v0.3.7

func (r AccountCacheResponse) ToMap(resource string) map[string]interface{}

type AccountCacheUpdatable added in v0.3.7

type AccountCacheUpdatable struct {
	AccountEmail              string `json:"account_email,omitempty"`
	Name                      string `json:"account_name,omitempty"`
	IncludeLinkedAccountSpend *bool  `json:"include_linked_account_spend,omitempty"`
	LinkedRole                string `json:"linked_role,omitempty"`
	SkipAccessChecking        *bool  `json:"skip_access_checking,omitempty"`
}

AccountCacheUpdatable for: PATCH /api/v3/account-account/{id}

type AccountListResponse added in v0.3.7

type AccountListResponse struct {
	Data []struct {
		ID                        uint   `json:"id"`
		AccountNumber             string `json:"account_number"`
		Name                      string `json:"account_name"`
		Email                     string `json:"account_email"`
		LinkedRole                string `json:"linked_role"`
		ProjectID                 uint   `json:"project_id"`
		PayerID                   uint   `json:"payer_id"`
		AccountTypeID             uint   `json:"account_type_id"`
		StartDatecode             string `json:"start_datecode"`
		SkipAccessChecking        bool   `json:"skip_access_checking"`
		UseOrgAccountInfo         bool   `json:"use_org_account_info"`
		LinkedAccountNumber       string `json:"linked_account_number"`
		IncludeLinkedAccountSpend bool   `json:"include_linked_account_spend"`
		CARExternalID             string `json:"car_external_id"`
		ServiceExternalID         string `json:"service_external_id"`
		CreatedAt                 string `json:"created_at"`
	} `json:"data"`
	Status int `json:"status"`
}

AccountListResponse for GET /api/v3/account

type AccountMove added in v0.3.7

type AccountMove struct {
	ProjectID        int    `json:"project_id"`
	FinancialSetting string `json:"financials"`
	MoveDate         int    `json:"move_datecode"`
}

AccountMove for: POST /api/v3/account/{id}/move

type AccountNewAWSImport added in v0.3.7

type AccountNewAWSImport struct {
	AccountEmail              string `json:"account_email,omitempty"`
	Name                      string `json:"account_name"`
	AccountNumber             string `json:"account_number"`
	AccountTypeID             *int   `json:"account_type_id,omitempty"`
	IncludeLinkedAccountSpend *bool  `json:"include_linked_account_spend,omitempty"`
	LinkedAccountNumber       string `json:"linked_aws_account_number,omitempty"`
	LinkedRole                string `json:"linked_role,omitempty"`
	PayerID                   int    `json:"payer_id"`
	ProjectID                 int    `json:"project_id"`
	SkipAccessChecking        *bool  `json:"skip_access_checking,omitempty"`
	StartDatecode             string `json:"start_datecode"`
	UseOrgAccountInfo         *bool  `json:"use_org_account_info,omitempty"`
}

AccountNewAWSImport for: POST /api/v3/account?account-type=aws

type AccountNewAzureImport added in v0.3.7

type AccountNewAzureImport struct {
	SubscriptionUUID   string `json:"subscription_uuid"`
	Name               string `json:"account_name"`
	ProjectID          int    `json:"project_id"`
	PayerID            int    `json:"payer_id"`
	StartDatecode      string `json:"start_datecode"`
	SkipAccessChecking *bool  `json:"skip_access_checking,omitempty"`
	AccountTypeID      *int   `json:"account_type_id,omitempty"`
}

AccountNewAzureImport for: POST /api/v3/account?account-type=azure

type AccountNewGCPImport added in v0.3.7

type AccountNewGCPImport struct {
	Name                 string `json:"account_name"`
	PayerID              int    `json:"payer_id"`
	AccountTypeID        *int   `json:"account_type_id,omitempty"`
	GoogleCloudProjectID string `json:"google_cloud_project_id"`
	SkipAccessChecking   *bool  `json:"skip_access_checking,omitempty"`
	ProjectID            int    `json:"project_id"`
	StartDatecode        string `json:"start_datecode"`
}

AccountNewGCPImport for: POST /api/v3/account?account-type=google-cloud

type AccountResponse added in v0.3.7

type AccountResponse struct {
	Data struct {
		ID                        uint   `json:"id"`
		AccountNumber             string `json:"account_number"`
		Name                      string `json:"account_name"`
		Email                     string `json:"account_email"`
		LinkedRole                string `json:"linked_role"`
		ProjectID                 uint   `json:"project_id"`
		PayerID                   uint   `json:"payer_id"`
		AccountTypeID             uint   `json:"account_type_id"`
		StartDatecode             string `json:"start_datecode"`
		SkipAccessChecking        bool   `json:"skip_access_checking"`
		UseOrgAccountInfo         bool   `json:"use_org_account_info"`
		LinkedAccountNumber       string `json:"linked_account_number"`
		IncludeLinkedAccountSpend bool   `json:"include_linked_account_spend"`
		CARExternalID             string `json:"car_external_id"`
		ServiceExternalID         string `json:"service_external_id"`
		CreatedAt                 string `json:"created_at"`
	}
	Status int `json:"status"`
}

AccountResponse for: GET /api/v3/account/{id}

func (AccountResponse) ToMap added in v0.3.7

func (r AccountResponse) ToMap(resource string) map[string]interface{}

type AccountRevertResponse added in v0.3.7

type AccountRevertResponse struct {
	Status   int    `json:"status"`
	RecordID int    `json:"record_id"`
	Message  string `json:"message"`
}

type AccountUpdatable added in v0.3.7

type AccountUpdatable struct {
	AccountEmail              string `json:"account_email,omitempty"`
	Name                      string `json:"account_name,omitempty"`
	LinkedRole                string `json:"linked_role,omitempty"`
	StartDatecode             string `json:"start_datecode,omitempty"`
	IncludeLinkedAccountSpend *bool  `json:"include_linked_account_spend,omitempty"`
	SkipAccessChecking        *bool  `json:"skip_access_checking,omitempty"`
	UseOrgAccountInfo         *bool  `json:"use_org_account_info,omitempty"`
	ResetNotificationTime     *bool  `json:"reset_notification_tyime,omitempty"`
}

AccountUpdatable for: PATCH /api/v3/account/{id}

type AssociateLabel added in v0.3.6

type AssociateLabel struct {
	ID    int    `json:"id"`
	Key   string `json:"key"`
	Value string `json:"value"`
}

type AssociateLabels added in v0.3.6

type AssociateLabels struct {
	Labels *[]AssociateLabel `json:"labels"`
}

type AssociatedLabelsResponse added in v0.3.6

type AssociatedLabelsResponse struct {
	Data []struct {
		ID    int    `json:"id"`
		Key   string `json:"key"`
		Value string `json:"value"`
	} `json:"data"`
	Status int `json:"status"`
}

type AzureARMTemplateDefinitionCreate

type AzureARMTemplateDefinitionCreate struct {
	DeploymentMode        int    `json:"deployment_mode"`
	Description           string `json:"description"`
	Name                  string `json:"name"`
	OwnerUserGroupIds     *[]int `json:"owner_user_group_ids"`
	OwnerUserIds          *[]int `json:"owner_user_ids"`
	ResourceGroupName     string `json:"resource_group_name"`
	ResourceGroupRegionID int    `json:"resource_group_region_id"`
	Template              string `json:"template"`
	TemplateParameters    string `json:"template_parameters"`
}

AzureARMTemplateDefinitionCreate for: POST /api/v3/azure-arm-template

type AzureARMTemplateDefinitionUpdate

type AzureARMTemplateDefinitionUpdate struct {
	DeploymentMode     int    `json:"deployment_mode"`
	Description        string `json:"description"`
	Name               string `json:"name"`
	Template           string `json:"template"`
	TemplateParameters string `json:"template_parameters"`
}

AzureARMTemplateDefinitionUpdate for: PATCH /api/v3/azure-arm-template/{id}

type AzureARMTemplateListResponse

type AzureARMTemplateListResponse struct {
	Data []struct {
		AzureArmTemplate struct {
			CtManaged             bool   `json:"ct_managed"`
			DeploymentMode        int    `json:"deployment_mode"`
			Description           string `json:"description"`
			ID                    int    `json:"id"`
			Name                  string `json:"name"`
			ResourceGroupName     string `json:"resource_group_name"`
			ResourceGroupRegionID int    `json:"resource_group_region_id"`
			Template              string `json:"template"`
			TemplateParameters    string `json:"template_parameters"`
			Version               int    `json:"version"`
		} `json:"azure_arm_template"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

AzureARMTemplateListResponse for: GET /api/v3/azure-arm-template

type AzureARMTemplateResponse

type AzureARMTemplateResponse struct {
	Data struct {
		AzureArmTemplate struct {
			CtManaged             bool   `json:"ct_managed"`
			DeploymentMode        int    `json:"deployment_mode"`
			Description           string `json:"description"`
			ID                    int    `json:"id"`
			Name                  string `json:"name"`
			ResourceGroupName     string `json:"resource_group_name"`
			ResourceGroupRegionID int    `json:"resource_group_region_id"`
			Template              string `json:"template"`
			TemplateParameters    string `json:"template_parameters"`
			Version               int    `json:"version"`
		} `json:"azure_arm_template"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

AzureARMTemplateResponse for: GET /api/v3/azure-arm-template/{id}

type AzurePolicyCreate

type AzurePolicyCreate struct {
	AzurePolicy struct {
		Description string `json:"description"`
		Name        string `json:"name"`
		Parameters  string `json:"parameters"`
		Policy      string `json:"policy"`
	} `json:"azure_policy"`
	OwnerUserGroups *[]int `json:"owner_user_groups"`
	OwnerUsers      *[]int `json:"owner_users"`
}

AzurePolicyCreate for: POST /api/v3/azure-policy

type AzurePolicyDefinitionUpdate

type AzurePolicyDefinitionUpdate struct {
	Description string `json:"description"`
	Name        string `json:"name"`
	Parameters  string `json:"parameters"`
	Policy      string `json:"policy"`
}

AzurePolicyDefinitionUpdate for: PATCH /api/v3/azure-policy/{id}

type AzurePolicyListResponse

type AzurePolicyListResponse struct {
	Data []struct {
		AzurePolicy struct {
			AzureManagedPolicyDefID string `json:"azure_managed_policy_def_id"`
			CtManaged               bool   `json:"ct_managed"`
			Description             string `json:"description"`
			ID                      int    `json:"id"`
			Name                    string `json:"name"`
			Parameters              string `json:"parameters"`
			Policy                  string `json:"policy"`
		} `json:"azure_policy"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

AzurePolicyListResponse for: GET /api/v3/azure-policy

type AzurePolicyResponse

type AzurePolicyResponse struct {
	Data struct {
		AzurePolicy struct {
			AzureManagedPolicyDefID string `json:"azure_managed_policy_def_id"`
			CtManaged               bool   `json:"ct_managed"`
			Description             string `json:"description"`
			ID                      int    `json:"id"`
			Name                    string `json:"name"`
			Parameters              string `json:"parameters"`
			Policy                  string `json:"policy"`
		} `json:"azure_policy"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

AzurePolicyResponse for: GET /api/v3/azure-policy/{id}

type AzureRoleCreate

type AzureRoleCreate struct {
	Description       string `json:"description"`
	Name              string `json:"name"`
	OwnerUserGroupIds *[]int `json:"owner_user_group_ids"`
	OwnerUserIds      *[]int `json:"owner_user_ids"`
	RolePermissions   string `json:"role_permissions"`
}

AzureRoleCreate for: POST /api/v3/azure-role

type AzureRoleListResponse

type AzureRoleListResponse struct {
	Data []struct {
		AzureRole struct {
			AzureManagedPolicy  bool   `json:"azure_managed_policy"`
			Description         string `json:"description"`
			ID                  int    `json:"id"`
			Name                string `json:"name"`
			RolePermissions     string `json:"role_permissions"`
			SystemManagedPolicy bool   `json:"system_managed_policy"`
		} `json:"azure_role"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

AzureRoleListResponse for: GET /api/v3/azure-role

type AzureRoleResponse

type AzureRoleResponse struct {
	Data struct {
		AzureRole struct {
			AzureManagedPolicy  bool   `json:"azure_managed_policy"`
			Description         string `json:"description"`
			ID                  int    `json:"id"`
			Name                string `json:"name"`
			RolePermissions     string `json:"role_permissions"`
			SystemManagedPolicy bool   `json:"system_managed_policy"`
		} `json:"azure_role"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

AzureRoleResponse for: GET /api/v3/azure-role/{id}

type AzureRoleUpdate

type AzureRoleUpdate struct {
	Name            string `json:"name"`
	Description     string `json:"description"`
	RolePermissions string `json:"role_permissions"`
}

AzureRoleUpdate for: PATCH /api/v3/azure-role/{id}

type BudgetCreate added in v0.3.1

type BudgetCreate struct {
	ProjectID        int                `json:"project_id"`
	OUID             int                `json:"ou_id"`
	StartDatecode    string             `json:"start_datecode"`
	EndDatecode      string             `json:"end_datecode"`
	Amount           float64            `json:"amount"`
	FundingSourceIDs *[]int             `json:"funding_source_ids"`
	Data             []BudgetDataCreate `json:"data"`
}

BudgetCreate for: POST /api/v3/project/with-budget

type BudgetDataCreate added in v0.3.1

type BudgetDataCreate struct {
	Datecode        string  `json:"datecode"`
	Amount          float64 `json:"amount"`
	FundingSourceID int     `json:"funding_source_id"`
	Priority        int     `json:"priority"`
}

BudgetDataCreate for: POST /api/v3/project/with-budget

type CFTCreate

type CFTCreate struct {
	Description           string   `json:"description"`
	Name                  string   `json:"name"`
	OwnerUserGroupIds     *[]int   `json:"owner_user_group_ids"`
	OwnerUserIds          *[]int   `json:"owner_user_ids"`
	Policy                string   `json:"policy"`
	Region                string   `json:"region"`
	Regions               []string `json:"regions"`
	SnsArns               string   `json:"sns_arns"`
	Tags                  *[]Tag   `json:"tags"`
	TemplateParameters    string   `json:"template_parameters"`
	TerminationProtection bool     `json:"termination_protection"`
}

CFTCreate for: POST /api/v3/cft

type CFTListResponseWithOwnersAndTags added in v0.3.4

type CFTListResponseWithOwnersAndTags struct {
	Data []struct {
		Cft struct {
			Description           string   `json:"description"`
			ID                    int      `json:"id"`
			Name                  string   `json:"name"`
			Policy                string   `json:"policy"`
			Region                string   `json:"region"`
			Regions               []string `json:"regions"`
			SnsArns               string   `json:"sns_arns"`
			TemplateParameters    string   `json:"template_parameters"`
			TerminationProtection bool     `json:"termination_protection"`
		} `json:"cft"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
		Tags            []Tag          `json:"tags"`
	} `json:"data"`
	Status int `json:"status"`
}

CFTListResponseWithOwnersAndTags for: GET /api/v3/cft

type CFTResponseWithOwnersAndTags added in v0.3.4

type CFTResponseWithOwnersAndTags struct {
	Data struct {
		Cft struct {
			Description           string   `json:"description"`
			ID                    int      `json:"id"`
			Name                  string   `json:"name"`
			Policy                string   `json:"policy"`
			Region                string   `json:"region"`
			Regions               []string `json:"regions"`
			SnsArns               string   `json:"sns_arns"`
			TemplateParameters    string   `json:"template_parameters"`
			TerminationProtection bool     `json:"termination_protection"`
		} `json:"cft"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
		Tags            []Tag          `json:"tags"`
	} `json:"data"`
	Status int `json:"status"`
}

CFTResponseWithOwnersAndTags for: GET /api/v3/cft/{id}

type CFTUpdate

type CFTUpdate struct {
	Description           string   `json:"description"`
	Name                  string   `json:"name"`
	Policy                string   `json:"policy"`
	Region                string   `json:"region"`
	Regions               []string `json:"regions"`
	SnsArns               string   `json:"sns_arns"`
	Tags                  *[]Tag   `json:"tags"`
	TemplateParameters    string   `json:"template_parameters"`
	TerminationProtection bool     `json:"termination_protection"`
}

CFTUpdate for: PATCH /api/v3/cft/{id}

type CODEGENCreateResponse

type CODEGENCreateResponse struct{}

CODEGENCreateResponse -

type CODEGENGetAllResponse

type CODEGENGetAllResponse struct{}

CODEGENGetAllResponse -

type CODEGENGetOneResponse

type CODEGENGetOneResponse struct{}

CODEGENGetOneResponse -

type CODEGENUpdateResponse

type CODEGENUpdateResponse struct{}

CODEGENUpdateResponse -

type CSPAccountType added in v0.3.7

type CSPAccountType int

Account Types

const (
	// AWSStandard is a Standard AWS account
	AWSStandard CSPAccountType = 1

	// AWSGovCloud is an AWS GovCloud account
	AWSGovCloud CSPAccountType = 2

	// AzureCSPStandard is a Standard Azure CSP subscription
	AzureCSPStandard CSPAccountType = 3

	// AWSC2S is an AWS account in the c2s region
	AWSC2S CSPAccountType = 4

	// AWSSC2S is an AWS account in the sc2s region
	AWSSC2S CSPAccountType = 5

	// AzureEA is an Azure EA subscription
	AzureEA CSPAccountType = 6

	// AzureEAGov is a subscription in Azure Gov backed by an EA
	AzureEAGov CSPAccountType = 7

	// AzureCSPStandardRG is a Azure CSP resource group
	AzureCSPStandardRG CSPAccountType = 8

	// AzureEARG is an Azure EA resource group
	AzureEARG CSPAccountType = 9

	// AzureEAGovRG is a resource group in Azure Gov backed by an EA
	AzureEAGovRG CSPAccountType = 10

	// AzureCSPGov is a subscription billed via an Azure CSP in a gov region
	AzureCSPGov CSPAccountType = 11

	// AzureCSPGovRG is a resource group in a subscription billed via an Azure CSP in a gov region
	AzureCSPGovRG CSPAccountType = 12

	// AzureEASecret is a subscription billed via Azure EA in Azure secret
	AzureEASecret CSPAccountType = 13

	// AzureEASecretRG is a resource group in a subscription billed via Azure EA in Azure secret
	AzureEASecretRG CSPAccountType = 14

	// GoogleCloudStandard is a Google Cloud project
	GoogleCloudStandard CSPAccountType = 15

	// AzureMCA is a Azure MCA subscription
	AzureMCA CSPAccountType = 16

	// AzureMCARG is a Azure MCA resource group
	AzureMCARG CSPAccountType = 17

	// AzureMCAGov is a subscription billed via an Azure MCA in a gov region
	AzureMCAGov CSPAccountType = 18

	// AzureMCAGovRG is a resource group in a subscription billed via an Azure MCA in a gov region
	AzureMCAGovRG CSPAccountType = 19

	AzureCSPTopSecret   CSPAccountType = 20
	AzureCSPTopSecretRG CSPAccountType = 21
	AzureEATopSecret    CSPAccountType = 22
	AzureEATopSecretRG  CSPAccountType = 23
	AzureMCATopSecret   CSPAccountType = 24
	AzureMCATopSecretRG CSPAccountType = 25
)

type ChangeOwners

type ChangeOwners struct {
	OwnerUserGroupIds *[]int `json:"owner_user_group_ids"`
	OwnerUserIds      *[]int `json:"owner_user_ids"`
}

ChangeOwners -

type Client

type Client struct {
	HostURL    string
	HTTPClient *http.Client
	Token      string
}

Client -

func NewClient

func NewClient(ctURL string, ctAPIKey string, ctAPIPath string, skipSSLValidation bool) *Client

NewClient .

func (*Client) DELETE

func (c *Client) DELETE(urlPath string, sendData interface{}) error

DELETE - removes an element from CT. sendData can be nil.

func (*Client) DeleteWithResponse added in v0.3.7

func (c *Client) DeleteWithResponse(urlPath string, sendData interface{}, returnData interface{}) error

func (*Client) GET

func (c *Client) GET(urlPath string, returnData interface{}) error

GET - Returns an element from CT.

func (*Client) PATCH

func (c *Client) PATCH(urlPath string, sendData interface{}) error

PATCH - updates an element in CT.

func (*Client) POST

func (c *Client) POST(urlPath string, sendData interface{}) (*Creation, error)

POST - creates an element in CT.

func (*Client) PUT added in v0.3.6

func (c *Client) PUT(urlPath string, sendData interface{}) error

PUT - updates an element in CT.

type CloudRuleAssociationsAdd

type CloudRuleAssociationsAdd struct {
	AzureArmTemplateDefinitionIds *[]int `json:"azure_arm_template_definition_ids"`
	AzurePolicyDefinitionIds      *[]int `json:"azure_policy_definition_ids"`
	AzureRoleDefinitionIds        *[]int `json:"azure_role_definition_ids"`
	CftIds                        *[]int `json:"cft_ids"`
	ComplianceStandardIds         *[]int `json:"compliance_standard_ids"`
	GcpIamRoleIds                 *[]int `json:"gcp_iam_role_ids"`
	IamPolicyIds                  *[]int `json:"iam_policy_ids"`
	InternalAmiIds                *[]int `json:"internal_ami_ids"`
	InternalPortfolioIds          *[]int `json:"internal_portfolio_ids"`
	OUIds                         *[]int `json:"ou_ids"`
	ProjectIds                    *[]int `json:"project_ids"`
	ServiceControlPolicyIds       *[]int `json:"service_control_policy_ids"`
}

CloudRuleAssociationsAdd for: POST /api/v3/cloud-rule/{id}/association

type CloudRuleAssociationsRemove

type CloudRuleAssociationsRemove struct {
	AzureArmTemplateDefinitionIds *[]int `json:"azure_arm_template_definition_ids"`
	AzurePolicyDefinitionIds      *[]int `json:"azure_policy_definition_ids"`
	AzureRoleDefinitionIds        *[]int `json:"azure_role_definition_ids"`
	CftIds                        *[]int `json:"cft_ids"`
	ComplianceStandardIds         *[]int `json:"compliance_standard_ids"`
	GcpIamRoleIds                 *[]int `json:"gcp_iam_role_ids"`
	IamPolicyIds                  *[]int `json:"iam_policy_ids"`
	InternalAmiIds                *[]int `json:"internal_ami_ids"`
	InternalPortfolioIds          *[]int `json:"internal_portfolio_ids"`
	OUIds                         *[]int `json:"ou_ids"`
	ProjectIds                    *[]int `json:"project_ids"`
	ServiceControlPolicyIds       *[]int `json:"service_control_policy_ids"`
}

CloudRuleAssociationsRemove for: DELETE /api/v3/cloud-rule/{id}/association

type CloudRuleCreate

type CloudRuleCreate struct {
	AzureArmTemplateDefinitionIds *[]int `json:"azure_arm_template_definition_ids"`
	AzurePolicyDefinitionIds      *[]int `json:"azure_policy_definition_ids"`
	AzureRoleDefinitionIds        *[]int `json:"azure_role_definition_ids"`
	CftIds                        *[]int `json:"cft_ids"`
	ComplianceStandardIds         *[]int `json:"compliance_standard_ids"`
	Description                   string `json:"description"`
	GcpIamRoleIds                 *[]int `json:"gcp_iam_role_ids"`
	IamPolicyIds                  *[]int `json:"iam_policy_ids"`
	InternalAmiIds                *[]int `json:"internal_ami_ids"`
	InternalPortfolioIds          *[]int `json:"internal_portfolio_ids"`
	Name                          string `json:"name"`
	OUIds                         *[]int `json:"ou_ids"`
	OwnerUserGroupIds             *[]int `json:"owner_user_group_ids"`
	OwnerUserIds                  *[]int `json:"owner_user_ids"`
	PostWebhookID                 *int   `json:"post_webhook_id"`
	PreWebhookID                  *int   `json:"pre_webhook_id"`
	ProjectIds                    *[]int `json:"project_ids"`
	ServiceControlPolicyIds       *[]int `json:"service_control_policy_ids"`
}

CloudRuleCreate for: POST /api/v3/cloud-rule

type CloudRuleListResponse

type CloudRuleListResponse struct {
	Data []struct {
		BuiltIn       bool   `json:"built_in"`
		Description   string `json:"description"`
		ID            int    `json:"id"`
		Name          string `json:"name"`
		PostWebhookID *int   `json:"post_webhook_id"`
		PreWebhookID  *int   `json:"pre_webhook_id"`
	} `json:"data"`
	Status int `json:"status"`
}

CloudRuleListResponse for: GET /api/v3/cloud-rule

type CloudRuleResponse

type CloudRuleResponse struct {
	Data struct {
		AwsCloudformationTemplates  []ObjectWithID `json:"aws_cloudformation_templates"`
		AwsIamPolicies              []ObjectWithID `json:"aws_iam_policies"`
		AzureArmTemplateDefinitions []ObjectWithID `json:"azure_arm_template_definitions"`
		AzurePolicyDefinitions      []ObjectWithID `json:"azure_policy_definitions"`
		AzureRoleDefinitions        []ObjectWithID `json:"azure_role_definitions"`
		CloudRule                   struct {
			BuiltIn       bool   `json:"built_in"`
			Description   string `json:"description"`
			ID            int    `json:"id"`
			Name          string `json:"name"`
			PostWebhookID *int   `json:"post_webhook_id"`
			PreWebhookID  *int   `json:"pre_webhook_id"`
		} `json:"cloud_rule"`
		ComplianceStandards                 []ObjectWithID `json:"compliance_standards"`
		GCPIAMRoles                         []ObjectWithID `json:"gcp_iam_roles"`
		InternalAwsAmis                     []ObjectWithID `json:"internal_aws_amis"`
		InternalAwsServiceCatalogPortfolios []ObjectWithID `json:"internal_aws_service_catalog_portfolios"`
		OUs                                 []ObjectWithID `json:"ous"`
		OwnerUserGroups                     []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers                          []ObjectWithID `json:"owner_users"`
		Projects                            []ObjectWithID `json:"projects"`
		ServiceControlPolicies              []ObjectWithID `json:"service_control_policies"`
	} `json:"data"`
	Status int `json:"status"`
}

CloudRuleResponse for: GET /api/v3/cloud-rule/{id}

type CloudRuleUpdate

type CloudRuleUpdate struct {
	Description   string `json:"description"`
	Name          string `json:"name"`
	PostWebhookID *int   `json:"post_webhook_id"`
	PreWebhookID  *int   `json:"pre_webhook_id"`
}

CloudRuleUpdate for: PATCH /api/v3/cloud-rule/{id}

type ComplianceCheckCreate

type ComplianceCheckCreate struct {
	AzurePolicyID         *int     `json:"azure_policy_id"`
	Body                  string   `json:"body"`
	CloudProviderID       int      `json:"cloud_provider_id"`
	ComplianceCheckTypeID int      `json:"compliance_check_type_id"`
	CreatedByUserID       int      `json:"created_by_user_id"`
	Description           string   `json:"description"`
	FrequencyMinutes      int      `json:"frequency_minutes"`
	FrequencyTypeID       int      `json:"frequency_type_id"`
	IsAllRegions          bool     `json:"is_all_regions"`
	IsAutoArchived        bool     `json:"is_auto_archived"`
	Name                  string   `json:"name"`
	OwnerUserGroupIds     *[]int   `json:"owner_user_group_ids"`
	OwnerUserIds          *[]int   `json:"owner_user_ids"`
	Regions               []string `json:"regions"`
	SeverityTypeID        *int     `json:"severity_type_id"`
}

ComplianceCheckCreate for: POST /api/v3/compliance/check

type ComplianceCheckListResponse

type ComplianceCheckListResponse struct {
	Data []struct {
		AzurePolicyID         *int     `json:"azure_policy_id"`
		Body                  string   `json:"body"`
		CloudProviderID       int      `json:"cloud_provider_id"`
		ComplianceCheckTypeID int      `json:"compliance_check_type_id"`
		CreatedAt             string   `json:"created_at"`
		CreatedByUserID       int      `json:"created_by_user_id"`
		CtManaged             bool     `json:"ct_managed"`
		Description           string   `json:"description"`
		FrequencyMinutes      int      `json:"frequency_minutes"`
		FrequencyTypeID       int      `json:"frequency_type_id"`
		ID                    int      `json:"id"`
		IsAllRegions          bool     `json:"is_all_regions"`
		IsAutoArchived        bool     `json:"is_auto_archived"`
		LastScanID            int      `json:"last_scan_id"`
		Name                  string   `json:"name"`
		Regions               []string `json:"regions"`
		SeverityTypeID        *int     `json:"severity_type_id"`
	} `json:"data"`
	Status int `json:"status"`
}

ComplianceCheckListResponse for: GET /api/v3/compliance/check

type ComplianceCheckUpdate

type ComplianceCheckUpdate struct {
	AzurePolicyID         *int     `json:"azure_policy_id"`
	Body                  string   `json:"body"`
	CloudProviderID       int      `json:"cloud_provider_id"`
	ComplianceCheckTypeID int      `json:"compliance_check_type_id"`
	Description           string   `json:"description"`
	FrequencyMinutes      int      `json:"frequency_minutes"`
	FrequencyTypeID       int      `json:"frequency_type_id"`
	IsAllRegions          bool     `json:"is_all_regions"`
	IsAutoArchived        bool     `json:"is_auto_archived"`
	Name                  string   `json:"name"`
	Regions               []string `json:"regions"`
	SeverityTypeID        *int     `json:"severity_type_id"`
}

ComplianceCheckUpdate for: PATCH /api/v3/compliance/check/{id}

type ComplianceCheckWithOwnersResponse

type ComplianceCheckWithOwnersResponse struct {
	Data struct {
		ComplianceCheck struct {
			AzurePolicyID         *int     `json:"azure_policy_id"`
			Body                  string   `json:"body"`
			CloudProviderID       int      `json:"cloud_provider_id"`
			ComplianceCheckTypeID int      `json:"compliance_check_type_id"`
			CreatedAt             string   `json:"created_at"`
			CreatedByUserID       int      `json:"created_by_user_id"`
			CtManaged             bool     `json:"ct_managed"`
			Description           string   `json:"description"`
			FrequencyMinutes      int      `json:"frequency_minutes"`
			FrequencyTypeID       int      `json:"frequency_type_id"`
			ID                    int      `json:"id"`
			IsAllRegions          bool     `json:"is_all_regions"`
			IsAutoArchived        bool     `json:"is_auto_archived"`
			LastScanID            int      `json:"last_scan_id"`
			Name                  string   `json:"name"`
			Regions               []string `json:"regions"`
			SeverityTypeID        *int     `json:"severity_type_id"`
		} `json:"compliance_check"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

ComplianceCheckWithOwnersResponse for: GET /api/v3/compliance/check/{id}

type ComplianceStandardAssociationsAdd

type ComplianceStandardAssociationsAdd struct {
	ComplianceCheckIds *[]int `json:"compliance_check_ids"`
}

ComplianceStandardAssociationsAdd for: POST /api/v3/compliance/standard/{id}/association

type ComplianceStandardAssociationsRemove

type ComplianceStandardAssociationsRemove struct {
	ComplianceCheckIds *[]int `json:"compliance_check_ids"`
}

ComplianceStandardAssociationsRemove for: DELETE /api/v3/compliance/standard/{id}/association

type ComplianceStandardCreate

type ComplianceStandardCreate struct {
	ComplianceCheckIds *[]int `json:"compliance_check_ids"`
	CreatedByUserID    int    `json:"created_by_user_id"`
	Description        string `json:"description"`
	Name               string `json:"name"`
	OwnerUserGroupIds  *[]int `json:"owner_user_group_ids"`
	OwnerUserIds       *[]int `json:"owner_user_ids"`
}

ComplianceStandardCreate for: POST /api/v3/compliance/standard

type ComplianceStandardListResponse

type ComplianceStandardListResponse struct {
	Data []struct {
		CreatedAt       string `json:"created_at"`
		CreatedByUserID int    `json:"created_by_user_id"`
		CtManaged       bool   `json:"ct_managed"`
		Description     string `json:"description"`
		ID              int    `json:"id"`
		Name            string `json:"name"`
	} `json:"data"`
	Status int `json:"status"`
}

ComplianceStandardListResponse for: GET /api/v3/compliance/standard

type ComplianceStandardResponse

type ComplianceStandardResponse struct {
	Data struct {
		ComplianceChecks   []ObjectWithID `json:"compliance_checks"`
		ComplianceStandard struct {
			CreatedAt       string `json:"created_at"`
			CreatedByUserID int    `json:"created_by_user_id"`
			CtManaged       bool   `json:"ct_managed"`
			Description     string `json:"description"`
			ID              int    `json:"id"`
			Name            string `json:"name"`
		} `json:"compliance_standard"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

ComplianceStandardResponse for: GET /api/v3/compliance/standard/{id}

type ComplianceStandardUpdate

type ComplianceStandardUpdate struct {
	Description string `json:"description"`
	Name        string `json:"name"`
}

ComplianceStandardUpdate for: PATCH /api/v3/compliance/standard/{id}

type CreateSAMLGroupAssociation

type CreateSAMLGroupAssociation struct {
	AssertionName  string `json:"assertion_name"`
	AssertionRegex string `json:"assertion_regex"`
	IdmsID         int    `json:"idms_id"`
	UpdateOnLogin  bool   `json:"update_on_login"`
	UserGroupID    int    `json:"user_group_id"`
}

CreateSAMLGroupAssociation for: POST /api/v3/idms/group-association

type Creation

type Creation struct {
	RecordID int `json:"record_id"`
	Status   int `json:"status"`
}

Creation .

type FSUserMappingListResponse added in v0.3.5

type FSUserMappingListResponse struct {
	Data []struct {
		AppRoleId    int    `json:"app_role_id"`
		UserGroupIds *[]int `json:"user_groups_ids"`
		UserIds      *[]int `json:"user_ids"`
	}
}

type Filter

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

Filter -

func (*Filter) DeepMatch

func (f *Filter) DeepMatch(keys []string, m map[string]interface{}, filterValue interface{}) (bool, error)

DeepMatch -

type Filterable

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

Filterable -

func NewFilterable

func NewFilterable(d *schema.ResourceData) *Filterable

NewFilterable -

func (*Filterable) Match

func (f *Filterable) Match(m map[string]interface{}) (bool, error)

Match -

type FundingSourceCreate added in v0.3.5

type FundingSourceCreate struct {
	ID                 int    `json:"id"`
	Amount             int    `json:"amount"`
	Description        string `json:"description"`
	EndDatecode        string `json:"end_datecode"`
	Name               string `json:"name"`
	StartDatecode      string `json:"start_datecode"`
	PermissionSchemeID int    `json:"permission_scheme_id"`
	OUID               int    `json:"ou_id"`
	OwnerUserGroupIds  *[]int `json:"owner_user_group_ids"`
	OwnerUserIds       *[]int `json:"owner_user_ids"`
}

FundingSourceCreate for: POST /api/v3/funding-source

type FundingSourceListResponse added in v0.3.5

type FundingSourceListResponse struct {
	Data []struct {
		ID            int    `json:"id"`
		Amount        int    `json:"amount"`
		Description   string `json:"description"`
		EndDatecode   string `json:"end_datecode"`
		Name          string `json:"name"`
		OUID          int    `json:"ou_id"`
		StartDatecode string `json:"start_datecode"`
	} `json:"data"`
	Status int `json:"status"`
}

FundingSourceListResponse for: GET /api/v3/funding-source

type FundingSourcePermissionMapping added in v0.3.5

type FundingSourcePermissionMapping struct {
	AppRoleID    int    `json:"app_role_id"`
	UserGroupIds *[]int `json:"user_groups_ids"`
	UserIds      *[]int `json:"user_ids"`
}

FundingSourcePermissionMapping

type FundingSourceResponse added in v0.3.5

type FundingSourceResponse struct {
	Data struct {
		ID                 int    `json:"id"`
		Amount             int    `json:"amount"`
		Description        string `json:"description"`
		EndDatecode        string `json:"end_datecode"`
		Name               string `json:"name"`
		OUID               int    `json:"ou_id"`
		StartDatecode      string `json:"start_datecode"`
		PermissionSchemeID int    `json:"permission_scheme_id"`
	} `json:"data"`
	Status int `json:"status"`
}

FundingSourceResponse for: GET /api/v3/funding-source/{id}

type FundingSourceUpdate added in v0.3.5

type FundingSourceUpdate struct {
	ID            int    `json:"id"`
	Amount        int    `json:"amount"`
	Description   string `json:"description"`
	EndDatecode   string `json:"end_datecode"`
	Name          string `json:"name"`
	OUID          int    `json:"ou_id"`
	StartDatecode string `json:"start_datecode"`
}

FundingSourceUpdate for: PATCH /api/v3/funding-source/{id}

type GCPRoleCreate

type GCPRoleCreate struct {
	Name               string   `json:"name"`
	Description        string   `json:"description"`
	GCPRoleLaunchStage int      `json:"gcp_role_launch_stage"`
	OwnerUserIDs       *[]int   `json:"owner_user_ids"`
	OwnerUGroupIDs     *[]int   `json:"owner_user_group_ids"`
	RolePermissions    []string `json:"role_permissions"`
}

GCPRoleCreate for: POST /api/v3/gcp-iam-role

type GCPRoleListResponseWithOwners

type GCPRoleListResponseWithOwners struct {
	Data []struct {
		GcpRole struct {
			ID                  int      `json:"id"`
			GCPID               string   `json:"gcp_id"`
			GCPRoleLaunchStage  int      `json:"gcp_role_launch_stage"`
			Name                string   `json:"name"`
			Description         string   `json:"description"`
			RolePermissions     []string `json:"role_permissions"`
			GCPManagedPolicy    bool     `json:"gcp_managed_policy"`
			SystemManagedPolicy bool     `json:"system_managed_policy"`
		} `json:"gcp_role"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

GCPRoleListResponseWithOwners for: GET /api/v3/gcp-iam-role

type GCPRoleResponseWithOwners

type GCPRoleResponseWithOwners struct {
	Data struct {
		GcpRole struct {
			ID                  int      `json:"id"`
			GCPID               string   `json:"gcp_id"`
			GCPRoleLaunchStage  int      `json:"gcp_role_launch_stage"`
			Name                string   `json:"name"`
			Description         string   `json:"description"`
			RolePermissions     []string `json:"role_permissions"`
			GCPManagedPolicy    bool     `json:"gcp_managed_policy"`
			SystemManagedPolicy bool     `json:"system_managed_policy"`
		} `json:"gcp_role"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

GCPRoleResponseWithOwners for: GET /api/v3/gcp-iam-role/{id}

type GCPRoleUpdate

type GCPRoleUpdate struct {
	Name               string   `json:"name"`
	Description        string   `json:"description"`
	RolePermissions    []string `json:"role_permissions"`
	GCPRoleLaunchStage int      `json:"gcp_role_launch_stage"`
}

GCPRoleUpdate for: PATCH /api/v3/gcp-iam-role/{id}

type GroupAssociationListResponse

type GroupAssociationListResponse struct {
	Data []struct {
		AssertionName       string `json:"assertion_name"`
		AssertionRegex      string `json:"assertion_regex"`
		ID                  int    `json:"id"`
		IdmsID              int    `json:"idms_id"`
		IdmsSamlID          int    `json:"idms_saml_id"`
		ShouldUpdateOnLogin bool   `json:"should_update_on_login"`
		UserGroupID         int    `json:"user_group_id"`
	} `json:"data"`
	Status int `json:"status"`
}

GroupAssociationListResponse for: GET /api/v3/idms/{id}/group-association

type GroupAssociationResponse

type GroupAssociationResponse struct {
	Data struct {
		AssertionName       string `json:"assertion_name"`
		AssertionRegex      string `json:"assertion_regex"`
		ID                  int    `json:"id"`
		IdmsID              int    `json:"idms_id"`
		IdmsSamlID          int    `json:"idms_saml_id"`
		ShouldUpdateOnLogin bool   `json:"should_update_on_login"`
		UserGroupID         int    `json:"user_group_id"`
	} `json:"data"`
	Status int `json:"status"`
}

GroupAssociationResponse for: GET /api/v3/idms/group-association/{id}

type IAMPolicyCreate

type IAMPolicyCreate struct {
	AwsIamPath        string `json:"aws_iam_path"`
	Description       string `json:"description"`
	Name              string `json:"name"`
	OwnerUserGroupIds *[]int `json:"owner_user_group_ids"`
	OwnerUserIds      *[]int `json:"owner_user_ids"`
	Policy            string `json:"policy"`
}

IAMPolicyCreate for: POST /api/v3/iam-policy

type IAMPolicyListResponse

type IAMPolicyListResponse struct {
	Data []struct {
		IamPolicy struct {
			AwsIamPath          string `json:"aws_iam_path"`
			AwsManagedPolicy    bool   `json:"aws_managed_policy"`
			Description         string `json:"description"`
			ID                  int    `json:"id"`
			Name                string `json:"name"`
			PathSuffix          string `json:"path_suffix"`
			Policy              string `json:"policy"`
			SystemManagedPolicy bool   `json:"system_managed_policy"`
		} `json:"iam_policy"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

IAMPolicyListResponse for: GET /api/v3/iam-policy

type IAMPolicyResponse

type IAMPolicyResponse struct {
	Data struct {
		IamPolicy struct {
			AwsIamPath          string `json:"aws_iam_path"`
			AwsManagedPolicy    bool   `json:"aws_managed_policy"`
			Description         string `json:"description"`
			ID                  int    `json:"id"`
			Name                string `json:"name"`
			PathSuffix          string `json:"path_suffix"`
			Policy              string `json:"policy"`
			SystemManagedPolicy bool   `json:"system_managed_policy"`
		} `json:"iam_policy"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

IAMPolicyResponse for: GET /api/v3/iam-policy/{id}

type IAMPolicyUpdate

type IAMPolicyUpdate struct {
	Description string `json:"description"`
	Name        string `json:"name"`
	Policy      string `json:"policy"`
}

IAMPolicyUpdate for: PATCH /api/v3/iam-policy/{id}

type Label added in v0.3.6

type Label struct {
	ID    int    `json:"id"`
	Key   string `json:"key"`
	Value string `json:"value"`
	Color string `json:"color"`
}

type LabelCreate added in v0.3.6

type LabelCreate struct {
	Color string `json:"color"`
	Key   string `json:"key"`
	Value string `json:"value"`
}

LabelCreate for: POST /api/v3/label

type LabelListResponse added in v0.3.6

type LabelListResponse struct {
	Data struct {
		Items []Label `json:"items"`
		Total int     `json:"total"`
	} `json:"data"`
	Status int `json:"status"`
}

LabelListResponse for: GET /api/v3/label

type LabelResponse added in v0.3.6

type LabelResponse struct {
	Data   Label `json:"data"`
	Status int   `json:"status"`
}

LabelResponse for: GET /api/v3/label/{id}

type LabelUpdatable added in v0.3.6

type LabelUpdatable struct {
	Color string `json:"color"`
	Key   string `json:"key"`
	Value string `json:"value"`
}

LabelUpdatable for: PATCH /api/v3/label/{id}

type MappableResponse added in v0.3.7

type MappableResponse interface {
	ToMap(resource string) map[string]interface{}
}

type OUCloudAccessRoleAssociationsAdd

type OUCloudAccessRoleAssociationsAdd struct {
	AwsIamPermissionsBoundary *int   `json:"aws_iam_permissions_boundary"`
	AwsIamPolicies            *[]int `json:"aws_iam_policies"`
	AzureRoleDefinitions      *[]int `json:"azure_role_definitions"`
	UserGroupIds              *[]int `json:"user_group_ids"`
	UserIds                   *[]int `json:"user_ids"`
}

OUCloudAccessRoleAssociationsAdd for: POST /api/v3/ou-cloud-access-role/{id}/association

type OUCloudAccessRoleAssociationsRemove

type OUCloudAccessRoleAssociationsRemove struct {
	AwsIamPermissionsBoundary *int   `json:"aws_iam_permissions_boundary"`
	AwsIamPolicies            *[]int `json:"aws_iam_policies"`
	AzureRoleDefinitions      *[]int `json:"azure_role_definitions"`
	UserGroupIds              *[]int `json:"user_group_ids"`
	UserIds                   *[]int `json:"user_ids"`
}

OUCloudAccessRoleAssociationsRemove for: DELETE /api/v3/ou-cloud-access-role/{id}/association

type OUCloudAccessRoleCreate

type OUCloudAccessRoleCreate struct {
	AwsIamPath                string `json:"aws_iam_path"`
	AwsIamPermissionsBoundary *int   `json:"aws_iam_permissions_boundary"`
	AwsIamPolicies            *[]int `json:"aws_iam_policies"`
	AwsIamRoleName            string `json:"aws_iam_role_name"`
	AzureRoleDefinitions      *[]int `json:"azure_role_definitions"`
	LongTermAccessKeys        bool   `json:"long_term_access_keys"`
	Name                      string `json:"name"`
	OUID                      int    `json:"ou_id"`
	ShortTermAccessKeys       bool   `json:"short_term_access_keys"`
	UserGroupIds              *[]int `json:"user_group_ids"`
	UserIds                   *[]int `json:"user_ids"`
	WebAccess                 bool   `json:"web_access"`
}

OUCloudAccessRoleCreate for: POST /api/v3/ou-cloud-access-role

type OUCloudAccessRoleResponse

type OUCloudAccessRoleResponse struct {
	Data struct {
		AwsIamPermissionsBoundary *ObjectWithID  `json:"aws_iam_permissions_boundary"`
		AwsIamPolicies            []ObjectWithID `json:"aws_iam_policies"`
		AzureRoleDefinitions      []ObjectWithID `json:"azure_role_definitions"`
		OUCloudAccessRole         struct {
			AwsIamPath          string `json:"aws_iam_path"`
			AwsIamRoleName      string `json:"aws_iam_role_name"`
			ID                  int    `json:"id"`
			LongTermAccessKeys  bool   `json:"long_term_access_keys"`
			Name                string `json:"name"`
			OUID                int    `json:"ou_id"`
			ShortTermAccessKeys bool   `json:"short_term_access_keys"`
			WebAccess           bool   `json:"web_access"`
		} `json:"ou_cloud_access_role"`
		UserGroups []ObjectWithID `json:"user_groups"`
		Users      []ObjectWithID `json:"users"`
	} `json:"data"`
	Status int `json:"status"`
}

OUCloudAccessRoleResponse for: GET /api/v3/ou-cloud-access-role/{id}

type OUCloudAccessRoleUpdate

type OUCloudAccessRoleUpdate struct {
	LongTermAccessKeys  bool   `json:"long_term_access_keys"`
	Name                string `json:"name"`
	ShortTermAccessKeys bool   `json:"short_term_access_keys"`
	WebAccess           bool   `json:"web_access"`
}

OUCloudAccessRoleUpdate for: PATCH /api/v3/ou-cloud-access-role/{id}

type OUCreate

type OUCreate struct {
	Description        string `json:"description"`
	Name               string `json:"name"`
	OwnerUserGroupIds  *[]int `json:"owner_user_group_ids"`
	OwnerUserIds       *[]int `json:"owner_user_ids"`
	ParentOuID         int    `json:"parent_ou_id"`
	PermissionSchemeID int    `json:"permission_scheme_id"`
}

OUCreate for: POST /api/v3/ou

type OUListResponse

type OUListResponse struct {
	Data []struct {
		CreatedAt          string `json:"created_at"`
		Description        string `json:"description"`
		ID                 int    `json:"id"`
		Name               string `json:"name"`
		ParentOuID         int    `json:"parent_ou_id"`
		PermissionSchemeID int    `json:"permission_scheme_id"`
	} `json:"data"`
	Status int `json:"status"`
}

OUListResponse for: GET /api/v3/ou

type OUPermissionAdd

type OUPermissionAdd struct {
	AppRoleID         *int   `json:"app_role_id"`
	OwnerUserGroupIds *[]int `json:"user_groups_ids"`
	OwnerUserIds      *[]int `json:"user_ids"`
	PostWebhookID     *int   `json:"post_webhook_id"`
	PreWebhookID      *int   `json:"pre_webhook_id"`
}

OUPermissionAdd for: POST /v3/ou/{id}/permission-mapping

type OUResponse

type OUResponse struct {
	Data struct {
		OU struct {
			CreatedAt          string `json:"created_at"`
			Description        string `json:"description"`
			ID                 int    `json:"id"`
			Name               string `json:"name"`
			ParentOuID         int    `json:"parent_ou_id"`
			PermissionSchemeID int    `json:"permission_scheme_id"`
		} `json:"ou"`
		OwnerUserGroups []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers      []ObjectWithID `json:"owner_users"`
	} `json:"data"`
	Status int `json:"status"`
}

OUResponse for: GET /api/v3/ou/{id}

type OUUpdatable

type OUUpdatable struct {
	Description        string `json:"description"`
	Name               string `json:"name"`
	PermissionSchemeID int    `json:"permission_scheme_id"`
}

OUUpdatable for: PATCH /api/v3/ou/{id}

type ObjectWithID

type ObjectWithID struct {
	ID int `json:"id"`
}

ObjectWithID -

type OwnerUser

type OwnerUser struct {
	ID int `json:"id"`
}

OwnerUser -

type OwnerUserGroup

type OwnerUserGroup struct {
	ID int `json:"id"`
}

OwnerUserGroup -

type PayerOrganizationalUnit added in v0.3.7

type PayerOrganizationalUnit struct {
	Name      string `json:"name"`
	OrgUnitId string `json:"org_unit_id"`
}

PayerOrganizationalUnit represents an organizational unit in AWS payer's organization.

type ProjectCloudAccessRoleAssociationsAdd

type ProjectCloudAccessRoleAssociationsAdd struct {
	AccountIds                *[]int `json:"account_ids"`
	AwsIamPermissionsBoundary *int   `json:"aws_iam_permissions_boundary"`
	AwsIamPolicies            *[]int `json:"aws_iam_policies"`
	AzureRoleDefinitions      *[]int `json:"azure_role_definitions"`
	UserGroupIds              *[]int `json:"user_group_ids"`
	UserIds                   *[]int `json:"user_ids"`
}

ProjectCloudAccessRoleAssociationsAdd for: POST /api/v3/project-cloud-access-role/{id}/association

type ProjectCloudAccessRoleAssociationsRemove

type ProjectCloudAccessRoleAssociationsRemove struct {
	AccountIds                *[]int `json:"account_ids"`
	AwsIamPermissionsBoundary *int   `json:"aws_iam_permissions_boundary"`
	AwsIamPolicies            *[]int `json:"aws_iam_policies"`
	AzureRoleDefinitions      *[]int `json:"azure_role_definitions"`
	UserGroupIds              *[]int `json:"user_group_ids"`
	UserIds                   *[]int `json:"user_ids"`
}

ProjectCloudAccessRoleAssociationsRemove for: DELETE /api/v3/project-cloud-access-role/{id}/association

type ProjectCloudAccessRoleCreate

type ProjectCloudAccessRoleCreate struct {
	AccountIds                *[]int `json:"account_ids"`
	ApplyToAllAccounts        bool   `json:"apply_to_all_accounts"`
	AwsIamPath                string `json:"aws_iam_path"`
	AwsIamPermissionsBoundary *int   `json:"aws_iam_permissions_boundary"`
	AwsIamPolicies            *[]int `json:"aws_iam_policies"`
	AwsIamRoleName            string `json:"aws_iam_role_name"`
	AzureRoleDefinitions      *[]int `json:"azure_role_definitions"`
	FutureAccounts            bool   `json:"future_accounts"`
	LongTermAccessKeys        bool   `json:"long_term_access_keys"`
	Name                      string `json:"name"`
	ProjectID                 int    `json:"project_id"`
	ShortTermAccessKeys       bool   `json:"short_term_access_keys"`
	UserGroupIds              *[]int `json:"user_group_ids"`
	UserIds                   *[]int `json:"user_ids"`
	WebAccess                 bool   `json:"web_access"`
}

ProjectCloudAccessRoleCreate for: POST /api/v3/project-cloud-access-role

type ProjectCloudAccessRoleResponse

type ProjectCloudAccessRoleResponse struct {
	Data struct {
		Accounts                  []ObjectWithID `json:"accounts"`
		AwsIamPermissionsBoundary *ObjectWithID  `json:"aws_iam_permissions_boundary"`
		AwsIamPolicies            []ObjectWithID `json:"aws_iam_policies"`
		AzureRoleDefinitions      []ObjectWithID `json:"azure_role_definitions"`
		ProjectCloudAccessRole    struct {
			ApplyToAllAccounts  bool   `json:"apply_to_all_accounts"`
			AwsIamPath          string `json:"aws_iam_path"`
			AwsIamRoleName      string `json:"aws_iam_role_name"`
			FutureAccounts      bool   `json:"future_accounts"`
			ID                  int    `json:"id"`
			LongTermAccessKeys  bool   `json:"long_term_access_keys"`
			Name                string `json:"name"`
			ProjectID           int    `json:"project_id"`
			ShortTermAccessKeys bool   `json:"short_term_access_keys"`
			WebAccess           bool   `json:"web_access"`
		} `json:"project_cloud_access_role"`
		UserGroups []ObjectWithID `json:"user_groups"`
		Users      []ObjectWithID `json:"users"`
	} `json:"data"`
	Status int `json:"status"`
}

ProjectCloudAccessRoleResponse for: GET /api/v3/project-cloud-access-role/{id}

type ProjectCloudAccessRoleUpdate

type ProjectCloudAccessRoleUpdate struct {
	ApplyToAllAccounts  bool   `json:"apply_to_all_accounts"`
	FutureAccounts      bool   `json:"future_accounts"`
	LongTermAccessKeys  bool   `json:"long_term_access_keys"`
	Name                string `json:"name"`
	ShortTermAccessKeys bool   `json:"short_term_access_keys"`
	WebAccess           bool   `json:"web_access"`
}

ProjectCloudAccessRoleUpdate for: PATCH /api/v3/project-cloud-access-role/{id}

type ProjectCreate

type ProjectCreate struct {
	AutoPay            bool                   `json:"auto_pay"`
	DefaultAwsRegion   string                 `json:"default_aws_region"`
	Description        string                 `json:"description"`
	Name               string                 `json:"name"`
	OUID               int                    `json:"ou_id"`
	OwnerUserGroupIds  *[]int                 `json:"owner_user_group_ids"`
	OwnerUserIds       *[]int                 `json:"owner_user_ids"`
	PermissionSchemeID int                    `json:"permission_scheme_id"`
	ProjectFunding     []ProjectFundingCreate `json:"project_funding,omitempty"`
	Budget             []BudgetCreate         `json:"budget,omitempty"`
}

ProjectCreate for: POST /api/v3/project

type ProjectFundingCreate

type ProjectFundingCreate struct {
	FundingSourceID int     `json:"funding_source_id"`
	Amount          float64 `json:"amount"`
	StartDatecode   string  `json:"start_datecode"`
	EndDatecode     string  `json:"end_datecode"`
	FundingOrder    int     `json:"funding_order"`
}

ProjectFundingCreate for: POST /v3/project

type ProjectListResponse

type ProjectListResponse struct {
	Data []struct {
		Archived         bool   `json:"archived"`
		AutoPay          bool   `json:"auto_pay"`
		DefaultAwsRegion string `json:"default_aws_region"`
		Description      string `json:"description"`
		ID               int    `json:"id"`
		Name             string `json:"name"`
		OUID             int    `json:"ou_id"`
	} `json:"data"`
	Status int `json:"status"`
}

ProjectListResponse for: GET /api/v3/project

type ProjectResponse

type ProjectResponse struct {
	Data struct {
		Archived         bool   `json:"archived"`
		AutoPay          bool   `json:"auto_pay"`
		DefaultAwsRegion string `json:"default_aws_region"`
		Description      string `json:"description"`
		ID               int    `json:"id"`
		Name             string `json:"name"`
		OUID             int    `json:"ou_id"`
	} `json:"data"`
	Status int `json:"status"`
}

ProjectResponse for: GET /api/v3/project/{id}

type ProjectUpdate

type ProjectUpdate struct {
	Archived           bool   `json:"archived"`
	AutoPay            bool   `json:"auto_pay"`
	DefaultAwsRegion   string `json:"default_aws_region"`
	Description        string `json:"description"`
	Name               string `json:"name"`
	PermissionSchemeID int    `json:"permission_scheme_id"`
}

ProjectUpdate for: PATCH /api/v3/project/{id}

type RequestError added in v0.3.7

type RequestError struct {
	StatusCode int
	Err        error
}

func (RequestError) Error added in v0.3.7

func (r RequestError) Error() string

type ServiceControlPolicyCreate

type ServiceControlPolicyCreate struct {
	Description       string `json:"description"`
	Name              string `json:"name"`
	OwnerUserGroupIds *[]int `json:"owner_user_group_ids"`
	OwnerUserIds      *[]int `json:"owner_user_ids"`
	Policy            string `json:"policy"`
}

ServiceControlPolicyCreate for: POST /api/v3/service-control-policy

type ServiceControlPolicyListResponse

type ServiceControlPolicyListResponse struct {
	Data []struct {
		OwnerUserGroups      []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers           []ObjectWithID `json:"owner_users"`
		ServiceControlPolicy struct {
			AwsManagedPolicy    bool   `json:"aws_managed_policy"`
			CreatedByUserID     int    `json:"created_by_user_id"`
			Description         string `json:"description"`
			ID                  int    `json:"id"`
			Name                string `json:"name"`
			Policy              string `json:"policy"`
			SystemManagedPolicy bool   `json:"system_managed_policy"`
		} `json:"service_control_policy"`
	} `json:"data"`
	Status int `json:"status"`
}

ServiceControlPolicyListResponse for: GET /api/v3/service-control-policy

type ServiceControlPolicyResponse

type ServiceControlPolicyResponse struct {
	Data struct {
		OwnerUserGroups      []ObjectWithID `json:"owner_user_groups"`
		OwnerUsers           []ObjectWithID `json:"owner_users"`
		ServiceControlPolicy struct {
			AwsManagedPolicy    bool   `json:"aws_managed_policy"`
			CreatedByUserID     int    `json:"created_by_user_id"`
			Description         string `json:"description"`
			ID                  int    `json:"id"`
			Name                string `json:"name"`
			Policy              string `json:"policy"`
			SystemManagedPolicy bool   `json:"system_managed_policy"`
		} `json:"service_control_policy"`
	} `json:"data"`
	Status int `json:"status"`
}

ServiceControlPolicyResponse for: GET /api/v3/service-control-policy/{id}

type ServiceControlPolicyUpdate

type ServiceControlPolicyUpdate struct {
	Description string `json:"description"`
	Name        string `json:"name"`
	Policy      string `json:"policy"`
}

ServiceControlPolicyUpdate for: PATCH /api/v3/service-control-policy/{id}

type SubscriptionCSPBillingInfo added in v0.3.7

type SubscriptionCSPBillingInfo struct {
	BillingCycle string `json:"billing_cycle,omitempty"`
	OfferID      string `json:"offer_id"`
}

type SubscriptionEABillingInfo added in v0.3.7

type SubscriptionEABillingInfo struct {
	BillingAccountNumber string `json:"billing_account,omitempty"`
	EAAccountNumber      string `json:"account,omitempty"`
}

type SubscriptionMCABillingInfo added in v0.3.7

type SubscriptionMCABillingInfo struct {
	BillingAccountNumber string `json:"billing_account,omitempty"`
	BillingProfileNumber string `json:"billing_profile,omitempty"`
	InvoiceSectionNumber string `json:"billing_profile_invoice,omitempty"`
}

type Tag added in v0.3.4

type Tag struct {
	Key   string `json:"tag_key"`
	Value string `json:"tag_value"`
}

type UGroupCreate

type UGroupCreate struct {
	Description       string `json:"description"`
	IdmsID            int    `json:"idms_id"`
	Name              string `json:"name"`
	OwnerUserGroupIds *[]int `json:"owner_user_group_ids"`
	OwnerUserIds      *[]int `json:"owner_user_ids"`
	UserIds           *[]int `json:"user_ids"`
}

UGroupCreate for: POST /api/v3/user-group

type UGroupListResponse

type UGroupListResponse struct {
	Data []struct {
		CreatedAt   string `json:"created_at"`
		Description string `json:"description"`
		Enabled     bool   `json:"enabled"`
		ID          int    `json:"id"`
		IdmsID      int    `json:"idms_id"`
		Name        string `json:"name"`
	} `json:"data"`
	Status int `json:"status"`
}

UGroupListResponse for: GET /api/v3/user-group

type UGroupResponse

type UGroupResponse struct {
	Data struct {
		OwnerGroup []ObjectWithID `json:"owner_group"`
		OwnerUsers []ObjectWithID `json:"owner_users"`
		UserGroup  struct {
			CreatedAt   string `json:"created_at"`
			Description string `json:"description"`
			Enabled     bool   `json:"enabled"`
			ID          int    `json:"id"`
			IdmsID      int    `json:"idms_id"`
			Name        string `json:"name"`
		} `json:"user_group"`
		Users []ObjectWithID `json:"users"`
	} `json:"data"`
	Status int `json:"status"`
}

UGroupResponse for: GET /api/v3/user-group/{id}

type UGroupUpdatable

type UGroupUpdatable struct {
	Description string `json:"description"`
	IdmsID      int    `json:"idms_id"`
	Name        string `json:"name"`
}

UGroupUpdatable for: PATCH /api/v3/user-group/{id}

type UpdateSAMLGroupAssociation

type UpdateSAMLGroupAssociation struct {
	AssertionName  string `json:"assertion_name"`
	AssertionRegex string `json:"assertion_regex"`
	UpdateOnLogin  bool   `json:"update_on_login"`
	UserGroupID    int    `json:"user_group_id"`
}

UpdateSAMLGroupAssociation for: PATCH /api/v3/idms/group-association/{id}

type UserGroupAssociationsAdd

type UserGroupAssociationsAdd []int

UserGroupAssociationsAdd for: POST /api/v3/user-group/{id}/user

type UserGroupAssociationsRemove

type UserGroupAssociationsRemove []int

UserGroupAssociationsRemove for: DELETE /api/v3/user-group/{id}/user

Jump to

Keyboard shortcuts

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