at.happyproto.actor.getProfile

happyproto.at

Documentation

Get an actor's profile. Returns full detail — including dashboard entitlements — only for the authenticated caller; for any other actor it returns public basics only.

main query

Get an actor's profile. Returns full detail — including dashboard entitlements — only for the authenticated caller; for any other actor it returns public basics only.

Parameters

actor string at-identifier Optional

Handle or DID to look up. Defaults to the authenticated caller.

Output

Encodingapplication/json
access string Optional

Caller only. Access level in the HappyProto admin space.

Known values: read, write
avatar stringuri Optional

A valid URI.

did stringdid Required

A decentralized identifier (DID).

displayName string Optional

No description available.

handle stringhandle Optional

An AT Protocol handle (e.g., alice.bsky.social).

isCustomer boolean Optional

Caller only. Whether the actor is a member of the customers space, the same rule the customer endpoints apply.

isMember boolean Optional

Caller only. Whether the actor may use the dashboard.

isSelf boolean Required

Whether this profile is the authenticated caller's. When false, the entitlement fields are absent — they are never populated for another actor.

Errors

AuthRequired This endpoint requires an authenticated caller.
Forbidden Declared for the customer gate the script consults; getProfile never returns it, since a refused gate reports isCustomer false.
ActorNotFound The requested actor could not be resolved.
Try It

Requests are sent directly from your browser. Some servers may block requests due to CORS.

Base URL for XRPC calls (e.g., https://api.bsky.social)
Parameters
Handle or DID to look up. Defaults to the authenticated caller.
View raw schema
{
  "description": "Get an actor's profile. Returns full detail — including dashboard entitlements — only for the authenticated caller; for any other actor it returns public basics only.",
  "errors": [
    {
      "description": "This endpoint requires an authenticated caller.",
      "name": "AuthRequired"
    },
    {
      "description": "Declared for the customer gate the script consults; getProfile never returns it, since a refused gate reports isCustomer false.",
      "name": "Forbidden"
    },
    {
      "description": "The requested actor could not be resolved.",
      "name": "ActorNotFound"
    }
  ],
  "output": {
    "encoding": "application/json",
    "schema": {
      "properties": {
        "access": {
          "description": "Caller only. Access level in the HappyProto admin space.",
          "knownValues": [
            "read",
            "write"
          ],
          "type": "string"
        },
        "avatar": {
          "format": "uri",
          "type": "string"
        },
        "did": {
          "format": "did",
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "handle": {
          "format": "handle",
          "type": "string"
        },
        "isCustomer": {
          "description": "Caller only. Whether the actor is a member of the customers space, the same rule the customer endpoints apply.",
          "type": "boolean"
        },
        "isMember": {
          "description": "Caller only. Whether the actor may use the dashboard.",
          "type": "boolean"
        },
        "isSelf": {
          "description": "Whether this profile is the authenticated caller's. When false, the entitlement fields are absent — they are never populated for another actor.",
          "type": "boolean"
        }
      },
      "required": [
        "did",
        "isSelf"
      ],
      "type": "object"
    }
  },
  "parameters": {
    "properties": {
      "actor": {
        "description": "Handle or DID to look up. Defaults to the authenticated caller.",
        "format": "at-identifier",
        "type": "string"
      }
    },
    "type": "params"
  },
  "type": "query"
}

Lexicon Garden

@