API Reference - User Types

Link: https://support.brilliantdirectories.com/support/solutions/articles/12000108070

← Back to API Reference | Getting Started

User Types

User Types defines the membership tiers available on the directory, such as paid member plans and general user accounts. Each record maps a type name to a subscription plan and controls whether that type is active and visible during signup.

Model name in URL: user_types — DB table: user_types

The User Types Object

FieldTypeDescription
type_idintegerUnique user type ID (primary key, read-only)
type_namestringDisplay name for this membership type (EG Members, General Users)
type_filenamestringInternal filename/slug identifier for this type (EG pro, users)
activeintegerWhether this user type is active (0 = inactive, 1 = active)
signup_orderintegerDisplay order of this type during member signup (lower numbers appear first; 0 = not shown)
subscription_typestringSubscription plan identifier associated with this type (EG pro, user)

List User Type Records

GET /api/v2/user_types/get

Returns a paginated list of user type records.

Example Request

Copy
curl -X GET "https://www.yourdomain.com/api/v2/user_types/get?limit=25" \
  -H "X-Api-Key: your-api-key-here"

Example Response

Copy
{
  "status": "success",
  "message": [
    {
      "tablesExists": true,
      "type_id": "1",
      "type_name": "Members",
      "type_filename": "pro",
      "active": "1",
      "signup_order": "2",
      "subscription_type": "pro"
    },
    {
      "tablesExists": true,
      "type_id": "6",
      "type_name": "General Users",
      "type_filename": "users",
      "active": "1",
      "signup_order": "0",
      "subscription_type": "user"
    }
  ],
  "total": "2",
  "current_page": 1,
  "total_pages": 1
}

Retrieve a User Type Record

GET /api/v2/user_types/get/{type_id}

Example Request

Copy
curl -X GET "https://www.yourdomain.com/api/v2/user_types/get/1" \
  -H "X-Api-Key: your-api-key-here"

Example Response

Copy
{
  "status": "success",
  "message": [
    {
      "tablesExists": true,
      "type_id": "1",
      "type_name": "Members",
      "type_filename": "pro",
      "active": "1",
      "signup_order": "2",
      "subscription_type": "pro"
    }
  ],
  "total": "2",
  "current_page": 1,
  "total_pages": 1
}

Create a User Type Record

POST /api/v2/user_types/create

Creates a new membership type definition.

Example Request

Copy
curl -X POST "https://www.yourdomain.com/api/v2/user_types/create" \
  -H "X-Api-Key: your-api-key-here" \
  -d "type_name=Premium Members" \
  -d "type_filename=premium" \
  -d "active=1" \
  -d "signup_order=1" \
  -d "subscription_type=premium"

Example Response

Copy
{
  "status": "success",
  "message": {
    "type_id": "7",
    "type_name": "Premium Members",
    "type_filename": "premium",
    "active": "1",
    "signup_order": "1",
    "subscription_type": "premium"
  }
}

Update a User Type Record

PUT /api/v2/user_types/update

Example Request

Copy
curl -X PUT "https://www.yourdomain.com/api/v2/user_types/update" \
  -H "X-Api-Key: your-api-key-here" \
  -d "type_id=7" \
  -d "type_name=Elite Members"

Example Response

Copy
{
  "status": "success",
  "message": {
    "type_id": "7",
    "type_name": "Elite Members",
    "type_filename": "premium",
    "active": "1",
    "signup_order": "1",
    "subscription_type": "premium"
  }
}

Delete a User Type Record

DELETE /api/v2/user_types/delete

Example Request

Copy
curl -X DELETE "https://www.yourdomain.com/api/v2/user_types/delete" \
  -H "X-Api-Key: your-api-key-here" \
  -d "type_id=7"

Example Response

Copy
{
  "status": "success",
  "message": "user_types record was deleted"
}