A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://pkg.go.dev/github.com/heroku/heroku-go/v5 below:

v5 package - github.com/heroku/heroku-go/v5 - Go Packages

Generated service client for heroku API.

To be able to interact with this API, you have to create a new service:

s := heroku.NewService(nil)

The Service struct has all the methods you need to interact with heroku API.

Bool allocates a new int value returns a pointer to it.

Float64 allocates a new float64 value returns a pointer to it.

Int allocates a new int value returns a pointer to it.

String allocates a new string value returns a pointer to it.

type Account struct {
	AllowTracking       bool      `json:"allow_tracking" url:"allow_tracking,key"`             
	Beta                bool      `json:"beta" url:"beta,key"`                                 
	CountryOfResidence  *string   `json:"country_of_residence" url:"country_of_residence,key"` 
	CreatedAt           time.Time `json:"created_at" url:"created_at,key"`                     
	DefaultOrganization *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"default_organization" url:"default_organization,key"` 
	DefaultTeam *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"default_team" url:"default_team,key"` 
	DelinquentAt     *time.Time `json:"delinquent_at" url:"delinquent_at,key"` 
	Email            string     `json:"email" url:"email,key"`                 
	Federated        bool       `json:"federated" url:"federated,key"`         
	ID               string     `json:"id" url:"id,key"`                       
	IdentityProvider *struct {
		ID           string `json:"id" url:"id,key"`     
		Name         string `json:"name" url:"name,key"` 
		Organization struct {
			Name string `json:"name" url:"name,key"` 
		} `json:"organization" url:"organization,key"`
		Owner struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
			Type string `json:"type" url:"type,key"` 
		} `json:"owner" url:"owner,key"` 
		Team struct {
			Name string `json:"name" url:"name,key"` 
		} `json:"team" url:"team,key"`
	} `json:"identity_provider" url:"identity_provider,key"` 
	LastLogin               *time.Time `json:"last_login" url:"last_login,key"`                               
	Name                    *string    `json:"name" url:"name,key"`                                           
	SmsNumber               *string    `json:"sms_number" url:"sms_number,key"`                               
	SuspendedAt             *time.Time `json:"suspended_at" url:"suspended_at,key"`                           
	TwoFactorAuthentication bool       `json:"two_factor_authentication" url:"two_factor_authentication,key"` 
	UpdatedAt               time.Time  `json:"updated_at" url:"updated_at,key"`                               
	Verified                bool       `json:"verified" url:"verified,key"`                                   
}

An account represents an individual signed up to use the Heroku platform.

type AccountFeature struct {
	CreatedAt     time.Time `json:"created_at" url:"created_at,key"`         
	Description   string    `json:"description" url:"description,key"`       
	DisplayName   string    `json:"display_name" url:"display_name,key"`     
	DocURL        string    `json:"doc_url" url:"doc_url,key"`               
	Enabled       bool      `json:"enabled" url:"enabled,key"`               
	FeedbackEmail string    `json:"feedback_email" url:"feedback_email,key"` 
	ID            string    `json:"id" url:"id,key"`                         
	Name          string    `json:"name" url:"name,key"`                     
	State         string    `json:"state" url:"state,key"`                   
	UpdatedAt     time.Time `json:"updated_at" url:"updated_at,key"`         
}

An account feature represents a Heroku labs capability that can be enabled or disabled for an account on Heroku.

type AccountFeatureUpdateOpts struct {
	Enabled bool `json:"enabled" url:"enabled,key"` 
}
type AccountUpdateByUserOpts struct {
	AllowTracking *bool   `json:"allow_tracking,omitempty" url:"allow_tracking,omitempty,key"` 
	Beta          *bool   `json:"beta,omitempty" url:"beta,omitempty,key"`                     
	Name          *string `json:"name,omitempty" url:"name,omitempty,key"`                     
}
type AccountUpdateOpts struct {
	AllowTracking *bool   `json:"allow_tracking,omitempty" url:"allow_tracking,omitempty,key"` 
	Beta          *bool   `json:"beta,omitempty" url:"beta,omitempty,key"`                     
	Name          *string `json:"name,omitempty" url:"name,omitempty,key"`                     
}
type AddOn struct {
	Actions      []struct{} `json:"actions" url:"actions,key"` 
	AddonService struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon_service" url:"addon_service,key"` 
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	BilledPrice *struct {
		Cents    int    `json:"cents" url:"cents,key"`       
		Contract bool   `json:"contract" url:"contract,key"` 
		Unit     string `json:"unit" url:"unit,key"`         
	} `json:"billed_price" url:"billed_price,key"` 
	BillingEntity struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
		Type string `json:"type" url:"type,key"` 
	} `json:"billing_entity" url:"billing_entity,key"` 
	ConfigVars []string  `json:"config_vars" url:"config_vars,key"` 
	CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
	ID         string    `json:"id" url:"id,key"`                   
	Name       string    `json:"name" url:"name,key"`               
	Plan       struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"plan" url:"plan,key"` 
	ProviderID string    `json:"provider_id" url:"provider_id,key"` 
	State      string    `json:"state" url:"state,key"`             
	UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
	WebURL     *string   `json:"web_url" url:"web_url,key"`         
}

Add-ons represent add-ons that have been provisioned and attached to one or more apps.

type AddOnAction struct{}

Add-on Actions are lifecycle operations for add-on provisioning and deprovisioning. They allow add-on providers to (de)provision add-ons in the background and then report back when (de)provisioning is complete.

type AddOnActionDeprovisionResult struct {
	Actions      []struct{} `json:"actions" url:"actions,key"` 
	AddonService struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon_service" url:"addon_service,key"` 
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	BilledPrice *struct {
		Cents    int    `json:"cents" url:"cents,key"`       
		Contract bool   `json:"contract" url:"contract,key"` 
		Unit     string `json:"unit" url:"unit,key"`         
	} `json:"billed_price" url:"billed_price,key"` 
	BillingEntity struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
		Type string `json:"type" url:"type,key"` 
	} `json:"billing_entity" url:"billing_entity,key"` 
	ConfigVars []string  `json:"config_vars" url:"config_vars,key"` 
	CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
	ID         string    `json:"id" url:"id,key"`                   
	Name       string    `json:"name" url:"name,key"`               
	Plan       struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"plan" url:"plan,key"` 
	ProviderID string    `json:"provider_id" url:"provider_id,key"` 
	State      string    `json:"state" url:"state,key"`             
	UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
	WebURL     *string   `json:"web_url" url:"web_url,key"`         
}
type AddOnActionProvisionResult struct {
	Actions      []struct{} `json:"actions" url:"actions,key"` 
	AddonService struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon_service" url:"addon_service,key"` 
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	BilledPrice *struct {
		Cents    int    `json:"cents" url:"cents,key"`       
		Contract bool   `json:"contract" url:"contract,key"` 
		Unit     string `json:"unit" url:"unit,key"`         
	} `json:"billed_price" url:"billed_price,key"` 
	BillingEntity struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
		Type string `json:"type" url:"type,key"` 
	} `json:"billing_entity" url:"billing_entity,key"` 
	ConfigVars []string  `json:"config_vars" url:"config_vars,key"` 
	CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
	ID         string    `json:"id" url:"id,key"`                   
	Name       string    `json:"name" url:"name,key"`               
	Plan       struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"plan" url:"plan,key"` 
	ProviderID string    `json:"provider_id" url:"provider_id,key"` 
	State      string    `json:"state" url:"state,key"`             
	UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
	WebURL     *string   `json:"web_url" url:"web_url,key"`         
}
type AddOnAttachment struct {
	Addon struct {
		App struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
		} `json:"app" url:"app,key"` 
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon" url:"addon,key"` 
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"`       
	ID          string    `json:"id" url:"id,key"`                       
	LogInputURL *string   `json:"log_input_url" url:"log_input_url,key"` 
	Name        string    `json:"name" url:"name,key"`                   
	Namespace   *string   `json:"namespace" url:"namespace,key"`         
	UpdatedAt   time.Time `json:"updated_at" url:"updated_at,key"`       
	WebURL      *string   `json:"web_url" url:"web_url,key"`             
}

An add-on attachment represents a connection between an app and an add-on that it has been given access to.

type AddOnAttachmentCreateOpts struct {
	Addon     string  `json:"addon" url:"addon,key"`                             
	App       string  `json:"app" url:"app,key"`                                 
	Confirm   *string `json:"confirm,omitempty" url:"confirm,omitempty,key"`     
	Name      *string `json:"name,omitempty" url:"name,omitempty,key"`           
	Namespace *string `json:"namespace,omitempty" url:"namespace,omitempty,key"` 
}
type AddOnAttachmentResolutionOpts struct {
	AddonAttachment string  `json:"addon_attachment" url:"addon_attachment,key"`               
	AddonService    *string `json:"addon_service,omitempty" url:"addon_service,omitempty,key"` 
	App             *string `json:"app,omitempty" url:"app,omitempty,key"`                     
}
type AddOnConfig struct {
	Name  string  `json:"name" url:"name,key"`   
	Value *string `json:"value" url:"value,key"` 
}

Configuration of an Add-on

type AddOnConfigUpdateOpts struct {
	Config []*struct {
		Name  *string `json:"name,omitempty" url:"name,omitempty,key"`   
		Value *string `json:"value,omitempty" url:"value,omitempty,key"` 
	} `json:"config,omitempty" url:"config,omitempty,key"`
}
type AddOnCreateOpts struct {
	Attachment *struct {
		Name *string `json:"name,omitempty" url:"name,omitempty,key"` 
	} `json:"attachment,omitempty" url:"attachment,omitempty,key"` 
	Config  map[string]string `json:"config,omitempty" url:"config,omitempty,key"`   
	Confirm *string           `json:"confirm,omitempty" url:"confirm,omitempty,key"` 
	Name    *string           `json:"name,omitempty" url:"name,omitempty,key"`       
	Plan    string            `json:"plan" url:"plan,key"`                           
}
type AddOnListByAppResult []AddOn
type AddOnListByTeamResult []AddOn
type AddOnListByUserResult []AddOn
type AddOnListResult []AddOn
type AddOnPlanAction struct {
	Action        string `json:"action" url:"action,key"`                 
	ID            string `json:"id" url:"id,key"`                         
	Label         string `json:"label" url:"label,key"`                   
	RequiresOwner bool   `json:"requires_owner" url:"requires_owner,key"` 
	URL           string `json:"url" url:"url,key"`                       
}

Add-on Plan Actions are Provider functionality for specific add-on installations

type AddOnRegionCapability struct {
	AddonService struct {
		CliPluginName                 *string   `json:"cli_plugin_name" url:"cli_plugin_name,key"`                                 
		CreatedAt                     time.Time `json:"created_at" url:"created_at,key"`                                           
		HumanName                     string    `json:"human_name" url:"human_name,key"`                                           
		ID                            string    `json:"id" url:"id,key"`                                                           
		Name                          string    `json:"name" url:"name,key"`                                                       
		State                         string    `json:"state" url:"state,key"`                                                     
		SupportsMultipleInstallations bool      `json:"supports_multiple_installations" url:"supports_multiple_installations,key"` 
		
		SupportsSharing bool `json:"supports_sharing" url:"supports_sharing,key"` 
		
		UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	} `json:"addon_service" url:"addon_service,key"` 
	
	
	ID     string `json:"id" url:"id,key"` 
	Region struct {
		Country        string    `json:"country" url:"country,key"`                 
		CreatedAt      time.Time `json:"created_at" url:"created_at,key"`           
		Description    string    `json:"description" url:"description,key"`         
		ID             string    `json:"id" url:"id,key"`                           
		Locale         string    `json:"locale" url:"locale,key"`                   
		Name           string    `json:"name" url:"name,key"`                       
		PrivateCapable bool      `json:"private_capable" url:"private_capable,key"` 
		Provider       struct {
			Name   string `json:"name" url:"name,key"`     
			Region string `json:"region" url:"region,key"` 
		} `json:"provider" url:"provider,key"` 
		UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	} `json:"region" url:"region,key"` 
	
	SupportsPrivateNetworking bool `json:"supports_private_networking" url:"supports_private_networking,key"` 
}

Add-on region capabilities represent the relationship between an Add-on Service and a specific Region. Only Beta and GA add-ons are returned by these endpoints.

type AddOnResolutionOpts struct {
	Addon        string  `json:"addon" url:"addon,key"`                                     
	AddonService *string `json:"addon_service,omitempty" url:"addon_service,omitempty,key"` 
	App          *string `json:"app,omitempty" url:"app,omitempty,key"`                     
}
type AddOnResolutionResult []AddOn
type AddOnService struct {
	CliPluginName                 *string   `json:"cli_plugin_name" url:"cli_plugin_name,key"`                                 
	CreatedAt                     time.Time `json:"created_at" url:"created_at,key"`                                           
	HumanName                     string    `json:"human_name" url:"human_name,key"`                                           
	ID                            string    `json:"id" url:"id,key"`                                                           
	Name                          string    `json:"name" url:"name,key"`                                                       
	State                         string    `json:"state" url:"state,key"`                                                     
	SupportsMultipleInstallations bool      `json:"supports_multiple_installations" url:"supports_multiple_installations,key"` 
	
	SupportsSharing bool `json:"supports_sharing" url:"supports_sharing,key"` 
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

Add-on services represent add-ons that may be provisioned for apps. Endpoints under add-on services can be accessed without authentication.

type AddOnUpdateOpts struct {
	Name *string `json:"name,omitempty" url:"name,omitempty,key"` 
	Plan string  `json:"plan" url:"plan,key"`                     
}
type AddOnWebhook struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}

Represents the details of a webhook subscription

type AddOnWebhookCreateOpts struct {
	Authorization *string `json:"authorization,omitempty" url:"authorization,omitempty,key"` 
	
	Include []string `json:"include" url:"include,key"` 
	Level   string   `json:"level" url:"level,key"`     
	
	
	Secret *string `json:"secret,omitempty" url:"secret,omitempty,key"` 
	
	
	URL string `json:"url" url:"url,key"` 
}
type AddOnWebhookCreateResult struct {
	Addon struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon" url:"addon,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AddOnWebhookDeleteResult struct {
	Addon struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon" url:"addon,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AddOnWebhookDelivery struct{}

Represents the delivery of a webhook notification, including its current status.

type AddOnWebhookDeliveryInfoResult struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Event     struct {
		ID      string `json:"id" url:"id,key"`           
		Include string `json:"include" url:"include,key"` 
	} `json:"event" url:"event,key"` 
	ID          string `json:"id" url:"id,key"` 
	LastAttempt *struct {
		Code       *int      `json:"code" url:"code,key"`               
		CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
		ErrorClass *string   `json:"error_class" url:"error_class,key"` 
		ID         string    `json:"id" url:"id,key"`                   
		Status     string    `json:"status" url:"status,key"`           
		UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
	} `json:"last_attempt" url:"last_attempt,key"` 
	NextAttemptAt *time.Time `json:"next_attempt_at" url:"next_attempt_at,key"` 
	NumAttempts   int        `json:"num_attempts" url:"num_attempts,key"`       
	Status        string     `json:"status" url:"status,key"`                   
	UpdatedAt     time.Time  `json:"updated_at" url:"updated_at,key"`           
	Webhook       struct {
		ID    string `json:"id" url:"id,key"`       
		Level string `json:"level" url:"level,key"` 

	} `json:"webhook" url:"webhook,key"` 
}
type AddOnWebhookDeliveryListResult []struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Event     struct {
		ID      string `json:"id" url:"id,key"`           
		Include string `json:"include" url:"include,key"` 
	} `json:"event" url:"event,key"` 
	ID          string `json:"id" url:"id,key"` 
	LastAttempt *struct {
		Code       *int      `json:"code" url:"code,key"`               
		CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
		ErrorClass *string   `json:"error_class" url:"error_class,key"` 
		ID         string    `json:"id" url:"id,key"`                   
		Status     string    `json:"status" url:"status,key"`           
		UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
	} `json:"last_attempt" url:"last_attempt,key"` 
	NextAttemptAt *time.Time `json:"next_attempt_at" url:"next_attempt_at,key"` 
	NumAttempts   int        `json:"num_attempts" url:"num_attempts,key"`       
	Status        string     `json:"status" url:"status,key"`                   
	UpdatedAt     time.Time  `json:"updated_at" url:"updated_at,key"`           
	Webhook       struct {
		ID    string `json:"id" url:"id,key"`       
		Level string `json:"level" url:"level,key"` 

	} `json:"webhook" url:"webhook,key"` 
}
type AddOnWebhookEvent struct{}

