Skip to content

unblock_user

Unblock a previously blocked user to restore normal interactions.

Authentication

Required: Yes (Private tool)

Parameters

actor (required)

  • Type: string
  • Description: User identifier (DID or handle) to unblock. You do not need the block record URI — the tool looks up your block record for this actor via their profile (viewer.blocking) and deletes it.

Response

Tool results are returned as stringified JSON text. The illustrative shape is:

typescript
{
  success: boolean;
  message: string;
  unblockedUser: {
    actor: string;
  }
}

Examples

Unblock a User

json
{
  "actor": "former-blocked.bsky.social"
}

Response (illustrative):

json
{
  "success": true,
  "message": "User former-blocked.bsky.social has been unblocked. Normal interactions are now restored.",
  "unblockedUser": {
    "actor": "former-blocked.bsky.social"
  }
}

User Not Currently Blocked

If you are not blocking the actor, the tool returns success: false instead of throwing:

json
{
  "success": false,
  "message": "User former-blocked.bsky.social is not currently blocked.",
  "unblockedUser": {
    "actor": "former-blocked.bsky.social"
  }
}

What Unblocking Does

  • You and the user can see each other's public posts again.
  • The user can follow you again and normal interactions resume.
  • Previous follow relationships are not restored automatically — re-follow if desired.

Error Handling

An actor that is neither a DID nor a handle raises a VALIDATION_ERROR before any network call. A "not currently blocked" condition is reported via success: false (see above), not as a thrown error. Unresolvable handles and other API failures surface as the underlying AT Protocol error.

See Also