Namespaces
Learn about namespaces in the platform and what aspects of the platform concern them most
What are namespaces?
Namespaces help keep applications and different message types separate. They are used in many places like AtRecords, Events and Enrollments. Find out where they're used in Namespace footprint.
Namespace examples
There are two types of namespaces: Application namespaces and Hierarchical namespaces.
Application namespaces
Useful for keeping all of your messages under one large namespace. These namespaces are Atsigns that you should own (like @wavi) to validate the ownership of your namespace.
Examples are:
wavinoportssshrvdsshnpmy_app
Hierarchical namespaces
Hierarchical namespaces are generally used for sorting AtRecords and events, and are more specific than application namespaces.
Examples are:
contacts.my_appgroup_2.groups.policyandgroup_1.groups.policy
They ascend in specificity from left to right. In these examples, you may hold all your contact AtRecords under the contacts.my_app namespace. Similarly, you may have all the group policy rules related to the group name "group_2" under the group_2.groups.policy.
Reserved namespaces
Namespaces starting with __ belong to the SDK and atServer operations. Never write to them directly. Find out where they're used in Namespace footprint.
__manage
Enrollment management. rw here means "can approve enrollments"
__pkams
PKAM key material
__global
Cross-namespace scope
__rpcs
AtRpc request/response traffic
__shared_keys
Symmetric keys shared with other Atsigns
__public_keys
Additional encryption public keys
__self_keys
Additional self encryption keys
__rr
AtCollection read receipts
*
In Enrollments, this means "all namespaces"
Namespace footprint
Namespaces have impacts in many places such as:
Reserved namespaces — you cannot assign certain namespaces to your AtKeys
Reserved namespaces — you cannot assign certain namespaces to your notifications
Namespace-scoped permissions — certain namespaces are important to keep note of when enrolling
Last updated