Represents a webhook event that occurred.

type AddOnWebhookEventInfoResult struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   string    `json:"include" url:"include,key"`       
	Payload   struct {
		Action string `json:"action" url:"action,key"` 
		Actor  struct {
			Email string `json:"email" url:"email,key"` 
			ID    string `json:"id" url:"id,key"`       
		} `json:"actor" url:"actor,key"` 
		Data         struct{} `json:"data" url:"data,key"`                   
		PreviousData struct{} `json:"previous_data" url:"previous_data,key"` 
		Resource     string   `json:"resource" url:"resource,key"`           
		Version      string   `json:"version" url:"version,key"`             
	} `json:"payload" url:"payload,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}
type AddOnWebhookEventListResult []struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   string    `json:"include" url:"include,key"`       
	Payload   struct {
		Action string `json:"action" url:"action,key"` 
		Actor  struct {
			Email string `json:"email" url:"email,key"` 
			ID    string `json:"id" url:"id,key"`       
		} `json:"actor" url:"actor,key"` 
		Data         struct{} `json:"data" url:"data,key"`                   
		PreviousData struct{} `json:"previous_data" url:"previous_data,key"` 
		Resource     string   `json:"resource" url:"resource,key"`           
		Version      string   `json:"version" url:"version,key"`             
	} `json:"payload" url:"payload,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}
type AddOnWebhookInfoResult struct {
	Addon struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon" url:"addon,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AddOnWebhookListResult []struct {
	Addon struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon" url:"addon,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AddOnWebhookUpdateOpts struct {
	Authorization *string `json:"authorization,omitempty" url:"authorization,omitempty,key"` 
	
	Include []*string `json:"include,omitempty" url:"include,omitempty,key"` 
	Level   *string   `json:"level,omitempty" url:"level,omitempty,key"`     
	
	
	Secret *string `json:"secret,omitempty" url:"secret,omitempty,key"` 
	
	
	URL *string `json:"url,omitempty" url:"url,omitempty,key"` 
}
type AddOnWebhookUpdateResult struct {
	Addon struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon" url:"addon,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AllowedAddOnService struct {
	AddedAt time.Time `json:"added_at" url:"added_at,key"` 
	AddedBy struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"added_by" url:"added_by,key"` 
	AddonService struct {
		HumanName string `json:"human_name" url:"human_name,key"` 
		ID        string `json:"id" url:"id,key"`                 
		Name      string `json:"name" url:"name,key"`             
	} `json:"addon_service" url:"addon_service,key"` 
	ID string `json:"id" url:"id,key"` 
}

Entities that have been allowed to be used by a Team

type AllowedAddOnServiceCreateByTeamOpts struct {
	AddonService *string `json:"addon_service,omitempty" url:"addon_service,omitempty,key"` 
}
type App struct {
	Acm        bool       `json:"acm" url:"acm,key"`                 
	ArchivedAt *time.Time `json:"archived_at" url:"archived_at,key"` 
	BuildStack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"build_stack" url:"build_stack,key"` 
	BuildpackProvidedDescription *string   `json:"buildpack_provided_description" url:"buildpack_provided_description,key"` 
	CreatedAt                    time.Time `json:"created_at" url:"created_at,key"`                                         
	GitURL                       string    `json:"git_url" url:"git_url,key"`                                               
	ID                           string    `json:"id" url:"id,key"`                                                         
	InternalRouting              *bool     `json:"internal_routing" url:"internal_routing,key"`                             
	Maintenance                  bool      `json:"maintenance" url:"maintenance,key"`                                       
	Name                         string    `json:"name" url:"name,key"`                                                     
	Organization                 *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"organization" url:"organization,key"` 
	Owner struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"owner" url:"owner,key"` 
	Region struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"region" url:"region,key"` 
	ReleasedAt *time.Time `json:"released_at" url:"released_at,key"` 
	RepoSize   *int       `json:"repo_size" url:"repo_size,key"`     
	SlugSize   *int       `json:"slug_size" url:"slug_size,key"`     
	Space      *struct {
		ID     string `json:"id" url:"id,key"`         
		Name   string `json:"name" url:"name,key"`     
		Shield bool   `json:"shield" url:"shield,key"` 
	} `json:"space" url:"space,key"` 
	Stack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"stack" url:"stack,key"` 
	Team *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	WebURL    string    `json:"web_url" url:"web_url,key"`       
}

An app represents the program that you would like to deploy and run on Heroku.

type AppCreateOpts struct {
	FeatureFlags []*string `json:"feature_flags,omitempty" url:"feature_flags,omitempty,key"` 
	Name         *string   `json:"name,omitempty" url:"name,omitempty,key"`                   
	Region       *string   `json:"region,omitempty" url:"region,omitempty,key"`               
	Stack        *string   `json:"stack,omitempty" url:"stack,omitempty,key"`                 
}
type AppFeature struct {
	CreatedAt     time.Time `json:"created_at" url:"created_at,key"`         
	Description   string    `json:"description" url:"description,key"`       
	DisplayName   string    `json:"display_name" url:"display_name,key"`     
	DocURL        string    `json:"doc_url" url:"doc_url,key"`               
	Enabled       bool      `json:"enabled" url:"enabled,key"`               
	FeedbackEmail string    `json:"feedback_email" url:"feedback_email,key"` 
	ID            string    `json:"id" url:"id,key"`                         
	Name          string    `json:"name" url:"name,key"`                     
	State         string    `json:"state" url:"state,key"`                   
	UpdatedAt     time.Time `json:"updated_at" url:"updated_at,key"`         
}

An app feature represents a Heroku labs capability that can be enabled or disabled for an app on Heroku.

type AppFeatureUpdateOpts struct {
	Enabled bool `json:"enabled" url:"enabled,key"` 
}
type AppFormationSet struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	Description string    `json:"description" url:"description,key"`   
	ProcessTier string    `json:"process_tier" url:"process_tier,key"` 
	UpdatedAt   time.Time `json:"updated_at" url:"updated_at,key"`     
}

App formation set describes the combination of process types with their quantities and sizes as well as application process tier

type AppSetup struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	Build *struct {
		ID              string `json:"id" url:"id,key"`                               
		OutputStreamURL string `json:"output_stream_url" url:"output_stream_url,key"` 
		
		
		
		
		Status string `json:"status" url:"status,key"` 
	} `json:"build" url:"build,key"` 
	CreatedAt      time.Time `json:"created_at" url:"created_at,key"`           
	FailureMessage *string   `json:"failure_message" url:"failure_message,key"` 
	ID             string    `json:"id" url:"id,key"`                           
	ManifestErrors []string  `json:"manifest_errors" url:"manifest_errors,key"` 
	Postdeploy     *struct {
		ExitCode int    `json:"exit_code" url:"exit_code,key"` 
		Output   string `json:"output" url:"output,key"`       
	} `json:"postdeploy" url:"postdeploy,key"` 
	ResolvedSuccessURL *string   `json:"resolved_success_url" url:"resolved_success_url,key"` 
	Status             string    `json:"status" url:"status,key"`                             
	UpdatedAt          time.Time `json:"updated_at" url:"updated_at,key"`                     
}

An app setup represents an app on Heroku that is setup using an environment, addons, and scripts described in an app.json manifest file.

type AppSetupCreateOpts struct {
	App *struct {
		Locked       *bool   `json:"locked,omitempty" url:"locked,omitempty,key"`             
		Name         *string `json:"name,omitempty" url:"name,omitempty,key"`                 
		Organization *string `json:"organization,omitempty" url:"organization,omitempty,key"` 
		Personal     *bool   `json:"personal,omitempty" url:"personal,omitempty,key"`         
		
		Region *string `json:"region,omitempty" url:"region,omitempty,key"` 
		Space  *string `json:"space,omitempty" url:"space,omitempty,key"`   
		Stack  *string `json:"stack,omitempty" url:"stack,omitempty,key"`   
	} `json:"app,omitempty" url:"app,omitempty,key"` 
	Overrides *struct {
		Buildpacks []*struct {
			URL *string `json:"url,omitempty" url:"url,omitempty,key"` 
		} `json:"buildpacks,omitempty" url:"buildpacks,omitempty,key"` 
		Env map[string]string `json:"env,omitempty" url:"env,omitempty,key"` 
	} `json:"overrides,omitempty" url:"overrides,omitempty,key"` 
	SourceBlob struct {
		Checksum *string `json:"checksum,omitempty" url:"checksum,omitempty,key"` 
		
		URL *string `json:"url,omitempty" url:"url,omitempty,key"` 
		
		Version *string `json:"version,omitempty" url:"version,omitempty,key"` 
	} `json:"source_blob" url:"source_blob,key"` 
}
type AppTransfer struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Owner     struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"owner" url:"owner,key"` 
	Recipient struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"recipient" url:"recipient,key"` 
	State     string    `json:"state" url:"state,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

An app transfer represents a two party interaction for transferring ownership of an app.

type AppTransferCreateOpts struct {
	App       string `json:"app" url:"app,key"`                           
	Recipient string `json:"recipient" url:"recipient,key"`               
	Silent    *bool  `json:"silent,omitempty" url:"silent,omitempty,key"` 
}
type AppTransferUpdateOpts struct {
	State string `json:"state" url:"state,key"` 
}
type AppUpdateOpts struct {
	BuildStack  *string `json:"build_stack,omitempty" url:"build_stack,omitempty,key"` 
	Maintenance *bool   `json:"maintenance,omitempty" url:"maintenance,omitempty,key"` 
	Name        *string `json:"name,omitempty" url:"name,omitempty,key"`               
}

Represents the details of a webhook subscription

type AppWebhookCreateOpts struct {
	Authorization *string `json:"authorization,omitempty" url:"authorization,omitempty,key"` 
	
	Include []string `json:"include" url:"include,key"` 
	Level   string   `json:"level" url:"level,key"`     
	
	
	Secret *string `json:"secret,omitempty" url:"secret,omitempty,key"` 
	
	
	URL string `json:"url" url:"url,key"` 
}
type AppWebhookCreateResult struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AppWebhookDeleteResult struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AppWebhookDelivery struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Event     struct {
		ID      string `json:"id" url:"id,key"`           
		Include string `json:"include" url:"include,key"` 
	} `json:"event" url:"event,key"` 
	ID          string `json:"id" url:"id,key"` 
	LastAttempt *struct {
		Code       *int      `json:"code" url:"code,key"`               
		CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
		ErrorClass *string   `json:"error_class" url:"error_class,key"` 
		ID         string    `json:"id" url:"id,key"`                   
		Status     string    `json:"status" url:"status,key"`           
		UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
	} `json:"last_attempt" url:"last_attempt,key"` 
	NextAttemptAt *time.Time `json:"next_attempt_at" url:"next_attempt_at,key"` 
	NumAttempts   int        `json:"num_attempts" url:"num_attempts,key"`       
	Status        string     `json:"status" url:"status,key"`                   
	UpdatedAt     time.Time  `json:"updated_at" url:"updated_at,key"`           
	Webhook       struct {
		ID    string `json:"id" url:"id,key"`       
		Level string `json:"level" url:"level,key"` 

	} `json:"webhook" url:"webhook,key"` 
}

Represents the delivery of a webhook notification, including its current status.

type AppWebhookEvent struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   string    `json:"include" url:"include,key"`       
	Payload   struct {
		Action string `json:"action" url:"action,key"` 
		Actor  struct {
			Email string `json:"email" url:"email,key"` 
			ID    string `json:"id" url:"id,key"`       
		} `json:"actor" url:"actor,key"` 
		Data         struct{} `json:"data" url:"data,key"`                   
		PreviousData struct{} `json:"previous_data" url:"previous_data,key"` 
		Resource     string   `json:"resource" url:"resource,key"`           
		Version      string   `json:"version" url:"version,key"`             
	} `json:"payload" url:"payload,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

Represents a webhook event that occurred.

type AppWebhookInfoResult struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AppWebhookListResult []struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type AppWebhookUpdateOpts struct {
	Authorization *string `json:"authorization,omitempty" url:"authorization,omitempty,key"` 
	
	Include []*string `json:"include,omitempty" url:"include,omitempty,key"` 
	Level   *string   `json:"level,omitempty" url:"level,omitempty,key"`     
	
	
	Secret *string `json:"secret,omitempty" url:"secret,omitempty,key"` 
	
	
	URL *string `json:"url,omitempty" url:"url,omitempty,key"` 
}
type AppWebhookUpdateResult struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Include   []string  `json:"include" url:"include,key"`       
	Level     string    `json:"level" url:"level,key"`           
	
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}
type Archive struct {
	Checksum  string    `json:"checksum" url:"checksum,key"`     
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Month     string    `json:"month" url:"month,key"`           
	Size      int       `json:"size" url:"size,key"`             
	URL       string    `json:"url" url:"url,key"`               
	Year      int       `json:"year" url:"year,key"`             
}

An audit trail archive represents a monthly json zipped file containing events

type AuditTrailEvent struct {
	Action string `json:"action" url:"action,key"` 
	Actor  struct {
		Email string `json:"email" url:"email,key"`
		ID    string `json:"id" url:"id,key"`
	} `json:"actor" url:"actor,key"` 
	App struct {
		ID   string `json:"id" url:"id,key"`
		Name string `json:"name" url:"name,key"`
	} `json:"app" url:"app,key"` 
	CreatedAt         time.Time `json:"created_at" url:"created_at,key"` 
	Data              struct{}  `json:"data" url:"data,key"`             
	EnterpriseAccount struct {
		ID   string `json:"id" url:"id,key"`
		Name string `json:"name" url:"name,key"`
	} `json:"enterprise_account" url:"enterprise_account,key"` 
	ID    string `json:"id" url:"id,key"` 
	Owner struct {
		Email string `json:"email" url:"email,key"`
		ID    string `json:"id" url:"id,key"`
	} `json:"owner" url:"owner,key"` 
	Request struct {
		IPAddress string `json:"ip_address" url:"ip_address,key"`
	} `json:"request" url:"request,key"` 
	Team struct {
		ID   string `json:"id" url:"id,key"`
		Name string `json:"name" url:"name,key"`
	} `json:"team" url:"team,key"` 
	Type string `json:"type" url:"type,key"` 
}

