import Tabs from "@theme/Tabs";
import TabItem from "@theme/TabItem";

# Overview

This guide will walk you through the process of setting up a new account on nullplatform. The tutorial focuses on basic
account configuration without diving into specific cloud provider setups. The main goal is to enable you to create
applications and utilize CI/CD pipelines for pushing assets.

## Prerequisites

Before starting, make sure you have:

- **Admin role** in the organization you are currently configuring the account
- **GitHub/GitLab/Azure DevOps/Bitbucket credentials**, we will need them to enable connection

To create your account on nullplatform, you'll need to prepare the following information:

| Field                 | Description                         | Example              |
| --------------------- | ----------------------------------- | -------------------- |
| `name`                | the display name for your account   | "Krypto Kong LATAM"  |
| `organization_id`     | your organization's identifier      | "1"                  |
| `slug`                | unique account identifier           | "krypto-kong-latam"  |

## Creating an account

1. Configure nullplatform using one of these methods:

<Tabs>
    <TabItem value="OpenTofu" label="OpenTofu / Terraform">
        ```hcl
        resource "nullplatform_account" "krypto-account" {
            name = "Krypto Kong"
            slug = "crypto-kong"
        }
        # Note: the organization_id is automatically inferred.
        ```
    </TabItem>
    <TabItem value="API" label="API">
        ```
        POST /account
        {
            "name": "Krypto Kong",
            "organization_id": 1,
            "slug": "crypto-kong"
        }
        ```
    </TabItem>
</Tabs>

After creating your account, you'll need to:

- Configure your code repository provider (GitHub/GitLab/Azure DevOps/Bitbucket)
- Set up an asset repository for storing and managing your assets

These configurations can be done through nullplatform dashboard, API, and IaC providers. The detailed
instructions for these next steps are available in the following sections:

- [IaC-based setup for repositories and assets](/docs/providers/tutorials/leverage-nullplatform-using-gitops)
- [Platform Settings: repository and asset setup](/docs/providers/tutorials/setting-up-new-account/repository-and-asset-set-up.md)

_Terraform® is a registered trademark of HashiCorp, Inc._
