heroku.team.Collaborator
Explore with Pulumi AI
A Heroku Team Collaborator receives access to a specific Team-owned app.
To create a Heroku Team, use the New Team feature of Heroku Dashboard. For Heroku Enterprise accounts, new Teams may be created within the account by users with the right permissions.
A Heroku “team” was originally called an “organization”, and that is still the identifier used elsewhere in this provider.
For heroku.app.App
& heroku.space.Space
resources, set the Heroku Team name as the “organization”.
IMPORTANT: This resource only works for Team-owned apps.
Example Usage
resource "heroku_app" "foobar" {
name = "some name"
region = "us"
organization {
name = "some organization"
}
}
# Create a new team collaborator for the foobar application that has view, operate, manage permissions
resource "heroku_team_collaborator" "foobar-collaborator" {
app_id = heroku_app.foobar.id
email = "collaborator@foobar.com"
permissions = ["view", "operate", "manage"]
}
Create Collaborator Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Collaborator(name: string, args: CollaboratorArgs, opts?: CustomResourceOptions);
@overload
def Collaborator(resource_name: str,
args: CollaboratorArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Collaborator(resource_name: str,
opts: Optional[ResourceOptions] = None,
app_id: Optional[str] = None,
email: Optional[str] = None,
permissions: Optional[Sequence[str]] = None)
func NewCollaborator(ctx *Context, name string, args CollaboratorArgs, opts ...ResourceOption) (*Collaborator, error)
public Collaborator(string name, CollaboratorArgs args, CustomResourceOptions? opts = null)
public Collaborator(String name, CollaboratorArgs args)
public Collaborator(String name, CollaboratorArgs args, CustomResourceOptions options)
type: heroku:team:Collaborator
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args CollaboratorArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args CollaboratorArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args CollaboratorArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args CollaboratorArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args CollaboratorArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var herokuCollaboratorResource = new Heroku.Team.Collaborator("herokuCollaboratorResource", new()
{
AppId = "string",
Email = "string",
Permissions = new[]
{
"string",
},
});
example, err := team.NewCollaborator(ctx, "herokuCollaboratorResource", &team.CollaboratorArgs{
AppId: pulumi.String("string"),
Email: pulumi.String("string"),
Permissions: pulumi.StringArray{
pulumi.String("string"),
},
})
var herokuCollaboratorResource = new com.pulumi.heroku.team.Collaborator("herokuCollaboratorResource", com.pulumi.heroku.team.CollaboratorArgs.builder()
.appId("string")
.email("string")
.permissions("string")
.build());
heroku_collaborator_resource = heroku.team.Collaborator("herokuCollaboratorResource",
app_id="string",
email="string",
permissions=["string"])
const herokuCollaboratorResource = new heroku.team.Collaborator("herokuCollaboratorResource", {
appId: "string",
email: "string",
permissions: ["string"],
});
type: heroku:team:Collaborator
properties:
appId: string
email: string
permissions:
- string
Collaborator Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Collaborator resource accepts the following input properties:
- App
Id string - Heroku app ID (do not use app name)
- Email string
- Email address of the team collaborator
- Permissions List<string>
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- App
Id string - Heroku app ID (do not use app name)
- Email string
- Email address of the team collaborator
- Permissions []string
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app
Id String - Heroku app ID (do not use app name)
- email String
- Email address of the team collaborator
- permissions List<String>
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app
Id string - Heroku app ID (do not use app name)
- email string
- Email address of the team collaborator
- permissions string[]
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app_
id str - Heroku app ID (do not use app name)
- email str
- Email address of the team collaborator
- permissions Sequence[str]
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app
Id String - Heroku app ID (do not use app name)
- email String
- Email address of the team collaborator
- permissions List<String>
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
Outputs
All input properties are implicitly available as output properties. Additionally, the Collaborator resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing Collaborator Resource
Get an existing Collaborator resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: CollaboratorState, opts?: CustomResourceOptions): Collaborator
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
app_id: Optional[str] = None,
email: Optional[str] = None,
permissions: Optional[Sequence[str]] = None) -> Collaborator
func GetCollaborator(ctx *Context, name string, id IDInput, state *CollaboratorState, opts ...ResourceOption) (*Collaborator, error)
public static Collaborator Get(string name, Input<string> id, CollaboratorState? state, CustomResourceOptions? opts = null)
public static Collaborator get(String name, Output<String> id, CollaboratorState state, CustomResourceOptions options)
resources: _: type: heroku:team:Collaborator get: id: ${id}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- App
Id string - Heroku app ID (do not use app name)
- Email string
- Email address of the team collaborator
- Permissions List<string>
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- App
Id string - Heroku app ID (do not use app name)
- Email string
- Email address of the team collaborator
- Permissions []string
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app
Id String - Heroku app ID (do not use app name)
- email String
- Email address of the team collaborator
- permissions List<String>
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app
Id string - Heroku app ID (do not use app name)
- email string
- Email address of the team collaborator
- permissions string[]
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app_
id str - Heroku app ID (do not use app name)
- email str
- Email address of the team collaborator
- permissions Sequence[str]
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
- app
Id String - Heroku app ID (do not use app name)
- email String
- Email address of the team collaborator
- permissions List<String>
- List of permissions that will be granted to the team collaborator. The order in which individual permissions are set here does not matter. Please visit this link for more information on available permissions.
Import
Team Collaborators can be imported using the combination of the team application name, a colon, and the collaborator’s email address
For example:
$ pulumi import heroku:team/collaborator:Collaborator foobar-collaborator foobar_app:collaborator@foobar.com
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- heroku pulumiverse/pulumi-heroku
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
heroku
Terraform Provider.