> ## Documentation Index
> Fetch the complete documentation index at: https://conductorone-docs-ad-account-provisioning-setup.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Get User Profile Types

> Invokes the c1.api.user.v1.UserService.GetUserProfileTypes method.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples get /api/v1/users/{user_id}/profile-types
openapi: 3.1.0
info:
  description: The ConductorOne API is a HTTP API for managing ConductorOne resources.
  title: ConductorOne API
  version: 0.1.0-alpha
servers:
  - description: The ConductorOne API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/users/{user_id}/profile-types:
    get:
      tags:
        - User
      summary: Get User Profile Types
      description: Invokes the c1.api.user.v1.UserService.GetUserProfileTypes method.
      operationId: c1.api.user.v1.UserService.GetUserProfileTypes
      parameters:
        - in: path
          name: user_id
          required: true
          schema:
            description: The userId field.
            readOnly: false
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.user.v1.GetUserProfileTypesResponse
          description: Successful response
      x-codeSamples:
        - lang: go
          label: GetUserProfileTypes
          source: "package main\n\nimport(\n\t\"context\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/shared\"\n\tconductoronesdkgo \"github.com/conductorone/conductorone-sdk-go\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/operations\"\n\t\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    s := conductoronesdkgo.New(\n        conductoronesdkgo.WithSecurity(shared.Security{\n            BearerAuth: \"<YOUR_BEARER_TOKEN_HERE>\",\n            Oauth: \"<YOUR_OAUTH_HERE>\",\n        }),\n    )\n\n    res, err := s.User.GetUserProfileTypes(ctx, operations.C1APIUserV1UserServiceGetUserProfileTypesRequest{\n        UserID: \"<id>\",\n    })\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.GetUserProfileTypesResponse != nil {\n        // handle response\n    }\n}"
        - lang: typescript
          label: Typescript (SDK)
          source: >-
            import { ConductoroneSDKTypescript } from
            "conductorone-sdk-typescript";


            const conductoroneSDKTypescript = new ConductoroneSDKTypescript({
              security: {
                bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
                oauth: "<YOUR_OAUTH_HERE>",
              },
            });


            async function run() {
              const result = await conductoroneSDKTypescript.user.getUserProfileTypes({
                userId: "<id>",
              });

              console.log(result);
            }


            run();
components:
  schemas:
    c1.api.user.v1.GetUserProfileTypesResponse:
      description: The GetUserProfileTypesResponse message.
      properties:
        profileTypes:
          description: The profileTypes field.
          items:
            $ref: '#/components/schemas/c1.api.profiletype.v1.ProfileType'
          nullable: true
          readOnly: false
          type: array
      title: Get User Profile Types Response
      type: object
      x-speakeasy-name-override: GetUserProfileTypesResponse
    c1.api.profiletype.v1.ProfileType:
      description: ProfileType represents a type of profile in the system
      properties:
        description:
          description: The description field.
          readOnly: false
          type: string
        displayToUser:
          description: >-
            Whether to display this profile type to users in profile page.
            Defaults to false if not set
          readOnly: false
          type: boolean
        iconUrl:
          description: The iconUrl field.
          readOnly: false
          type: string
        id:
          description: The id field.
          readOnly: false
          type: string
        name:
          description: The name field.
          readOnly: false
          type: string
        priority:
          description: The priority field.
          format: uint32
          readOnly: false
          type: integer
        sizes:
          description: icon sizes
          items:
            format: int32
            type: integer
          nullable: true
          readOnly: false
          type: array
        slug:
          description: >-
            Add this field to allow users to reference profile type in cel
            expressions
          readOnly: false
          type: string
      title: Profile Type
      type: object
      x-speakeasy-name-override: ProfileType
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````