> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oxanaut.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Assign an account type to a user (admin)

> Sets the account type. PARTNER is only assignable here (admin), never via the self-service endpoint.



## OpenAPI

````yaml /openapi.json patch /v1/users/{sub}/account-type
openapi: 3.0.0
info:
  title: OneSubnet Core API
  description: >-
    OneSubnet hosting panel API. Toutes les routes sont préfixées par /v1/
    (versioning URI). Les routes Panel sont appelées par le daemon Wings, pas
    par les clients. Les routes Admin nécessitent le rôle admin.
  version: '1.0'
  contact: {}
servers: []
security: []
tags:
  - name: Auth & Users
    description: Authentification, profil, gestion utilisateurs
  - name: Store
    description: 'Boutique: catégories, produits, panier'
  - name: Billing
    description: Facturation, checkout Stripe, webhooks
  - name: Services
    description: Services hébergés (enregistrements facturation)
  - name: Affiliation
    description: Parrainage et commissions
  - name: Notifications
    description: Notifications
  - name: Admin - RBAC
    description: Gestion des rôles, permissions, groupes
  - name: Admin - Store & Invoices
    description: CRUD produits, plans, coupons, factures
  - name: Admin - Settings & Tenants
    description: Configuration, multi-tenant, whitelabel
  - name: Admin - Audit
    description: Journal d'audit des requêtes
  - name: System
    description: Health, meta-info
paths:
  /v1/users/{sub}/account-type:
    patch:
      tags:
        - Auth & Users
      summary: Assign an account type to a user (admin)
      description: >-
        Sets the account type. PARTNER is only assignable here (admin), never
        via the self-service endpoint.
      operationId: UserController_setAccountType_v1
      parameters:
        - name: sub
          required: true
          in: path
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateAccountTypeAdminDto'
      responses:
        '200':
          description: ''
      security:
        - bearer: []
components:
  schemas:
    UpdateAccountTypeAdminDto:
      type: object
      properties:
        type:
          type: string
          enum:
            - PERSONAL
            - PROFESSIONAL
            - PARTNER
          description: PERSONAL, PROFESSIONAL, or PARTNER.
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

## Related topics

- [List account type requests (admin)](/api-reference/admin--account-type-requests/list-account-type-requests-admin.md)
- [Approve or reject an account type request (admin)](/api-reference/admin--account-type-requests/approve-or-reject-an-account-type-request-admin.md)
- [Assign a role to a user](/api-reference/admin--rbac/assign-a-role-to-a-user.md)
- [Set the account type (self-service)](/api-reference/auth-&-users/set-the-account-type-self-service.md)
- [List all user role assignments](/api-reference/admin--rbac/list-all-user-role-assignments.md)
