Repository: scaleway/scaleway-cli
Pull request #3440 (2023-10-17 16:25:35)

feat(mnq): enable v1beta1 per default and rename alpha
### Community Note

* Please vote on this pull request by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to the original pull request comment to help the community and maintainers prioritize this request.
* Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

<!--- Thank you for keeping this note for the community --->

<!--- If your PR fully resolves and should automatically close the linked issue, use Closes. Otherwise, use Relates --->
Relates OR Closes #0000

Release note for [CHANGELOG](https://github.com/scaleway/scaleway-cli/blob/master/CHANGELOG.md):
<!--
If the change is not user facing, just write "NONE" in the release-note block below.
-->

```release-note

```



Patch:
diff --git a/docs/commands/mnq.md b/docs/commands/mnq.md
index 62c84223..bc8e5ef3 100644
--- a/docs/commands/mnq.md
+++ b/docs/commands/mnq.md
@@ -1,34 +1,50 @@
 <!-- DO NOT EDIT: this file is automatically generated using scw-doc-gen -->
 # Documentation for `scw mnq`
-Messaging and Queuing API.
+Messaging and Queuing NATS API.
   
-- [MnQ Credentials commands](#mnq-credentials-commands)
-  - [Create credentials](#create-credentials)
-  - [Delete credentials](#delete-credentials)
-  - [Get credentials](#get-credentials)
-  - [List credentials](#list-credentials)
-  - [Update credentials](#update-credentials)
-- [MnQ Namespace commands](#mnq-namespace-commands)
-  - [Create a namespace](#create-a-namespace)
-  - [Delete a namespace](#delete-a-namespace)
-  - [Get a namespace](#get-a-namespace)
-  - [List namespaces](#list-namespaces)
-  - [Update the name of a namespace](#update-the-name-of-a-namespace)
+- [MnQ NATS commands](#mnq-nats-commands)
+  - [Create a NATS account](#create-a-nats-account)
+  - [Create NATS credentials](#create-nats-credentials)
+  - [Delete a NATS account](#delete-a-nats-account)
+  - [Delete NATS credentials](#delete-nats-credentials)
+  - [Get a NATS account](#get-a-nats-account)
+  - [Get NATS credentials](#get-nats-credentials)
+  - [List NATS accounts](#list-nats-accounts)
+  - [List NATS credentials](#list-nats-credentials)
+  - [Update the name of a NATS account](#update-the-name-of-a-nats-account)
+- [MnQ SNS commands](#mnq-sns-commands)
+  - [Activate SNS](#activate-sns)
+  - [Create SNS credentials](#create-sns-credentials)
+  - [Deactivate SNS](#deactivate-sns)
+  - [Delete SNS credentials](#delete-sns-credentials)
+  - [Get SNS credentials](#get-sns-credentials)
+  - [Get SNS info](#get-sns-info)
+  - [List SNS credentials](#list-sns-credentials)
+  - [Update SNS credentials](#update-sns-credentials)
+- [MnQ SQS commands](#mnq-sqs-commands)
+  - [Activate SQS](#activate-sqs)
+  - [Create SQS credentials](#create-sqs-credentials)
+  - [Deactivate SQS](#deactivate-sqs)
+  - [Delete SQS credentials](#delete-sqs-credentials)
+  - [Get SQS credentials](#get-sqs-credentials)
+  - [Get SQS info](#get-sqs-info)
+  - [List SQS credentials](#list-sqs-credentials)
+  - [Update SQS credentials](#update-sqs-credentials)
 
   
-## MnQ Credentials commands
+## MnQ NATS commands
 
-MnQ Credentials commands.
+MnQ NATS commands.
 
 
-### Create credentials
+### Create a NATS account
 
-Create a set of credentials for a Messaging and Queuing namespace, specified by its namespace ID. If creating credentials for a NATS namespace, the `permissions` object must not be included in the request. If creating credentials for an SQS/SNS namespace, the `permissions` object is required, with all three of its child attributes.
+Create a NATS account associated with a Project.
 
 **Usage:**
 
 ```
-scw mnq credential create [arg=value ...]
+scw mnq nats create-account [arg=value ...]
 ```
 
 
@@ -36,23 +52,253 @@ scw mnq credential create [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| namespace-id | Required | Namespace containing the credentials |
+| name | Default: `<generated>` | NATS account name |
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Create NATS credentials
+
+Create a set of credentials for a NATS account, specified by its NATS account ID.
+
+**Usage:**
+
+```
+scw mnq nats create-credentials [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| nats-account-id | Required | NATS account containing the credentials |
+| name | Default: `<generated>` | Name of the credentials |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Delete a NATS account
+
+Delete a NATS account, specified by its NATS account ID. Note that deleting a NATS account is irreversible, and any credentials, streams, consumer and stored messages belonging to this NATS account will also be deleted.
+
+**Usage:**
+
+```
+scw mnq nats delete-account <nats-account-id ...> [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| nats-account-id | Required | ID of the NATS account to delete |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Delete NATS credentials
+
+Delete a set of credentials, specified by their credentials ID. Deleting credentials is irreversible and cannot be undone. The credentials can no longer be used to access the NATS account, and active connections using this credentials will be closed.
+
+**Usage:**
+
+```
+scw mnq nats delete-credentials <nats-credentials-id ...> [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| nats-credentials-id | Required | ID of the credentials to delete |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Get a NATS account
+
+Retrieve information about an existing NATS account identified by its NATS account ID. Its full details, including name and endpoint, are returned in the response.
+
+**Usage:**
+
+```
+scw mnq nats get-account <nats-account-id ...> [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| nats-account-id | Required | ID of the NATS account to get |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Get NATS credentials
+
+Retrieve an existing set of credentials, identified by the `nats_credentials_id`. The credentials themselves are NOT returned, only their metadata (NATS account ID, credentials name, etc), are returned in the response.
+
+**Usage:**
+
+```
+scw mnq nats get-credentials <nats-credentials-id ...> [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| nats-credentials-id | Required | ID of the credentials to get |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### List NATS accounts
+
+List all NATS accounts in the specified region, for a Scaleway Organization or Project. By default, the NATS accounts returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
+
+**Usage:**
+
+```
+scw mnq nats list-accounts [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Include only NATS accounts in this Project |
+| order-by | One of: `created_at_asc`, `created_at_desc`, `updated_at_asc`, `updated_at_desc`, `name_asc`, `name_desc` | Order in which to return results |
+| region | Default: `fr-par`<br />One of: `fr-par`, `all` | Region to target. If none is passed will use default region from the config |
+
+
+
+### List NATS credentials
+
+List existing credentials in the specified NATS account. The response contains only the metadata for the credentials, not the credentials themselves, which are only returned after a **Create Credentials** call.
+
+**Usage:**
+
+```
+scw mnq nats list-credentials [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| nats-account-id | Required | Include only credentials for this NATS account |
+| order-by | One of: `created_at_asc`, `created_at_desc`, `updated_at_asc`, `updated_at_desc`, `name_asc`, `name_desc` | Order in which to return results |
+| region | Default: `fr-par`<br />One of: `fr-par`, `all` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Update the name of a NATS account
+
+Update the name of a NATS account, specified by its NATS account ID.
+
+**Usage:**
+
+```
+scw mnq nats update-account <nats-account-id ...> [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| nats-account-id | Required | ID of the NATS account to update |
+| name |  | NATS account name |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+## MnQ SNS commands
+
+MnQ SNS commands.
+
+
+### Activate SNS
+
+Activate SNS for the specified Project ID. SNS must be activated before any usage. Activating SNS does not trigger any billing, and you can deactivate at any time.
+
+**Usage:**
+
+```
+scw mnq sns activate [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Create SNS credentials
+
+Create a set of credentials for SNS, specified by a Project ID. Credentials give the bearer access to topics, and the level of permissions can be defined granularly.
+
+**Usage:**
+
+```
+scw mnq sns create-credentials [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
 | name | Default: `<generated>` | Name of the credentials |
-| permissions.can-publish |  | Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues or publish to SNS topics) |
-| permissions.can-receive |  | Defines whether the credentials bearer can receive messages from the service |
-| permissions.can-manage |  | Defines whether the credentials bearer can manage the associated resources (SQS queues or SNS topics or subscriptions) |
+| permissions.can-publish |  | Defines whether the credentials bearer can publish messages to the service (publish to SNS topics) |
+| permissions.can-receive |  | Defines whether the credentials bearer can receive messages from the service (configure subscriptions) |
+| permissions.can-manage |  | Defines whether the credentials bearer can manage the associated SNS topics or subscriptions |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Deactivate SNS
+
+Deactivate SNS for the specified Project ID.You must delete all topics and credentials before this call or you need to set the force_delete parameter.
+
+**Usage:**
+
+```
+scw mnq sns deactivate [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
 
-### Delete credentials
+### Delete SNS credentials
 
-Delete a set of credentials, specified by their credential ID. Deleting credentials is irreversible and cannot be undone. The credentials can no longer be used to access the namespace.
+Delete a set of SNS credentials, specified by their credentials ID. Deleting credentials is irreversible and cannot be undone. The credentials can then no longer be used to access SNS.
 
 **Usage:**
 
 ```
-scw mnq credential delete <credential-id ...> [arg=value ...]
+scw mnq sns delete-credentials <sns-credentials-id ...> [arg=value ...]
 ```
 
 
@@ -60,19 +306,19 @@ scw mnq credential delete <credential-id ...> [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| credential-id | Required | ID of the credentials to delete |
+| sns-credentials-id | Required | ID of the credentials to delete |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
 
-### Get credentials
+### Get SNS credentials
 
-Retrieve an existing set of credentials, identified by the `credential_id`. The credentials themselves, as well as their metadata (protocol, namespace ID etc), are returned in the response.
+Retrieve an existing set of credentials, identified by the `credentials_id`. The credentials themselves, as well as their metadata (name, project ID etc), are returned in the response.
 
 **Usage:**
 
 ```
-scw mnq credential get <credential-id ...> [arg=value ...]
+scw mnq sns get-credentials <sns-credentials-id ...> [arg=value ...]
 ```
 
 
@@ -80,19 +326,19 @@ scw mnq credential get <credential-id ...> [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| credential-id | Required | ID of the credentials to get |
+| sns-credentials-id | Required | ID of the SNS credentials to get |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
 
-### List credentials
+### Get SNS info
 
-List existing credentials in the specified region. The response contains only the metadata for the credentials, not the credentials themselves (for this, use **Get Credentials**).
+Retrieve the SNS information of the specified Project ID. Informations include the activation status and the SNS API endpoint URL.
 
 **Usage:**
 
 ```
-scw mnq credential list [arg=value ...]
+scw mnq sns get-info [arg=value ...]
 ```
 
 
@@ -100,20 +346,40 @@ scw mnq credential list [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| namespace-id |  | Namespace containing the credentials |
-| order-by | One of: `id_asc`, `id_desc`, `name_asc`, `name_desc` | Order in which to return results |
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### List SNS credentials
+
+List existing SNS credentials in the specified region. The response contains only the metadata for the credentials, not the credentials themselves.
+
+**Usage:**
+
+```
+scw mnq sns list-credentials [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Include only SNS credentials in this Project |
+| order-by | One of: `created_at_asc`, `created_at_desc`, `updated_at_asc`, `updated_at_desc`, `name_asc`, `name_desc` | Order in which to return results |
 | region | Default: `fr-par`<br />One of: `fr-par`, `all` | Region to target. If none is passed will use default region from the config |
 
 
 
-### Update credentials
+### Update SNS credentials
 
-Update a set of credentials. You can update the credentials' name, or (in the case of SQS/SNS credentials only) their permissions. To update the name of NATS credentials, do not include the `permissions` object in your request.
+Update a set of SNS credentials. You can update the credentials' name, or their permissions.
 
 **Usage:**
 
 ```
-scw mnq credential update <credential-id ...> [arg=value ...]
+scw mnq sns update-credentials <sns-credentials-id ...> [arg=value ...]
 ```
 
 
@@ -121,28 +387,48 @@ scw mnq credential update <credential-id ...> [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| credential-id | Required | ID of the credentials to update |
+| sns-credentials-id | Required | ID of the SNS credentials to update |
 | name |  | Name of the credentials |
-| permissions.can-publish |  | Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues or publish to SNS topics) |
-| permissions.can-receive |  | Defines whether the credentials bearer can receive messages from the service |
-| permissions.can-manage |  | Defines whether the credentials bearer can manage the associated resources (SQS queues or SNS topics or subscriptions) |
+| permissions.can-publish |  | Defines whether the credentials bearer can publish messages to the service (publish to SNS topics) |
+| permissions.can-receive |  | Defines whether the credentials bearer can receive messages from the service (configure subscriptions) |
+| permissions.can-manage |  | Defines whether the credentials bearer can manage the associated SNS topics or subscriptions |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
 
-## MnQ Namespace commands
+## MnQ SQS commands
+
+MnQ SQS commands.
+
+
+### Activate SQS
+
+Activate SQS for the specified Project ID. SQS must be activated before any usage such as creating credentials and queues. Activating SQS does not trigger any billing, and you can deactivate at any time.
+
+**Usage:**
+
+```
+scw mnq sqs activate [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
-MnQ Namespace commands.
 
 
-### Create a namespace
+### Create SQS credentials
 
-Create a Messaging and Queuing namespace, set to the desired protocol.
+Create a set of credentials for SQS, specified by a Project ID. Credentials give the bearer access to queues, and the level of permissions can be defined granularly.
 
 **Usage:**
 
 ```
-scw mnq namespace create [arg=value ...]
+scw mnq sqs create-credentials [arg=value ...]
 ```
 
 
@@ -150,21 +436,23 @@ scw mnq namespace create [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| name | Default: `<generated>` | Namespace name |
-| protocol | Required<br />One of: `unknown`, `nats`, `sqs_sns` | Namespace protocol. You must specify a valid protocol (and not `unknown`) to avoid an error. |
 | project-id |  | Project ID to use. If none is passed the default project ID will be used |
+| name | Default: `<generated>` | Name of the credentials |
+| permissions.can-publish |  | Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues) |
+| permissions.can-receive |  | Defines whether the credentials bearer can receive messages from SQS queues |
+| permissions.can-manage |  | Defines whether the credentials bearer can manage the associated SQS queues |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
 
-### Delete a namespace
+### Deactivate SQS
 
-Delete a Messaging and Queuing namespace, specified by its namespace ID. Note that deleting a namespace is irreversible, and any URLs, credentials and queued messages belonging to this namespace will also be deleted.
+Deactivate SQS for the specified Project ID. You must delete all queues and credentials before this call or you need to set the force_delete parameter.
 
 **Usage:**
 
 ```
-scw mnq namespace delete <namespace-id ...> [arg=value ...]
+scw mnq sqs deactivate [arg=value ...]
 ```
 
 
@@ -172,19 +460,19 @@ scw mnq namespace delete <namespace-id ...> [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| namespace-id | Required | ID of the namespace to delete |
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
 
-### Get a namespace
+### Delete SQS credentials
 
-Retrieve information about an existing Messaging and Queuing namespace, identified by its namespace ID. Its full details, including name, endpoint and protocol, are returned in the response.
+Delete a set of SQS credentials, specified by their credentials ID. Deleting credentials is irreversible and cannot be undone. The credentials can then no longer be used to access SQS.
 
 **Usage:**
 
 ```
-scw mnq namespace get <namespace-id ...> [arg=value ...]
+scw mnq sqs delete-credentials <sqs-credentials-id ...> [arg=value ...]
 ```
 
 
@@ -192,19 +480,19 @@ scw mnq namespace get <namespace-id ...> [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| namespace-id | Required | ID of the Namespace to get |
+| sqs-credentials-id | Required | ID of the credentials to delete |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
 
-### List namespaces
+### Get SQS credentials
 
-List all Messaging and Queuing namespaces in the specified region, for a Scaleway Organization or Project. By default, the namespaces returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
+Retrieve an existing set of credentials, identified by the `credentials_id`. The credentials themselves, as well as their metadata (name, project ID etc), are returned in the response.
 
 **Usage:**
 
 ```
-scw mnq namespace list [arg=value ...]
+scw mnq sqs get-credentials <sqs-credentials-id ...> [arg=value ...]
 ```
 
 
@@ -212,21 +500,60 @@ scw mnq namespace list [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| project-id |  | Include only namespaces in this Project |
-| order-by | One of: `created_at_asc`, `created_at_desc`, `updated_at_asc`, `updated_at_desc`, `id_asc`, `id_desc`, `name_asc`, `name_desc`, `project_id_asc`, `project_id_desc` | Order in which to return results |
-| organization-id |  | Include only namespaces in this Organization |
+| sqs-credentials-id | Required | ID of the SQS credentials to get |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### Get SQS info
+
+Retrieve the SQS information of the specified Project ID. Informations include the activation status and the SQS API endpoint URL.
+
+**Usage:**
+
+```
+scw mnq sqs get-info [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Project ID to use. If none is passed the default project ID will be used |
+| region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
+
+
+
+### List SQS credentials
+
+List existing SQS credentials in the specified region. The response contains only the metadata for the credentials, not the credentials themselves.
+
+**Usage:**
+
+```
+scw mnq sqs list-credentials [arg=value ...]
+```
+
+
+**Args:**
+
+| Name |   | Description |
+|------|---|-------------|
+| project-id |  | Include only SQS credentials in this Project |
+| order-by | One of: `created_at_asc`, `created_at_desc`, `updated_at_asc`, `updated_at_desc`, `name_asc`, `name_desc` | Order in which to return results |
 | region | Default: `fr-par`<br />One of: `fr-par`, `all` | Region to target. If none is passed will use default region from the config |
 
 
 
-### Update the name of a namespace
+### Update SQS credentials
 
-Update the name of a Messaging and Queuing namespace, specified by its namespace ID.
+Update a set of SQS credentials. You can update the credentials' name, or their permissions.
 
 **Usage:**
 
 ```
-scw mnq namespace update <namespace-id ...> [arg=value ...]
+scw mnq sqs update-credentials <sqs-credentials-id ...> [arg=value ...]
 ```
 
 
@@ -234,8 +561,11 @@ scw mnq namespace update <namespace-id ...> [arg=value ...]
 
 | Name |   | Description |
 |------|---|-------------|
-| namespace-id | Required | ID of the Namespace to update |
-| name |  | Namespace name |
+| sqs-credentials-id | Required | ID of the SQS credentials to update |
+| name |  | Name of the credentials |
+| permissions.can-publish |  | Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues) |
+| permissions.can-receive |  | Defines whether the credentials bearer can receive messages from SQS queues |
+| permissions.can-manage |  | Defines whether the credentials bearer can manage the associated SQS queues |
 | region | Default: `fr-par`<br />One of: `fr-par` | Region to target. If none is passed will use default region from the config |
 
 
diff --git a/internal/namespaces/get_commands.go b/internal/namespaces/get_commands.go
index f76d4780..1a34f7fe 100644
--- a/internal/namespaces/get_commands.go
+++ b/internal/namespaces/get_commands.go
@@ -1,8 +1,6 @@
 package namespaces
 
 import (
-	"os"
-
 	"github.com/scaleway/scaleway-cli/v2/internal/core"
 	accountv3 "github.com/scaleway/scaleway-cli/v2/internal/namespaces/account/v3"
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/alias"
@@ -28,8 +26,7 @@ import (
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/k8s/v1"
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/lb/v1"
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/marketplace/v2"
-	mnq "github.com/scaleway/scaleway-cli/v2/internal/namespaces/mnq/v1alpha1"
-	mnqBeta "github.com/scaleway/scaleway-cli/v2/internal/namespaces/mnq/v1beta1"
+	mnq "github.com/scaleway/scaleway-cli/v2/internal/namespaces/mnq/v1beta1"
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/object/v1"
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/rdb/v1"
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/redis/v1"
@@ -41,11 +38,10 @@ import (
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/vpc/v2"
 	"github.com/scaleway/scaleway-cli/v2/internal/namespaces/vpcgw/v1"
 	webhosting "github.com/scaleway/scaleway-cli/v2/internal/namespaces/webhosting/v1alpha1"
-	"github.com/scaleway/scaleway-sdk-go/scw"
 )
 
 // Enable beta in the code when products are in beta
-var beta = os.Getenv(scw.ScwEnableBeta) == "true"
+//var beta = os.Getenv(scw.ScwEnableBeta) == "true"
 
 // GetCommands returns a list of all commands in the CLI.
 // It is used by both scw and scw-qa.
@@ -89,13 +85,10 @@ func GetCommands() *core.Commands {
 		billing.GetCommands(),
 		ipfs.GetCommands(),
 		documentdb.GetCommands(),
+		mnq.GetCommands(),
 	)
 
-	if beta {
-		commands.Merge(mnqBeta.GetCommands())
-	} else {
-		commands.Merge(mnq.GetCommands())
-	}
+	//if beta {}
 
 	return commands
 }
diff --git a/internal/namespaces/init/init.go b/internal/namespaces/init/init.go
index 12c5edec..92bf9bf6 100644
--- a/internal/namespaces/init/init.go
+++ b/internal/namespaces/init/init.go
@@ -136,7 +136,7 @@ Default path for configuration file is based on the following priority order:
 			// Show logo banner, or simple welcome message
 			printScalewayBanner()
 
-			config, err := loadConfigOrEmpty(configPath)
+			config, err := loadConfigOrEmpty(configPath, profileName)
 			if err != nil {
 				return nil, err
 			}
@@ -280,12 +280,16 @@ func printScalewayBanner() {
 
 // loadConfigOrEmpty checks if a config exists
 // Creates a new one if it does not
-func loadConfigOrEmpty(configPath string) (*scw.Config, error) {
+// defaultProfile will be the activated one if different that default
+func loadConfigOrEmpty(configPath string, activeProfile string) (*scw.Config, error) {
 	config, err := scw.LoadConfigFromPath(configPath)
 	if err != nil {
 		_, ok := err.(*scw.ConfigFileNotFoundError)
 		if ok {
 			config = &scw.Config{}
+			if activeProfile != scw.DefaultProfileName {
+				config.ActiveProfile = &activeProfile
+			}
 			interactive.Printf("Creating new config\n")
 		} else {
 			return nil, err
diff --git a/internal/namespaces/mnq/v1alpha1/custom.go b/internal/namespaces/mnq/v1alpha1/custom.go
index eab56253..ffc70139 100644
--- a/internal/namespaces/mnq/v1alpha1/custom.go
+++ b/internal/namespaces/mnq/v1alpha1/custom.go
@@ -10,5 +10,7 @@ func GetCommands() *core.Commands {
 	cmds.MustFind("mnq", "credential", "create").Override(credentialCreateBuilder)
 	cmds.MustFind("mnq", "credential", "get").Override(credentialGetBuilder)
 
+	cmds.MustFind("mnq").Short = "Messaging and Queuing Alpha APIs"
+
 	return cmds
 }


Test patch:
diff --git a/cmd/scw/testdata/test-all-usage-mnq-credential-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-credential-usage.golden
deleted file mode 100644
index 2f7ad931..00000000
--- a/cmd/scw/testdata/test-all-usage-mnq-credential-usage.golden
+++ /dev/null
@@ -1,24 +0,0 @@
-🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
-🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-MnQ Credentials commands.
-
-USAGE:
-  scw mnq credential <command>
-
-AVAILABLE COMMANDS:
-  create      Create credentials
-  delete      Delete credentials
-  get         Get credentials
-  list        List credentials
-  update      Update credentials
-
-FLAGS:
-  -h, --help   help for credential
-
-GLOBAL FLAGS:
-  -c, --config string    The path to the config file
-  -D, --debug            Enable debug mode
-  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
-  -p, --profile string   The config profile to use
-
-Use "scw mnq credential [command] --help" for more information about a command.
diff --git a/cmd/scw/testdata/test-all-usage-mnq-namespace-list-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-namespace-list-usage.golden
deleted file mode 100644
index c7d79919..00000000
--- a/cmd/scw/testdata/test-all-usage-mnq-namespace-list-usage.golden
+++ /dev/null
@@ -1,21 +0,0 @@
-🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
-🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-List all Messaging and Queuing namespaces in the specified region, for a Scaleway Organization or Project. By default, the namespaces returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
-
-USAGE:
-  scw mnq namespace list [arg=value ...]
-
-ARGS:
-  [project-id]        Include only namespaces in this Project
-  [order-by]          Order in which to return results (created_at_asc | created_at_desc | updated_at_asc | updated_at_desc | id_asc | id_desc | name_asc | name_desc | project_id_asc | project_id_desc)
-  [organization-id]   Include only namespaces in this Organization
-  [region=fr-par]     Region to target. If none is passed will use default region from the config (fr-par | all)
-
-FLAGS:
-  -h, --help   help for list
-
-GLOBAL FLAGS:
-  -c, --config string    The path to the config file
-  -D, --debug            Enable debug mode
-  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
-  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-namespace-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-namespace-usage.golden
deleted file mode 100644
index 2f722056..00000000
--- a/cmd/scw/testdata/test-all-usage-mnq-namespace-usage.golden
+++ /dev/null
@@ -1,24 +0,0 @@
-🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
-🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-MnQ Namespace commands.
-
-USAGE:
-  scw mnq namespace <command>
-
-AVAILABLE COMMANDS:
-  create      Create a namespace
-  delete      Delete a namespace
-  get         Get a namespace
-  list        List namespaces
-  update      Update the name of a namespace
-
-FLAGS:
-  -h, --help   help for namespace
-
-GLOBAL FLAGS:
-  -c, --config string    The path to the config file
-  -D, --debug            Enable debug mode
-  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
-  -p, --profile string   The config profile to use
-
-Use "scw mnq namespace [command] --help" for more information about a command.
diff --git a/cmd/scw/testdata/test-all-usage-mnq-namespace-create-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-create-account-usage.golden
similarity index 63%
rename from cmd/scw/testdata/test-all-usage-mnq-namespace-create-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-nats-create-account-usage.golden
index 143f00b5..e1cce104 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-namespace-create-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-create-account-usage.golden
@@ -1,18 +1,17 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Create a Messaging and Queuing namespace, set to the desired protocol.
+Create a NATS account associated with a Project.
 
 USAGE:
-  scw mnq namespace create [arg=value ...]
+  scw mnq nats create-account [arg=value ...]
 
 ARGS:
-  [name=<generated>]   Namespace name
-  protocol             Namespace protocol. You must specify a valid protocol (and not `unknown`) to avoid an error. (unknown | nats | sqs_sns)
+  [name=<generated>]   NATS account name
   [project-id]         Project ID to use. If none is passed the default project ID will be used
   [region=fr-par]      Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for create
+  -h, --help   help for create-account
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-nats-create-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-create-credentials-usage.golden
new file mode 100644
index 00000000..4025c15b
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-create-credentials-usage.golden
@@ -0,0 +1,20 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Create a set of credentials for a NATS account, specified by its NATS account ID.
+
+USAGE:
+  scw mnq nats create-credentials [arg=value ...]
+
+ARGS:
+  nats-account-id      NATS account containing the credentials
+  [name=<generated>]   Name of the credentials
+  [region=fr-par]      Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for create-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-nats-delete-account-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-delete-account-usage.golden
new file mode 100644
index 00000000..3b03e20c
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-delete-account-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Delete a NATS account, specified by its NATS account ID. Note that deleting a NATS account is irreversible, and any credentials, streams, consumer and stored messages belonging to this NATS account will also be deleted.
+
+USAGE:
+  scw mnq nats delete-account <nats-account-id ...> [arg=value ...]
+
+ARGS:
+  nats-account-id   ID of the NATS account to delete
+  [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for delete-account
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-nats-delete-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-delete-credentials-usage.golden
new file mode 100644
index 00000000..8f11962b
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-delete-credentials-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Delete a set of credentials, specified by their credentials ID. Deleting credentials is irreversible and cannot be undone. The credentials can no longer be used to access the NATS account, and active connections using this credentials will be closed.
+
+USAGE:
+  scw mnq nats delete-credentials <nats-credentials-id ...> [arg=value ...]
+
+ARGS:
+  nats-credentials-id   ID of the credentials to delete
+  [region=fr-par]       Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for delete-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-namespace-get-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-get-account-usage.golden
similarity index 59%
rename from cmd/scw/testdata/test-all-usage-mnq-namespace-get-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-nats-get-account-usage.golden
index ac32fb66..411a8583 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-namespace-get-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-get-account-usage.golden
@@ -1,16 +1,16 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Retrieve information about an existing Messaging and Queuing namespace, identified by its namespace ID. Its full details, including name, endpoint and protocol, are returned in the response.
+Retrieve information about an existing NATS account identified by its NATS account ID. Its full details, including name and endpoint, are returned in the response.
 
 USAGE:
-  scw mnq namespace get <namespace-id ...> [arg=value ...]
+  scw mnq nats get-account <nats-account-id ...> [arg=value ...]
 
 ARGS:
-  namespace-id      ID of the Namespace to get
+  nats-account-id   ID of the NATS account to get
   [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for get
+  -h, --help   help for get-account
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-nats-get-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-get-credentials-usage.golden
new file mode 100644
index 00000000..54869a41
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-get-credentials-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Retrieve an existing set of credentials, identified by the `nats_credentials_id`. The credentials themselves are NOT returned, only their metadata (NATS account ID, credentials name, etc), are returned in the response.
+
+USAGE:
+  scw mnq nats get-credentials <nats-credentials-id ...> [arg=value ...]
+
+ARGS:
+  nats-credentials-id   ID of the credentials to get
+  [region=fr-par]       Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for get-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-nats-list-accounts-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-list-accounts-usage.golden
new file mode 100644
index 00000000..cfedfe83
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-list-accounts-usage.golden
@@ -0,0 +1,20 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+List all NATS accounts in the specified region, for a Scaleway Organization or Project. By default, the NATS accounts returned in the list are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
+
+USAGE:
+  scw mnq nats list-accounts [arg=value ...]
+
+ARGS:
+  [project-id]      Include only NATS accounts in this Project
+  [order-by]        Order in which to return results (created_at_asc | created_at_desc | updated_at_asc | updated_at_desc | name_asc | name_desc)
+  [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par | all)
+
+FLAGS:
+  -h, --help   help for list-accounts
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-nats-list-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-list-credentials-usage.golden
new file mode 100644
index 00000000..b8aeed80
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-list-credentials-usage.golden
@@ -0,0 +1,20 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+List existing credentials in the specified NATS account. The response contains only the metadata for the credentials, not the credentials themselves, which are only returned after a **Create Credentials** call.
+
+USAGE:
+  scw mnq nats list-credentials [arg=value ...]
+
+ARGS:
+  nats-account-id   Include only credentials for this NATS account
+  [order-by]        Order in which to return results (created_at_asc | created_at_desc | updated_at_asc | updated_at_desc | name_asc | name_desc)
+  [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par | all)
+
+FLAGS:
+  -h, --help   help for list-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-namespace-update-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-update-account-usage.golden
similarity index 64%
rename from cmd/scw/testdata/test-all-usage-mnq-namespace-update-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-nats-update-account-usage.golden
index 3f8c4133..8fb52392 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-namespace-update-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-update-account-usage.golden
@@ -1,17 +1,17 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Update the name of a Messaging and Queuing namespace, specified by its namespace ID.
+Update the name of a NATS account, specified by its NATS account ID.
 
 USAGE:
-  scw mnq namespace update <namespace-id ...> [arg=value ...]
+  scw mnq nats update-account <nats-account-id ...> [arg=value ...]
 
 ARGS:
-  namespace-id      ID of the Namespace to update
-  [name]            Namespace name
+  nats-account-id   ID of the NATS account to update
+  [name]            NATS account name
   [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for update
+  -h, --help   help for update-account
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-nats-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-nats-usage.golden
new file mode 100644
index 00000000..f0f1cff6
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-nats-usage.golden
@@ -0,0 +1,28 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+MnQ NATS commands.
+
+USAGE:
+  scw mnq nats <command>
+
+AVAILABLE COMMANDS:
+  create-account     Create a NATS account
+  create-credentials Create NATS credentials
+  delete-account     Delete a NATS account
+  delete-credentials Delete NATS credentials
+  get-account        Get a NATS account
+  get-credentials    Get NATS credentials
+  list-accounts      List NATS accounts
+  list-credentials   List NATS credentials
+  update-account     Update the name of a NATS account
+
+FLAGS:
+  -h, --help   help for nats
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
+
+Use "scw mnq nats [command] --help" for more information about a command.
diff --git a/cmd/scw/testdata/test-all-usage-mnq-credential-delete-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-activate-usage.golden
similarity index 59%
rename from cmd/scw/testdata/test-all-usage-mnq-credential-delete-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-sns-activate-usage.golden
index 61490a16..ea92365b 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-credential-delete-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-activate-usage.golden
@@ -1,16 +1,16 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Delete a set of credentials, specified by their credential ID. Deleting credentials is irreversible and cannot be undone. The credentials can no longer be used to access the namespace.
+Activate SNS for the specified Project ID. SNS must be activated before any usage. Activating SNS does not trigger any billing, and you can deactivate at any time.
 
 USAGE:
-  scw mnq credential delete <credential-id ...> [arg=value ...]
+  scw mnq sns activate [arg=value ...]
 
 ARGS:
-  credential-id     ID of the credentials to delete
+  [project-id]      Project ID to use. If none is passed the default project ID will be used
   [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for delete
+  -h, --help   help for activate
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sns-create-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-create-credentials-usage.golden
new file mode 100644
index 00000000..d0226646
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-create-credentials-usage.golden
@@ -0,0 +1,23 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Create a set of credentials for SNS, specified by a Project ID. Credentials give the bearer access to topics, and the level of permissions can be defined granularly.
+
+USAGE:
+  scw mnq sns create-credentials [arg=value ...]
+
+ARGS:
+  [project-id]                Project ID to use. If none is passed the default project ID will be used
+  [name=<generated>]          Name of the credentials
+  [permissions.can-publish]   Defines whether the credentials bearer can publish messages to the service (publish to SNS topics)
+  [permissions.can-receive]   Defines whether the credentials bearer can receive messages from the service (configure subscriptions)
+  [permissions.can-manage]    Defines whether the credentials bearer can manage the associated SNS topics or subscriptions
+  [region=fr-par]             Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for create-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-credential-get-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-deactivate-usage.golden
similarity index 59%
rename from cmd/scw/testdata/test-all-usage-mnq-credential-get-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-sns-deactivate-usage.golden
index 4da82d63..f056e102 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-credential-get-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-deactivate-usage.golden
@@ -1,16 +1,16 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Retrieve an existing set of credentials, identified by the `credential_id`. The credentials themselves, as well as their metadata (protocol, namespace ID etc), are returned in the response.
+Deactivate SNS for the specified Project ID.You must delete all topics and credentials before this call or you need to set the force_delete parameter.
 
 USAGE:
-  scw mnq credential get <credential-id ...> [arg=value ...]
+  scw mnq sns deactivate [arg=value ...]
 
 ARGS:
-  credential-id     ID of the credentials to get
+  [project-id]      Project ID to use. If none is passed the default project ID will be used
   [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for get
+  -h, --help   help for deactivate
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sns-delete-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-delete-credentials-usage.golden
new file mode 100644
index 00000000..abfada5e
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-delete-credentials-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Delete a set of SNS credentials, specified by their credentials ID. Deleting credentials is irreversible and cannot be undone. The credentials can then no longer be used to access SNS.
+
+USAGE:
+  scw mnq sns delete-credentials <sns-credentials-id ...> [arg=value ...]
+
+ARGS:
+  sns-credentials-id   ID of the credentials to delete
+  [region=fr-par]      Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for delete-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sns-get-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-get-credentials-usage.golden
new file mode 100644
index 00000000..77b38f05
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-get-credentials-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Retrieve an existing set of credentials, identified by the `credentials_id`. The credentials themselves, as well as their metadata (name, project ID etc), are returned in the response.
+
+USAGE:
+  scw mnq sns get-credentials <sns-credentials-id ...> [arg=value ...]
+
+ARGS:
+  sns-credentials-id   ID of the SNS credentials to get
+  [region=fr-par]      Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for get-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sns-get-info-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-get-info-usage.golden
new file mode 100644
index 00000000..8da6204b
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-get-info-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Retrieve the SNS information of the specified Project ID. Informations include the activation status and the SNS API endpoint URL.
+
+USAGE:
+  scw mnq sns get-info [arg=value ...]
+
+ARGS:
+  [project-id]      Project ID to use. If none is passed the default project ID will be used
+  [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for get-info
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-credential-list-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-list-credentials-usage.golden
similarity index 52%
rename from cmd/scw/testdata/test-all-usage-mnq-credential-list-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-sns-list-credentials-usage.golden
index e60fa1f4..6808a78e 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-credential-list-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-list-credentials-usage.golden
@@ -1,17 +1,17 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-List existing credentials in the specified region. The response contains only the metadata for the credentials, not the credentials themselves (for this, use **Get Credentials**).
+List existing SNS credentials in the specified region. The response contains only the metadata for the credentials, not the credentials themselves.
 
 USAGE:
-  scw mnq credential list [arg=value ...]
+  scw mnq sns list-credentials [arg=value ...]
 
 ARGS:
-  [namespace-id]    Namespace containing the credentials
-  [order-by]        Order in which to return results (id_asc | id_desc | name_asc | name_desc)
+  [project-id]      Include only SNS credentials in this Project
+  [order-by]        Order in which to return results (created_at_asc | created_at_desc | updated_at_asc | updated_at_desc | name_asc | name_desc)
   [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par | all)
 
 FLAGS:
-  -h, --help   help for list
+  -h, --help   help for list-credentials
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sns-update-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-update-credentials-usage.golden
new file mode 100644
index 00000000..fd8d6fd5
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-update-credentials-usage.golden
@@ -0,0 +1,23 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Update a set of SNS credentials. You can update the credentials' name, or their permissions.
+
+USAGE:
+  scw mnq sns update-credentials <sns-credentials-id ...> [arg=value ...]
+
+ARGS:
+  sns-credentials-id          ID of the SNS credentials to update
+  [name]                      Name of the credentials
+  [permissions.can-publish]   Defines whether the credentials bearer can publish messages to the service (publish to SNS topics)
+  [permissions.can-receive]   Defines whether the credentials bearer can receive messages from the service (configure subscriptions)
+  [permissions.can-manage]    Defines whether the credentials bearer can manage the associated SNS topics or subscriptions
+  [region=fr-par]             Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for update-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sns-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sns-usage.golden
new file mode 100644
index 00000000..c08e220e
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sns-usage.golden
@@ -0,0 +1,27 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+MnQ SNS commands.
+
+USAGE:
+  scw mnq sns <command>
+
+AVAILABLE COMMANDS:
+  activate           Activate SNS
+  create-credentials Create SNS credentials
+  deactivate         Deactivate SNS
+  delete-credentials Delete SNS credentials
+  get-credentials    Get SNS credentials
+  get-info           Get SNS info
+  list-credentials   List SNS credentials
+  update-credentials Update SNS credentials
+
+FLAGS:
+  -h, --help   help for sns
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
+
+Use "scw mnq sns [command] --help" for more information about a command.
diff --git a/cmd/scw/testdata/test-all-usage-mnq-namespace-delete-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-activate-usage.golden
similarity index 56%
rename from cmd/scw/testdata/test-all-usage-mnq-namespace-delete-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-sqs-activate-usage.golden
index 42b694aa..2d6242ad 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-namespace-delete-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-activate-usage.golden
@@ -1,16 +1,16 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Delete a Messaging and Queuing namespace, specified by its namespace ID. Note that deleting a namespace is irreversible, and any URLs, credentials and queued messages belonging to this namespace will also be deleted.
+Activate SQS for the specified Project ID. SQS must be activated before any usage such as creating credentials and queues. Activating SQS does not trigger any billing, and you can deactivate at any time.
 
 USAGE:
-  scw mnq namespace delete <namespace-id ...> [arg=value ...]
+  scw mnq sqs activate [arg=value ...]
 
 ARGS:
-  namespace-id      ID of the namespace to delete
+  [project-id]      Project ID to use. If none is passed the default project ID will be used
   [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for delete
+  -h, --help   help for activate
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-credential-create-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-create-credentials-usage.golden
similarity index 55%
rename from cmd/scw/testdata/test-all-usage-mnq-credential-create-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-sqs-create-credentials-usage.golden
index e2456d77..56d30d9f 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-credential-create-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-create-credentials-usage.golden
@@ -1,20 +1,20 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Create a set of credentials for a Messaging and Queuing namespace, specified by its namespace ID. If creating credentials for a NATS namespace, the `permissions` object must not be included in the request. If creating credentials for an SQS/SNS namespace, the `permissions` object is required, with all three of its child attributes.
+Create a set of credentials for SQS, specified by a Project ID. Credentials give the bearer access to queues, and the level of permissions can be defined granularly.
 
 USAGE:
-  scw mnq credential create [arg=value ...]
+  scw mnq sqs create-credentials [arg=value ...]
 
 ARGS:
-  namespace-id                Namespace containing the credentials
+  [project-id]                Project ID to use. If none is passed the default project ID will be used
   [name=<generated>]          Name of the credentials
-  [permissions.can-publish]   Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues or publish to SNS topics)
-  [permissions.can-receive]   Defines whether the credentials bearer can receive messages from the service
-  [permissions.can-manage]    Defines whether the credentials bearer can manage the associated resources (SQS queues or SNS topics or subscriptions)
+  [permissions.can-publish]   Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues)
+  [permissions.can-receive]   Defines whether the credentials bearer can receive messages from SQS queues
+  [permissions.can-manage]    Defines whether the credentials bearer can manage the associated SQS queues
   [region=fr-par]             Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for create
+  -h, --help   help for create-credentials
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sqs-deactivate-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-deactivate-usage.golden
new file mode 100644
index 00000000..81bcf0b7
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-deactivate-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Deactivate SQS for the specified Project ID. You must delete all queues and credentials before this call or you need to set the force_delete parameter.
+
+USAGE:
+  scw mnq sqs deactivate [arg=value ...]
+
+ARGS:
+  [project-id]      Project ID to use. If none is passed the default project ID will be used
+  [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for deactivate
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sqs-delete-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-delete-credentials-usage.golden
new file mode 100644
index 00000000..5ded6174
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-delete-credentials-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Delete a set of SQS credentials, specified by their credentials ID. Deleting credentials is irreversible and cannot be undone. The credentials can then no longer be used to access SQS.
+
+USAGE:
+  scw mnq sqs delete-credentials <sqs-credentials-id ...> [arg=value ...]
+
+ARGS:
+  sqs-credentials-id   ID of the credentials to delete
+  [region=fr-par]      Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for delete-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sqs-get-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-get-credentials-usage.golden
new file mode 100644
index 00000000..a1b1a8c0
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-get-credentials-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Retrieve an existing set of credentials, identified by the `credentials_id`. The credentials themselves, as well as their metadata (name, project ID etc), are returned in the response.
+
+USAGE:
+  scw mnq sqs get-credentials <sqs-credentials-id ...> [arg=value ...]
+
+ARGS:
+  sqs-credentials-id   ID of the SQS credentials to get
+  [region=fr-par]      Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for get-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sqs-get-info-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-get-info-usage.golden
new file mode 100644
index 00000000..a69ec1c4
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-get-info-usage.golden
@@ -0,0 +1,19 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+Retrieve the SQS information of the specified Project ID. Informations include the activation status and the SQS API endpoint URL.
+
+USAGE:
+  scw mnq sqs get-info [arg=value ...]
+
+ARGS:
+  [project-id]      Project ID to use. If none is passed the default project ID will be used
+  [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par)
+
+FLAGS:
+  -h, --help   help for get-info
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sqs-list-credentials-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-list-credentials-usage.golden
new file mode 100644
index 00000000..f86902d7
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-list-credentials-usage.golden
@@ -0,0 +1,20 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+List existing SQS credentials in the specified region. The response contains only the metadata for the credentials, not the credentials themselves.
+
+USAGE:
+  scw mnq sqs list-credentials [arg=value ...]
+
+ARGS:
+  [project-id]      Include only SQS credentials in this Project
+  [order-by]        Order in which to return results (created_at_asc | created_at_desc | updated_at_asc | updated_at_desc | name_asc | name_desc)
+  [region=fr-par]   Region to target. If none is passed will use default region from the config (fr-par | all)
+
+FLAGS:
+  -h, --help   help for list-credentials
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
diff --git a/cmd/scw/testdata/test-all-usage-mnq-credential-update-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-update-credentials-usage.golden
similarity index 59%
rename from cmd/scw/testdata/test-all-usage-mnq-credential-update-usage.golden
rename to cmd/scw/testdata/test-all-usage-mnq-sqs-update-credentials-usage.golden
index 5686aaab..526d1c64 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-credential-update-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-update-credentials-usage.golden
@@ -1,20 +1,20 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Update a set of credentials. You can update the credentials' name, or (in the case of SQS/SNS credentials only) their permissions. To update the name of NATS credentials, do not include the `permissions` object in your request.
+Update a set of SQS credentials. You can update the credentials' name, or their permissions.
 
 USAGE:
-  scw mnq credential update <credential-id ...> [arg=value ...]
+  scw mnq sqs update-credentials <sqs-credentials-id ...> [arg=value ...]
 
 ARGS:
-  credential-id               ID of the credentials to update
+  sqs-credentials-id          ID of the SQS credentials to update
   [name]                      Name of the credentials
-  [permissions.can-publish]   Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues or publish to SNS topics)
-  [permissions.can-receive]   Defines whether the credentials bearer can receive messages from the service
-  [permissions.can-manage]    Defines whether the credentials bearer can manage the associated resources (SQS queues or SNS topics or subscriptions)
+  [permissions.can-publish]   Defines whether the credentials bearer can publish messages to the service (send messages to SQS queues)
+  [permissions.can-receive]   Defines whether the credentials bearer can receive messages from SQS queues
+  [permissions.can-manage]    Defines whether the credentials bearer can manage the associated SQS queues
   [region=fr-par]             Region to target. If none is passed will use default region from the config (fr-par)
 
 FLAGS:
-  -h, --help   help for update
+  -h, --help   help for update-credentials
 
 GLOBAL FLAGS:
   -c, --config string    The path to the config file
diff --git a/cmd/scw/testdata/test-all-usage-mnq-sqs-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-sqs-usage.golden
new file mode 100644
index 00000000..051e60f4
--- /dev/null
+++ b/cmd/scw/testdata/test-all-usage-mnq-sqs-usage.golden
@@ -0,0 +1,27 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟥🟥🟥 STDERR️️ 🟥🟥🟥️
+MnQ SQS commands.
+
+USAGE:
+  scw mnq sqs <command>
+
+AVAILABLE COMMANDS:
+  activate           Activate SQS
+  create-credentials Create SQS credentials
+  deactivate         Deactivate SQS
+  delete-credentials Delete SQS credentials
+  get-credentials    Get SQS credentials
+  get-info           Get SQS info
+  list-credentials   List SQS credentials
+  update-credentials Update SQS credentials
+
+FLAGS:
+  -h, --help   help for sqs
+
+GLOBAL FLAGS:
+  -c, --config string    The path to the config file
+  -D, --debug            Enable debug mode
+  -o, --output string    Output format: json or human, see 'scw help output' for more info (default "human")
+  -p, --profile string   The config profile to use
+
+Use "scw mnq sqs [command] --help" for more information about a command.
diff --git a/cmd/scw/testdata/test-all-usage-mnq-usage.golden b/cmd/scw/testdata/test-all-usage-mnq-usage.golden
index d5265dda..4df91caa 100644
--- a/cmd/scw/testdata/test-all-usage-mnq-usage.golden
+++ b/cmd/scw/testdata/test-all-usage-mnq-usage.golden
@@ -1,13 +1,14 @@
 🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
 🟥🟥🟥 STDERR️️ 🟥🟥🟥️
-Messaging and Queuing API.
+Messaging and Queuing NATS API.
 
 USAGE:
   scw mnq <command>
 
 AVAILABLE COMMANDS:
-  credential  MnQ Credentials commands
-  namespace   MnQ Namespace commands
+  nats        MnQ NATS commands
+  sns         MnQ SNS commands
+  sqs         MnQ SQS commands
 
 FLAGS:
   -h, --help   help for mnq
diff --git a/cmd/scw/testdata/test-main-usage-usage.golden b/cmd/scw/testdata/test-main-usage-usage.golden
index e3d7fa1f..57cf1265 100644
--- a/cmd/scw/testdata/test-main-usage-usage.golden
+++ b/cmd/scw/testdata/test-main-usage-usage.golden
@@ -22,7 +22,7 @@ AVAILABLE COMMANDS:
   k8s           Kubernetes API
   lb            This API allows you to manage your Scaleway Load Balancer services
   marketplace   Marketplace API
-  mnq           This API allows you to manage Scaleway Messaging and Queueing brokers
+  mnq           Messaging and Queuing APIs
   object        Object-storage utils
   rdb           Managed Database for PostgreSQL and MySQL API
   redis         Managed Database for Redis™ API
diff --git a/internal/namespaces/init/init_test.go b/internal/namespaces/init/init_test.go
index 850007d6..bc32f52a 100644
--- a/internal/namespaces/init/init_test.go
+++ b/internal/namespaces/init/init_test.go
@@ -197,6 +197,20 @@ func TestInit(t *testing.T) {
 				"no",
 			},
 		}))
+
+		t.Run("Default profile activated", core.Test(&core.TestConfig{
+			Commands:   GetCommands(),
+			BeforeFunc: baseBeforeFunc(),
+			TmpHomeDir: true,
+			Cmd:        appendArgs("scw -p newprofile init", defaultArgs),
+			Check: core.TestCheckCombine(
+				core.TestCheckGolden(),
+				checkConfig(func(t *testing.T, ctx *core.CheckFuncCtx, config *scw.Config) {
+					assert.NotNil(t, config.ActiveProfile)
+					assert.Equal(t, "newprofile", *config.ActiveProfile)
+				}),
+			),
+		}))
 	})
 }
 
diff --git a/internal/namespaces/init/testdata/test-init-cl-iv2-config-default-profile-activated.cassette.yaml b/internal/namespaces/init/testdata/test-init-cl-iv2-config-default-profile-activated.cassette.yaml
new file mode 100644
index 00000000..e9c4edde
--- /dev/null
+++ b/internal/namespaces/init/testdata/test-init-cl-iv2-config-default-profile-activated.cassette.yaml
@@ -0,0 +1,41 @@
+---
+version: 1
+interactions:
+- request:
+    body: '{"access_key":"SCWQN1ZYHWPFGJD28Q70", "secret_key":null, "description":"iam",
+      "created_at":"2022-08-22T09:13:42.922733Z", "updated_at":"2022-10-20T08:29:52.752429Z",
+      "expires_at":null, "default_project_id":"ee7bd9e1-9cbd-4724-b2f4-19e50f3cf38b",
+      "editable":true, "creation_ip":"51.159.73.9", "user_id":"38d8ec28-dbee-4dbe-a4e8-56adcc285e8b"}'
+    form: {}
+    headers:
+      User-Agent:
+      - scaleway-sdk-go/v1.0.0-beta.7+dev (go1.21.1; linux; amd64) scaleway-cli/0.0.0+test
+    url: https://api.scaleway.com/iam/v1alpha1/api-keys/SCWXXXXXXXXXXXXXXXXX
+    method: GET
+  response:
+    body: '{"access_key":"SCWQN1ZYHWPFGJD28Q70", "secret_key":null, "description":"iam",
+      "created_at":"2022-08-22T09:13:42.922733Z", "updated_at":"2022-10-20T08:29:52.752429Z",
+      "expires_at":null, "default_project_id":"ee7bd9e1-9cbd-4724-b2f4-19e50f3cf38b",
+      "editable":true, "creation_ip":"51.159.73.9", "user_id":"38d8ec28-dbee-4dbe-a4e8-56adcc285e8b"}'
+    headers:
+      Content-Length:
+      - "341"
+      Content-Security-Policy:
+      - default-src 'none'; frame-ancestors 'none'
+      Content-Type:
+      - application/json
+      Date:
+      - Wed, 18 Oct 2023 12:53:51 GMT
+      Server:
+      - Scaleway API-Gateway
+      Strict-Transport-Security:
+      - max-age=63072000
+      X-Content-Type-Options:
+      - nosniff
+      X-Frame-Options:
+      - DENY
+      X-Request-Id:
+      - 3107e65a-7df2-4aa8-8e1e-883cc691e9af
+    status: 200 OK
+    code: 200
+    duration: ""
diff --git a/internal/namespaces/init/testdata/test-init-cl-iv2-config-default-profile-activated.golden b/internal/namespaces/init/testdata/test-init-cl-iv2-config-default-profile-activated.golden
new file mode 100644
index 00000000..0b450349
--- /dev/null
+++ b/internal/namespaces/init/testdata/test-init-cl-iv2-config-default-profile-activated.golden
@@ -0,0 +1,8 @@
+🎲🎲🎲 EXIT CODE: 0 🎲🎲🎲
+🟩🟩🟩 STDOUT️ 🟩🟩🟩️
+✅ Initialization completed with success.
+🟩🟩🟩 JSON STDOUT 🟩🟩🟩
+{
+  "message": "Initialization completed with success",
+  "details": ""
+}