diff --git a/content/includes/admin-company-overview.md b/content/includes/admin-company-overview.md deleted file mode 100644 index 9595e947572d..000000000000 --- a/content/includes/admin-company-overview.md +++ /dev/null @@ -1,22 +0,0 @@ -A company provides a single point of visibility across multiple organizations. This view simplifies the management of Docker organizations and settings. Organization owners with a Docker Business subscription can create a company and then manage it through the [Docker Admin Console](https://app.docker.com/admin). - -The following diagram depicts the setup of a company and how it relates to associated organizations. - -![company-hierarchy](/admin/images/docker-admin-structure.webp) - -## Key features - -With a company, administrators can: - -- View and manage all nested organizations and configure settings centrally -- Carefully control access to the company and company settings -- Have up to ten unique users assigned the company owner role -- Configure SSO and SCIM for all nested organizations -- Enforce SSO for all users in the company - -## Prerequisites - -Before you create a company, verify the following: - -- Any organizations you want to add to a company have a Docker Business subscription -- You're an organization owner for your organization and any additional organizations you want to add diff --git a/content/manuals/admin/company/_index.md b/content/manuals/admin/company/_index.md index 6a21abaf011d..fb6f8ea723f8 100644 --- a/content/manuals/admin/company/_index.md +++ b/content/manuals/admin/company/_index.md @@ -1,8 +1,8 @@ --- -title: Company administration +title: Company administration overview weight: 20 description: Learn how to manage multiple organizations using companies, including managing users, owners, and security. -keywords: company, multiple organizations, manage companies +keywords: company, multiple organizations, manage companies, admin console, Docker Business settings grid: - title: Create a company description: Get started by learning how to create a company. @@ -13,15 +13,15 @@ grid: company. icon: store link: /admin/company/organizations/ -- title: Manage users - description: Explore how to manage users in all organizations. - icon: group_add - link: /admin/company/users/ - title: Manage company owners description: Find out more about company owners and how to manage them. icon: supervised_user_circle link: /admin/company/owners/ -- title: Configure Single Sign-On +- title: Manage users + description: Explore how to manage users in all organizations. + icon: group_add + link: /admin/company/users/ +- title: Configure single sign-on description: Discover how to configure SSO for your entire company. icon: key link: /security/for-admins/single-sign-on/ @@ -31,11 +31,11 @@ grid: icon: checklist link: /security/for-admins/provisioning/scim/ - title: Domain management - description: Add and verify your domains. + description: Add and verify your company's domains. icon: domain_verification link: /security/for-admins/domain-management/ - title: FAQs - description: Explore common company FAQs. + description: Explore frequently asked questions about companies. link: /faq/admin/company-faqs/ icon: help aliases: @@ -44,8 +44,30 @@ aliases: {{< summary-bar feature_name="Company" >}} -{{% include "admin-company-overview.md" %}} +A company provides a single point of visibility across multiple organizations, +simplifying organization and settings management. + +Organization owners with a Docker Business subscription can create a company +and manage it through the [Docker Admin Console](https://app.docker.com/admin). + +The following diagram shows how a company relates to its associated +organizations. + +![Diagram showing how companies relate to Docker organizations](/admin/images/docker-admin-structure.webp) + +## Key features + +With a company, administrators can: + +- View and manage all nested organizations +- Configure company and organization settings centrally +- Control access to the company +- Have up to ten unique users assigned to the company owner role +- Configure SSO and SCIM for all nested organizations +- Enforce SSO for all users in the company + +## Create and manage your company -Learn how to administer a company in the following sections. +Learn how to create and manage a company in the following sections. {{< grid >}} diff --git a/content/manuals/admin/company/new-company.md b/content/manuals/admin/company/new-company.md index 7ef1e3eb4332..376a1989c448 100644 --- a/content/manuals/admin/company/new-company.md +++ b/content/manuals/admin/company/new-company.md @@ -1,14 +1,20 @@ --- title: Create a company description: Learn how to create a company to centrally manage multiple organizations. -keywords: company, hub, organization, company owner, Admin Console, company management +keywords: company, hub, organization, company owner, Admin Console, company management, Docker Business, create company, Docker Admin Console aliases: - /docker-hub/new-company/ --- {{< summary-bar feature_name="Company" >}} -You can create a new company in the Docker Admin Console. Before you begin, you must: +Learn how to create a new company in the Docker Admin Console, a centralized +dashboard for managing organizations. + +## Prerequisites + +Before you begin, you must: + - Be the owner of the organization you want to add to your company - Have a Docker Business subscription @@ -24,12 +30,13 @@ organization. > [!TIP] > - > The name for your company can't be the same as an existing user, organization, or company namespace. - -1. Review the company migration details and then select **Create company**. + > The name for your company can't be the same as an existing user, + organization, or company namespace. -For more information on how you can add organizations to your company, see [Add organizations to a company](./organizations.md#add-organizations-to-a-company). +1. Review the migration details and then select **Create company**. +For more information on how you can add organizations to your company, +see [Add organizations to a company](./organizations.md#add-organizations-to-a-company). ## Next steps diff --git a/content/manuals/admin/company/organizations.md b/content/manuals/admin/company/organizations.md index 74fc09649117..19d061259332 100644 --- a/content/manuals/admin/company/organizations.md +++ b/content/manuals/admin/company/organizations.md @@ -1,12 +1,12 @@ --- -description: Learn how to manage organizations in a company. -keywords: company, multiple organizations, manage organizations title: Manage company organizations +description: Learn how to manage organizations in a company. +keywords: company, multiple organizations, manage organizations, Docker Admin Console, organization settings, add organization, company management --- {{< summary-bar feature_name="Company" >}} -You can manage the organizations in a company in the Docker Admin Console. +Learn to manage the organizations in a company using the Docker Admin Console. ## View all organizations @@ -18,17 +18,27 @@ The **Organizations** view displays all organizations under your company. ## Add seats to an organization -When you have a [self-serve](../../subscription/details.md#self-serve) subscription that has no pending subscription changes, you can add seats using the following steps. If you have a sales-assisted subscription, you can contact Docker support or sales to add seats. +If you have a [self-serve](../../subscription/details.md#self-serve) +subscription that has no pending subscription changes, you can add seats using +Docker Home. For more information about adding seats, +see [Manage seats](/manuals/subscription/manage-seats.md#add-seats). -For more information about adding seats, see [Manage seats](/manuals/subscription/manage-seats.md#add-seats). +If you have a sales-assisted subscription, you must contact Docker support or +sales to add seats. ## Add organizations to a company -You must be a company owner to add an organization to a company. You must also be an organization owner of the organization you want to add. There is no limit to the number of organizations you can have under a company layer. All organizations must have a Business subscription. +To add an organization to a company, ensure the following: + +- You are a company owner. +- You are an organization owner of the organization you want to add. +- The organization has a Docker Business subscription. +- There’s no limit to how many organizations can exist under a company. > [!IMPORTANT] > -> Once you add an organization to a company, you can't remove it from the company. +> Once you add an organization to a company, you can't remove it from the +company. 1. Sign in to [Docker Home](https://app.docker.com) and select your company. 1. Select **Admin Console**, then **Organizations**. @@ -42,7 +52,8 @@ You must be a company owner to add an organization to a company. You must also b 1. Select **Admin Console**, then **Organizations**. 1. Select the organization you want to manage. -For more details about managing an organization, see [Organization administration](../organization/_index.md). +For more details about managing an organization, see +[Organization administration](../organization/_index.md). ## More resources diff --git a/content/manuals/admin/company/owners.md b/content/manuals/admin/company/owners.md index f383acf971cf..c3afa9a65108 100644 --- a/content/manuals/admin/company/owners.md +++ b/content/manuals/admin/company/owners.md @@ -1,20 +1,19 @@ --- -description: Learn how to add and remove company owners. -keywords: company, owners title: Manage company owners +description: Learn how to add and remove company owners. +keywords: company, owners, add company owner, remove company owner, company manageemnt, company owner permissions aliases: - /docker-hub/company-owner/ --- {{< summary-bar feature_name="Company" >}} -A company can have multiple owners. Company owners have company-wide -observability and can manage company-wide settings that apply to all associated -organizations. In addition, company owners have the same access as organization -owners for all associated organizations. Unlike organization owners, company -owners don't need to be member of an organization. +A company can have multiple owners. Company owners have visibility across the +entire company and can manage settings that apply to all organizations under +that company. They also have the same access rights as organization owners but +don’t need to be members of any individual organization. -> [!NOTE] +> [!IMPORTANT] > > Company owners do not occupy a seat unless one of the following is true: > diff --git a/content/manuals/admin/company/users.md b/content/manuals/admin/company/users.md index c22339997b2c..d747a8ed235f 100644 --- a/content/manuals/admin/company/users.md +++ b/content/manuals/admin/company/users.md @@ -1,15 +1,145 @@ --- +title: Manage company members description: Learn how to manage company users in the Docker Admin Console. -keywords: company, company users, users, admin, Admin Console -title: Manage company users +keywords: company, company users, users, admin, Admin Console, memeber management, organization management, company management, bulk invite, resend invites --- {{< summary-bar feature_name="Company" >}} -You can manage users at the company-level in the Docker Admin Console. +Company owners can invite new members to an organization via Docker ID, +email address, or in bulk with a CSV file containing email +addresses. -{{% admin-users product="admin" layer="company" %}} +If an invitee does not have a Docker account, they must create an account and +verify their email address before they can accept an invitation to join the +organization. Pending invitations occupy seats for the organization +the user is invited to. + +## Invite members via Docker ID or email address + +Use the following steps to invite members to your organization via Docker ID or +email address. + +1. Sign in to [Docker Home](https://app.docker.com) and select +your company. +1. On the **Organizations** page, select the organization you want +to invite members to. +1. Select **Members**, then **Invite**. +1. Select **Emails or usernames**. +1. Follow the on-screen instructions to invite members. + Invite a maximum of 1000 members and separate multiple entries by comma, + semicolon, or space. + + > [!NOTE] + > + > When you invite members, you assign them a role. + > See [Roles and permissions](/security/for-admins/roles-and-permissions/) + > for details about the access permissions for each role. + + Pending invitations appear on the Members page. The invitees receive an + email with a link to Docker Hub where they can accept or decline the + invitation. + +## Invite members via CSV file + +To invite multiple members to an organization via a CSV file containing email +addresses: + +1. Sign in to [Docker Home](https://app.docker.com) and select +your company. +1. On the **Organizations** page, select the organization you want +to invite members to. +1. Select **Members**, then **Invite**. +1. Select **CSV upload**. +1. Select **Download the template CSV file** to optionally download an example +CSV file. The following is an example of the contents of a valid CSV file. + + ```text + email + docker.user-0@example.com + docker.user-1@example.com + ``` + + CSV file requirements: + + - The file must contain a header row with at least one heading named `email`. + Additional columns are allowed and are ignored in the import. + - The file must contain a maximum of 1000 email addresses (rows). To invite + more than 1000 users, create multiple CSV files and perform all steps in + this task for each file. + +1. Create a new CSV file or export a CSV file from another application. + + - To export a CSV file from another application, see the application’s + documentation. + - To create a new CSV file, open a new file in a text editor, type `email` + on the first line, type the user email addresses one per line on the + following lines, and then save the file with a .csv extension. + +1. Select **Browse files** and then select your CSV file, or drag and drop the +CSV file into the **Select a CSV file to upload** box. You can only select +one CSV file at a time. + + > [!NOTE] + > + > If the amount of email addresses in your CSV file exceeds the number of + available seats in your organization, you cannot continue to invite members. + To invite members, you can purchase more seats, or remove some email + addresses from the CSV file and re-select the new file. To purchase more + seats, see [Add seats to your subscription](/subscription/add-seats/) or + [Contact sales](https://www.docker.com/pricing/contact-sales/). + +1. After the CSV file has been uploaded, select **Review**. + + Valid email addresses and any email addresses that have issues will appear. + Email addresses may have the following issues: + + - Invalid email: The email address is not a valid address. The email address + will be ignored if you send invites. You can correct the email address in + the CSV file and re-import the file. + - Already invited: The user has already been sent an invite email and another + invite email will not be sent. + - Member: The user is already a member of your organization and an invite + email will not be sent. + - Duplicate: The CSV file has multiple occurrences of the same email address. + The user will be sent only one invite email. + +1. Follow the on-screen instructions to invite members. + + > [!NOTE] + > + > When you invite members, you assign them a role. + > See [Roles and permissions](/security/for-admins/roles-and-permissions/) + > for details about the access permissions for each role. + +Pending invitations appear on the Members page. The invitees receive an email +with a link to Docker Hub where they can accept or decline the invitation. + +## Resend invitations to users + +You can resend individual invitations, or bulk invitations from the Admin Console. + +### Resend individual invitations + +1. In [Docker Home](https://app.docker.com/), select your company. +2. Select **Admin Console**, then **Users**. +3. Select the **action menu** next to the invitee and select **Resend**. +4. Select **Invite** to confirm. + +### Bulk resend invitation + +1. In [Docker Home](https://app.docker.com/), select your company. +2. Select **Admin Console**, then **Users**. +3. Use the **checkboxes** next to **Usernames** to bulk select users. +4. Select **Resend invites**. +5. Select **Resend** to confirm. + +## Invite members via API + +You can bulk invite members using the Docker Hub API. For more information, +see the [Bulk create invites](https://docs.docker.com/reference/api/hub/latest/#tag/invites/paths/~1v2~1invites~1bulk/post) API endpoint. ## Manage members on a team -Use Docker Hub to add a member to a team or remove a member from a team. For more details, see [Manage members](../organization/members.md#manage-members-on-a-team). +Use Docker Hub to add a member to a team or remove a member from a team. For +more details, see [Manage members](../organization/members.md#manage-members-on-a-team). diff --git a/content/manuals/admin/organization/members.md b/content/manuals/admin/organization/members.md index 9cf4691553c0..85d497f58a92 100644 --- a/content/manuals/admin/organization/members.md +++ b/content/manuals/admin/organization/members.md @@ -14,14 +14,154 @@ Learn how to manage members for your organization in Docker Hub and the Docker A {{< tabs >}} {{< tab name="Admin Console" >}} -{{% admin-users product="admin" %}} +Owners can invite new members to an organization via Docker ID, email address, or with a CSV file containing email addresses. If an invitee does not have a Docker account, they must create an account and verify their email address before they can accept an invitation to join the organization. When inviting members, their pending invitation occupies a seat. + +### Invite members via Docker ID or email address + +Use the following steps to invite members to your organization via Docker ID or email address. + +1. Sign in to [Docker Home](https://app.docker.com) and select your organization. +1. Select **Members**, then **Invite**. +1. Select **Emails or usernames**. +1. Follow the on-screen instructions to invite members. Invite a maximum of 1000 members and separate multiple entries by comma, semicolon, or space. + +> [!NOTE] +> +> When you invite members, you assign them a role. See [Roles and permissions](/manuals/security/for-admins/roles-and-permissions.md) for +details about the access permissions for each role. + +Pending invitations appear in the table. Invitees receive an email with a link to Docker Hub where they can accept or decline the invitation. + +### Invite members via CSV file + +To invite multiple members to an organization via a CSV file containing email addresses: + +1. Sign in to [Docker Home](https://app.docker.com) and select your organization. +1. Select **Members**, then **Invite**. +1. Select **CSV upload**. +1. Optional. Select **Download the template CSV file** to download an example CSV file. The following is an example of the contents of a valid CSV file. + +```text +email +docker.user-0@example.com +docker.user-1@example.com +``` + +CSV file requirements: + +- The file must contain a header row with at least one heading named email. Additional columns are allowed and are ignored in the import. +- The file must contain a maximum of 1000 email addresses (rows). To invite more than 1000 users, create multiple CSV files and perform all steps in this task for each file. + +1. Create a new CSV file or export a CSV file from another application. + +- To export a CSV file from another application, see the application’s documentation. +- To create a new CSV file, open a new file in a text editor, type email on the first line, type the user email addresses one per line on the following lines, and then save the file with a .csv extension. + +1. Select **Browse files** and then select your CSV file, or drag and drop the CSV file into the **Select a CSV file to upload** box. You can only select one CSV file at a time. + +> [!NOTE] +> +> If the amount of email addresses in your CSV file exceeds the number of available seats in your organization, you cannot continue to invite members. To invite members, you can purchase more seats, or remove some email addresses from the CSV file and re-select the new file. To purchase more seats, see [Add seats](/manuals/subscription/manage-seats.md) to your subscription or [Contact sales](https://www.docker.com/pricing/contact-sales/). + +1. After the CSV file has been uploaded, select **Review**. + +Valid email addresses and any email addresses that have issues appear. Email addresses may have the following issues: + +- Invalid email: The email address is not a valid address. The email address will be ignored if you send invites. You can correct the email address in the CSV file and re-import the file. +- Already invited: The user has already been sent an invite email and another invite email will not be sent. +- Member: The user is already a member of your organization and an invite email will not be sent. +- Duplicate: The CSV file has multiple occurrences of the same email address. The user will be sent only one invite email. + +1. Follow the on-screen instructions to invite members. + +> [!NOTE] +> +> When you invite members, you assign them a role. See [Roles and permissions](/manuals/security/for-admins/roles-and-permissions.md) for +details about the access permissions for each role. + +Pending invitations appear in the table. The invitees receive an email with a link to Docker Hub where they can accept or decline the invitation. + +### Invite members via API + +You can bulk invite members using the Docker Hub API. For more information, see the [Bulk create invites](https://docs.docker.com/reference/api/hub/latest/#tag/invites/paths/~1v2~1invites~1bulk/post) API endpoint. {{< /tab >}} {{< tab name="Docker Hub" >}} {{% include "hub-org-management.md" %}} -{{% admin-users product="hub" %}} +Owners can invite new members to an organization via Docker ID, email address, or with a CSV file containing email addresses. If an invitee does not have a Docker account, they must create an account and verify their email address before they can accept an invitation to join the organization. When inviting members, their pending invitation occupies a seat. + +### Invite members via Docker ID or email address + +Use the following steps to invite members to your organization via Docker ID or email address. + +1. Sign in to [Docker Hub](https://hub.docker.com). +1. Select **My Hub**, your organization, then **Members**. +1. Select **Invite members**. +1. Select **Emails or usernames**. +1. Follow the on-screen instructions to invite members. Invite a maximum of 1000 members and separate multiple entries by comma, semicolon, or space. + +> [!NOTE] +> +> When you invite members, you assign them a role. See [Roles and permissions](/manuals/security/for-admins/roles-and-permissions.md) for +details about the access permissions for each role. + +Pending invitations appear in the table. The invitees receive an email with a link to Docker Hub where they can accept or decline the invitation. + +### Invite members via CSV file + +To invite multiple members to an organization via a CSV file containing email addresses: + +1. Sign in to [Docker Hub](https://hub.docker.com). +1. Select **My Hub**, your organization, then **Members**. +1. Select **Invite members**. +1. Select **CSV upload**. +1. Optional. Select **Download the template CSV file** to download an example CSV file. The following is an example of the contents of a valid CSV file. + +```text +email +docker.user-0@example.com +docker.user-1@example.com +``` + +CSV file requirements: + +- The file must contain a header row with at least one heading named email. Additional columns are allowed and are ignored in the import. +- The file must contain a maximum of 1000 email addresses (rows). To invite more than 1000 users, create multiple CSV files and perform all steps in this task for each file. + +1. Create a new CSV file or export a CSV file from another application. + +- To export a CSV file from another application, see the application’s documentation. +- To create a new CSV file, open a new file in a text editor, type email on the first line, type the user email addresses one per line on the following lines, and then save the file with a .csv extension. + +1. Select **Browse files** and then select your CSV file, or drag and drop the CSV file into the **Select a CSV file to upload** box. You can only select one CSV file at a time. + +> [!NOTE] +> +> If the amount of email addresses in your CSV file exceeds the number of available seats in your organization, you cannot continue to invite members. To invite members, you can purchase more seats, or remove some email addresses from the CSV file and re-select the new file. To purchase more seats, see [Add seats](/manuals/subscription/manage-seats.md) to your subscription or [Contact sales](https://www.docker.com/pricing/contact-sales/). + +1. After the CSV file has been uploaded, select **Review**. + +Valid email addresses and any email addresses that have issues appear. Email addresses may have the following issues: + +- Invalid email: The email address is not a valid address. The email address will be ignored if you send invites. You can correct the email address in the CSV file and re-import the file. +- Already invited: The user has already been sent an invite email and another invite email will not be sent. +- Member: The user is already a member of your organization and an invite email will not be sent. +- Duplicate: The CSV file has multiple occurrences of the same email address. The user will be sent only one invite email. + +1. Follow the on-screen instructions to invite members. + +> [!NOTE] +> +> When you invite members, you assign them a role. See [Roles and permissions](/manuals/security/for-admins/roles-and-permissions.md) for +details about the access permissions for each role. + +Pending invitations appear in the table. The invitees receive an email with a link to Docker Hub where they can accept or decline the invitation. + +### Invite members via API + +You can bulk invite members using the Docker Hub API. For more information, see the [Bulk create invites](https://docs.docker.com/reference/api/hub/latest/#tag/invites/paths/~1v2~1invites~1bulk/post) API endpoint. {{< /tab >}} {{< /tabs >}} @@ -32,7 +172,7 @@ When an invitation is to a user's email address, they receive a link to Docker Hub where they can accept or decline the invitation. To accept an invitation: -1. Navigate to your email inbox and open the Docker email with an invitation to +1. Check your email inbox and open the Docker email with an invitation to join the Docker organization. 1. To open the link to Docker Hub, select the **click here** link. diff --git a/layouts/shortcodes/admin-users.html b/layouts/shortcodes/admin-users.html deleted file mode 100644 index 66d946d3e111..000000000000 --- a/layouts/shortcodes/admin-users.html +++ /dev/null @@ -1,150 +0,0 @@ -{{ $invite_button := "**Invite members**" }} -{{ $export_button := "**Export members**" }} -{{ $member_navigation := "Select **My Hub**, your organization, and then **Members**." }} -{{ $remove_button := "**Remove member**" }} -{{ $product_link := "[Docker Hub](https://hub.docker.com)" }} -{{ $role_mapping_link := "[SCIM for role mapping](/security/for-admins/provisioning/scim/)" }} -{{ $export_fields := `The CSV file for an organization contains the following fields: -* **Name**: The user's name. -* **Username**: The user's Docker ID. -* **Email**: The user's email address. -* **Type**: The type of user. For example, **Invitee** for users who have not accepted the organization's invite, - or **User** for users who are members of the organization. -* **Role**: The user's role in the organization. For example, **Member** or **Owner**. -* **Teams**: The teams where the user is a member. A team is not listed for invitees. -* **Date Joined**: The time and date when the user was invited to the organization.` }} - -{{ if eq (.Get "product") "admin" }} -{{ $invite_button = "**Invite**" }} -{{ $export_button = "the **Action** icon and then select **Export users as CSV**" }} -{{ $member_navigation = "Select **Members**." }} -{{ $remove_button = "**Remove member**" }} -{{ $product_link = "[Docker Home](https://app.docker.com) and select your organization." }} -{{ $role_mapping_link = "[SCIM for role mapping](/security/for-admins/provisioning/scim/)" }} -{{ if eq (.Get "layer") "company" }} -{{ $export_fields = `The CSV file for a company contains the following fields: -* **Name**: The user's name. -* **Username**: The user's Docker ID. -* **Email**: The user's email address. -* **Member of Organizations**: All organizations the user is a member of within a company. -* **Invited to Organizations**: All organizations the user is an invitee of within a company. -* **Account Created**: The time and date when the user account was created.` }} -{{ $member_navigation = "Select your organization from the **Choose profile** page, and then select **Members**." }} -{{ $remove_button = "**Remove user**" }} -{{ $role_mapping_link = "[SCIM for role mapping](/security/for-admins/provisioning/scim/)"}} -{{ end }} -{{ end }} - -Owners can invite new members to an organization via Docker ID, email address, or with a CSV file containing email -addresses. If an invitee does not have a Docker account, they must create an account and verify their email address -before they can accept an invitation to join the organization. When inviting members, their pending invitation occupies -a seat. - -### Invite members via Docker ID or email address - -Use the following steps to invite members to your organization via Docker ID or email address. To invite a large amount -of members to your organization via CSV file, see the next section. - -1. Sign in to {{ $product_link }}. -2. {{ $member_navigation }} -3. Select {{ $invite_button }}. -4. Select **Emails or usernames**. -5. Follow the on-screen instructions to invite members. - Invite a maximum of 1000 members and separate multiple entries by comma, semicolon, or space. - - > [!NOTE] - > - > When you invite members, you assign them a role. - > See [Roles and permissions](/security/for-admins/roles-and-permissions/) - > for details about the access permissions for each role. - - Pending invitations appear in the table. The invitees receive an email with a link to Docker Hub where they can accept - or decline the invitation. - -### Invite members via CSV file - -To invite multiple members to an organization via a CSV file containing email addresses: - -1. Sign in to {{ $product_link }}. -2. {{ $member_navigation }} -3. Select {{ $invite_button }}. -4. Select **CSV upload**. -5. Select **Download the template CSV file** to optionally download an example CSV file. - The following is an example of the contents of a valid CSV file. - - ```text - email - docker.user-0@example.com - docker.user-1@example.com - ``` - - CSV file requirements: - - - The file must contain a header row with at least one heading named `email`. Additional columns are allowed and are - ignored in the import. - - The file must contain a maximum of 1000 email addresses (rows). To invite more than 1000 users, create multiple CSV - files and perform all steps in this task for each file. - -6. Create a new CSV file or export a CSV file from another application. - - - To export a CSV file from another application, see the application’s documentation. - - To create a new CSV file, open a new file in a text editor, type `email` on the first line, type the user email - addresses one per line on the following lines, and then save the file with a .csv extension. - -7. Select **Browse files** and then select your CSV file, or drag and drop the CSV file into the **Select a CSV file to - upload** box. You can only select one CSV file at a time. - - > [!NOTE] - > - > If the amount of email addresses in your CSV file exceeds the number of available seats in your organization, you - > cannot continue to invite members. To invite members, you can purchase more seats, or remove some email addresses from - > the CSV file and re-select the new file. To purchase more seats, see [Add seats to your - > subscription](/subscription/add-seats/) or [Contact sales](https://www.docker.com/pricing/contact-sales/). - -8. After the CSV file has been uploaded, select **Review**. - - Valid email addresses and any email addresses that have issues appear. - Email addresses may have the following issues: - - - Invalid email: The email address is not a valid address. - The email address will be ignored if you send invites. - You can correct the email address in the CSV file and re-import the file. - - Already invited: The user has already been sent an invite email and another invite email will not be sent. - - Member: The user is already a member of your organization and an invite email will not be sent. - - Duplicate: The CSV file has multiple occurrences of the same email address. - The user will be sent only one invite email. - -9. Follow the on-screen instructions to invite members. - - > [!NOTE] - > - > When you invite members, you assign them a role. - > See [Roles and permissions](/security/for-admins/roles-and-permissions/) - > for details about the access permissions for each role. - -Pending invitations appear in the table. The invitees receive an email with a link to Docker Hub where they can accept -or decline the invitation. - -### Resend invitations to users - -You can send individual invitations, or bulk invitations from the Admin Console. - -To resend an individual invitation: - -1. In [Docker Home](https://app.docker.com/), select your company. -2. Select **Admin Console**, then **Users**. -3. Select the **action menu** next to the invitee and select **Resend**. -4. Select **Invite** to confirm. - -To bulk resend invitations: - -1. In [Docker Home](https://app.docker.com/), select your company. -2. Select **Admin Console**, then **Users**. -3. Use the **checkboxes** next to **Usernames** to bulk select users. -4. Select **Resend invites**. -5. Select **Resend** to confirm. - -### Invite members via API - -You can bulk invite members using the Docker Hub API. For more information, see -the [Bulk create invites](https://docs.docker.com/reference/api/hub/latest/#tag/invites/paths/~1v2~1invites~1bulk/post) API endpoint. \ No newline at end of file