DOCS/GRAPHQL/IDENTITIES

Identities (VerusID)

Query VerusID identities including names, addresses, content maps, and revision history.

Get Identity by Name

query {
  identity(
    chainId: "iJhCezBExJHvtyH3fGhNnt2NhU4Ztkf2yq"
    name: "mike"
  ) {
    name
    identityAddress
    status
    primaryAddresses
    minimumSignatures
    contentMap
    blockHeight
  }
}

Get Identity by Address

query {
  identityByAddress(
    chainId: "iJhCezBExJHvtyH3fGhNnt2NhU4Ztkf2yq"
    identityAddress: "iAddress..."
  ) {
    name
    identityAddress
    primaryAddresses
    revocationAuthority
    recoveryAuthority
  }
}

Search Identities

query {
  identities(
    chainId: "iJhCezBExJHvtyH3fGhNnt2NhU4Ztkf2yq"
    search: "mike"
    limit: 10
  ) {
    identities {
      name
      identityAddress
      status
    }
    totalCount
    hasMore
  }
}

Identity History

Get all revisions of an identity over time:

query {
  identityHistory(
    chainId: "iJhCezBExJHvtyH3fGhNnt2NhU4Ztkf2yq"
    identityAddress: "iAddress..."
  ) {
    revisions {
      version
      blockHeight
      timestamp
      operation
      primaryAddresses
      contentMap
    }
  }
}

Identity Type

type Identity {
  chainId: String!
  name: String!
  identityAddress: String!
  status: IdentityStatus!
  primaryAddresses: [String!]!
  minimumSignatures: Int!
  revocationAuthority: String
  recoveryAuthority: String
  contentMap: JSON
  blockHeight: BigInt!
  txid: String!
  version: Int!
}

enum IdentityStatus {
  ACTIVE
  REVOKED
  LOCKED
}

Content Map

The contentMap field contains arbitrary key-value data stored in the identity. Common keys include profile information, public keys, and links to external data.