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

aiven.OrganizationProject

Explore with Pulumi AI

Creates and manages an Aiven project.

This resource is in the beta stage and may change without notice. Set the PROVIDER_AIVEN_ENABLE_BETA environment variable to use the resource.

Example Usage

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

const foo = new aiven.OrganizationProject("foo", {
    projectId: "example-project",
    organizationId: fooAivenOrganization.id,
    billingGroupId: fooAivenBillingGroup.id,
    tags: [{
        key: "key_1",
        value: "value_1",
    }],
});
Copy
import pulumi
import pulumi_aiven as aiven

foo = aiven.OrganizationProject("foo",
    project_id="example-project",
    organization_id=foo_aiven_organization["id"],
    billing_group_id=foo_aiven_billing_group["id"],
    tags=[{
        "key": "key_1",
        "value": "value_1",
    }])
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.NewOrganizationProject(ctx, "foo", &aiven.OrganizationProjectArgs{
			ProjectId:      pulumi.String("example-project"),
			OrganizationId: pulumi.Any(fooAivenOrganization.Id),
			BillingGroupId: pulumi.Any(fooAivenBillingGroup.Id),
			Tags: aiven.OrganizationProjectTagArray{
				&aiven.OrganizationProjectTagArgs{
					Key:   pulumi.String("key_1"),
					Value: pulumi.String("value_1"),
				},
			},
		})
		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 foo = new Aiven.OrganizationProject("foo", new()
    {
        ProjectId = "example-project",
        OrganizationId = fooAivenOrganization.Id,
        BillingGroupId = fooAivenBillingGroup.Id,
        Tags = new[]
        {
            new Aiven.Inputs.OrganizationProjectTagArgs
            {
                Key = "key_1",
                Value = "value_1",
            },
        },
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aiven.OrganizationProject;
import com.pulumi.aiven.OrganizationProjectArgs;
import com.pulumi.aiven.inputs.OrganizationProjectTagArgs;
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 foo = new OrganizationProject("foo", OrganizationProjectArgs.builder()
            .projectId("example-project")
            .organizationId(fooAivenOrganization.id())
            .billingGroupId(fooAivenBillingGroup.id())
            .tags(OrganizationProjectTagArgs.builder()
                .key("key_1")
                .value("value_1")
                .build())
            .build());

    }
}
Copy
resources:
  foo:
    type: aiven:OrganizationProject
    properties:
      projectId: example-project
      organizationId: ${fooAivenOrganization.id}
      billingGroupId: ${fooAivenBillingGroup.id}
      tags:
        - key: key_1
          value: value_1
Copy

Create OrganizationProject Resource

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

Constructor syntax

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

@overload
def OrganizationProject(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        billing_group_id: Optional[str] = None,
                        organization_id: Optional[str] = None,
                        parent_id: Optional[str] = None,
                        project_id: Optional[str] = None,
                        tags: Optional[Sequence[OrganizationProjectTagArgs]] = None,
                        technical_emails: Optional[Sequence[str]] = None)
func NewOrganizationProject(ctx *Context, name string, args OrganizationProjectArgs, opts ...ResourceOption) (*OrganizationProject, error)
public OrganizationProject(string name, OrganizationProjectArgs args, CustomResourceOptions? opts = null)
public OrganizationProject(String name, OrganizationProjectArgs args)
public OrganizationProject(String name, OrganizationProjectArgs args, CustomResourceOptions options)
type: aiven:OrganizationProject
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. OrganizationProjectArgs
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. OrganizationProjectArgs
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. OrganizationProjectArgs
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. OrganizationProjectArgs
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. OrganizationProjectArgs
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 organizationProjectResource = new Aiven.OrganizationProject("organizationProjectResource", new()
{
    BillingGroupId = "string",
    OrganizationId = "string",
    ParentId = "string",
    ProjectId = "string",
    Tags = new[]
    {
        new Aiven.Inputs.OrganizationProjectTagArgs
        {
            Key = "string",
            Value = "string",
        },
    },
    TechnicalEmails = new[]
    {
        "string",
    },
});
Copy
example, err := aiven.NewOrganizationProject(ctx, "organizationProjectResource", &aiven.OrganizationProjectArgs{
	BillingGroupId: pulumi.String("string"),
	OrganizationId: pulumi.String("string"),
	ParentId:       pulumi.String("string"),
	ProjectId:      pulumi.String("string"),
	Tags: aiven.OrganizationProjectTagArray{
		&aiven.OrganizationProjectTagArgs{
			Key:   pulumi.String("string"),
			Value: pulumi.String("string"),
		},
	},
	TechnicalEmails: pulumi.StringArray{
		pulumi.String("string"),
	},
})
Copy
var organizationProjectResource = new OrganizationProject("organizationProjectResource", OrganizationProjectArgs.builder()
    .billingGroupId("string")
    .organizationId("string")
    .parentId("string")
    .projectId("string")
    .tags(OrganizationProjectTagArgs.builder()
        .key("string")
        .value("string")
        .build())
    .technicalEmails("string")
    .build());
