Documentation
¶
Index ¶
- func AccessSourceTypeChoices() []string
- func BillingCurrencyTypeChoices() []string
- func MemberTypeChoices() []string
- func OrderByTypeChoices() []string
- func PaymentMethodTypeChoices() []string
- func TeamTypeChoices() []string
- type AccessSourceType
- type AccountAttachPaymentMethodIn
- type AccountAttachPaymentMethodOut
- type AccountBillingGroupOut
- type AccountCreateIn
- type AccountCreateOut
- type AccountGetOut
- type AccountHandler
- func (h *AccountHandler) AccountAttachPaymentMethod(ctx context.Context, accountId string, in *AccountAttachPaymentMethodIn) (*AccountAttachPaymentMethodOut, error)
- func (h *AccountHandler) AccountBillingGroupList(ctx context.Context, accountId string) ([]AccountBillingGroupOut, error)
- func (h *AccountHandler) AccountCreate(ctx context.Context, in *AccountCreateIn) (*AccountCreateOut, error)
- func (h *AccountHandler) AccountDelete(ctx context.Context, accountId string) error
- func (h *AccountHandler) AccountEventList(ctx context.Context, accountId string) ([]EventOut, error)
- func (h *AccountHandler) AccountGet(ctx context.Context, accountId string) (*AccountGetOut, error)
- func (h *AccountHandler) AccountList(ctx context.Context) ([]AccountOut, error)
- func (h *AccountHandler) AccountMove(ctx context.Context, accountId string, in *AccountMoveIn) (*AccountMoveOut, error)
- func (h *AccountHandler) AccountPaymentMethodDelete(ctx context.Context, accountId string, cardId string) error
- func (h *AccountHandler) AccountPaymentMethodsList(ctx context.Context, accountId string) ([]CardOut, error)
- func (h *AccountHandler) AccountProjectsList(ctx context.Context, accountId string) (*AccountProjectsListOut, error)
- func (h *AccountHandler) AccountProjectsTeamsList(ctx context.Context, accountId string, projectName string) ([]TeamOut, error)
- func (h *AccountHandler) AccountUpdate(ctx context.Context, accountId string, in *AccountUpdateIn) (*AccountUpdateOut, error)
- func (h *AccountHandler) AccountUserProjectsList(ctx context.Context, accountId string, userId string) ([]UserProjectOut, error)
- func (h *AccountHandler) AccountUserTeamsList(ctx context.Context, accountId string, userId string) ([]AccountUserTeamsListOut, error)
- func (h *AccountHandler) AccountUsersSearch(ctx context.Context, accountId string, in *AccountUsersSearchIn) ([]UserOut, error)
- type AccountMoveIn
- type AccountMoveOut
- type AccountOut
- type AccountProjectsListOut
- type AccountUpdateIn
- type AccountUpdateOut
- type AccountUserTeamsListOut
- type AccountUsersSearchIn
- type BillingCurrencyType
- type BillingEmailOut
- type CardInfoOut
- type CardOut
- type ElasticsearchOut
- type EndOfLifeExtensionOut
- type EventOut
- type Handler
- type MemberType
- type OrderByType
- type PaymentMethodType
- type ProjectOut
- type TeamOut
- type TeamType
- type TechEmailOut
- type UserOut
- type UserProjectOut
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AccessSourceTypeChoices ¶ added in v0.3.0
func AccessSourceTypeChoices() []string
func BillingCurrencyTypeChoices ¶ added in v0.3.0
func BillingCurrencyTypeChoices() []string
func MemberTypeChoices ¶ added in v0.3.0
func MemberTypeChoices() []string
func OrderByTypeChoices ¶
func OrderByTypeChoices() []string
func PaymentMethodTypeChoices ¶ added in v0.3.0
func PaymentMethodTypeChoices() []string
func TeamTypeChoices ¶ added in v0.15.0
func TeamTypeChoices() []string
Types ¶
type AccessSourceType ¶ added in v0.3.0
type AccessSourceType string
const ( AccessSourceTypeDescendantMembership AccessSourceType = "descendant_membership" AccessSourceTypeOrganizationMembership AccessSourceType = "organization_membership" AccessSourceTypeProjectMembership AccessSourceType = "project_membership" AccessSourceTypeTeamMembership AccessSourceType = "team_membership" )
type AccountAttachPaymentMethodIn ¶
type AccountAttachPaymentMethodIn struct {
PaymentMethodId string `json:"payment_method_id"` // Unique identifier for a Stripe payment method
}
AccountAttachPaymentMethodIn AccountAttachPaymentMethodRequestBody
type AccountAttachPaymentMethodOut ¶
type AccountAttachPaymentMethodOut struct {
Brand string `json:"brand"`
CardId string `json:"card_id"` // Credit card ID
Country string `json:"country"`
CountryCode string `json:"country_code"` // Two letter ISO country code
ExpMonth int `json:"exp_month"` // Expiration month
ExpYear int `json:"exp_year"` // Expiration year
Last4 string `json:"last4"` // Credit card last four digits
Name string `json:"name"` // Name on the credit card
OrganizationId *string `json:"organization_id,omitempty"` // Organization ID
Projects []string `json:"projects"` // List of projects the card is assigned to
}
AccountAttachPaymentMethodOut User credit card information
type AccountBillingGroupOut ¶
type AccountBillingGroupOut struct {
AccountId string `json:"account_id"` // Account ID
AccountName string `json:"account_name"` // Account name
AddressLines []string `json:"address_lines"` // Address lines
BillingAddress *string `json:"billing_address,omitempty"` // DEPRECATED: use split address fields like company, address_lines, zip_code, city and state instead
BillingAddressId *string `json:"billing_address_id,omitempty"` // Address ID
BillingCurrency BillingCurrencyType `json:"billing_currency"` // Billing currency
BillingEmails []BillingEmailOut `json:"billing_emails"` // List of project billing email addresses
BillingExtraText string `json:"billing_extra_text"` // Extra text to be included in all project invoices, e.g. purchase order or cost center number
BillingGroupId string `json:"billing_group_id"` // Billing group ID
BillingGroupName string `json:"billing_group_name"` // Billing group name
BillingType string `json:"billing_type"` // Method of charging/invoicing this project
CardInfo CardInfoOut `json:"card_info"` // Credit card assigned to the project
City string `json:"city"` // Address city
Company string `json:"company"` // Name of a company
Country string `json:"country"` // Billing country
CountryCode string `json:"country_code"` // Two letter ISO country code
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
EstimatedBalanceLocal string `json:"estimated_balance_local"` // Estimated balance in billing currency, before tax
EstimatedBalanceUsd string `json:"estimated_balance_usd"` // Estimated balance in USD, before tax
PaymentMethod PaymentMethodType `json:"payment_method"` // Payment method
ShippingAddressId *string `json:"shipping_address_id,omitempty"` // Address ID
State string `json:"state"` // Address state or province
VatId string `json:"vat_id"` // EU VAT Identification Number
ZipCode string `json:"zip_code"` // Address zip code
}
type AccountCreateIn ¶
type AccountCreateIn struct {
AccountName string `json:"account_name"` // Account name
ParentAccountId *string `json:"parent_account_id,omitempty"` // Account ID
PrimaryBillingGroupId *string `json:"primary_billing_group_id,omitempty"` // Billing group ID
}
AccountCreateIn AccountCreateRequestBody
type AccountCreateOut ¶
type AccountCreateOut struct {
AccessSource AccessSourceType `json:"access_source,omitempty"` // Describe the source of the account
AccountId string `json:"account_id"` // Account ID
AccountName string `json:"account_name"` // Account name
AccountOwnerTeamId string `json:"account_owner_team_id"` // Team ID
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
Features map[string]any `json:"features,omitempty"` // Feature flags
IsAccountMember *bool `json:"is_account_member,omitempty"` // If true, user is part of a team of this or a parent account
IsAccountOwner bool `json:"is_account_owner"` // If true, user is part of the owners team for this account
OrganizationId string `json:"organization_id"` // Organization ID
ParentAccountId *string `json:"parent_account_id,omitempty"` // Account ID
PrimaryBillingGroupId string `json:"primary_billing_group_id"` // Billing group ID
RootAccountId string `json:"root_account_id"` // Account ID
TenantId *string `json:"tenant_id,omitempty"` // Tenant identifier
UpdateTime time.Time `json:"update_time"` // Timestamp in ISO 8601 format, always in UTC
}
AccountCreateOut Account details
type AccountGetOut ¶
type AccountGetOut struct {
AccessSource AccessSourceType `json:"access_source,omitempty"` // Describe the source of the account
AccountId string `json:"account_id"` // Account ID
AccountName string `json:"account_name"` // Account name
AccountOwnerTeamId string `json:"account_owner_team_id"` // Team ID
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
Features map[string]any `json:"features,omitempty"` // Feature flags
IsAccountMember *bool `json:"is_account_member,omitempty"` // If true, user is part of a team of this or a parent account
IsAccountOwner bool `json:"is_account_owner"` // If true, user is part of the owners team for this account
OrganizationId string `json:"organization_id"` // Organization ID
ParentAccountId *string `json:"parent_account_id,omitempty"` // Account ID
PrimaryBillingGroupId string `json:"primary_billing_group_id"` // Billing group ID
RootAccountId string `json:"root_account_id"` // Account ID
TenantId *string `json:"tenant_id,omitempty"` // Tenant identifier
UpdateTime time.Time `json:"update_time"` // Timestamp in ISO 8601 format, always in UTC
}
AccountGetOut Account details
type AccountHandler ¶
type AccountHandler struct {
// contains filtered or unexported fields
}
func NewHandler ¶
func NewHandler(doer doer) AccountHandler
func (*AccountHandler) AccountAttachPaymentMethod ¶
func (h *AccountHandler) AccountAttachPaymentMethod(ctx context.Context, accountId string, in *AccountAttachPaymentMethodIn) (*AccountAttachPaymentMethodOut, error)
func (*AccountHandler) AccountBillingGroupList ¶
func (h *AccountHandler) AccountBillingGroupList(ctx context.Context, accountId string) ([]AccountBillingGroupOut, error)
func (*AccountHandler) AccountCreate ¶
func (h *AccountHandler) AccountCreate(ctx context.Context, in *AccountCreateIn) (*AccountCreateOut, error)
func (*AccountHandler) AccountDelete ¶
func (h *AccountHandler) AccountDelete(ctx context.Context, accountId string) error
func (*AccountHandler) AccountEventList ¶
func (*AccountHandler) AccountGet ¶
func (h *AccountHandler) AccountGet(ctx context.Context, accountId string) (*AccountGetOut, error)
func (*AccountHandler) AccountList ¶
func (h *AccountHandler) AccountList(ctx context.Context) ([]AccountOut, error)
func (*AccountHandler) AccountMove ¶
func (h *AccountHandler) AccountMove(ctx context.Context, accountId string, in *AccountMoveIn) (*AccountMoveOut, error)
func (*AccountHandler) AccountPaymentMethodDelete ¶
func (*AccountHandler) AccountPaymentMethodsList ¶
func (*AccountHandler) AccountProjectsList ¶
func (h *AccountHandler) AccountProjectsList(ctx context.Context, accountId string) (*AccountProjectsListOut, error)
func (*AccountHandler) AccountProjectsTeamsList ¶ added in v0.15.0
func (*AccountHandler) AccountUpdate ¶
func (h *AccountHandler) AccountUpdate(ctx context.Context, accountId string, in *AccountUpdateIn) (*AccountUpdateOut, error)
func (*AccountHandler) AccountUserProjectsList ¶
func (h *AccountHandler) AccountUserProjectsList(ctx context.Context, accountId string, userId string) ([]UserProjectOut, error)
func (*AccountHandler) AccountUserTeamsList ¶ added in v0.15.0
func (h *AccountHandler) AccountUserTeamsList(ctx context.Context, accountId string, userId string) ([]AccountUserTeamsListOut, error)
func (*AccountHandler) AccountUsersSearch ¶
func (h *AccountHandler) AccountUsersSearch(ctx context.Context, accountId string, in *AccountUsersSearchIn) ([]UserOut, error)
type AccountMoveIn ¶
type AccountMoveIn struct {
ParentAccountId string `json:"parent_account_id"` // Account ID
}
AccountMoveIn AccountMoveRequestBody
type AccountMoveOut ¶
type AccountMoveOut struct {
AccessSource AccessSourceType `json:"access_source,omitempty"` // Describe the source of the account
AccountId string `json:"account_id"` // Account ID
AccountName string `json:"account_name"` // Account name
AccountOwnerTeamId string `json:"account_owner_team_id"` // Team ID
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
Features map[string]any `json:"features,omitempty"` // Feature flags
IsAccountMember *bool `json:"is_account_member,omitempty"` // If true, user is part of a team of this or a parent account
IsAccountOwner bool `json:"is_account_owner"` // If true, user is part of the owners team for this account
OrganizationId string `json:"organization_id"` // Organization ID
ParentAccountId *string `json:"parent_account_id,omitempty"` // Account ID
PrimaryBillingGroupId string `json:"primary_billing_group_id"` // Billing group ID
RootAccountId string `json:"root_account_id"` // Account ID
TenantId *string `json:"tenant_id,omitempty"` // Tenant identifier
UpdateTime time.Time `json:"update_time"` // Timestamp in ISO 8601 format, always in UTC
}
AccountMoveOut Account details
type AccountOut ¶
type AccountOut struct {
AccessSource AccessSourceType `json:"access_source,omitempty"` // Describe the source of the account
AccountId string `json:"account_id"` // Account ID
AccountName string `json:"account_name"` // Account name
AccountOwnerTeamId string `json:"account_owner_team_id"` // Team ID
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
Features map[string]any `json:"features,omitempty"` // Feature flags
IsAccountMember *bool `json:"is_account_member,omitempty"` // If true, user is part of a team of this or a parent account
IsAccountOwner bool `json:"is_account_owner"` // If true, user is part of the owners team for this account
OrganizationId string `json:"organization_id"` // Organization ID
ParentAccountId *string `json:"parent_account_id,omitempty"` // Account ID
PrimaryBillingGroupId string `json:"primary_billing_group_id"` // Billing group ID
RootAccountId string `json:"root_account_id"` // Account ID
TenantId *string `json:"tenant_id,omitempty"` // Tenant identifier
UpdateTime time.Time `json:"update_time"` // Timestamp in ISO 8601 format, always in UTC
}
type AccountProjectsListOut ¶
type AccountProjectsListOut struct {
Projects []ProjectOut `json:"projects"` // List of projects
TotalProjectCount *int `json:"total_project_count,omitempty"` // Total count of projects associated to account.
}
AccountProjectsListOut AccountProjectsListResponse
type AccountUpdateIn ¶
type AccountUpdateIn struct {
AccountName *string `json:"account_name,omitempty"` // Account name
PrimaryBillingGroupId *string `json:"primary_billing_group_id,omitempty"` // Billing group ID
}
AccountUpdateIn AccountUpdateRequestBody
type AccountUpdateOut ¶
type AccountUpdateOut struct {
AccessSource AccessSourceType `json:"access_source,omitempty"` // Describe the source of the account
AccountId string `json:"account_id"` // Account ID
AccountName string `json:"account_name"` // Account name
AccountOwnerTeamId string `json:"account_owner_team_id"` // Team ID
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
Features map[string]any `json:"features,omitempty"` // Feature flags
IsAccountMember *bool `json:"is_account_member,omitempty"` // If true, user is part of a team of this or a parent account
IsAccountOwner bool `json:"is_account_owner"` // If true, user is part of the owners team for this account
OrganizationId string `json:"organization_id"` // Organization ID
ParentAccountId *string `json:"parent_account_id,omitempty"` // Account ID
PrimaryBillingGroupId string `json:"primary_billing_group_id"` // Billing group ID
RootAccountId string `json:"root_account_id"` // Account ID
TenantId *string `json:"tenant_id,omitempty"` // Tenant identifier
UpdateTime time.Time `json:"update_time"` // Timestamp in ISO 8601 format, always in UTC
}
AccountUpdateOut Account details
type AccountUserTeamsListOut ¶ added in v0.36.0
type AccountUsersSearchIn ¶
type AccountUsersSearchIn struct {
Limit *int `json:"limit,omitempty"` // Maximum number of results to return
OrderBy OrderByType `json:"order_by,omitempty"` // Sorting criteria; desc is descending order and asc ascending
Query *string `json:"query,omitempty"` // Filter keyword
}
AccountUsersSearchIn AccountUsersSearchRequestBody
type BillingCurrencyType ¶ added in v0.3.0
type BillingCurrencyType string
const ( BillingCurrencyTypeAud BillingCurrencyType = "AUD" BillingCurrencyTypeCad BillingCurrencyType = "CAD" BillingCurrencyTypeChf BillingCurrencyType = "CHF" BillingCurrencyTypeDkk BillingCurrencyType = "DKK" BillingCurrencyTypeEur BillingCurrencyType = "EUR" BillingCurrencyTypeGbp BillingCurrencyType = "GBP" BillingCurrencyTypeJpy BillingCurrencyType = "JPY" BillingCurrencyTypeNok BillingCurrencyType = "NOK" BillingCurrencyTypeNzd BillingCurrencyType = "NZD" BillingCurrencyTypeSek BillingCurrencyType = "SEK" BillingCurrencyTypeSgd BillingCurrencyType = "SGD" BillingCurrencyTypeUsd BillingCurrencyType = "USD" )
type BillingEmailOut ¶
type BillingEmailOut struct {
Email string `json:"email"` // User email address
}
type CardInfoOut ¶
type CardInfoOut struct {
Brand string `json:"brand"`
CardId string `json:"card_id"` // Credit card ID
Country string `json:"country"`
CountryCode string `json:"country_code"` // Two letter ISO country code
ExpMonth int `json:"exp_month"` // Expiration month
ExpYear int `json:"exp_year"` // Expiration year
Last4 string `json:"last4"` // Credit card last four digits
Name string `json:"name"` // Name on the credit card
UserEmail string `json:"user_email"` // User email address
}
CardInfoOut Credit card assigned to the project
type CardOut ¶
type CardOut struct {
Brand string `json:"brand"`
CardId string `json:"card_id"` // Credit card ID
Country string `json:"country"`
CountryCode string `json:"country_code"` // Two letter ISO country code
ExpMonth int `json:"exp_month"` // Expiration month
ExpYear int `json:"exp_year"` // Expiration year
Last4 string `json:"last4"` // Credit card last four digits
Name string `json:"name"` // Name on the credit card
}
type ElasticsearchOut ¶
type ElasticsearchOut struct {
EolDate string `json:"eol_date"` // Extended EOL date
Version string `json:"version"` // Service version
}
ElasticsearchOut Service EOL extension
type EndOfLifeExtensionOut ¶
type EndOfLifeExtensionOut struct {
Elasticsearch *ElasticsearchOut `json:"elasticsearch,omitempty"` // Service EOL extension
}
EndOfLifeExtensionOut End of life extension information
type EventOut ¶
type EventOut struct {
AccountId string `json:"account_id"` // Account ID
ActionDescription string `json:"action_description"` // Event description
ActionType string `json:"action_type"` // Event type
Actor string `json:"actor"` // Actor details
ActorUserId string `json:"actor_user_id"` // User ID
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
LogEntryId int `json:"log_entry_id"` // Entry ID
TeamId string `json:"team_id"` // Team ID
}
type Handler ¶
type Handler interface {
// AccountAttachPaymentMethod attach payment method for account
// POST /v1/account/{account_id}/payment_methods
// https://api.aiven.io/doc/#tag/Account/operation/AccountAttachPaymentMethod
AccountAttachPaymentMethod(ctx context.Context, accountId string, in *AccountAttachPaymentMethodIn) (*AccountAttachPaymentMethodOut, error)
// AccountBillingGroupList list account billing groups
// GET /v1/account/{account_id}/billing-group
// https://api.aiven.io/doc/#tag/Account/operation/AccountBillingGroupList
AccountBillingGroupList(ctx context.Context, accountId string) ([]AccountBillingGroupOut, error)
// AccountCreate create a new account
// POST /v1/account
// https://api.aiven.io/doc/#tag/Account/operation/AccountCreate
AccountCreate(ctx context.Context, in *AccountCreateIn) (*AccountCreateOut, error)
// AccountDelete delete empty account
// DELETE /v1/account/{account_id}
// https://api.aiven.io/doc/#tag/Account/operation/AccountDelete
AccountDelete(ctx context.Context, accountId string) error
// AccountEventList list account events
// GET /v1/account/{account_id}/events
// https://api.aiven.io/doc/#tag/Account/operation/AccountEventList
AccountEventList(ctx context.Context, accountId string) ([]EventOut, error)
// AccountGet get account details
// GET /v1/account/{account_id}
// https://api.aiven.io/doc/#tag/Account/operation/AccountGet
AccountGet(ctx context.Context, accountId string) (*AccountGetOut, error)
// AccountList list accounts you have access to
// GET /v1/account
// https://api.aiven.io/doc/#tag/Account/operation/AccountList
AccountList(ctx context.Context) ([]AccountOut, error)
// AccountMove move an existing organization unitself
// PUT /v1/account/{account_id}/parent_account
// https://api.aiven.io/doc/#tag/Account/operation/AccountMove
AccountMove(ctx context.Context, accountId string, in *AccountMoveIn) (*AccountMoveOut, error)
// AccountPaymentMethodDelete delete credit card attached to the account as a payment method
// DELETE /v1/account/{account_id}/payment_method/{card_id}
// https://api.aiven.io/doc/#tag/Account/operation/AccountPaymentMethodDelete
AccountPaymentMethodDelete(ctx context.Context, accountId string, cardId string) error
// AccountPaymentMethodsList list credit cards attached as a payment method to the account
// GET /v1/account/{account_id}/payment_methods
// https://api.aiven.io/doc/#tag/Account/operation/AccountPaymentMethodsList
AccountPaymentMethodsList(ctx context.Context, accountId string) ([]CardOut, error)
// AccountProjectsList list projects belonging to account
// GET /v1/account/{account_id}/projects
// https://api.aiven.io/doc/#tag/Account/operation/AccountProjectsList
AccountProjectsList(ctx context.Context, accountId string) (*AccountProjectsListOut, error)
// Deprecated: AccountProjectsTeamsList list account teams associated to a project
// GET /v1/account/{account_id}/project/{project_name}/teams
// https://api.aiven.io/doc/#tag/Account/operation/AccountProjectsTeamsList
AccountProjectsTeamsList(ctx context.Context, accountId string, projectName string) ([]TeamOut, error)
// AccountUpdate update existing account
// PUT /v1/account/{account_id}
// https://api.aiven.io/doc/#tag/Account/operation/AccountUpdate
AccountUpdate(ctx context.Context, accountId string, in *AccountUpdateIn) (*AccountUpdateOut, error)
// AccountUserProjectsList list projects associated with this account that user has access to
// GET /v1/account/{account_id}/user/{user_id}/projects
// https://api.aiven.io/doc/#tag/Account/operation/AccountUserProjectsList
AccountUserProjectsList(ctx context.Context, accountId string, userId string) ([]UserProjectOut, error)
// Deprecated: AccountUserTeamsList list all teams for user
// GET /v1/account/{account_id}/user/{user_id}/teams
// https://api.aiven.io/doc/#tag/Account/operation/AccountUserTeamsList
AccountUserTeamsList(ctx context.Context, accountId string, userId string) ([]AccountUserTeamsListOut, error)
// AccountUsersSearch list/search users who are members of any team on this account
// POST /v1/account/{account_id}/users/search
// https://api.aiven.io/doc/#tag/Account/operation/AccountUsersSearch
AccountUsersSearch(ctx context.Context, accountId string, in *AccountUsersSearchIn) ([]UserOut, error)
}
type MemberType ¶ added in v0.3.0
type MemberType string
const ( MemberTypeAdmin MemberType = "admin" MemberTypeDeveloper MemberType = "developer" MemberTypeOperator MemberType = "operator" MemberTypeOrganizationAppUsersWrite MemberType = "organization:app_users:write" MemberTypeOrganizationAuditLogsRead MemberType = "organization:audit_logs:read" MemberTypeOrganizationDomainsWrite MemberType = "organization:domains:write" MemberTypeOrganizationGroupsWrite MemberType = "organization:groups:write" MemberTypeOrganizationIdpsWrite MemberType = "organization:idps:write" MemberTypeOrganizationUsersWrite MemberType = "organization:users:write" MemberTypeProjectAuditLogsRead MemberType = "project:audit_logs:read" MemberTypeProjectIntegrationsRead MemberType = "project:integrations:read" MemberTypeProjectIntegrationsWrite MemberType = "project:integrations:write" MemberTypeProjectNetworkingRead MemberType = "project:networking:read" MemberTypeProjectNetworkingWrite MemberType = "project:networking:write" MemberTypeProjectPermissionsRead MemberType = "project:permissions:read" MemberTypeProjectServicesRead MemberType = "project:services:read" MemberTypeProjectServicesWrite MemberType = "project:services:write" MemberTypeReadOnly MemberType = "read_only" MemberTypeRoleOrganizationAdmin MemberType = "role:organization:admin" MemberTypeRoleServicesMaintenance MemberType = "role:services:maintenance" MemberTypeRoleServicesRecover MemberType = "role:services:recover" MemberTypeServiceConfigurationWrite MemberType = "service:configuration:write" MemberTypeServiceDataWrite MemberType = "service:data:write" MemberTypeServiceLogsRead MemberType = "service:logs:read" MemberTypeServiceSecretsRead MemberType = "service:secrets:read" MemberTypeServiceUsersWrite MemberType = "service:users:write" )
type OrderByType ¶
type OrderByType string
const ( OrderByTypeUserEmailAsc OrderByType = "user_email:asc" OrderByTypeUserEmailDesc OrderByType = "user_email:desc" OrderByTypeUserIdAsc OrderByType = "user_id:asc" OrderByTypeUserIdDesc OrderByType = "user_id:desc" OrderByTypeRealNameAsc OrderByType = "real_name:asc" OrderByTypeRealNameDesc OrderByType = "real_name:desc" )
type PaymentMethodType ¶ added in v0.3.0
type PaymentMethodType string
const ( PaymentMethodTypeAccrual PaymentMethodType = "accrual" PaymentMethodTypeCard PaymentMethodType = "card" PaymentMethodTypeDisabled PaymentMethodType = "disabled" PaymentMethodTypeEmail PaymentMethodType = "email" PaymentMethodTypeNoPaymentExpected PaymentMethodType = "no_payment_expected" PaymentMethodTypePartner PaymentMethodType = "partner" )
type ProjectOut ¶
type ProjectOut struct {
AccountId string `json:"account_id"` // Account ID
AccountName *string `json:"account_name,omitempty"` // Account name
AddressLines []string `json:"address_lines,omitempty"` // Address lines
AvailableCredits *string `json:"available_credits,omitempty"` // Available credits, in USD
BillingAddress string `json:"billing_address"` // DEPRECATED: use split address fields like company, address_lines, zip_code, city and state instead
BillingCurrency BillingCurrencyType `json:"billing_currency,omitempty"` // Billing currency
BillingEmails []BillingEmailOut `json:"billing_emails"` // List of project billing email addresses
BillingExtraText *string `json:"billing_extra_text,omitempty"` // Extra text to be included in all project invoices, e.g. purchase order or cost center number
BillingGroupId string `json:"billing_group_id"` // Billing group ID
BillingGroupName string `json:"billing_group_name"` // Billing group name
CardInfo *CardInfoOut `json:"card_info,omitempty"` // Credit card assigned to the project
City *string `json:"city,omitempty"` // Address city
Company *string `json:"company,omitempty"` // Name of a company
Country string `json:"country"` // Billing country
CountryCode string `json:"country_code"` // Two letter ISO country code
DefaultCloud string `json:"default_cloud"` // Default cloud to use when launching services
EndOfLifeExtension *EndOfLifeExtensionOut `json:"end_of_life_extension,omitempty"` // End of life extension information
EstimatedBalance string `json:"estimated_balance"` // Estimated balance, in USD
EstimatedBalanceLocal *string `json:"estimated_balance_local,omitempty"` // Estimated balance, in billing currency
Features map[string]any `json:"features,omitempty"` // Feature flags
OrganizationId string `json:"organization_id"` // Organization ID
PaymentMethod string `json:"payment_method"` // Payment method
ProjectName string `json:"project_name"` // Project name
State *string `json:"state,omitempty"` // Address state or province
Tags map[string]string `json:"tags,omitempty"` // Set of resource tags
TechEmails []TechEmailOut `json:"tech_emails,omitempty"` // List of project tech email addresses
TenantId *string `json:"tenant_id,omitempty"` // Tenant ID
TrialExpirationTime *time.Time `json:"trial_expiration_time,omitempty"` // Trial expiration time (ISO 8601)
VatId string `json:"vat_id"` // EU VAT Identification Number
ZipCode *string `json:"zip_code,omitempty"` // Address zip code
}
type TeamOut ¶ added in v0.15.0
type TeamOut struct {
AccountId *string `json:"account_id,omitempty"` // Account ID
CreateTime *time.Time `json:"create_time,omitempty"` // Timestamp in ISO 8601 format, always in UTC
TeamId string `json:"team_id"` // Team ID
TeamName string `json:"team_name"` // Team name
TeamType TeamType `json:"team_type,omitempty"` // Team type (permission level)
UpdateTime *time.Time `json:"update_time,omitempty"` // Timestamp in ISO 8601 format, always in UTC
}
type TeamType ¶ added in v0.15.0
type TeamType string
const ( TeamTypeAdmin TeamType = "admin" TeamTypeOperator TeamType = "operator" TeamTypeDeveloper TeamType = "developer" TeamTypeReadOnly TeamType = "read_only" TeamTypeProjectIntegrationsRead TeamType = "project:integrations:read" TeamTypeProjectIntegrationsWrite TeamType = "project:integrations:write" TeamTypeProjectNetworkingRead TeamType = "project:networking:read" TeamTypeProjectNetworkingWrite TeamType = "project:networking:write" TeamTypeProjectPermissionsRead TeamType = "project:permissions:read" TeamTypeServiceConfigurationWrite TeamType = "service:configuration:write" TeamTypeServiceLogsRead TeamType = "service:logs:read" TeamTypeProjectServicesRead TeamType = "project:services:read" TeamTypeProjectServicesWrite TeamType = "project:services:write" TeamTypeProjectAuditLogsRead TeamType = "project:audit_logs:read" TeamTypeServiceDataWrite TeamType = "service:data:write" TeamTypeServiceSecretsRead TeamType = "service:secrets:read" TeamTypeServiceUsersWrite TeamType = "service:users:write" TeamTypeRoleServicesMaintenance TeamType = "role:services:maintenance" TeamTypeRoleServicesRecover TeamType = "role:services:recover" TeamTypeOrganizationAuditLogsRead TeamType = "organization:audit_logs:read" TeamTypeOrganizationUsersWrite TeamType = "organization:users:write" TeamTypeOrganizationAppUsersWrite TeamType = "organization:app_users:write" TeamTypeOrganizationGroupsWrite TeamType = "organization:groups:write" TeamTypeOrganizationIdpsWrite TeamType = "organization:idps:write" TeamTypeOrganizationDomainsWrite TeamType = "organization:domains:write" TeamTypeRoleOrganizationAdmin TeamType = "role:organization:admin" )
type TechEmailOut ¶
type TechEmailOut struct {
Email string `json:"email"` // User email address
}
type UserProjectOut ¶
type UserProjectOut struct {
AccessType *string `json:"access_type,omitempty"` // Access type
AccountId string `json:"account_id"` // Account ID
CreateTime time.Time `json:"create_time"` // Timestamp in ISO 8601 format, always in UTC
MemberType MemberType `json:"member_type"` // Project member type
ProjectName string `json:"project_name"` // Project name
RealName string `json:"real_name"` // User real name
TeamId string `json:"team_id"` // Team ID
TeamName string `json:"team_name"` // Team name
UserEmail string `json:"user_email"` // User email address
}
Click to show internal directories.
Click to hide internal directories.