An audit trail event represents some action on the platform

type Build struct {
	App struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"app" url:"app,key"` 
	Buildpacks []struct {
		Name string `json:"name" url:"name,key"` 
		URL  string `json:"url" url:"url,key"`   
	} `json:"buildpacks" url:"buildpacks,key"` 
	CreatedAt       time.Time `json:"created_at" url:"created_at,key"`               
	ID              string    `json:"id" url:"id,key"`                               
	OutputStreamURL string    `json:"output_stream_url" url:"output_stream_url,key"` 
	
	
	
	
	Release *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"release" url:"release,key"` 
	Slug *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"slug" url:"slug,key"` 
	SourceBlob struct {
		Checksum *string `json:"checksum" url:"checksum,key"` 
		
		URL string `json:"url" url:"url,key"` 
		
		Version *string `json:"version" url:"version,key"` 
	} `json:"source_blob" url:"source_blob,key"` 
	Stack     string    `json:"stack" url:"stack,key"`           
	Status    string    `json:"status" url:"status,key"`         
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"` 
}

A build represents the process of transforming a code tarball into a slug

type BuildCreateOpts struct {
	Buildpacks []*struct {
		Name *string `json:"name,omitempty" url:"name,omitempty,key"` 
		URL  *string `json:"url,omitempty" url:"url,omitempty,key"`   
	} `json:"buildpacks,omitempty" url:"buildpacks,omitempty,key"` 
	SourceBlob struct {
		Checksum *string `json:"checksum,omitempty" url:"checksum,omitempty,key"` 
		
		URL *string `json:"url,omitempty" url:"url,omitempty,key"` 
		
		Version *string `json:"version,omitempty" url:"version,omitempty,key"` 
	} `json:"source_blob" url:"source_blob,key"` 
}
type BuildListResult []Build
type BuildpackInstallation struct {
	Buildpack struct {
		Name string `json:"name" url:"name,key"` 
		
		URL string `json:"url" url:"url,key"` 

	} `json:"buildpack" url:"buildpack,key"` 
	Ordinal int `json:"ordinal" url:"ordinal,key"` 
}

A buildpack installation represents a buildpack that will be run against an app.

type BuildpackInstallationUpdateOpts struct {
	Updates []struct {
		Buildpack string `json:"buildpack" url:"buildpack,key"` 

	} `json:"updates" url:"updates,key"` 
}
type Collaborator struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"` 
	ID          string    `json:"id" url:"id,key"`                 
	Permissions []struct {
		Description string `json:"description" url:"description,key"` 
		Name        string `json:"name" url:"name,key"`               
	} `json:"permissions" url:"permissions,key"`
	Role      *string   `json:"role" url:"role,key"`             
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email     string `json:"email" url:"email,key"`         
		Federated bool   `json:"federated" url:"federated,key"` 
		ID        string `json:"id" url:"id,key"`               
	} `json:"user" url:"user,key"` 
}

A collaborator represents an account that has been given access to an app on Heroku.

type CollaboratorCreateOpts struct {
	Silent *bool  `json:"silent,omitempty" url:"silent,omitempty,key"` 
	User   string `json:"user" url:"user,key"`                         
}

Config Vars allow you to manage the configuration information provided to an app on Heroku.

type Credit struct {
	Amount    float64   `json:"amount" url:"amount,key"`         
	Balance   float64   `json:"balance" url:"balance,key"`       
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ExpiresAt time.Time `json:"expires_at" url:"expires_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Title     string    `json:"title" url:"title,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

A credit represents value that will be used up before further charges are assigned to an account.

type CreditCreateOpts struct {
	Code1 *string `json:"code1,omitempty" url:"code1,omitempty,key"` 
	Code2 *string `json:"code2,omitempty" url:"code2,omitempty,key"` 
}
type CreditListResult []Credit
type Domain ¶
type Domain struct {
	AcmStatus       *string `json:"acm_status" url:"acm_status,key"`               
	AcmStatusReason *string `json:"acm_status_reason" url:"acm_status_reason,key"` 
	App             struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CName       *string   `json:"cname" url:"cname,key"`           
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"` 
	Hostname    string    `json:"hostname" url:"hostname,key"`     
	ID          string    `json:"id" url:"id,key"`                 
	Kind        string    `json:"kind" url:"kind,key"`             
	SniEndpoint *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"sni_endpoint" url:"sni_endpoint,key"` 
	Status    string    `json:"status" url:"status,key"`         
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

Domains define what web routes should be routed to an app on Heroku.

type DomainCreateOpts ¶
type DomainCreateOpts struct {
	Hostname    string  `json:"hostname" url:"hostname,key"`         
	SniEndpoint *string `json:"sni_endpoint" url:"sni_endpoint,key"` 
}
type DomainUpdateOpts ¶ added in v5.2.1
type DomainUpdateOpts struct {
	SniEndpoint *string `json:"sni_endpoint" url:"sni_endpoint,key"` 
}
type Dyno struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	AttachURL *string `json:"attach_url" url:"attach_url,key"` 
	
	Command   string    `json:"command" url:"command,key"`       
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Name      string    `json:"name" url:"name,key"`             
	Release   struct {
		ID      string `json:"id" url:"id,key"`           
		Version int    `json:"version" url:"version,key"` 
	} `json:"release" url:"release,key"` 
	Size  string `json:"size" url:"size,key"`   
	State string `json:"state" url:"state,key"` 
	
	Type      string    `json:"type" url:"type,key"`             
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

Dynos encapsulate running processes of an app on Heroku. Detailed information about dyno sizes can be found at: [https://devcenter.heroku.com/articles/dyno-types](https://devcenter.h eroku.com/articles/dyno-types).

type DynoCreateOpts struct {
	Attach     *bool             `json:"attach,omitempty" url:"attach,omitempty,key"`             
	Command    string            `json:"command" url:"command,key"`                               
	Env        map[string]string `json:"env,omitempty" url:"env,omitempty,key"`                   
	ForceNoTty *bool             `json:"force_no_tty,omitempty" url:"force_no_tty,omitempty,key"` 
	Size       *string           `json:"size,omitempty" url:"size,omitempty,key"`                 
	TimeToLive *int              `json:"time_to_live,omitempty" url:"time_to_live,omitempty,key"` 
	
	Type *string `json:"type,omitempty" url:"type,omitempty,key"` 
}
type DynoListResult []Dyno
type DynoRestartAllResult struct{}
type DynoRestartResult struct{}
type DynoSize struct {
	Compute          int       `json:"compute" url:"compute,key"`                       
	Cost             *struct{} `json:"cost" url:"cost,key"`                             
	Dedicated        bool      `json:"dedicated" url:"dedicated,key"`                   
	DynoUnits        int       `json:"dyno_units" url:"dyno_units,key"`                 
	ID               string    `json:"id" url:"id,key"`                                 
	Memory           float64   `json:"memory" url:"memory,key"`                         
	Name             string    `json:"name" url:"name,key"`                             
	PrivateSpaceOnly bool      `json:"private_space_only" url:"private_space_only,key"` 
}

Dyno sizes are the values and details of sizes that can be assigned to dynos. This information can also be found at : [https://devcenter.heroku.com/articles/dyno-types](https://devcenter.h eroku.com/articles/dyno-types).

type DynoStopResult struct{}
type EnterpriseAccount struct {
	CreatedAt        time.Time `json:"created_at" url:"created_at,key"` 
	ID               string    `json:"id" url:"id,key"`                 
	IdentityProvider *struct {
		ID    string `json:"id" url:"id,key"`     
		Name  string `json:"name" url:"name,key"` 
		Owner struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
			Type string `json:"type" url:"type,key"` 
		} `json:"owner" url:"owner,key"` 
	} `json:"identity_provider" url:"identity_provider,key"` 
	Name        string    `json:"name" url:"name,key"`               
	Permissions []string  `json:"permissions" url:"permissions,key"` 
	Trial       bool      `json:"trial" url:"trial,key"`             
	UpdatedAt   time.Time `json:"updated_at" url:"updated_at,key"`   
}

Enterprise accounts allow companies to manage their development teams and billing.

type EnterpriseAccountDailyUsage struct {
	Addons  float64 `json:"addons" url:"addons,key"`   
	Data    float64 `json:"data" url:"data,key"`       
	Date    string  `json:"date" url:"date,key"`       
	Dynos   float64 `json:"dynos" url:"dynos,key"`     
	ID      string  `json:"id" url:"id,key"`           
	Name    string  `json:"name" url:"name,key"`       
	Partner float64 `json:"partner" url:"partner,key"` 
	Space   float64 `json:"space" url:"space,key"`     
	Teams   []struct {
		Addons float64 `json:"addons" url:"addons,key"` 
		Apps   []struct {
			Addons  float64 `json:"addons" url:"addons,key"`     
			AppName string  `json:"app_name" url:"app_name,key"` 
			Data    float64 `json:"data" url:"data,key"`         
			Dynos   float64 `json:"dynos" url:"dynos,key"`       
			Partner float64 `json:"partner" url:"partner,key"`   
		} `json:"apps" url:"apps,key"` 
		Data    float64 `json:"data" url:"data,key"`       
		Dynos   float64 `json:"dynos" url:"dynos,key"`     
		ID      string  `json:"id" url:"id,key"`           
		Name    string  `json:"name" url:"name,key"`       
		Partner float64 `json:"partner" url:"partner,key"` 
		Space   float64 `json:"space" url:"space,key"`     
	} `json:"teams" url:"teams,key"` 
}

Usage for an enterprise account at a daily resolution.

type EnterpriseAccountDailyUsageInfoOpts struct {
	End   *string `json:"end,omitempty" url:"end,omitempty,key"` 
	Start string  `json:"start" url:"start,key"`                 
}
type EnterpriseAccountMember struct {
	EnterpriseAccount struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"enterprise_account" url:"enterprise_account,key"`
	ID               string `json:"id" url:"id,key"` 
	IdentityProvider *struct {
		ID    string `json:"id" url:"id,key"`     
		Name  string `json:"name" url:"name,key"` 
		Owner struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
			Type string `json:"type" url:"type,key"` 
		} `json:"owner" url:"owner,key"` 
		Redacted bool `json:"redacted" url:"redacted,key"` 
	} `json:"identity_provider" url:"identity_provider,key"` 
	Permissions []struct {
		Description string `json:"description" url:"description,key"`
		Name        string `json:"name" url:"name,key"` 
	} `json:"permissions" url:"permissions,key"` 
	TwoFactorAuthentication bool `json:"two_factor_authentication" url:"two_factor_authentication,key"` 
	
	User struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"` 
}

Enterprise account members are users with access to an enterprise account.

type EnterpriseAccountMemberCreateOpts struct {
	Federated   *bool    `json:"federated,omitempty" url:"federated,omitempty,key"` 
	Permissions []string `json:"permissions" url:"permissions,key"`                 
	User        string   `json:"user" url:"user,key"`                               
}
type EnterpriseAccountMemberUpdateOpts struct {
	Permissions []string `json:"permissions" url:"permissions,key"` 
}
type EnterpriseAccountMonthlyUsage struct {
	Addons  float64 `json:"addons" url:"addons,key"`   
	Connect float64 `json:"connect" url:"connect,key"` 
	Data    float64 `json:"data" url:"data,key"`       
	Dynos   float64 `json:"dynos" url:"dynos,key"`     
	ID      string  `json:"id" url:"id,key"`           
	Month   string  `json:"month" url:"month,key"`     
	Name    string  `json:"name" url:"name,key"`       
	Partner float64 `json:"partner" url:"partner,key"` 
	Space   float64 `json:"space" url:"space,key"`     
	Teams   []struct {
		Addons float64 `json:"addons" url:"addons,key"` 
		Apps   []struct {
			Addons  float64 `json:"addons" url:"addons,key"`     
			AppName string  `json:"app_name" url:"app_name,key"` 
			Data    float64 `json:"data" url:"data,key"`         
			Dynos   float64 `json:"dynos" url:"dynos,key"`       
			Partner float64 `json:"partner" url:"partner,key"`   
		} `json:"apps" url:"apps,key"` 
		Connect float64 `json:"connect" url:"connect,key"` 
		Data    float64 `json:"data" url:"data,key"`       
		Dynos   float64 `json:"dynos" url:"dynos,key"`     
		ID      string  `json:"id" url:"id,key"`           
		Name    string  `json:"name" url:"name,key"`       
		Partner float64 `json:"partner" url:"partner,key"` 
		Space   float64 `json:"space" url:"space,key"`     
	} `json:"teams" url:"teams,key"` 
}

Usage for an enterprise account at a monthly resolution.

type EnterpriseAccountMonthlyUsageInfoOpts struct {
	End   *string `json:"end,omitempty" url:"end,omitempty,key"` 
	Start string  `json:"start" url:"start,key"`                 
}
type EnterpriseAccountUpdateOpts struct {
	Name *string `json:"name,omitempty" url:"name,omitempty,key"` 
}

Filters are special endpoints to allow for API consumers to specify a subset of resources to consume in order to reduce the number of requests that are performed. Each filter endpoint endpoint is responsible for determining its supported request format. The endpoints are over POST in order to handle large request bodies without hitting request uri query length limitations, but the requests themselves are idempotent and will not have side effects.

type FilterAppsAppsOpts struct {
	In *struct {
		ID []*string `json:"id,omitempty" url:"id,omitempty,key"`
	} `json:"in,omitempty" url:"in,omitempty,key"`
}
type FilterAppsAppsResult []struct {
	ArchivedAt *time.Time `json:"archived_at" url:"archived_at,key"` 
	BuildStack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"build_stack" url:"build_stack,key"` 
	BuildpackProvidedDescription *string   `json:"buildpack_provided_description" url:"buildpack_provided_description,key"` 
	CreatedAt                    time.Time `json:"created_at" url:"created_at,key"`                                         
	GitURL                       string    `json:"git_url" url:"git_url,key"`                                               
	ID                           string    `json:"id" url:"id,key"`                                                         
	InternalRouting              *bool     `json:"internal_routing" url:"internal_routing,key"`                             
	Joined                       bool      `json:"joined" url:"joined,key"`                                                 
	Locked                       bool      `json:"locked" url:"locked,key"`                                                 
	Maintenance                  bool      `json:"maintenance" url:"maintenance,key"`                                       
	Name                         string    `json:"name" url:"name,key"`                                                     
	Owner                        *struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"owner" url:"owner,key"` 
	Region struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"region" url:"region,key"` 
	ReleasedAt *time.Time `json:"released_at" url:"released_at,key"` 
	RepoSize   *int       `json:"repo_size" url:"repo_size,key"`     
	SlugSize   *int       `json:"slug_size" url:"slug_size,key"`     
	Space      *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"space" url:"space,key"` 
	Stack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"stack" url:"stack,key"` 
	Team *struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	WebURL    string    `json:"web_url" url:"web_url,key"`       
}
type Formation struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	Command   string    `json:"command" url:"command,key"`       
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Quantity  int       `json:"quantity" url:"quantity,key"`     
	Size      string    `json:"size" url:"size,key"`             
	Type      string    `json:"type" url:"type,key"`             
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

The formation of processes that should be maintained for an app. Update the formation to scale processes or change dyno sizes. Available process type names and commands are defined by the `process_types` attribute for the [slug](#slug) currently released on an app.

type FormationBatchUpdateOpts struct {
	Updates []struct {
		Quantity *int    `json:"quantity,omitempty" url:"quantity,omitempty,key"` 
		Size     *string `json:"size,omitempty" url:"size,omitempty,key"`         
		Type     string  `json:"type" url:"type,key"`                             
	} `json:"updates" url:"updates,key"` 

}
type FormationUpdateOpts struct {
	Quantity *int    `json:"quantity,omitempty" url:"quantity,omitempty,key"` 
	Size     *string `json:"size,omitempty" url:"size,omitempty,key"`         
}
type IdentityProvider struct {
	Certificate  string    `json:"certificate" url:"certificate,key"` 
	CreatedAt    time.Time `json:"created_at" url:"created_at,key"`   
	EntityID     string    `json:"entity_id" url:"entity_id,key"`     
	ID           string    `json:"id" url:"id,key"`                   
	Organization *struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"organization" url:"organization,key"` 
	Owner struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
		Type string `json:"type" url:"type,key"` 
	} `json:"owner" url:"owner,key"` 
	SloTargetURL string    `json:"slo_target_url" url:"slo_target_url,key"` 
	SsoTargetURL string    `json:"sso_target_url" url:"sso_target_url,key"` 
	UpdatedAt    time.Time `json:"updated_at" url:"updated_at,key"`         
}