Copy
organization_project_resource = aiven.OrganizationProject("organizationProjectResource",
    billing_group_id="string",
    organization_id="string",
    parent_id="string",
    project_id="string",
    tags=[{
        "key": "string",
        "value": "string",
    }],
    technical_emails=["string"])
Copy
const organizationProjectResource = new aiven.OrganizationProject("organizationProjectResource", {
    billingGroupId: "string",
    organizationId: "string",
    parentId: "string",
    projectId: "string",
    tags: [{
        key: "string",
        value: "string",
    }],
    technicalEmails: ["string"],
});
Copy
type: aiven:OrganizationProject
properties:
    billingGroupId: string
    organizationId: string
    parentId: string
    projectId: string
    tags:
        - key: string
          value: string
    technicalEmails:
        - string
Copy

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

BillingGroupId This property is required. string
Billing group ID to assign to the project.
OrganizationId This property is required. string
ID of an organization. Changing this property forces recreation of the resource.
ParentId This property is required. string
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
ProjectId
This property is required.
Changes to this property will trigger replacement.
string
Unique identifier for the project that also serves as the project name.
Tags List<OrganizationProjectTag>
Tags are key-value pairs that allow you to categorize projects.
TechnicalEmails List<string>
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
BillingGroupId This property is required. string
Billing group ID to assign to the project.
OrganizationId This property is required. string
ID of an organization. Changing this property forces recreation of the resource.
ParentId This property is required. string
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
ProjectId
This property is required.
Changes to this property will trigger replacement.
string
Unique identifier for the project that also serves as the project name.
Tags []OrganizationProjectTagArgs
Tags are key-value pairs that allow you to categorize projects.
TechnicalEmails []string
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billingGroupId This property is required. String
Billing group ID to assign to the project.
organizationId This property is required. String
ID of an organization. Changing this property forces recreation of the resource.
parentId This property is required. String
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
projectId
This property is required.
Changes to this property will trigger replacement.
String
Unique identifier for the project that also serves as the project name.
tags List<OrganizationProjectTag>
Tags are key-value pairs that allow you to categorize projects.
technicalEmails List<String>
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billingGroupId This property is required. string
Billing group ID to assign to the project.
organizationId This property is required. string
ID of an organization. Changing this property forces recreation of the resource.
parentId This property is required. string
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
projectId
This property is required.
Changes to this property will trigger replacement.
string
Unique identifier for the project that also serves as the project name.
tags OrganizationProjectTag[]
Tags are key-value pairs that allow you to categorize projects.
technicalEmails string[]
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billing_group_id This property is required. str
Billing group ID to assign to the project.
organization_id This property is required. str
ID of an organization. Changing this property forces recreation of the resource.
parent_id This property is required. str
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
project_id
This property is required.
Changes to this property will trigger replacement.
str
Unique identifier for the project that also serves as the project name.
tags Sequence[OrganizationProjectTagArgs]
Tags are key-value pairs that allow you to categorize projects.
technical_emails Sequence[str]
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billingGroupId This property is required. String
Billing group ID to assign to the project.
organizationId This property is required. String
ID of an organization. Changing this property forces recreation of the resource.
parentId This property is required. String
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
projectId
This property is required.
Changes to this property will trigger replacement.
String
Unique identifier for the project that also serves as the project name.
tags List<Property Map>
Tags are key-value pairs that allow you to categorize projects.
technicalEmails List<String>
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.

Outputs

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

CaCert string
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
Id string
The provider-assigned unique ID for this managed resource.
CaCert string
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
Id string
The provider-assigned unique ID for this managed resource.
caCert String
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
id String
The provider-assigned unique ID for this managed resource.
caCert string
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
id string
The provider-assigned unique ID for this managed resource.
ca_cert str
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
id str
The provider-assigned unique ID for this managed resource.
caCert String
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing OrganizationProject Resource

