# Check if a name is available

Unified endpoint for checking name availability. For USER scope: checks global user/channel namespace if no scope (groupId) provided, or checks channel username within a specific group if scope is provided. For GROUP scope: checks group name availability (scope not allowed).

Endpoint: GET /api/v1/names/check
Version: 1.0
Security: 

## Query parameters:

  - `name` (string, required)
    The name to check for availability
    Example: "my-username"

  - `nameScope` (string, required)
    The scope of the name check: USER for users and channels, GROUP for groups
    Enum: "USER", "GROUP"

  - `scope` (string,null)
    Group ID for checking channel username within a group. Optional for USER (if omitted, checks global namespace). Not allowed for GROUP scope.
    Example: "us_01hxcvk1hjexere4pvtrj0ymqq"

## Response 200 fields (application/json):

  - `available` (boolean, required)
    Whether the name is available for use (not reserved and not taken)

  - `reserved` (boolean, required)
    Whether the name is a reserved word that cannot be used

  - `taken` (boolean, required)
    Whether the name is already in use by another entity

## Response 400 fields (application/json):

  - `errorCode` (string, required)
    Error code

  - `message` (string, required)
    Error message

  - `docUrl` (string)
    Link to documentation