Identity Providers represent the SAML configuration of an Enterprise Account or Team.

type IdentityProviderCreateByTeamOpts struct {
	Certificate  string  `json:"certificate" url:"certificate,key"`                           
	EntityID     string  `json:"entity_id" url:"entity_id,key"`                               
	SloTargetURL *string `json:"slo_target_url,omitempty" url:"slo_target_url,omitempty,key"` 
	SsoTargetURL string  `json:"sso_target_url" url:"sso_target_url,key"`                     
}
type IdentityProviderUpdateByTeamOpts struct {
	Certificate  *string `json:"certificate,omitempty" url:"certificate,omitempty,key"`       
	EntityID     *string `json:"entity_id,omitempty" url:"entity_id,omitempty,key"`           
	SloTargetURL *string `json:"slo_target_url,omitempty" url:"slo_target_url,omitempty,key"` 
	SsoTargetURL *string `json:"sso_target_url,omitempty" url:"sso_target_url,omitempty,key"` 
}
type InboundRuleset struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	CreatedBy string    `json:"created_by" url:"created_by,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Rules     []struct {
		Action string `json:"action" url:"action,key"` 
		Source string `json:"source" url:"source,key"` 
	} `json:"rules" url:"rules,key"`
	Space struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"space" url:"space,key"` 
}

An inbound-ruleset is a collection of rules that specify what hosts can or cannot connect to an application.

type InboundRulesetCreateOpts struct {
	Rules []*struct {
		Action string `json:"action" url:"action,key"` 
		Source string `json:"source" url:"source,key"` 
	} `json:"rules,omitempty" url:"rules,omitempty,key"`
}
type Invoice struct {
	ChargesTotal float64   `json:"charges_total" url:"charges_total,key"` 
	CreatedAt    time.Time `json:"created_at" url:"created_at,key"`       
	CreditsTotal float64   `json:"credits_total" url:"credits_total,key"` 
	ID           string    `json:"id" url:"id,key"`                       
	Number       int       `json:"number" url:"number,key"`               
	PeriodEnd    string    `json:"period_end" url:"period_end,key"`       
	PeriodStart  string    `json:"period_start" url:"period_start,key"`   
	State        int       `json:"state" url:"state,key"`                 
	Total        float64   `json:"total" url:"total,key"`                 
	UpdatedAt    time.Time `json:"updated_at" url:"updated_at,key"`       
}

An invoice is an itemized bill of goods for an account which includes pricing and charges.

type InvoiceAddress struct {
	Address1          string `json:"address_1" url:"address_1,key"`                     
	Address2          string `json:"address_2" url:"address_2,key"`                     
	City              string `json:"city" url:"city,key"`                               
	Country           string `json:"country" url:"country,key"`                         
	HerokuID          string `json:"heroku_id" url:"heroku_id,key"`                     
	Other             string `json:"other" url:"other,key"`                             
	PostalCode        string `json:"postal_code" url:"postal_code,key"`                 
	State             string `json:"state" url:"state,key"`                             
	UseInvoiceAddress bool   `json:"use_invoice_address" url:"use_invoice_address,key"` 
}

An invoice address represents the address that should be listed on an invoice.

type InvoiceAddressUpdateOpts struct {
	Address1          *string `json:"address_1,omitempty" url:"address_1,omitempty,key"`                     
	Address2          *string `json:"address_2,omitempty" url:"address_2,omitempty,key"`                     
	City              *string `json:"city,omitempty" url:"city,omitempty,key"`                               
	Country           *string `json:"country,omitempty" url:"country,omitempty,key"`                         
	Other             *string `json:"other,omitempty" url:"other,omitempty,key"`                             
	PostalCode        *string `json:"postal_code,omitempty" url:"postal_code,omitempty,key"`                 
	State             *string `json:"state,omitempty" url:"state,omitempty,key"`                             
	UseInvoiceAddress *bool   `json:"use_invoice_address,omitempty" url:"use_invoice_address,omitempty,key"` 
}
type Key struct {
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"`   
	Email       string    `json:"email" url:"email,key"`             
	Fingerprint string    `json:"fingerprint" url:"fingerprint,key"` 
	ID          string    `json:"id" url:"id,key"`                   
	PublicKey   string    `json:"public_key" url:"public_key,key"`   
	UpdatedAt   time.Time `json:"updated_at" url:"updated_at,key"`   
}

Keys represent public SSH keys associated with an account and are used to authorize accounts as they are performing git operations.

ListRange describes a range.

SetHeader set headers on the given Request.

type LogDrain struct {
	Addon *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon" url:"addon,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Token     string    `json:"token" url:"token,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	URL       string    `json:"url" url:"url,key"`               
}

[Log drains](https://devcenter.heroku.com/articles/log-drains) provide a way to forward your Heroku logs to an external syslog server for long-term archiving. This external service must be configured to receive syslog packets from Heroku, whereupon its URL can be added to an app using this API. Some add-ons will add a log drain when they are provisioned to an app. These drains can only be removed by removing the add-on.

type LogDrainCreateOpts struct {
	URL string `json:"url" url:"url,key"` 
}
type LogDrainListByAddOnResult []LogDrain
type LogDrainUpdateOpts struct {
	URL string `json:"url" url:"url,key"` 
}
type LogSession struct {
	CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
	ID         string    `json:"id" url:"id,key"`                   
	LogplexURL string    `json:"logplex_url" url:"logplex_url,key"` 
	UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
}

A log session is a reference to the http based log stream for an app.

type LogSessionCreateOpts struct {
	Dyno   *string `json:"dyno,omitempty" url:"dyno,omitempty,key"`     
	Lines  *int    `json:"lines,omitempty" url:"lines,omitempty,key"`   
	Source *string `json:"source,omitempty" url:"source,omitempty,key"` 
	Tail   *bool   `json:"tail,omitempty" url:"tail,omitempty,key"`     
}
type OAuthAuthorization struct {
	AccessToken *struct {
		ExpiresIn *int `json:"expires_in" url:"expires_in,key"` 
		
		ID    string `json:"id" url:"id,key"`       
		Token string `json:"token" url:"token,key"` 
	} `json:"access_token" url:"access_token,key"` 
	Client *struct {
		ID          string `json:"id" url:"id,key"`                     
		Name        string `json:"name" url:"name,key"`                 
		RedirectURI string `json:"redirect_uri" url:"redirect_uri,key"` 
	} `json:"client" url:"client,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Grant     *struct {
		Code      string `json:"code" url:"code,key"`             
		ExpiresIn int    `json:"expires_in" url:"expires_in,key"` 
		ID        string `json:"id" url:"id,key"`                 
	} `json:"grant" url:"grant,key"` 
	ID           string `json:"id" url:"id,key"` 
	RefreshToken *struct {
		ExpiresIn *int `json:"expires_in" url:"expires_in,key"` 
		
		ID    string `json:"id" url:"id,key"`       
		Token string `json:"token" url:"token,key"` 
	} `json:"refresh_token" url:"refresh_token,key"` 
	Scope     []string  `json:"scope" url:"scope,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email    string  `json:"email" url:"email,key"`         
		FullName *string `json:"full_name" url:"full_name,key"` 
		ID       string  `json:"id" url:"id,key"`               
	} `json:"user" url:"user,key"` 
}

OAuth authorizations represent clients that a Heroku user has authorized to automate, customize or extend their usage of the platform. For more information please refer to the [Heroku OAuth documentation](https://devcenter.heroku.com/articles/oauth)

type OAuthAuthorizationCreateOpts struct {
	Client      *string `json:"client,omitempty" url:"client,omitempty,key"`           
	Description *string `json:"description,omitempty" url:"description,omitempty,key"` 
	ExpiresIn   *int    `json:"expires_in,omitempty" url:"expires_in,omitempty,key"`   
	
	Scope []string `json:"scope" url:"scope,key"` 
}
type OAuthClient struct {
	CreatedAt         time.Time `json:"created_at" url:"created_at,key"`                 
	ID                string    `json:"id" url:"id,key"`                                 
	IgnoresDelinquent *bool     `json:"ignores_delinquent" url:"ignores_delinquent,key"` 
	Name              string    `json:"name" url:"name,key"`                             
	RedirectURI       string    `json:"redirect_uri" url:"redirect_uri,key"`             
	Secret            string    `json:"secret" url:"secret,key"`                         
	UpdatedAt         time.Time `json:"updated_at" url:"updated_at,key"`                 
}

OAuth clients are applications that Heroku users can authorize to automate, customize or extend their usage of the platform. For more information please refer to the [Heroku OAuth documentation](https://devcenter.heroku.com/articles/oauth).

type OAuthClientCreateOpts struct {
	Name        string `json:"name" url:"name,key"`                 
	RedirectURI string `json:"redirect_uri" url:"redirect_uri,key"` 
}
type OAuthClientUpdateOpts struct {
	Name        *string `json:"name,omitempty" url:"name,omitempty,key"`                 
	RedirectURI *string `json:"redirect_uri,omitempty" url:"redirect_uri,omitempty,key"` 
}
type OAuthToken struct {
	AccessToken struct {
		ExpiresIn *int `json:"expires_in" url:"expires_in,key"` 
		
		ID    string `json:"id" url:"id,key"`       
		Token string `json:"token" url:"token,key"` 
	} `json:"access_token" url:"access_token,key"` 
	Authorization struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"authorization" url:"authorization,key"` 
	Client *struct {
		Secret string `json:"secret" url:"secret,key"` 
	} `json:"client" url:"client,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Grant     struct {
		Code string `json:"code" url:"code,key"` 
		Type string `json:"type" url:"type,key"` 

	} `json:"grant" url:"grant,key"` 
	ID           string `json:"id" url:"id,key"` 
	RefreshToken struct {
		ExpiresIn *int `json:"expires_in" url:"expires_in,key"` 
		
		ID    string `json:"id" url:"id,key"`       
		Token string `json:"token" url:"token,key"` 
	} `json:"refresh_token" url:"refresh_token,key"` 
	Session struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"session" url:"session,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"user" url:"user,key"` 
}

OAuth tokens provide access for authorized clients to act on behalf of a Heroku user to automate, customize or extend their usage of the platform. For more information please refer to the [Heroku OAuth documentation](https://devcenter.heroku.com/articles/oauth)

type OAuthTokenCreateOpts struct {
	Client struct {
		Secret *string `json:"secret,omitempty" url:"secret,omitempty,key"` 
	} `json:"client" url:"client,key"`
	Grant struct {
		Code *string `json:"code,omitempty" url:"code,omitempty,key"` 
		Type *string `json:"type,omitempty" url:"type,omitempty,key"` 

	} `json:"grant" url:"grant,key"`
	RefreshToken struct {
		Token *string `json:"token,omitempty" url:"token,omitempty,key"` 
	} `json:"refresh_token" url:"refresh_token,key"`
}
type OutboundRuleset struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	CreatedBy string    `json:"created_by" url:"created_by,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Rules     []struct {
		FromPort int    `json:"from_port" url:"from_port,key"` 
		Protocol string `json:"protocol" url:"protocol,key"`   
		
		
		Target string `json:"target" url:"target,key"`   
		ToPort int    `json:"to_port" url:"to_port,key"` 
	} `json:"rules" url:"rules,key"`
	Space struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"space" url:"space,key"` 
}

An outbound-ruleset is a collection of rules that specify what hosts Dynos are allowed to communicate with.

type OutboundRulesetCreateOpts struct {
	Rules []*struct {
		FromPort int    `json:"from_port" url:"from_port,key"` 
		Protocol string `json:"protocol" url:"protocol,key"`   
		
		
		Target string `json:"target" url:"target,key"`   
		ToPort int    `json:"to_port" url:"to_port,key"` 
	} `json:"rules,omitempty" url:"rules,omitempty,key"`
}
type PasswordReset struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	User      struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"`
}

A password reset represents a in-process password reset attempt.

type PasswordResetCompleteResetPasswordOpts struct {
	Password             *string `json:"password,omitempty" url:"password,omitempty,key"`                           
	PasswordConfirmation *string `json:"password_confirmation,omitempty" url:"password_confirmation,omitempty,key"` 
}
type PasswordResetResetPasswordOpts struct {
	Email *string `json:"email,omitempty" url:"email,omitempty,key"` 
}
type Peering struct {
	AwsAccountID string    `json:"aws_account_id" url:"aws_account_id,key"` 
	AwsRegion    string    `json:"aws_region" url:"aws_region,key"`         
	AwsVpcID     string    `json:"aws_vpc_id" url:"aws_vpc_id,key"`         
	CIDRBlocks   []string  `json:"cidr_blocks" url:"cidr_blocks,key"`       
	Expires      time.Time `json:"expires" url:"expires,key"`               
	PcxID        string    `json:"pcx_id" url:"pcx_id,key"`                 
	Status       string    `json:"status" url:"status,key"`                 
	Type         string    `json:"type" url:"type,key"`                     
}

