Creating a Project¶
Within an Organization, Projects logically group servers, storage, and networking infrastructure. Many Projects can live inside the same Organization, and all of a Projects usage, monthly charges, and one-time charges roll up into the Organization's billing account.
If you signed up for an Equinix Metal account and created an organization, your first project is automatically created for you from the Project Settings page. If you created an account after being invited to an existing organization that has no projects, you are taken to the Organization’s Projects tab. If you created an account after being invited to an existing organization that has projects, you are taken to the Organization’s Manage Servers page for the project.
Owners and Admins of an Organization can create new Projects. To create a Project, do the following:
If you are currently working in a Project, select Manage All Projects from the Project drop-down menu to navigate to your Organization's Project tab.
From your Organization's Project tab, click Add New.
In the Project Name field, enter a name for your project.
Click Let's go. A pop-up notification message displays informing you that the project is created successfully. You can view the project from the Projects tab.
You can create a new Project with the metal project create
command. Specify the name of the new project using the --name
flag. Optionally, you can also specify which organization to create the project in using the --organization-id
flag.
metal project create --name <string> --organization-id <org_UUID>
You can create a new Project by sending a POST
request to the /projects
endpoint.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/" \
-d '{
"customdata": { },
"name": "string",
"organization_id": "<uuid>",
"payment_method_id": "<uuid>"
}'
"name"
is the only required field in the body of the request.
Note: Starter accounts will not have to option to create more than one project. If you need to create multiple projects, contact support at https://console.equinix.com/support or email at support@equinixmetal.com.
Users and Projects¶
From your Organizations page, click the Teams tab to manage which users can access projects.Users who are members of your Organization, and users who have the Collaborator or Limited Collaborator roles can be assigned access to projects on a project-by-project basis. Collaborators on a Project are permitted to access, provision, and manage its servers and other infrastructure. For general information on Organizations and Roles, refer to the Organizations page.
Inviting a User to a Project¶
You invite a user to become a part of your project when you add them to your organization.
If you invite someone as an Admin, they will be able to access all the Projects in your Organization.
If you invite someone as a Collaborator or Limited Collaborator, you can grant access on a Project-by-Project basis.
If you invite someone as a Billing user, they will not be able to access individual Projects at all.
You can also invite a user to a project through the API, by sending a POST
request to the /organizations/{id}/invitations
endpoint.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/organizations/{id}/invitations" \
-d '{
"invitee": "<valid_email_address>",
"message": "<string>",
"organization_id": "<uuid>",
"roles": [
"<string>"
],
"projects_ids": [
"<uuid>"
]
}'
Body Parameters:
"invitee"
(required) - An email address for the user you are sending an invite to."message"
(optional) - Include a message in the email invitation."roles"
- An array containing the role you would like to assign to your invitee. Options are"admin"
,"collaborator"
,"limited_collaborator"
or"billing"
. If you invite someone as an"admin"
, they will be able to access all the Projects in your Organization. If you invite someone as a"collaborator"
or"limited_collaborator"
, you can grant access on a Project-by-Project basis. If you invite someone as a"billing"
user, they will not be able to access individual Projects."projects_ids"
- An array of Project IDs to assign access to Projects on a project-by-project basis for collaborators and limited collaborators.