How to change namespace with the organizations

It seems related to this thread.

But I can not know how to create with the organization name.
I can not find any guidance.

I’d like to make custom capabilities like change my_organization.button instead of AAABBB1234.button.

I made a organization by myself.
and when I checked smartthings organizations in CLI.
Only private Organizaion shows.
D:_Project_2025\EdgeDriver\NexmoEdgeDriverDev_v6\NexmoEdgeDriverDevV6>smartthings organizations
────────────────────────────────────────────────────────
Name Label Organization Id Default User Org
────────────────────────────────────────────────────────
1 AAABBB1111 myname AAAAAA-af27-4ae6-a2e6-24bbebb11715 true
────────────────────────────────────────────────────────

That is what I have done. Even though I am the only person who uses my capabilities and preferences I don’t like seeing the randomly generated namespaces in anything I use. They don’t convey the same sense of permanence (however false).

Like many private users I created an organization in the Developer Workspace and I even have a registered brand in the catalogue. It would have been nice if those had been automatically carried over to the new system. Maybe they have been to some extent as the organization and brand names really ought to be reserved, but if they have been the owners haven’t been informed about it.

How did you create the organization? As I hinted at above, those in the Developer Workspace are not the same thing. I was once able to create new organizations via the Certification Console (when it was called the SmartThings Console) but, as I mentioned in the post you linked to, when I tried it earlier this year the end results were unusable. I haven’t checked to see if it has been fixed since. As the CLI doesn’t support creating organizations I built my one manually using API calls but as ever I didn’t document how I did it. It does get listed in the CLI and Certification Console though.

Update: The Certification Console has indeed been fixed to create usable organizations.

1 Like

@nayelyz
Can you help me?

Hi, @jason1
As Graham mentioned, please let us know how you created the organization.
On my side, I created one this week through the Certification Console, and it doesn’t have the hash anymore, @orangebucket, so I think it is correct now.

I made organization here.

Please let me know how to change or create namespace by API.

Ok, as far as I know, those aren’t automatically created anymore, they go to a team’s backlog, so, please enter the Certification Console instead:

  1. Log in to your account
  2. Select your name at the upper-right corner to open the menu
  3. Tap on “Organization settings”
  4. On the right side below the label “Certification Console”, you’ll see the option to “Create a new organization”
  5. Choose a name and click on “Add organization”

This should appear in your CLI now, can you confirm, please?

Yes, I did as your guide, and now I see it at the CLI.
But I can not know how to change default organizations.

─────────────────────────────────────────────────
Name Label Organization Id Default User Org
─────────────────────────────────────────────────
1 bxxxxxx xxxxx 3xxxxxx-4ae6-a2e6-24bbebb11715 true
2 nxxxxxx nxxxxx 9xxxxxx-4494-8fd8-9e119358f71b false
─────────────────────────────────────────────────

To make capabilities with new namespaces. Is it a only way to use APIs?

When I copy and change the namespace and tried to created by API.
There is an error as following.

How can I get the PAT for new organization?

{
“requestId”: “7789630870426672787”,
“error”: {
“code”: “ConstraintViolationError”,
“message”: “The request is malformed.”,
“details”: [
{
“code”: “ConflictError”,
“message”: “Capability ‘bxxxx.alarm’ already exists. Please choose a different name.”,
“details”:
}
]
}
}

Let me check with the engineering team if there’s a command we can use to change the default organization.
However, to create a custom capability with the new organization, you just need to specify the flag -O at the end of the command, followed by the organization ID, for example:

smartthings capabilities:create -O xxxx-xxx-...
--replace "xxxx-xxx-..." with the real value

Remember you can use the flag --help at the end of a command to see which flags/options you can use with it and other useful information about the command.

I am not sure if it is what you are trying to do, but the CLI can be configured with different profiles and one of the parameters you can set for the profile is the organization.

Say, for example, you want to set the default organization used in the CLI. On Windows the configuration folder is %LOCALAPPDATA%\@smartthings\cli and the configuration file is named config.yaml. If you twiddle that to include

default:
  organization: abcdef12-1234-4321-1234-1234567890ab

where you use the organizationId of the required organization as revealed by smartthings organizations, it is like using the -O {organizationId} argument on every command.

1 Like

Thank you @nayelyz @orangebucket
Finally, I can create a capabilities with new organization.

1 Like