Peering(https://devcenter.heroku.com/articles/private-space-peering)

provides a way to peer your Private Space VPC to another AWS VPC.
type PeeringInfo struct {
	AwsAccountID          string   `json:"aws_account_id" url:"aws_account_id,key"`                   
	AwsRegion             string   `json:"aws_region" url:"aws_region,key"`                           
	DynoCIDRBlocks        []string `json:"dyno_cidr_blocks" url:"dyno_cidr_blocks,key"`               
	SpaceCIDRBlocks       []string `json:"space_cidr_blocks" url:"space_cidr_blocks,key"`             
	UnavailableCIDRBlocks []string `json:"unavailable_cidr_blocks" url:"unavailable_cidr_blocks,key"` 
	VpcCIDR               string   `json:"vpc_cidr" url:"vpc_cidr,key"`                               
	
	VpcID string `json:"vpc_id" url:"vpc_id,key"` 
}

[Peering Info](https://devcenter.heroku.com/articles/private-space-peering) gives you the information necessary to peer an AWS VPC to a Private Space.

type PermissionEntity struct {
	ID     string `json:"id" url:"id,key"`           
	Name   string `json:"name" url:"name,key"`       
	TeamID string `json:"team_id" url:"team_id,key"` 
	Type   string `json:"type" url:"type,key"`       
	Users  []struct {
		Email       string   `json:"email" url:"email,key"`             
		ID          string   `json:"id" url:"id,key"`                   
		Permissions []string `json:"permissions" url:"permissions,key"` 
	} `json:"users" url:"users,key"` 
}

An owned entity including users' permissions.

type Pipeline struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Name      string    `json:"name" url:"name,key"`             
	Owner     *struct {
		ID   string `json:"id" url:"id,key"`     
		Type string `json:"type" url:"type,key"` 
	} `json:"owner" url:"owner,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

A pipeline allows grouping of apps into different stages.

type PipelineBuild struct{}

Information about latest builds of apps in a pipeline.

type PipelineBuildListResult []struct {
	App struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"app" url:"app,key"` 
	Buildpacks []struct {
		Name string `json:"name" url:"name,key"` 
		URL  string `json:"url" url:"url,key"`   
	} `json:"buildpacks" url:"buildpacks,key"` 
	CreatedAt       time.Time `json:"created_at" url:"created_at,key"`               
	ID              string    `json:"id" url:"id,key"`                               
	OutputStreamURL string    `json:"output_stream_url" url:"output_stream_url,key"` 
	
	
	
	
	Release *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"release" url:"release,key"` 
	Slug *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"slug" url:"slug,key"` 
	SourceBlob struct {
		Checksum *string `json:"checksum" url:"checksum,key"` 
		
		URL string `json:"url" url:"url,key"` 
		
		Version *string `json:"version" url:"version,key"` 
	} `json:"source_blob" url:"source_blob,key"` 
	Stack     string    `json:"stack" url:"stack,key"`           
	Status    string    `json:"status" url:"status,key"`         
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"` 
}

Pipeline Config Vars allow you to manage the configuration information provided to a pipeline.

type PipelineCoupling struct {
	App struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Pipeline  struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
	Stage     string    `json:"stage" url:"stage,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

Information about an app's coupling to a pipeline

type PipelineCouplingCreateOpts struct {
	App      string `json:"app" url:"app,key"`           
	Pipeline string `json:"pipeline" url:"pipeline,key"` 
	Stage    string `json:"stage" url:"stage,key"`       
}
type PipelineCouplingUpdateOpts struct {
	Stage *string `json:"stage,omitempty" url:"stage,omitempty,key"` 
}
type PipelineCreateOpts struct {
	Name  string `json:"name" url:"name,key"` 
	Owner *struct {
		ID   string `json:"id" url:"id,key"`     
		Type string `json:"type" url:"type,key"` 
	} `json:"owner,omitempty" url:"owner,omitempty,key"` 
}
type PipelineDeployment struct{}

Information about latest deployments of apps in a pipeline.

type PipelineDeploymentListResult []struct {
	AddonPlanNames []string `json:"addon_plan_names" url:"addon_plan_names,key"` 
	App            struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt       time.Time `json:"created_at" url:"created_at,key"`               
	Current         bool      `json:"current" url:"current,key"`                     
	Description     string    `json:"description" url:"description,key"`             
	ID              string    `json:"id" url:"id,key"`                               
	OutputStreamURL *string   `json:"output_stream_url" url:"output_stream_url,key"` 
	
	
	
	
	Slug *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"slug" url:"slug,key"` 
	Status    string    `json:"status" url:"status,key"`         
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"` 
	Version int `json:"version" url:"version,key"` 
}
type PipelinePromotion struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	Pipeline  struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
	Source struct {
		App struct {
			ID string `json:"id" url:"id,key"` 
		} `json:"app" url:"app,key"` 
		Release struct {
			ID string `json:"id" url:"id,key"` 
		} `json:"release" url:"release,key"` 
	} `json:"source" url:"source,key"` 
	Status    string     `json:"status" url:"status,key"`         
	UpdatedAt *time.Time `json:"updated_at" url:"updated_at,key"` 
}

Promotions allow you to move code from an app in a pipeline to all targets

type PipelinePromotionCreateOpts struct {
	Pipeline struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
	Source struct {
		App *struct {
			ID *string `json:"id,omitempty" url:"id,omitempty,key"` 
		} `json:"app,omitempty" url:"app,omitempty,key"` 
	} `json:"source" url:"source,key"` 
	Targets []struct {
		App *struct {
			ID *string `json:"id,omitempty" url:"id,omitempty,key"` 
		} `json:"app,omitempty" url:"app,omitempty,key"` 
	} `json:"targets" url:"targets,key"`
}
type PipelinePromotionTarget struct {
	App struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"app" url:"app,key"` 
	ErrorMessage      *string `json:"error_message" url:"error_message,key"` 
	ID                string  `json:"id" url:"id,key"`                       
	PipelinePromotion struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline_promotion" url:"pipeline_promotion,key"` 
	Release *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"release" url:"release,key"` 
	Status string `json:"status" url:"status,key"` 
}

Promotion targets represent an individual app being promoted to

type PipelineRelease struct{}

Information about latest releases of apps in a pipeline.

type PipelineReleaseListResult []struct {
	AddonPlanNames []string `json:"addon_plan_names" url:"addon_plan_names,key"` 
	App            struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt       time.Time `json:"created_at" url:"created_at,key"`               
	Current         bool      `json:"current" url:"current,key"`                     
	Description     string    `json:"description" url:"description,key"`             
	ID              string    `json:"id" url:"id,key"`                               
	OutputStreamURL *string   `json:"output_stream_url" url:"output_stream_url,key"` 
	
	
	
	
	Slug *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"slug" url:"slug,key"` 
	Status    string    `json:"status" url:"status,key"`         
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"` 
	Version int `json:"version" url:"version,key"` 
}
type PipelineStack struct {
	Stack *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"stack" url:"stack,key"` 

}

A pipeline's stack is determined by the apps in the pipeline. This is used during creation of CI and Review Apps that have no stack defined in app.json

type PipelineTransfer struct {
	NewOwner *struct {
		ID   string `json:"id" url:"id,key"`     
		Type string `json:"type" url:"type,key"` 
	} `json:"new_owner" url:"new_owner,key"` 
	Pipeline struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
	PreviousOwner *struct {
		ID   string `json:"id" url:"id,key"`     
		Type string `json:"type" url:"type,key"` 
	} `json:"previous_owner" url:"previous_owner,key"` 
}

A pipeline transfer is the process of changing pipeline ownership along with the contained apps.

type PipelineTransferCreateOpts struct {
	NewOwner struct {
		ID   *string `json:"id,omitempty" url:"id,omitempty,key"`     
		Type *string `json:"type,omitempty" url:"type,omitempty,key"` 
	} `json:"new_owner" url:"new_owner,key"` 
	Pipeline struct {
		ID *string `json:"id,omitempty" url:"id,omitempty,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
}
type PipelineUpdateOpts struct {
	Name *string `json:"name,omitempty" url:"name,omitempty,key"` 
}
type Plan struct {
	AddonService struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon_service" url:"addon_service,key"` 
	Compliance                       []string  `json:"compliance" url:"compliance,key"`                                                   
	CreatedAt                        time.Time `json:"created_at" url:"created_at,key"`                                                   
	Default                          bool      `json:"default" url:"default,key"`                                                         
	Description                      string    `json:"description" url:"description,key"`                                                 
	HumanName                        string    `json:"human_name" url:"human_name,key"`                                                   
	ID                               string    `json:"id" url:"id,key"`                                                                   
	InstallableInsidePrivateNetwork  bool      `json:"installable_inside_private_network" url:"installable_inside_private_network,key"`   
	InstallableOutsidePrivateNetwork bool      `json:"installable_outside_private_network" url:"installable_outside_private_network,key"` 
	Name                             string    `json:"name" url:"name,key"`                                                               
	Price                            struct {
		Cents    int    `json:"cents" url:"cents,key"`       
		Contract bool   `json:"contract" url:"contract,key"` 
		Unit     string `json:"unit" url:"unit,key"`         
	} `json:"price" url:"price,key"` 
	SpaceDefault bool      `json:"space_default" url:"space_default,key"` 
	State        string    `json:"state" url:"state,key"`                 
	UpdatedAt    time.Time `json:"updated_at" url:"updated_at,key"`       
	Visible      bool      `json:"visible" url:"visible,key"`             
}

Plans represent different configurations of add-ons that may be added to apps. Endpoints under add-on services can be accessed without authentication.

type PlanListByAddOnResult []Plan
type RateLimit struct {
	Remaining int `json:"remaining" url:"remaining,key"` 
}

Rate Limit represents the number of request tokens each account holds. Requests to this endpoint do not count towards the rate limit.

type Region struct {
	Country        string    `json:"country" url:"country,key"`                 
	CreatedAt      time.Time `json:"created_at" url:"created_at,key"`           
	Description    string    `json:"description" url:"description,key"`         
	ID             string    `json:"id" url:"id,key"`                           
	Locale         string    `json:"locale" url:"locale,key"`                   
	Name           string    `json:"name" url:"name,key"`                       
	PrivateCapable bool      `json:"private_capable" url:"private_capable,key"` 
	Provider       struct {
		Name   string `json:"name" url:"name,key"`     
		Region string `json:"region" url:"region,key"` 
	} `json:"provider" url:"provider,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

A region represents a geographic location in which your application may run.

type RegionListResult []Region
type Release struct {
	AddonPlanNames []string `json:"addon_plan_names" url:"addon_plan_names,key"` 
	App            struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt       time.Time `json:"created_at" url:"created_at,key"`               
	Current         bool      `json:"current" url:"current,key"`                     
	Description     string    `json:"description" url:"description,key"`             
	ID              string    `json:"id" url:"id,key"`                               
	OutputStreamURL *string   `json:"output_stream_url" url:"output_stream_url,key"` 
	
	
	
	
	Slug *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"slug" url:"slug,key"` 
	Status    string    `json:"status" url:"status,key"`         
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"` 
	Version int `json:"version" url:"version,key"` 
}

A release represents a combination of code, config vars and add-ons for an app on Heroku.

type ReleaseCreateOpts struct {
	Description *string `json:"description,omitempty" url:"description,omitempty,key"` 
	Slug        string  `json:"slug" url:"slug,key"`                                   
}
type ReleaseRollbackOpts struct {
	Release string `json:"release" url:"release,key"` 
}
type ReviewApp struct {
	App *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"app" url:"app,key"` 
	AppSetup *struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"app_setup" url:"app_setup,key"` 
	Branch      string    `json:"branch" url:"branch,key"`             
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"`     
	Creator     struct{}  `json:"creator" url:"creator,key"`           
	ErrorStatus *string   `json:"error_status" url:"error_status,key"` 
	ForkRepo    *struct {
		ID *int `json:"id" url:"id,key"` 
	} `json:"fork_repo" url:"fork_repo,key"`
	ID       string  `json:"id" url:"id,key"`           
	Message  *string `json:"message" url:"message,key"` 
	Pipeline struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
	PrNumber  *int      `json:"pr_number" url:"pr_number,key"`     
	Status    string    `json:"status" url:"status,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"`   
	WaitForCi bool      `json:"wait_for_ci" url:"wait_for_ci,key"` 
}

An ephemeral app to review a set of changes

type ReviewAppConfig struct {
	AutomaticReviewApps bool    `json:"automatic_review_apps" url:"automatic_review_apps,key"` 
	BaseName            *string `json:"base_name" url:"base_name,key"`                         
	DeployTarget        *struct {
		ID   string `json:"id" url:"id,key"`     
		Type string `json:"type" url:"type,key"` 
	} `json:"deploy_target" url:"deploy_target,key"` 
	DestroyStaleApps bool `json:"destroy_stale_apps" url:"destroy_stale_apps,key"` 
	
	PipelineID string `json:"pipeline_id" url:"pipeline_id,key"` 
	Repo       struct {
		ID int `json:"id" url:"id,key"` 
	} `json:"repo" url:"repo,key"`
	StaleDays int `json:"stale_days" url:"stale_days,key"` 
	
	WaitForCi bool `json:"wait_for_ci" url:"wait_for_ci,key"` 
}

Review apps can be configured for pipelines.

type ReviewAppConfigEnableOpts struct {
	AutomaticReviewApps *bool   `json:"automatic_review_apps,omitempty" url:"automatic_review_apps,omitempty,key"` 
	BaseName            *string `json:"base_name,omitempty" url:"base_name,omitempty,key"`                         
	DeployTarget        *struct {
		ID   string `json:"id" url:"id,key"`     
		Type string `json:"type" url:"type,key"` 
	} `json:"deploy_target,omitempty" url:"deploy_target,omitempty,key"` 
	DestroyStaleApps *bool `json:"destroy_stale_apps,omitempty" url:"destroy_stale_apps,omitempty,key"` 
	
	Repo      string `json:"repo" url:"repo,key"`                                 
	StaleDays *int   `json:"stale_days,omitempty" url:"stale_days,omitempty,key"` 
	
	WaitForCi *bool `json:"wait_for_ci,omitempty" url:"wait_for_ci,omitempty,key"` 
}
type ReviewAppConfigUpdateOpts struct {
	AutomaticReviewApps *bool   `json:"automatic_review_apps,omitempty" url:"automatic_review_apps,omitempty,key"` 
	BaseName            *string `json:"base_name,omitempty" url:"base_name,omitempty,key"`                         
	DeployTarget        *struct {
		ID   string `json:"id" url:"id,key"`     
		Type string `json:"type" url:"type,key"` 
	} `json:"deploy_target,omitempty" url:"deploy_target,omitempty,key"` 
	DestroyStaleApps *bool `json:"destroy_stale_apps,omitempty" url:"destroy_stale_apps,omitempty,key"` 
	
	StaleDays *int `json:"stale_days,omitempty" url:"stale_days,omitempty,key"` 
	
	WaitForCi *bool `json:"wait_for_ci,omitempty" url:"wait_for_ci,omitempty,key"` 
}
type ReviewAppCreateOpts struct {
	Branch      string             `json:"branch" url:"branch,key"`                                 
	Environment map[string]*string `json:"environment,omitempty" url:"environment,omitempty,key"`   
	ForkRepoID  *int               `json:"fork_repo_id,omitempty" url:"fork_repo_id,omitempty,key"` 
	Pipeline    string             `json:"pipeline" url:"pipeline,key"`                             
	PrNumber    *int               `json:"pr_number,omitempty" url:"pr_number,omitempty,key"`       
	SourceBlob  struct {
		URL *string `json:"url,omitempty" url:"url,omitempty,key"` 
		
		Version *string `json:"version,omitempty" url:"version,omitempty,key"` 
	} `json:"source_blob" url:"source_blob,key"` 
}
type Service struct {
	URL string
	
}

Service represents your API.

NewService creates a Service using the given, if none is provided it uses http.DefaultClient.

Delete account. Note that this action cannot be undone. Note: This endpoint requires the HTTP_HEROKU_PASSWORD or HTTP_HEROKU_PASSWORD_BASE64 header be set correctly for the user account.