Get an existing OrganizationProject 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?: OrganizationProjectState, opts?: CustomResourceOptions): OrganizationProject
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        billing_group_id: Optional[str] = None,
        ca_cert: Optional[str] = None,
        organization_id: Optional[str] = None,
        parent_id: Optional[str] = None,
        project_id: Optional[str] = None,
        tags: Optional[Sequence[OrganizationProjectTagArgs]] = None,
        technical_emails: Optional[Sequence[str]] = None) -> OrganizationProject
func GetOrganizationProject(ctx *Context, name string, id IDInput, state *OrganizationProjectState, opts ...ResourceOption) (*OrganizationProject, error)
public static OrganizationProject Get(string name, Input<string> id, OrganizationProjectState? state, CustomResourceOptions? opts = null)
public static OrganizationProject get(String name, Output<String> id, OrganizationProjectState state, CustomResourceOptions options)
resources:  _:    type: aiven:OrganizationProject    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:
BillingGroupId string
Billing group ID to assign to the project.
CaCert string
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
OrganizationId string
ID of an organization. Changing this property forces recreation of the resource.
ParentId string
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
ProjectId Changes to this property will trigger replacement. string
Unique identifier for the project that also serves as the project name.
Tags List<OrganizationProjectTag>
Tags are key-value pairs that allow you to categorize projects.
TechnicalEmails List<string>
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
BillingGroupId string
Billing group ID to assign to the project.
CaCert string
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
OrganizationId string
ID of an organization. Changing this property forces recreation of the resource.
ParentId string
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
ProjectId Changes to this property will trigger replacement. string
Unique identifier for the project that also serves as the project name.
Tags []OrganizationProjectTagArgs
Tags are key-value pairs that allow you to categorize projects.
TechnicalEmails []string
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billingGroupId String
Billing group ID to assign to the project.
caCert String
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
organizationId String
ID of an organization. Changing this property forces recreation of the resource.
parentId String
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
projectId Changes to this property will trigger replacement. String
Unique identifier for the project that also serves as the project name.
tags List<OrganizationProjectTag>
Tags are key-value pairs that allow you to categorize projects.
technicalEmails List<String>
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billingGroupId string
Billing group ID to assign to the project.
caCert string
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
organizationId string
ID of an organization. Changing this property forces recreation of the resource.
parentId string
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
projectId Changes to this property will trigger replacement. string
Unique identifier for the project that also serves as the project name.
tags OrganizationProjectTag[]
Tags are key-value pairs that allow you to categorize projects.
technicalEmails string[]
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billing_group_id str
Billing group ID to assign to the project.
ca_cert str
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
organization_id str
ID of an organization. Changing this property forces recreation of the resource.
parent_id str
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
project_id Changes to this property will trigger replacement. str
Unique identifier for the project that also serves as the project name.
tags Sequence[OrganizationProjectTagArgs]
Tags are key-value pairs that allow you to categorize projects.
technical_emails Sequence[str]
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.
billingGroupId String
Billing group ID to assign to the project.
caCert String
The CA certificate for the project. This is required for configuring clients that connect to certain services like Kafka.
organizationId String
ID of an organization. Changing this property forces recreation of the resource.
parentId String
Link a project to an organization or organizational unit by using its ID. To set up proper dependencies please refer to this variable as a reference.
projectId Changes to this property will trigger replacement. String
Unique identifier for the project that also serves as the project name.
tags List<Property Map>
Tags are key-value pairs that allow you to categorize projects.
technicalEmails List<String>
The email addresses for project contacts, who will receive important alerts and updates about this project and its services. You can also set email contacts at the service level. It's good practice to keep these up-to-date to be aware of any potential issues with your project.

Supporting Types

OrganizationProjectTag
, OrganizationProjectTagArgs

Key This property is required. string
Project tag key.
Value This property is required. string
Project tag value.
Key This property is required. string
Project tag key.
Value This property is required. string
Project tag value.
key This property is required. String
Project tag key.
value This property is required. String
Project tag value.
key This property is required. string
Project tag key.
value This property is required. string
Project tag value.
key This property is required. str
Project tag key.
value This property is required. str
Project tag value.
key This property is required. String
Project tag key.
value This property is required. String
Project tag value.

Import

$ pulumi import aiven:index/organizationProject:OrganizationProject main ORGANIZATION_ID/PROJECT_ID
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.