Primitives - Building Blocks



Profiles on Orbis are used to represent users and their data.
They are tied to unique DIDs, allowing users to fully own their data.

No matter which Orbis-powered app the user visits, they bring their Profile and any related data with them.
Profiles are automatically enriched using Credentials, creating a verifiable reputation system communities can rely on.

Profiles can follow and be followed by others.


DID is short for “Decentralized identifier”.
It's a new form of verifiable identity management that allows users to own their data without relying on 3rd parties.

Orbis supports multiple DID types, with the most common being PKH DID.

Example Profile DID did:pkh:eip155:1:0x0c8feeda30aeb92f62edfcff08c9bda9733b50fe.

Profile data

Orbis' Profiles can be enriched using user-provided data.
This data may include a username, profile picture, cover picture, description and any custom metadata.

Users may attach an email to their Orbis Profile.
A Profile's email is stored in an encrypted form and can only be used by Orbis Nodes to send notifications.
Applications can't access a Profile's email, nor can they use it for discoverability or marketing purposes.


Orbis Profiles are automatically enriched using (Verifiable) Credentials.
Credentials are an easy way of increasing Profile's reputation through provable claims.

Orbis automatically generates Credentials based on Profile's on-chain activity (past activity included).
We are also in the process of integrating with other Credential providers.

To learn more about Credentials and how they can help you prevent spam and increase trust, check out the Credentials primitive.

Use case

Profiles represent users of the Orbis protocol.
User's information, content and interactions are available across the protocol to all Orbis-powered apps.

Not only does this simplify onboarding, but it also allows apps to be more secure.
Combine Profiles with the power of Credentials to provide rich and Sybil-resistant Profiles from day one.

You can use the Profile's DID or Credentials for access gating purposes.



The stream ID of Profile schema is kjzl6cwe1jw145ak5a52cln1i6ztmece01w5qd03dib4lg8i3tt57sjauu14be8.

You can check the latest version using Cerscan (opens in a new tab).


    "username": "string",
    "description": "string",
    "pfp": "string",
    "pfpIsNft": {
        "chain": "string",
        "tokenId": "string",
        "contract": "string",
        "timestamp": "string"
    "cover": "string",
    "data": "object"

Parameter explanation:

  • username - non-unique username (ie. display name)
  • description - additional information about the user (ie. about me)
  • pfp - a (valid) URL pointing to the user's profile picture
  • pfpIsNft - can be used to set an NFT as a verified profile picture
    • chain - ethereum or polygon
    • contract - contract address of the NFT
    • tokenId - token ID of the NFT
    • timestamp - current timestamp
  • data - object used to attach any custom data to a Profile

SDK methods

Related concepts