Delete account. Note that this action cannot be undone. Note: This endpoint requires the HTTP_HEROKU_PASSWORD or HTTP_HEROKU_PASSWORD_BASE64 header be set correctly for the user account.

Info for an existing account feature.

List existing account features.

Update an existing account feature.

Mark an add-on as deprovisioned.

Mark an add-on as provisioned for use.

Create a new add-on attachment.

Delete an existing add-on attachment.

Info for existing add-on attachment.

Info for existing add-on attachment for an app.

List existing add-on attachments.

List existing add-on attachments for an add-on.

List existing add-on attachments for an app.

Resolve an add-on attachment from a name, optionally passing an app name. If there are matches it returns at least one add-on attachment (exact match) or many.

Get an add-on's config. Accessible by customers with access and by the add-on partner providing this add-on.

Update an add-on's config. Can only be accessed by the add-on partner providing this add-on.

Delete an existing add-on.

Info for an existing add-on.

Info for an existing add-on.

List all existing add-ons.

List existing add-ons for an app.

List add-ons used across all Team apps

List all existing add-ons a user has access to

List all existing add-on region capabilities.

List existing add-on region capabilities for an add-on-service

List existing add-on region capabilities for a region.

Resolve an add-on from a name, optionally passing an app name. If there are matches it returns at least one add-on (exact match) or many.

Info for existing add-on-service.

List existing add-on-services.

Change add-on plan. Some add-ons may not support changing plans. In that case, an error will be returned.

Create an add-on webhook subscription. Can only be accessed by the add-on partner providing this add-on.

Removes an add-on webhook subscription. Can only be accessed by the add-on partner providing this add-on.

Returns the info for an existing delivery. Can only be accessed by the add-on partner providing this add-on.

Lists existing deliveries for an add-on. Can only be accessed by the add-on partner providing this add-on.

Returns the info for a specified webhook event. Can only be accessed by the add-on partner providing this add-on.

Lists existing webhook events for an add-on. Can only be accessed by the add-on partner providing this add-on.

Returns the info for an add-on webhook subscription. Can only be accessed by the add-on partner providing this add-on.

List all webhook subscriptions for a particular add-on. Can only be accessed by the add-on partner providing this add-on.

Updates the details of an add-on webhook subscription. Can only be accessed by the add-on partner providing this add-on.

Remove an allowed add-on service

List all allowed add-on services for a team

Disable ACM flag for an app

Enable ACM flag for an app

Info for an existing app feature.

List existing app features.

Update an existing app feature.

Create a new app setup from a gzipped tar archive containing an app.json manifest file.

Get the status of an app setup.

Create a new app transfer.

Delete an existing app transfer

Info for existing app transfer.

List existing apps transfers.

Update an existing app transfer.

Create an app webhook subscription.

Removes an app webhook subscription.

Returns the info for an existing delivery.

Lists existing deliveries for an app.

Returns the info for a specified webhook event.

Lists existing webhook events for an app.

Returns the info for an app webhook subscription.

List all webhook subscriptions for a particular app.

Updates the details of an app webhook subscription.

Get archive for a single month.

List existing events. Returns all events for one day, defaulting to current day. Order, actor, action, and type, and day query params can be specified as query parameters. For example, '/enterprise-accounts/:id/events?order=desc&actor=user@example.com&act ion=create&type=app&day=2020-09-30' would return events in descending order and only return app created events by the user with user@example.com email address.

List an app's existing buildpack installations.

Update an app's buildpack installations.

Create a new collaborator.

Delete an existing collaborator.

Info for existing collaborator.

List existing collaborators.

Get config-vars for a release.

Update config-vars for app. You can update existing config-vars by setting them again, and remove by setting it to `null`.

Info for existing credit.

Delete sends a DELETE request.

Do sends a request and decodes the response into v.

func (*Service) DomainUpdate ¶ added in v5.2.1

Associate an SNI endpoint

Info for existing dyno size.

List existing dyno sizes.

Retrieves usage for an enterprise account for a range of days. Start and end dates can be specified as query parameters using the date format YYYY-MM-DD. The enterprise account identifier can be found from the [enterprise account list](https://devcenter.heroku.com/articles/platform-api-reference#ent erprise-account-list).

Information about an enterprise account.

List enterprise accounts in which you are a member.

Create a member in an enterprise account.

delete a member in an enterprise account.

List members in an enterprise account.

Update a member in an enterprise account.

Retrieves usage for an enterprise account for a range of months. Start and end dates can be specified as query parameters using the date format YYYY-MM. If no end date is specified, one month of usage is returned. The enterprise account identifier can be found from the [enterprise account list](https://devcenter.heroku.com/articles/platform-api-reference#ent erprise-account-list).

Update enterprise account properties

Request an apps list filtered by app id.

Batch update process types

List process type formation

Get sends a GET request and decodes the response into v.

Create an Identity Provider for a team

Delete a team's Identity Provider

Get a list of a team's Identity Providers

Update a team's Identity Provider

Create a new inbound ruleset

Current inbound ruleset for a space

Info on an existing Inbound Ruleset

List all inbound rulesets for a space

Retrieve existing invoice address.

Update invoice address for an account.

Info for existing invoice.

Delete an existing log drain. Log drains added by add-ons can only be removed by removing the add-on.

Info for existing log drain.

List existing log drains.

List existing log drains for an add-on.

Update an add-on owned log drain.

Create a new log session.

NewRequest generates an HTTP request, but does not perform the request.

Create a new OAuth authorization.

Delete OAuth authorization.

Info for an OAuth authorization.

List OAuth authorizations.

Regenerate OAuth tokens. This endpoint is only available to direct authorizations or privileged OAuth clients.

Create a new OAuth client.

Rotate credentials for an OAuth client

Create a new OAuth token.

Revoke OAuth access token.

Create a new outbound ruleset

Current outbound ruleset for a space

Info on an existing Outbound Ruleset

List all Outbound Rulesets for a space

Reset account's password. This will send a reset password link to the user's email address.

Patch sends a Path request and decodes the response into v.

Accept a pending peering connection with a private space.

Destroy an active peering connection with a private space.

Fetch information for existing peering connection

Provides the necessary information to establish an AWS VPC Peering with your private space.

List peering connections of a private space.

List permission entities for a team.

List latest builds for each app in a pipeline

Get config-vars for a pipeline stage.

Update config-vars for a pipeline stage. You can update existing config-vars by setting them again, and remove by setting it to `null`.

Create a new pipeline coupling.

Delete an existing pipeline coupling.

Info for an existing pipeline coupling.

Info for an existing pipeline coupling.

List pipeline couplings for the current user.

List couplings for a pipeline

List pipeline couplings for a team.

Update an existing pipeline coupling.

Delete an existing pipeline.

List latest slug releases for each app in a pipeline

Info for existing pipeline.

Info for existing pipeline promotion.

List promotion targets belonging to an existing promotion.

List latest releases for each app in a pipeline

The stack for a given pipeline, used for CI and Review Apps that have no stack defined in app.json.

Create a new pipeline transfer.

Update an existing pipeline.

Info for existing plan by Add-on.

List existing plans by Add-on.

Post sends a POST request and decodes the response into v.

Put sends a PUT request and decodes the response into v.

Info for existing region.

Info for existing release.

Rollback to an existing release.

Disable review apps for a pipeline

Enable review apps for a pipeline

Get review apps configuration for a pipeline

Update review app configuration for a pipeline

Delete an existing review app

Gets an existing review app

Get a review app using the associated app_id

List review apps for a pipeline

Confirm an SMS number change with a confirmation code

Recover an account using an SMS recovery code

Recover an account using an SMS recovery code

Create a new SNI endpoint.

Delete existing SNI endpoint.

Info for existing SNI endpoint.

List existing SNI endpoints.

Update an existing SNI endpoint.

Create URLs for uploading and downloading source.

Create URLs for uploading and downloading source. Deprecated in favor of `POST /sources`

List permissions for a given user on a given space.

List all users and their permissions on a space.

Update an existing user's set of permissions on a space.

Delete an existing space.

Current state of network address translation for a space.

Transfer space between enterprise teams

Update an existing space.

List add-ons used across all Team apps

Delete an existing collaborator from a team app.

Info for a collaborator on a team app.

List collaborators on a team app.

Update an existing collaborator from a team app.

Create a new app in the specified team, in the default team if unspecified, or in personal account, if default team is not set.

Lists permissions available to teams.

Transfer an existing team app to another Heroku account.

Transfer an existing team app to another team.

Lock or unlock a team app.

Create a team in an enterprise account.

Info for an existing team feature.

List existing team features.

Get an invitation by its token

Get a list of a team's Identity Providers

Revoke a team invitation.

Info for existing invoice.

List teams in which you are a member.

List teams for an enterprise account.

Create a new team member.

Create a new team member, or update their role.

Remove a member from the team.

List members of the team.

List the apps of a team member.

Retrieves usage for an enterprise team for a range of months. Start and end dates can be specified as query parameters using the date, YYYY-MM. If no end date is specified, one month of usage is returned. The team identifier can be found from the [team list endpoint](https://devcenter.heroku.com/articles/platform-api-reference #team-list).

Retrieve Team Preferences

List spaces owned by the team

Info for existing test-run.

Info for existing test-run by Pipeline

List existing test-runs for a pipeline.

Update a test-run's status.

Retrieve User Preferences

Create a new VPN connection in a private space.

Destroy existing VPN Connection

Info for an existing vpn-connection.

List VPN connections for a space.

Update a VPN connection in a private space.

type Slug struct {
	Blob struct {
		Method string `json:"method" url:"method,key"` 
		URL    string `json:"url" url:"url,key"`       
	} `json:"blob" url:"blob,key"` 
	
	BuildpackProvidedDescription *string `json:"buildpack_provided_description" url:"buildpack_provided_description,key"` 
	Checksum                     *string `json:"checksum" url:"checksum,key"`                                             
	Commit                       *string `json:"commit" url:"commit,key"`                                                 
	
	CommitDescription *string           `json:"commit_description" url:"commit_description,key"` 
	CreatedAt         time.Time         `json:"created_at" url:"created_at,key"`                 
	ID                string            `json:"id" url:"id,key"`                                 
	ProcessTypes      map[string]string `json:"process_types" url:"process_types,key"`           
	Size              *int              `json:"size" url:"size,key"`                             
	Stack             struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"stack" url:"stack,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

A slug is a snapshot of your application code that is ready to run on the platform.

type SlugCreateOpts struct {
	BuildpackProvidedDescription *string `json:"buildpack_provided_description,omitempty" url:"buildpack_provided_description,omitempty,key"` 
	Checksum                     *string `json:"checksum,omitempty" url:"checksum,omitempty,key"`                                             
	Commit                       *string `json:"commit,omitempty" url:"commit,omitempty,key"`                                                 
	
	CommitDescription *string           `json:"commit_description,omitempty" url:"commit_description,omitempty,key"` 
	ProcessTypes      map[string]string `json:"process_types" url:"process_types,key"`                               
	Stack             *string           `json:"stack,omitempty" url:"stack,omitempty,key"`                           
}
type SmsNumber struct {
	SmsNumber *string `json:"sms_number" url:"sms_number,key"` 
}

SMS numbers are used for recovery on accounts with two-factor authentication enabled.

type SniEndpoint struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CertificateChain string    `json:"certificate_chain" url:"certificate_chain,key"` 
	CreatedAt        time.Time `json:"created_at" url:"created_at,key"`               
	DisplayName      *string   `json:"display_name" url:"display_name,key"`           
	Domains          []string  `json:"domains" url:"domains,key"`                     
	ID               string    `json:"id" url:"id,key"`                               
	Name             string    `json:"name" url:"name,key"`                           
	SSLCert          struct {
		IsCaSigned   bool          `json:"ca_signed?" url:"ca_signed?,key"`
		CertDomains  []interface{} `json:"cert_domains" url:"cert_domains,key"`
		ExpiresAt    time.Time     `json:"expires_at" url:"expires_at,key"`
		ID           string        `json:"id" url:"id,key"` 
		Issuer       string        `json:"issuer" url:"issuer,key"`
		IsSelfSigned bool          `json:"self_signed?" url:"self_signed?,key"`
		StartsAt     time.Time     `json:"starts_at" url:"starts_at,key"`
		Subject      string        `json:"subject" url:"subject,key"`
	} `json:"ssl_cert" url:"ssl_cert,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

SNI Endpoint is a public address serving a custom SSL cert for HTTPS traffic, using the SNI TLS extension, to a Heroku app.

type SniEndpointCreateOpts struct {
	CertificateChain string `json:"certificate_chain" url:"certificate_chain,key"` 
	PrivateKey       string `json:"private_key" url:"private_key,key"`             
}
type SniEndpointUpdateOpts struct {
	CertificateChain string `json:"certificate_chain" url:"certificate_chain,key"` 
	PrivateKey       string `json:"private_key" url:"private_key,key"`             
}
type Source struct {
	SourceBlob struct {
		GetURL string `json:"get_url" url:"get_url,key"` 
		PutURL string `json:"put_url" url:"put_url,key"` 
	} `json:"source_blob" url:"source_blob,key"` 
}

A source is a location for uploading and downloading an application's source code.

type Space struct {
	CIDR string `json:"cidr" url:"cidr,key"` 
	
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	DataCIDR  string    `json:"data_cidr" url:"data_cidr,key"`   
	
	
	ID           string `json:"id" url:"id,key"`     
	Name         string `json:"name" url:"name,key"` 
	Organization struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"organization" url:"organization,key"` 
	Region struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"region" url:"region,key"` 
	Shield bool   `json:"shield" url:"shield,key"` 
	State  string `json:"state" url:"state,key"`   
	Team   struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

A space is an isolated, highly available, secure app execution environment.

type SpaceAppAccess struct {
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"` 
	ID          string    `json:"id" url:"id,key"`                 
	Permissions []struct {
		Description string `json:"description" url:"description,key"`
		Name        string `json:"name" url:"name,key"`
	} `json:"permissions" url:"permissions,key"` 
	Space struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"space" url:"space,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"user" url:"user,key"` 
}

Space access represents the permissions a particular user has on a particular space.

type SpaceAppAccessUpdateOpts struct {
	Permissions []struct {
		Name *string `json:"name,omitempty" url:"name,omitempty,key"`
	} `json:"permissions" url:"permissions,key"`
}
type SpaceCreateOpts struct {
	CIDR *string `json:"cidr,omitempty" url:"cidr,omitempty,key"` 
	
	DataCIDR *string `json:"data_cidr,omitempty" url:"data_cidr,omitempty,key"` 
	
	
	LogDrainURL *string `json:"log_drain_url,omitempty" url:"log_drain_url,omitempty,key"` 
	
	Name   string  `json:"name" url:"name,key"`                         
	Region *string `json:"region,omitempty" url:"region,omitempty,key"` 
	Shield *bool   `json:"shield,omitempty" url:"shield,omitempty,key"` 
	Team   string  `json:"team" url:"team,key"`                         
}
type SpaceListResult []Space
type SpaceNAT struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Sources   []string  `json:"sources" url:"sources,key"`       
	State     string    `json:"state" url:"state,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

Network address translation (NAT) for stable outbound IP addresses from a space

type SpaceTopology struct {
	Apps []struct {
		Domains   []interface{} `json:"domains" url:"domains,key"`
		Formation []struct {
			Dynos []struct {
				Hostname  string `json:"hostname" url:"hostname,key"`     
				ID        string `json:"id" url:"id,key"`                 
				Number    int    `json:"number" url:"number,key"`         
				PrivateIP string `json:"private_ip" url:"private_ip,key"` 
			} `json:"dynos" url:"dynos,key"` 
			ID          string `json:"id" url:"id,key"`                     
			ProcessType string `json:"process_type" url:"process_type,key"` 
		} `json:"formation" url:"formation,key"` 
		ID string `json:"id" url:"id,key"` 
	} `json:"apps" url:"apps,key"` 
	Version int `json:"version" url:"version,key"` 
}

Space Topology provides you with a mechanism for viewing all the running dynos, formations and applications for a space. This is the same data thats used to power our DNS Service Discovery.

type SpaceTransfer struct{}

Transfer spaces between enterprise teams with the same Enterprise Account.

type SpaceTransferTransferOpts struct {
	NewOwner string `json:"new_owner" url:"new_owner,key"` 
}
type SpaceTransferTransferResult struct {
	CIDR string `json:"cidr" url:"cidr,key"` 
	
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	DataCIDR  string    `json:"data_cidr" url:"data_cidr,key"`   
	
	
	ID           string `json:"id" url:"id,key"`     
	Name         string `json:"name" url:"name,key"` 
	Organization struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"organization" url:"organization,key"` 
	Region struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"region" url:"region,key"` 
	Shield bool   `json:"shield" url:"shield,key"` 
	State  string `json:"state" url:"state,key"`   
	Team   struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}
type SpaceUpdateOpts struct {
	Name *string `json:"name,omitempty" url:"name,omitempty,key"` 
}
type Stack struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Default   bool      `json:"default" url:"default,key"`       
	ID        string    `json:"id" url:"id,key"`                 
	Name      string    `json:"name" url:"name,key"`             
	State     string    `json:"state" url:"state,key"`           
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

Stacks are the different application execution environments available in the Heroku platform.

type StackListResult []Stack
type Team struct {
	CreatedAt             time.Time `json:"created_at" url:"created_at,key"`                           
	CreditCardCollections bool      `json:"credit_card_collections" url:"credit_card_collections,key"` 
	Default               bool      `json:"default" url:"default,key"`                                 
	EnterpriseAccount     *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"enterprise_account" url:"enterprise_account,key"`
	ID               string `json:"id" url:"id,key"` 
	IdentityProvider *struct {
		ID    string `json:"id" url:"id,key"`     
		Name  string `json:"name" url:"name,key"` 
		Owner struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
			Type string `json:"type" url:"type,key"` 
		} `json:"owner" url:"owner,key"` 
	} `json:"identity_provider" url:"identity_provider,key"` 
	MembershipLimit     *float64  `json:"membership_limit" url:"membership_limit,key"`         
	Name                string    `json:"name" url:"name,key"`                                 
	ProvisionedLicenses bool      `json:"provisioned_licenses" url:"provisioned_licenses,key"` 
	Role                *string   `json:"role" url:"role,key"`                                 
	Type                string    `json:"type" url:"type,key"`                                 
	UpdatedAt           time.Time `json:"updated_at" url:"updated_at,key"`                     
}

Teams allow you to manage access to a shared group of applications and other resources.

type TeamAddOnListForTeamResult []struct {
	Actions      []struct{} `json:"actions" url:"actions,key"` 
	AddonService struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"addon_service" url:"addon_service,key"` 
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	BilledPrice *struct {
		Cents    int    `json:"cents" url:"cents,key"`       
		Contract bool   `json:"contract" url:"contract,key"` 
		Unit     string `json:"unit" url:"unit,key"`         
	} `json:"billed_price" url:"billed_price,key"` 
	BillingEntity struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
		Type string `json:"type" url:"type,key"` 
	} `json:"billing_entity" url:"billing_entity,key"` 
	ConfigVars []string  `json:"config_vars" url:"config_vars,key"` 
	CreatedAt  time.Time `json:"created_at" url:"created_at,key"`   
	ID         string    `json:"id" url:"id,key"`                   
	Name       string    `json:"name" url:"name,key"`               
	Plan       struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"plan" url:"plan,key"` 
	ProviderID string    `json:"provider_id" url:"provider_id,key"` 
	State      string    `json:"state" url:"state,key"`             
	UpdatedAt  time.Time `json:"updated_at" url:"updated_at,key"`   
	WebURL     *string   `json:"web_url" url:"web_url,key"`         
}
type TeamApp struct {
	ArchivedAt *time.Time `json:"archived_at" url:"archived_at,key"` 
	BuildStack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"build_stack" url:"build_stack,key"` 
	BuildpackProvidedDescription *string   `json:"buildpack_provided_description" url:"buildpack_provided_description,key"` 
	CreatedAt                    time.Time `json:"created_at" url:"created_at,key"`                                         
	GitURL                       string    `json:"git_url" url:"git_url,key"`                                               
	ID                           string    `json:"id" url:"id,key"`                                                         
	InternalRouting              *bool     `json:"internal_routing" url:"internal_routing,key"`                             
	Joined                       bool      `json:"joined" url:"joined,key"`                                                 
	Locked                       bool      `json:"locked" url:"locked,key"`                                                 
	Maintenance                  bool      `json:"maintenance" url:"maintenance,key"`                                       
	Name                         string    `json:"name" url:"name,key"`                                                     
	Owner                        *struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"owner" url:"owner,key"` 
	Region struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"region" url:"region,key"` 
	ReleasedAt *time.Time `json:"released_at" url:"released_at,key"` 
	RepoSize   *int       `json:"repo_size" url:"repo_size,key"`     
	SlugSize   *int       `json:"slug_size" url:"slug_size,key"`     
	Space      *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"space" url:"space,key"` 
	Stack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"stack" url:"stack,key"` 
	Team *struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	WebURL    string    `json:"web_url" url:"web_url,key"`       
}

A team app encapsulates the team specific functionality of Heroku apps.

type TeamAppCollaborator struct {
	App struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"app" url:"app,key"` 
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"` 
	ID          string    `json:"id" url:"id,key"`                 
	Permissions []struct {
		Description string `json:"description" url:"description,key"` 
		Name        string `json:"name" url:"name,key"`               
	} `json:"permissions" url:"permissions,key"` 
	
	Role      *string   `json:"role" url:"role,key"`             
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email     string `json:"email" url:"email,key"`         
		Federated bool   `json:"federated" url:"federated,key"` 
		ID        string `json:"id" url:"id,key"`               
	} `json:"user" url:"user,key"` 
}

