---
title: 'Connect a user to User Group'
description: 'This endpoint allows you to connect a user to a user group'
openapi: POST /api/users/connect
---

> **For AI agents:** the complete documentation index is at [llms.txt](https://docs.snagsolutions.io/llms.txt). Append `.md` to any page URL for its markdown version.

`POST /api/users/connect`

`POST https://admin.snagsolutions.io/api/users/connect`

This endpoint allows you to connect a user to a user group

## Authentication

- `apiKeyAuth` — apiKey in header: `X-API-KEY`

## Request body

- Content type: `application/json`
  - request body (object) — Schema for a connect user schema
    - `websiteId` (string, uuid, required) — The ID of the website
    - `organizationId` (string, uuid, required) — The ID of the organization
    - `walletType` (string, required, one of: evm, solana, imx, sui, ton, cosmos, ultra, agw, flow_cadence, substrate)
    - `walletAddress` (string, required) — The wallet address of the user
    - `verificationData` (object) — The verification data of the user walletAddress
      - `message` (string)
      - `signature` (string)
      - `tonVerification` (object)
        - `proof` (object, required)
          - `timestamp` (number, required)
          - `domain` (object, required)
            - lengthBytes: … (nested further)
            - value: … (nested further)
          - `payload` (string, required)
          - `signature` (string, required)
          - `state_init` (string)
        - `account` (object, required)
          - `address` (string, required)
          - `chain` (string, required, one of: -239, -3)
          - `publicKey` (string, required)
          - `walletStateInit` (string)
      - `accessToken` (string)
      - `dynamicAuthToken` (string)
      - `verifiedLocally` (boolean)
    - `userId` (string, uuid) — The ID of the user to whome this wallet is being connected
    - `confirmDisconnect` (boolean) — Whether to confirm the disconnect

## Response 200

200
  - response (object) — Schema for a connect users response
    - `walletAddress` (string, required) — The wallet address of the user
    - `id` (string, uuid, required) — The ID of the user
    - `createdAt` (string, date-time, required) — Timestamp when the user was created
    - `updatedAt` (string, date-time, required) — Timestamp when the user was last updated

## Response 400

400
  - response (object)
    - `message` (string, required, one of: Not a valid request, User not found, You cannot connect same wallet address, signatue is not valid)
    - `error` (string, required, one of: MAXIMUM_ACCOUNT_LINKED)

## Response 403

403
  - response (object) — Schema for forbidden response
    - `message` (string, required) — Error message

## Response 404

404
  - response (object) — Schema for not found response
    - `message` (string, required) — Error message

## Response 500

500
  - response (object) — Schema for internal server error response
    - `success` (boolean, required) — Indicates operation success
    - `message` (string, required) — Error message
    - `debugInfo` (string) — Optional debug information


---

📦 **OpenAPI specs:** Every OpenAPI specification referenced by this documentation is available as a single download — https://docs.snagsolutions.io/api-specs.zip
