1. Packages
  2. Aiven Provider
  3. API Docs
  4. ProjectUser
Aiven v6.37.0 published on Thursday, Apr 10, 2025 by Pulumi

aiven.ProjectUser

Explore with Pulumi AI

Creates and manages an Aiven project member.

This resource is deprecated Use aiven.OrganizationPermission instead and migrate existing aiven.ProjectUser resources to the new resource. Do not use the aiven.ProjectUser and aiven.OrganizationPermission resources together.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as aiven from "@pulumi/aiven";

const mytestuser = new aiven.ProjectUser("mytestuser", {
    project: myproject.project,
    email: "john.doe@example.com",
    memberType: "admin",
});
Copy
import pulumi
import pulumi_aiven as aiven

mytestuser = aiven.ProjectUser("mytestuser",
    project=myproject["project"],
    email="john.doe@example.com",
    member_type="admin")
Copy
package main

import (
	"github.com/pulumi/pulumi-aiven/sdk/v6/go/aiven"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := aiven.NewProjectUser(ctx, "mytestuser", &aiven.ProjectUserArgs{
			Project:    pulumi.Any(myproject.Project),
			Email:      pulumi.String("john.doe@example.com"),
			MemberType: pulumi.String("admin"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aiven = Pulumi.Aiven;

return await Deployment.RunAsync(() => 
{
    var mytestuser = new Aiven.ProjectUser("mytestuser", new()
    {
        Project = myproject.Project,
        Email = "john.doe@example.com",
        MemberType = "admin",
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aiven.ProjectUser;
import com.pulumi.aiven.ProjectUserArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var mytestuser = new ProjectUser("mytestuser", ProjectUserArgs.builder()
            .project(myproject.project())
            .email("john.doe@example.com")
            .memberType("admin")
            .build());

    }
}
Copy
resources:
  mytestuser:
    type: aiven:ProjectUser
    properties:
      project: ${myproject.project}
      email: john.doe@example.com
      memberType: admin
Copy

Create ProjectUser Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new ProjectUser(name: string, args: ProjectUserArgs, opts?: CustomResourceOptions);
@overload
def ProjectUser(resource_name: str,
                args: ProjectUserArgs,
                opts: Optional[ResourceOptions] = None)

@overload
def ProjectUser(resource_name: str,
                opts: Optional[ResourceOptions] = None,
                email: Optional[str] = None,
                member_type: Optional[str] = None,
                project: Optional[str] = None)
func NewProjectUser(ctx *Context, name string, args ProjectUserArgs, opts ...ResourceOption) (*ProjectUser, error)
public ProjectUser(string name, ProjectUserArgs args, CustomResourceOptions? opts = null)
public ProjectUser(String name, ProjectUserArgs args)
public ProjectUser(String name, ProjectUserArgs args, CustomResourceOptions options)
type: aiven:ProjectUser
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. ProjectUserArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. ProjectUserArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. ProjectUserArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. ProjectUserArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. ProjectUserArgs
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 projectUserResource = new Aiven.ProjectUser("projectUserResource", new()
{
    Email = "string",
    MemberType = "string",
    Project = "string",
});
Copy
example, err := aiven.NewProjectUser(ctx, "projectUserResource", &aiven.ProjectUserArgs{
	Email:      pulumi.String("string"),
	MemberType: pulumi.String("string"),
	Project:    pulumi.String("string"),
})
Copy
var projectUserResource = new ProjectUser("projectUserResource", ProjectUserArgs.builder()
    .email("string")
    .memberType("string")
    .project("string")
    .build());
Copy
project_user_resource = aiven.ProjectUser("projectUserResource",
    email="string",
    member_type="string",
    project="string")
Copy
const projectUserResource = new aiven.ProjectUser("projectUserResource", {
    email: "string",
    memberType: "string",
    project: "string",
});
Copy
type: aiven:ProjectUser
properties:
    email: string
    memberType: string
    project: string
Copy

ProjectUser 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 ProjectUser resource accepts the following input properties:

Email
This property is required.
Changes to this property will trigger replacement.
string
Email address of the user in lowercase. Changing this property forces recreation of the resource.
MemberType This property is required. string
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
Project
This property is required.
Changes to this property will trigger replacement.
string
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
Email
This property is required.
Changes to this property will trigger replacement.
string
Email address of the user in lowercase. Changing this property forces recreation of the resource.
MemberType This property is required. string
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
Project
This property is required.
Changes to this property will trigger replacement.
string
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
email
This property is required.
Changes to this property will trigger replacement.
String
Email address of the user in lowercase. Changing this property forces recreation of the resource.
memberType This property is required. String
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project
This property is required.
Changes to this property will trigger replacement.
String
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
email
This property is required.
Changes to this property will trigger replacement.
string
Email address of the user in lowercase. Changing this property forces recreation of the resource.
memberType This property is required. string
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project
This property is required.
Changes to this property will trigger replacement.
string
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
email
This property is required.
Changes to this property will trigger replacement.
str
Email address of the user in lowercase. Changing this property forces recreation of the resource.
member_type This property is required. str
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project
This property is required.
Changes to this property will trigger replacement.
str
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
email
This property is required.
Changes to this property will trigger replacement.
String
Email address of the user in lowercase. Changing this property forces recreation of the resource.
memberType This property is required. String
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project
This property is required.
Changes to this property will trigger replacement.
String
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.

Outputs

All input properties are implicitly available as output properties. Additionally, the ProjectUser resource produces the following output properties:

Accepted bool
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
Id string
The provider-assigned unique ID for this managed resource.
Accepted bool
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
Id string
The provider-assigned unique ID for this managed resource.
accepted Boolean
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
id String
The provider-assigned unique ID for this managed resource.
accepted boolean
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
id string
The provider-assigned unique ID for this managed resource.
accepted bool
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
id str
The provider-assigned unique ID for this managed resource.
accepted Boolean
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing ProjectUser Resource

Get an existing ProjectUser 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?: ProjectUserState, opts?: CustomResourceOptions): ProjectUser
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        accepted: Optional[bool] = None,
        email: Optional[str] = None,
        member_type: Optional[str] = None,
        project: Optional[str] = None) -> ProjectUser
func GetProjectUser(ctx *Context, name string, id IDInput, state *ProjectUserState, opts ...ResourceOption) (*ProjectUser, error)
public static ProjectUser Get(string name, Input<string> id, ProjectUserState? state, CustomResourceOptions? opts = null)
public static ProjectUser get(String name, Output<String> id, ProjectUserState state, CustomResourceOptions options)
resources:  _:    type: aiven:ProjectUser    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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.
The following state arguments are supported:
Accepted bool
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
Email Changes to this property will trigger replacement. string
Email address of the user in lowercase. Changing this property forces recreation of the resource.
MemberType string
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
Project Changes to this property will trigger replacement. string
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
Accepted bool
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
Email Changes to this property will trigger replacement. string
Email address of the user in lowercase. Changing this property forces recreation of the resource.
MemberType string
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
Project Changes to this property will trigger replacement. string
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
accepted Boolean
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
email Changes to this property will trigger replacement. String
Email address of the user in lowercase. Changing this property forces recreation of the resource.
memberType String
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project Changes to this property will trigger replacement. String
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
accepted boolean
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
email Changes to this property will trigger replacement. string
Email address of the user in lowercase. Changing this property forces recreation of the resource.
memberType string
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project Changes to this property will trigger replacement. string
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
accepted bool
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
email Changes to this property will trigger replacement. str
Email address of the user in lowercase. Changing this property forces recreation of the resource.
member_type str
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project Changes to this property will trigger replacement. str
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.
accepted Boolean
Whether the user has accepted the request to join the project. Users get an invite and become project members after accepting the invite.
email Changes to this property will trigger replacement. String
Email address of the user in lowercase. Changing this property forces recreation of the resource.
memberType String
Project membership type. The possible values are admin, developer, operator, organization:app_users:write, organization:audit_logs:read, organization:billing:read, organization:billing:write, organization:domains:write, organization:groups:write, organization:idps:write, organization:networking:read, organization:networking:write, organization:projects:write, organization:users:write, project:audit_logs:read, project:integrations:read, project:integrations:write, project:networking:read, project:networking:write, project:permissions:read, project:services:read, project:services:write, read_only, role:organization:admin, role:services:maintenance, role:services:recover, service:configuration:write, service:data:write, service:logs:read, service:secrets:read and service:users:write.
project Changes to this property will trigger replacement. String
The name of the project this resource belongs to. To set up proper dependencies please refer to this variable as a reference. Changing this property forces recreation of the resource.

Import

$ pulumi import aiven:index/projectUser:ProjectUser mytestuser PROJECT/EMAIL
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
Aiven pulumi/pulumi-aiven
License
Apache-2.0
Notes
This Pulumi package is based on the aiven Terraform Provider.