A team collaborator represents an account that has been given access to a team app on Heroku.

type TeamAppCollaboratorCreateOpts struct {
	Permissions []*string `json:"permissions,omitempty" url:"permissions,omitempty,key"` 
	Silent      *bool     `json:"silent,omitempty" url:"silent,omitempty,key"`           
	User        string    `json:"user" url:"user,key"`                                   
}
type TeamAppCollaboratorUpdateOpts struct {
	Permissions []string `json:"permissions" url:"permissions,key"` 
}
type TeamAppCreateOpts struct {
	InternalRouting *bool   `json:"internal_routing,omitempty" url:"internal_routing,omitempty,key"` 
	Locked          *bool   `json:"locked,omitempty" url:"locked,omitempty,key"`                     
	Name            *string `json:"name,omitempty" url:"name,omitempty,key"`                         
	Personal        *bool   `json:"personal,omitempty" url:"personal,omitempty,key"`                 
	
	Region *string `json:"region,omitempty" url:"region,omitempty,key"` 
	Space  *string `json:"space,omitempty" url:"space,omitempty,key"`   
	Stack  *string `json:"stack,omitempty" url:"stack,omitempty,key"`   
	Team   *string `json:"team,omitempty" url:"team,omitempty,key"`     
}
type TeamAppListByTeamResult []TeamApp
type TeamAppPermission struct {
	Description string `json:"description" url:"description,key"` 
	Name        string `json:"name" url:"name,key"`               
}

A team app permission is a behavior that is assigned to a user in a team app.

type TeamAppTransferToAccountOpts struct {
	Owner string `json:"owner" url:"owner,key"` 
}
type TeamAppTransferToTeamOpts struct {
	Owner string `json:"owner" url:"owner,key"` 
}
type TeamAppUpdateLockedOpts struct {
	Locked bool `json:"locked" url:"locked,key"` 
}
type TeamCreateInEnterpriseAccountOpts struct {
	Name string `json:"name" url:"name,key"` 
}
type TeamCreateOpts struct {
	Address1        *string `json:"address_1,omitempty" url:"address_1,omitempty,key"`               
	Address2        *string `json:"address_2,omitempty" url:"address_2,omitempty,key"`               
	CardNumber      *string `json:"card_number,omitempty" url:"card_number,omitempty,key"`           
	City            *string `json:"city,omitempty" url:"city,omitempty,key"`                         
	Country         *string `json:"country,omitempty" url:"country,omitempty,key"`                   
	Cvv             *string `json:"cvv,omitempty" url:"cvv,omitempty,key"`                           
	DeviceData      *string `json:"device_data,omitempty" url:"device_data,omitempty,key"`           
	ExpirationMonth *string `json:"expiration_month,omitempty" url:"expiration_month,omitempty,key"` 
	ExpirationYear  *string `json:"expiration_year,omitempty" url:"expiration_year,omitempty,key"`   
	FirstName       *string `json:"first_name,omitempty" url:"first_name,omitempty,key"`             
	LastName        *string `json:"last_name,omitempty" url:"last_name,omitempty,key"`               
	Name            string  `json:"name" url:"name,key"`                                             
	Nonce           *string `json:"nonce,omitempty" url:"nonce,omitempty,key"`                       
	Other           *string `json:"other,omitempty" url:"other,omitempty,key"`                       
	PostalCode      *string `json:"postal_code,omitempty" url:"postal_code,omitempty,key"`           
	State           *string `json:"state,omitempty" url:"state,omitempty,key"`                       
}
type TeamDailyUsage struct {
	Addons float64 `json:"addons" url:"addons,key"` 
	Apps   []struct {
		Addons  float64 `json:"addons" url:"addons,key"`     
		AppName string  `json:"app_name" url:"app_name,key"` 
		Data    float64 `json:"data" url:"data,key"`         
		Dynos   float64 `json:"dynos" url:"dynos,key"`       
		Partner float64 `json:"partner" url:"partner,key"`   
	} `json:"apps" url:"apps,key"` 
	Data    float64 `json:"data" url:"data,key"`       
	Date    string  `json:"date" url:"date,key"`       
	Dynos   float64 `json:"dynos" url:"dynos,key"`     
	ID      string  `json:"id" url:"id,key"`           
	Name    string  `json:"name" url:"name,key"`       
	Partner float64 `json:"partner" url:"partner,key"` 
	Space   float64 `json:"space" url:"space,key"`     
}

Usage for an enterprise team at a daily resolution.

type TeamDailyUsageInfoOpts struct {
	End   *string `json:"end,omitempty" url:"end,omitempty,key"` 
	Start string  `json:"start" url:"start,key"`                 
}
type TeamFeature struct {
	CreatedAt     time.Time `json:"created_at" url:"created_at,key"`         
	Description   string    `json:"description" url:"description,key"`       
	DisplayName   string    `json:"display_name" url:"display_name,key"`     
	DocURL        string    `json:"doc_url" url:"doc_url,key"`               
	Enabled       bool      `json:"enabled" url:"enabled,key"`               
	FeedbackEmail string    `json:"feedback_email" url:"feedback_email,key"` 
	ID            string    `json:"id" url:"id,key"`                         
	Name          string    `json:"name" url:"name,key"`                     
	State         string    `json:"state" url:"state,key"`                   
	UpdatedAt     time.Time `json:"updated_at" url:"updated_at,key"`         
}

A team feature represents a feature enabled on a team account.

type TeamInvitation struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	ID        string    `json:"id" url:"id,key"`                 
	InvitedBy struct {
		Email string  `json:"email" url:"email,key"` 
		ID    string  `json:"id" url:"id,key"`       
		Name  *string `json:"name" url:"name,key"`   
	} `json:"invited_by" url:"invited_by,key"`
	Role *string `json:"role" url:"role,key"` 
	Team struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"`
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string  `json:"email" url:"email,key"` 
		ID    string  `json:"id" url:"id,key"`       
		Name  *string `json:"name" url:"name,key"`   
	} `json:"user" url:"user,key"`
}

A team invitation represents an invite to a team.

type TeamInvitationAcceptResult struct {
	CreatedAt        time.Time `json:"created_at" url:"created_at,key"` 
	Email            string    `json:"email" url:"email,key"`           
	Federated        bool      `json:"federated" url:"federated,key"`   
	ID               string    `json:"id" url:"id,key"`                 
	IdentityProvider *struct {
		ID    string `json:"id" url:"id,key"`     
		Name  string `json:"name" url:"name,key"` 
		Owner struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
			Type string `json:"type" url:"type,key"` 
		} `json:"owner" url:"owner,key"` 
		Redacted bool `json:"redacted" url:"redacted,key"` 
	} `json:"identity_provider" url:"identity_provider,key"` 
	Role                    *string `json:"role" url:"role,key"`                                           
	TwoFactorAuthentication bool    `json:"two_factor_authentication" url:"two_factor_authentication,key"` 
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string  `json:"email" url:"email,key"` 
		ID    string  `json:"id" url:"id,key"`       
		Name  *string `json:"name" url:"name,key"`   
	} `json:"user" url:"user,key"` 
}
type TeamInvitationCreateOpts struct {
	Email string  `json:"email" url:"email,key"` 
	Role  *string `json:"role" url:"role,key"`   
}
type TeamInvoice struct {
	AddonsTotal       int       `json:"addons_total" url:"addons_total,key"`               
	ChargesTotal      int       `json:"charges_total" url:"charges_total,key"`             
	CreatedAt         time.Time `json:"created_at" url:"created_at,key"`                   
	CreditsTotal      int       `json:"credits_total" url:"credits_total,key"`             
	DatabaseTotal     int       `json:"database_total" url:"database_total,key"`           
	DynoUnits         float64   `json:"dyno_units" url:"dyno_units,key"`                   
	ID                string    `json:"id" url:"id,key"`                                   
	Number            int       `json:"number" url:"number,key"`                           
	PaymentStatus     string    `json:"payment_status" url:"payment_status,key"`           
	PeriodEnd         string    `json:"period_end" url:"period_end,key"`                   
	PeriodStart       string    `json:"period_start" url:"period_start,key"`               
	PlatformTotal     int       `json:"platform_total" url:"platform_total,key"`           
	State             int       `json:"state" url:"state,key"`                             
	Total             int       `json:"total" url:"total,key"`                             
	UpdatedAt         time.Time `json:"updated_at" url:"updated_at,key"`                   
	WeightedDynoHours float64   `json:"weighted_dyno_hours" url:"weighted_dyno_hours,key"` 
}

A Team Invoice is an itemized bill of goods for a team which includes pricing and charges.

