NYYU Logo
APIAvatar

Avatar API Overview

Complete guide to avatar components, profiles, and customization system

Avatar System API

Create and manage customizable user avatars with components, profiles, and skill sets

System Overview

🎨
Avatar Customization Platform
Build unique user identities with modular components

The Avatar system enables rich user customization through components (accessories), profiles (component combinations), and avatar sets (grouped components). Each element can be styled, priced, and managed independently.

Core Concepts

🧩
Component

Individual avatar accessories like hats or facial features. Each has a groupId (category) and compId (unique ID).

👤
Profile

Complete avatar built from multiple components, including skills, facts, and personal details.

📦
AvatarSet

Collection of components grouped together with groupId and compId references.

🔤
GroupId

Category identifier for components (e.g., "hats", "hairColor", "accessories").

Access Control

🔐
Role-Based Permissions
Different operations require different privilege levels
👑 Admin Role
• Create avatar components
• Update component attributes
• Manage avatar profiles
• Set pricing & limitations
👤 User Role
• View avatar components
• Retrieve avatar profiles
• Access public avatar data
• Query available items

Core Types

AvatarComponent

🎭
AvatarComponent Type
Individual avatar accessory or element
type AvatarComponent {
  groupId: String!
  compId: Int!
  tierLevel: Int
  price: Float
  limited: Int
  purchased: Int
  svg: String
  width: Int
  top: Int
  left: Int
}
Identity
groupId - Component category
compId - Unique identifier
Access Control
tierLevel - Required tier
price - Token cost
Inventory
limited - Max available
purchased - Already sold
Visual
svg - SVG content
width, top, left - Positioning

AvatarProfile

👥
AvatarProfile Type
Complete avatar with components and metadata
type AvatarProfile {
  id: Int!
  regDate: Float
  updateDate: Float
  deleted: Int
  fname: String!
  surname: String
  skillSet: [SkillSet]
  avatarSet: [AvatarSet]
  hairColor: String
  factsSet: [AvatarFacts]
  details: String
}
Personal Info
fname, surname, details
Components
avatarSet, hairColor
Metadata
skillSet, factsSet

SkillSet

SkillSet Type
type SkillSet {
  id: Int
  name: String!
  rate: Int
}

Represents skills associated with avatar profiles. rate indicates skill level (star rating).

AvatarSet

🎨AvatarSet Type
type AvatarSet {
  id: Int!
  regDate: Float
  updateDate: Float
  deleted: Int
  groupId: String
  compId: Int
}
groupId
Component category
compId
Component ID reference

AvatarFacts

📝AvatarFacts Type
type AvatarFacts {
  id: Int!
  regDate: Float
  updateDate: Float
  deleted: Int
  topic: String
  detail: String
}

Stores interesting facts and trivia associated with avatar profiles. Each fact has a topic and detailed detail content.

Input Types

📥AvatarSetInput
input AvatarSetInput {
  groupId: String
  compId: Int
}

Used when creating or updating avatar component sets

📥FactsInput
input FactsInput {
  topic: String
  detail: String
}

Used when adding facts to avatar profiles

Key Features

💎
Tiered Access

Components can be restricted by user tier levels and pricing

🎯
Limited Editions

Control scarcity with purchase limits and inventory tracking

🎨
SVG Based

Scalable vector graphics ensure crisp rendering at any size

🔧
Customizable Positioning

Precise control over component placement and dimensions

🚀
Start customizing avatars
Explore mutation and query endpoints to build your avatar system