---
title: 'Create user metadata'
description: 'This endpoint is used to create user metadata'
openapi: POST /api/users/metadatas
---

> **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/metadatas`

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

This endpoint is used to create user metadata

## Authentication

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

## Request body

- Content type: `application/json`
  - request body (object) — Schema for a create user metadata schema
    - `userId` (string, uuid)
    - `walletAddress` (string)
    - `isBlocked` (boolean)
    - `epicAccountIdentifier` (string)
    - `discordUser` (string)
    - `discordUserId` (string)
    - `twitterUser` (string)
    - `twitterUserFollowersCount` (number)
    - `twitterUserId` (string)
    - `emailAddress` (string, email)
    - `walletGroupIdentifier` (string)
    - `userGroupId` (string, uuid)
    - `telegramUserId` (string)
    - `telegramUsername` (string)
    - `steamUserId` (string)
    - `steamUsername` (string)
    - `googleUserId` (string)
    - `googleUser` (string)
    - `YTChannelId` (string)
    - `displayName` (string)
    - `location` (string)
    - `bio` (string)
    - `portfolioUrl` (string)
    - `externalLoyaltyScore` (string)
    - `blockStatusReason` (string, one of: sybil_and_multi_account, account_migration, abuse_manipulation, not_sybil, issue_resolved, twitter_suspended, other)
    - `isBlockExempt` (boolean)
    - `internalNotes` (string)
    - `logoUrl` (string)
    - `userGroupExternalIdentifier` (string)
    - `externalIdentifier` (string)
    - `websiteId` (string, uuid)
    - `organizationId` (string, uuid)
    - `tiktokUser` (string)
    - `tiktokUserId` (string)
    - `sybilScore` (number)
    - `githubUser` (string)
    - `githubUserId` (string)
    - `phoneNumber` (string) — Phone number in E.164 format (e.g., +14155552671)

## Response 200

200
  - response (object) — Schema for a user metadata
    - `id` (string, uuid, required) — Unique identifier for the user metadata
    - `websiteId` (string, uuid, required) — Unique identifier for the website
    - `organizationId` (string, uuid, required) — Unique identifier for the organization
    - `walletGroupIdentifier` (string, required) — Identifier for the user wallet group set via api
    - `userGroupId` (string, uuid, required) — Identifier for the user group set via api
    - `userGroup` (object, required) — User group associated with the user
      - `id` (string, uuid, required) — id for the user group
      - `externalIdentifier` (string, required) — External identifier for the user group
    - `user` (object, required)
      - `id` (string, uuid, required) — Id for the user
      - `walletAddress` (string, required) — Wallet address of the user
    - `createdAt` (string, date-time, required) — Timestamp when the wallet was created

## Response 400

400
  - response (object) — Schema for bad request response
    - `message` (string, required) — Error message

## Response 403

403
  - response (object) — Schema for forbidden 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