type TeamListByEnterpriseAccountResult []Team
type TeamListResult []Team
type TeamMember struct {
	CreatedAt        time.Time `json:"created_at" url:"created_at,key"` 
	Email            string    `json:"email" url:"email,key"`           
	Federated        bool      `json:"federated" url:"federated,key"`   
	ID               string    `json:"id" url:"id,key"`                 
	IdentityProvider *struct {
		ID    string `json:"id" url:"id,key"`     
		Name  string `json:"name" url:"name,key"` 
		Owner struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
			Type string `json:"type" url:"type,key"` 
		} `json:"owner" url:"owner,key"` 
		Redacted bool `json:"redacted" url:"redacted,key"` 
	} `json:"identity_provider" url:"identity_provider,key"` 
	Role                    *string `json:"role" url:"role,key"`                                           
	TwoFactorAuthentication bool    `json:"two_factor_authentication" url:"two_factor_authentication,key"` 
	
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	User      struct {
		Email string  `json:"email" url:"email,key"` 
		ID    string  `json:"id" url:"id,key"`       
		Name  *string `json:"name" url:"name,key"`   
	} `json:"user" url:"user,key"` 
}

A team member is an individual with access to a team.

type TeamMemberCreateOpts struct {
	Email     string `json:"email" url:"email,key"`                             
	Federated *bool  `json:"federated,omitempty" url:"federated,omitempty,key"` 
	Role      string `json:"role" url:"role,key"`                               
}
type TeamMemberCreateOrUpdateOpts struct {
	Email     string `json:"email" url:"email,key"`                             
	Federated *bool  `json:"federated,omitempty" url:"federated,omitempty,key"` 
	Role      string `json:"role" url:"role,key"`                               
}
type TeamMemberListByMemberResult []struct {
	ArchivedAt *time.Time `json:"archived_at" url:"archived_at,key"` 
	BuildStack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"build_stack" url:"build_stack,key"` 
	BuildpackProvidedDescription *string   `json:"buildpack_provided_description" url:"buildpack_provided_description,key"` 
	CreatedAt                    time.Time `json:"created_at" url:"created_at,key"`                                         
	GitURL                       string    `json:"git_url" url:"git_url,key"`                                               
	ID                           string    `json:"id" url:"id,key"`                                                         
	InternalRouting              *bool     `json:"internal_routing" url:"internal_routing,key"`                             
	Joined                       bool      `json:"joined" url:"joined,key"`                                                 
	Locked                       bool      `json:"locked" url:"locked,key"`                                                 
	Maintenance                  bool      `json:"maintenance" url:"maintenance,key"`                                       
	Name                         string    `json:"name" url:"name,key"`                                                     
	Owner                        *struct {
		Email string `json:"email" url:"email,key"` 
		ID    string `json:"id" url:"id,key"`       
	} `json:"owner" url:"owner,key"` 
	Region struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"region" url:"region,key"` 
	ReleasedAt *time.Time `json:"released_at" url:"released_at,key"` 
	RepoSize   *int       `json:"repo_size" url:"repo_size,key"`     
	SlugSize   *int       `json:"slug_size" url:"slug_size,key"`     
	Space      *struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"space" url:"space,key"` 
	Stack struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"stack" url:"stack,key"` 
	Team *struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
	WebURL    string    `json:"web_url" url:"web_url,key"`       
}
type TeamMemberUpdateOpts struct {
	Email     string `json:"email" url:"email,key"`                             
	Federated *bool  `json:"federated,omitempty" url:"federated,omitempty,key"` 
	Role      string `json:"role" url:"role,key"`                               
}
type TeamMonthlyUsage struct {
	Addons float64 `json:"addons" url:"addons,key"` 
	Apps   []struct {
		Addons  float64 `json:"addons" url:"addons,key"`     
		AppName string  `json:"app_name" url:"app_name,key"` 
		Data    float64 `json:"data" url:"data,key"`         
		Dynos   float64 `json:"dynos" url:"dynos,key"`       
		Partner float64 `json:"partner" url:"partner,key"`   
	} `json:"apps" url:"apps,key"` 
	Connect float64 `json:"connect" url:"connect,key"` 
	Data    float64 `json:"data" url:"data,key"`       
	Dynos   float64 `json:"dynos" url:"dynos,key"`     
	ID      string  `json:"id" url:"id,key"`           
	Month   string  `json:"month" url:"month,key"`     
	Name    string  `json:"name" url:"name,key"`       
	Partner float64 `json:"partner" url:"partner,key"` 
	Space   float64 `json:"space" url:"space,key"`     
}

Usage for an enterprise team at a monthly resolution.

type TeamMonthlyUsageInfoOpts struct {
	End   *string `json:"end,omitempty" url:"end,omitempty,key"` 
	Start string  `json:"start" url:"start,key"`                 
}
type TeamPreferences struct {
	AddonsControls *bool `json:"addons-controls" url:"addons-controls,key"` 
	
	DefaultPermission *string `json:"default-permission" url:"default-permission,key"` 
}

Tracks a Team's Preferences

type TeamPreferencesUpdateOpts struct {
	AddonsControls *bool `json:"addons-controls,omitempty" url:"addons-controls,omitempty,key"` 

}

A space is an isolated, highly available, secure app execution environment.

type TeamSpaceListResult []struct {
	CIDR string `json:"cidr" url:"cidr,key"` 
	
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	DataCIDR  string    `json:"data_cidr" url:"data_cidr,key"`   
	
	
	ID           string `json:"id" url:"id,key"`     
	Name         string `json:"name" url:"name,key"` 
	Organization struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"organization" url:"organization,key"` 
	Region struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"region" url:"region,key"` 
	Shield bool   `json:"shield" url:"shield,key"` 
	State  string `json:"state" url:"state,key"`   
	Team   struct {
		ID   string `json:"id" url:"id,key"`     
		Name string `json:"name" url:"name,key"` 
	} `json:"team" url:"team,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}
type TeamUpdateOpts struct {
	Default *bool   `json:"default,omitempty" url:"default,omitempty,key"` 
	Name    *string `json:"name,omitempty" url:"name,omitempty,key"`       
}
type TestCase struct {
	CreatedAt   time.Time `json:"created_at" url:"created_at,key"`   
	Description string    `json:"description" url:"description,key"` 
	Diagnostic  string    `json:"diagnostic" url:"diagnostic,key"`   
	Directive   string    `json:"directive" url:"directive,key"`     
	ID          string    `json:"id" url:"id,key"`                   
	Number      int       `json:"number" url:"number,key"`           
	Passed      bool      `json:"passed" url:"passed,key"`           
	TestNode    struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"test_node" url:"test_node,key"` 
	TestRun struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"test_run" url:"test_run,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

A single test case belonging to a test run

type TestNode struct {
	CreatedAt time.Time `json:"created_at" url:"created_at,key"` 
	Dyno      *struct {
		AttachURL *string `json:"attach_url" url:"attach_url,key"` 
		ID        string  `json:"id" url:"id,key"`                 
	} `json:"dyno" url:"dyno,key"` 
	ErrorStatus     *string `json:"error_status" url:"error_status,key"`           
	ExitCode        *int    `json:"exit_code" url:"exit_code,key"`                 
	ID              string  `json:"id" url:"id,key"`                               
	Index           int     `json:"index" url:"index,key"`                         
	Message         *string `json:"message" url:"message,key"`                     
	OutputStreamURL string  `json:"output_stream_url" url:"output_stream_url,key"` 
	Pipeline        struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
	SetupStreamURL string `json:"setup_stream_url" url:"setup_stream_url,key"` 
	Status         string `json:"status" url:"status,key"`                     
	TestRun        struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"test_run" url:"test_run,key"` 
	UpdatedAt time.Time `json:"updated_at" url:"updated_at,key"` 
}

A single test node belonging to a test run

type TestRun struct {
	ActorEmail    string    `json:"actor_email" url:"actor_email,key"`       
	AppSetup      *struct{} `json:"app_setup" url:"app_setup,key"`           
	ClearCache    *bool     `json:"clear_cache" url:"clear_cache,key"`       
	CommitBranch  string    `json:"commit_branch" url:"commit_branch,key"`   
	CommitMessage string    `json:"commit_message" url:"commit_message,key"` 
	CommitSha     string    `json:"commit_sha" url:"commit_sha,key"`         
	CreatedAt     time.Time `json:"created_at" url:"created_at,key"`         
	Debug         bool      `json:"debug" url:"debug,key"`                   
	Dyno          *struct {
		Size string `json:"size" url:"size,key"` 
	} `json:"dyno" url:"dyno,key"` 
	ID           string  `json:"id" url:"id,key"`           
	Message      *string `json:"message" url:"message,key"` 
	Number       int     `json:"number" url:"number,key"`   
	Organization *struct {
		Name string `json:"name" url:"name,key"` 
	} `json:"organization" url:"organization,key"` 
	Pipeline struct {
		ID string `json:"id" url:"id,key"` 
	} `json:"pipeline" url:"pipeline,key"` 
	SourceBlobURL string    `json:"source_blob_url" url:"source_blob_url,key"` 
	Status        string    `json:"status" url:"status,key"`                   
	UpdatedAt     time.Time `json:"updated_at" url:"updated_at,key"`           
	User          struct {
		AllowTracking       bool      `json:"allow_tracking" url:"allow_tracking,key"`             
		Beta                bool      `json:"beta" url:"beta,key"`                                 
		CountryOfResidence  *string   `json:"country_of_residence" url:"country_of_residence,key"` 
		CreatedAt           time.Time `json:"created_at" url:"created_at,key"`                     
		DefaultOrganization *struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
		} `json:"default_organization" url:"default_organization,key"` 
		DefaultTeam *struct {
			ID   string `json:"id" url:"id,key"`     
			Name string `json:"name" url:"name,key"` 
		} `json:"default_team" url:"default_team,key"` 
		DelinquentAt     *time.Time `json:"delinquent_at" url:"delinquent_at,key"` 
		Email            string     `json:"email" url:"email,key"`                 
		Federated        bool       `json:"federated" url:"federated,key"`         
		ID               string     `json:"id" url:"id,key"`                       
		IdentityProvider *struct {
			ID           string `json:"id" url:"id,key"`     
			Name         string `json:"name" url:"name,key"` 
			Organization struct {
				Name string `json:"name" url:"name,key"` 
			} `json:"organization" url:"organization,key"`
			Owner struct {
				ID   string `json:"id" url:"id,key"`     
				Name string `json:"name" url:"name,key"` 
				Type string `json:"type" url:"type,key"` 
			} `json:"owner" url:"owner,key"` 
			Team struct {
				Name string `json:"name" url:"name,key"` 
			} `json:"team" url:"team,key"`
		} `json:"identity_provider" url:"identity_provider,key"` 
		LastLogin               *time.Time `json:"last_login" url:"last_login,key"`                               
		Name                    *string    `json:"name" url:"name,key"`                                           
		SmsNumber               *string    `json:"sms_number" url:"sms_number,key"`                               
		SuspendedAt             *time.Time `json:"suspended_at" url:"suspended_at,key"`                           
		TwoFactorAuthentication bool       `json:"two_factor_authentication" url:"two_factor_authentication,key"` 
		UpdatedAt               time.Time  `json:"updated_at" url:"updated_at,key"`                               
		Verified                bool       `json:"verified" url:"verified,key"`                                   
	} `json:"user" url:"user,key"` 
	
	WarningMessage *string `json:"warning_message" url:"warning_message,key"` 
}

An execution or trial of one or more tests

type TestRunCreateOpts struct {
	CommitBranch  string  `json:"commit_branch" url:"commit_branch,key"`                   
	CommitMessage string  `json:"commit_message" url:"commit_message,key"`                 
	CommitSha     string  `json:"commit_sha" url:"commit_sha,key"`                         
	Debug         *bool   `json:"debug,omitempty" url:"debug,omitempty,key"`               
	Organization  *string `json:"organization,omitempty" url:"organization,omitempty,key"` 
	Pipeline      string  `json:"pipeline" url:"pipeline,key"`                             
	SourceBlobURL string  `json:"source_blob_url" url:"source_blob_url,key"`               
}
type TestRunUpdateOpts struct {
	Message *string `json:"message" url:"message,key"` 
	Status  string  `json:"status" url:"status,key"`   
}

Forward CancelRequest to underlying Transport

type UserPreferences struct {
	DefaultOrganization        *string `json:"default-organization" url:"default-organization,key"`                   
	DismissedGettingStarted    *bool   `json:"dismissed-getting-started" url:"dismissed-getting-started,key"`         
	DismissedOrgAccessControls *bool   `json:"dismissed-org-access-controls" url:"dismissed-org-access-controls,key"` 
	
	DismissedOrgWizardNotification *bool `json:"dismissed-org-wizard-notification" url:"dismissed-org-wizard-notification,key"` 
	
	Timezone                        *string  `json:"timezone" url:"timezone,key"`                                                     
}

Tracks a user's preferences and message dismissals

type UserPreferencesUpdateOpts struct {
	DefaultOrganization        *string `json:"default-organization,omitempty" url:"default-organization,omitempty,key"`                   
	DismissedGettingStarted    *bool   `json:"dismissed-getting-started,omitempty" url:"dismissed-getting-started,omitempty,key"`         
	DismissedOrgAccessControls *bool   `json:"dismissed-org-access-controls,omitempty" url:"dismissed-org-access-controls,omitempty,key"` 
	
	DismissedOrgWizardNotification *bool `json:"dismissed-org-wizard-notification,omitempty" url:"dismissed-org-wizard-notification,omitempty,key"` 
	
	Timezone                        *string   `json:"timezone,omitempty" url:"timezone,omitempty,key"`                                                     
}
type VPNConnection struct {
	ID             string   `json:"id" url:"id,key"`                             
	IKEVersion     int      `json:"ike_version" url:"ike_version,key"`           
	Name           string   `json:"name" url:"name,key"`                         
	PublicIP       string   `json:"public_ip" url:"public_ip,key"`               
	RoutableCidrs  []string `json:"routable_cidrs" url:"routable_cidrs,key"`     
	SpaceCIDRBlock string   `json:"space_cidr_block" url:"space_cidr_block,key"` 
	Status         string   `json:"status" url:"status,key"`                     
	StatusMessage  string   `json:"status_message" url:"status_message,key"`     
	Tunnels        []struct {
		CustomerIP       string `json:"customer_ip" url:"customer_ip,key"`               
		IP               string `json:"ip" url:"ip,key"`                                 
		LastStatusChange string `json:"last_status_change" url:"last_status_change,key"` 
		PreSharedKey     string `json:"pre_shared_key" url:"pre_shared_key,key"`         
		Status           string `json:"status" url:"status,key"`                         
		StatusMessage    string `json:"status_message" url:"status_message,key"`         
	} `json:"tunnels" url:"tunnels,key"`
}

[VPN](https://devcenter.heroku.com/articles/private-space-vpn-connecti on) provides a way to connect your Private Spaces to your network via VPN.

type VPNConnectionCreateOpts struct {
	Name          string   `json:"name" url:"name,key"`                     
	PublicIP      string   `json:"public_ip" url:"public_ip,key"`           
	RoutableCidrs []string `json:"routable_cidrs" url:"routable_cidrs,key"` 
}
type VPNConnectionUpdateOpts struct {
	RoutableCidrs []string `json:"routable_cidrs" url:"routable_cidrs,key"` 
}

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4