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

# Create Configuration

> Create a new configuration. Creates a blank configuration with default settings and no content.



## OpenAPI

````yaml Post /v1/configurations/
openapi: 3.1.0
info:
  title: ManageXR API
  description: API documentation for ManageXR
  version: 1.0.0
servers:
  - url: https://managexrapi.com
    description: ManageXR API Server
security:
  - basicAuth: []
paths:
  /v1/configurations/:
    post:
      summary: Create a configuration
      description: >-
        Create a new configuration. Creates a blank configuration with default
        settings and no content.
      parameters:
        - name: organizationId
          in: query
          required: false
          schema:
            type: string
          description: >
            Unique identifier of the organization. This parameter is only
            necessary when using multi-organization API keys. 


            Defaults to the organizationId associated with the API key.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - name
              properties:
                name:
                  type: string
                  description: Name of the configuration
              example:
                name: New Configuration A
      responses:
        '200':
          description: The created configuration
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/V1ConfigurationResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                type: object
                properties:
                  statusCode:
                    type: number
                    example: 403
                  message:
                    type: string
                    example: Forbidden
                  error:
                    type: string
                    example: ManageXR Error
              example:
                statusCode: 403
                message: Forbidden
                error: ManageXR Error
components:
  schemas:
    V1ConfigurationResponse:
      type: object
      description: Full representation of a configuration.
      properties:
        id:
          type: string
          description: Unique identifier of the configuration.
          example: sFidGmedeQofSBcvRcyn
        name:
          type: string
          description: Name of the configuration.
          example: Education
        registrationCode:
          type: string
          description: >-
            Configuration code (formerly known as registration code) used for
            enrollment.
          example: f7GbHvH
        deviceCount:
          type: number
          description: Number of devices using the configuration.
          example: 15
        deviceExperienceMode:
          type: string
          description: Device experience set on the configuration. Default is Home Screen.
          enum:
            - HOME_SCREEN
            - KIOSK
            - KIOSK_VIDEO
            - DEFAULT
          example: HOME_SCREEN
        vrContent:
          $ref: '#/components/schemas/V1ConfigurationVrContentResponse'
        kioskVrContent:
          $ref: '#/components/schemas/V1ConfigurationKioskContentPatch'
        kioskVideoSettings:
          type: object
          description: >-
            Only relevant if configuration `deviceExperienceMode` is
            `KIOSK_VIDEO`
          properties:
            loopVideo:
              type: boolean
              description: Whether to play the video on loop
              example: true
            loopVideoAfterNSecondsHeadsetOff:
              type: number
              enum:
                - 0
                - 3
                - 10
                - 20
                - 30
                - 60
                - 300
                - 600
              description: >-
                Reset video play position to the beginning after headset has
                been taken off for N seconds
              example: 30
        files:
          type: array
          description: Files deployed on the configuration.
          items:
            oneOf:
              - $ref: '#/components/schemas/V1ManagedFileDeployed'
        wifiNetworks:
          type: array
          description: Wi‑Fi network profiles deployed on the configuration.
          items:
            oneOf:
              - $ref: '#/components/schemas/V1WifiNetwork'
    V1ConfigurationVrContentResponse:
      type: array
      description: >-
        An array of VR content deployed on the configuration. Fields vary by
        content type. Objects are ordered in the manner they appear on the Home
        Screen.
      items:
        oneOf:
          - $ref: '#/components/schemas/V1AppVersionResponse'
          - $ref: '#/components/schemas/V1ContentVideo'
          - $ref: '#/components/schemas/V1ContentLink'
    V1ConfigurationKioskContentPatch:
      oneOf:
        - $ref: '#/components/schemas/V1AppReleaseIdentifierKiosk'
        - $ref: '#/components/schemas/V1AppVersionIdentifierKiosk'
        - $ref: '#/components/schemas/V1VideoIdentifierKiosk'
      discriminator: null
      propertyName: type
      mapping:
        appRelease: '#/components/schemas/V1AppReleaseIdentifier'
        appVersion: '#/components/schemas/V1AppVersionIdentifier'
        video: '#/components/schemas/V1VideoIdentifier'
    V1ManagedFileDeployed:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the file
          example: DLO133U5NFLMAL1
        url:
          type: string
          format: uri
          description: >-
            Direct URL to download the file. If hosted on ManageXR, the link
            will begin with `gs://`. If self-hosted, it will be the url you
            supplied when creating the file.
          example: >-
            gs://mighty-platform-prod/organizations/GMrDmBCRcUm4bf61nqH2/files/e75058f2-ee65-4a79-802e-b97af54b6b26
        name:
          type: string
          description: Name of the file, including extension
          example: main_assets_all.bundle
        size:
          type: number
          description: Size of the file in bytes
          example: 1204975930
        md5:
          type: string
          description: MD5 hash of the file for integrity verification
          example: 7ah69cMtXyaz5OfsCRtOjQ==
        description:
          type: string
          description: Optional description of the file's contents or purpose
          example: Content bundle for training app
        libraryDirectoryPath:
          type: string
          description: >-
            Path to the file in the Library > Files section of ManageXR. A
            libraryDirectoryPath of "/" indicates that it is at the root of the
            Files library.
          example: /
        deviceDirectoryPaths:
          type: array
          description: >-
            Directory paths where the file is placed on the device. This is an
            array because, although uncommon, you can deploy a file to more than
            one location on a device.
          items:
            type: string
          example:
            - /Android/obb/com.managexr.exampleApp/files
      example:
        id: DLO133U5NFLMAL1
        url: >-
          https://storage.googleapis.com/managexr-files/org_456/files/file_123abc.mp4
        name: main_assets_all.bundle
        size: 1204975930
        md5: 7ah69cMtXyaz5OfsCRtOjQ==
        description: Content bundle for training app
        libraryDirectoryPath: /
        deviceDirectoryPaths:
          - /Android/obb/com.managexr.exampleApp/files
    V1WifiNetwork:
      type: object
      description: A Wi-Fi network profile summary
      properties:
        id:
          type: string
          description: Unique identifier of the Wi-Fi network
          example: wifi_abc123
        ssid:
          type: string
          description: The SSID (name) of the Wi-Fi network
          example: MyNetwork
        nickname:
          type: string
          description: A user-defined label for the network
          example: Office Wi-Fi
        type:
          type: string
          description: The security type of the network
          enum:
            - OPEN
            - WPA
            - WPA_ENTERPRISE
            - WPA3
            - WPA3_ENTERPRISE
            - UNKNOWN
          example: WPA_ENTERPRISE
        priorityWifiNetwork:
          type: boolean
          description: >-
            Priority network. The device will always connect to this network
            over other networks when it is in range and available.
          example: false
      example:
        id: wifi_abc123
        ssid: MyNetwork
        nickname: Office Wi-Fi
        type: WPA_ENTERPRISE
        priorityWifiNetwork: false
    V1AppVersionResponse:
      title: Apps
      description: >-
        Apps deployed on the configuration will include the attributes listed
        below
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the app version
          example: av_123
        type:
          type: string
          enum:
            - managed
            - shared
            - external
            - instant
          description: Type of the app version
          example: managed
        configurationDeployments:
          type: object
          additionalProperties:
            type: number
          description: Map of configuration ids to device count using application
          example:
            config_123: 1
            config_456: 0
        createdAt:
          type: number
          description: Creation timestamp
          example: 1645615777448
        updatedAt:
          type: number
          description: Last update timestamp
          example: 1687352117203
        versionCode:
          type: number
          description: Version code of the app
          example: 83894522
        versionName:
          type: string
          description: Version name of the app
          example: 8.7.8.1206
        versionLabel:
          type: string
          description: Label for uniqueness among app versions
          example: Quest
        hidden:
          type: boolean
          description: Whether the app is hidden from the VR home screen
          example: false
        forceInstall:
          type: boolean
          description: >-
            When **true** uninstalls previous version of app before
            re-installing new version. Turn on Force Install if you need to
            downgrade or rollback an app version. [Learn
            More](https://help.managexr.com/en/articles/5274045-deploying-applications#h_ddb1b059c3)
          example: false
        apkSize:
          type: number
          description: Size of the APK file in bytes
          example: 72633861
        obbSize:
          type: number
          description: Size of the OBB file in bytes
          example: 1024
        selfHosted:
          type: boolean
          description: Whether the app is self-hosted
          example: true
        apkUrl:
          type: string
          description: URL of the APK file (self-hosted apps only)
          example: https://storage.example.com/apps/com.example.app.apk
        obbUrl:
          type: string
          description: URL of the OBB file (self-hosted apps only)
          example: https://storage.example.com/apps/com.example.app.obb
        sharingOrganizationName:
          type: string
          description: Name of the organization sharing the app (shared apps only)
          example: XR Developer
        releaseChannelName:
          type: string
          description: Name of the release channel (shared apps only)
          example: Production
        supportedDeviceModels:
          type: array
          items:
            type: string
            example: Quest 3
          description: List of supported device models for Instant App (instant apps only)
          example:
            - Quest 3
            - Quest 3S
            - Pico 4 Ultra Enterprise
    V1ContentVideo:
      type: object
      title: Video
      description: >-
        Videos deployed on the configuration will include the attributes listed
        below
      required:
        - contentType
        - id
        - title
        - size
        - type
        - display
        - mapping
        - packing
        - iconUrl
        - createdAt
        - updatedAt
      properties:
        contentType:
          type: string
          enum:
            - video
        id:
          type: string
          description: Unique identifier of the video
        title:
          type: string
          description: Title of the video
        size:
          type: number
          description: Size of the video in bytes
        type:
          type: string
          enum:
            - _360
            - _180
            - _2D
          example: _360
          description: Type of video
        display:
          type: string
          enum:
            - MONO
            - STEREO
          example: MONO
          description: Video display type
        mapping:
          type: string
          enum:
            - NONE
            - EQUIRECTANGULAR
            - CUBEMAP
          example: EQUIRECTANGULAR
          description: Video mapping
        packing:
          type: string
          enum:
            - NONE
            - TOP_BOTTOM
            - LEFT_RIGHT
          example: TOP_BOTTOM
          description: Video packing (stereoscopic videos only)
        md5:
          type: string
          description: MD5 hash of the video file
        iconUrl:
          type: string
          format: uri
          description: URL of the video's icon
        createdAt:
          type: number
          description: Creation timestamp
          example: 1645615777448
        updatedAt:
          type: number
          description: Last update timestamp
          example: 1687352117203
        description:
          type: string
          description: Optional description of the video
      example:
        contentType: video
        id: gF0ODIEvXSwsjqtP0CgVo
        title: Discover San Francsico
        description: '[360 Mono Cubemap] 1 MB'
        size: 553657
        type: _360
        display: MONO
        mapping: CUBEMAP
        packing: NONE
        md5: 7ah69cMtXyaz5OfsCRtOjQ==
        iconUrl: https://firebasestorage.googleapis.com/v0/b/example.jpg
        createdAt: 1696978504660
        updatedAt: 1715651553616
    V1ContentLink:
      type: object
      title: WebXR Link
      description: >-
        WebXR links deployed on the configuration will include the attributes
        listed below
      required:
        - contentType
        - id
        - title
        - url
        - iconUrl
        - createdAt
        - updatedAt
      properties:
        contentType:
          type: string
          enum:
            - link
          description: Type of content
        id:
          type: string
          description: Unique identifier of the webxr link
        title:
          type: string
          description: Title of the webxr link
        url:
          type: string
          format: uri
          description: WebXR link url to open in-headset
        iconUrl:
          type: string
          format: uri
          description: URL of the webxr link's icon
        createdAt:
          type: number
          description: Creation timestamp
          example: 1645615777448
        updatedAt:
          type: number
          description: Last update timestamp
          example: 1687352117203
      example:
        contentType: link
        id: A3t67LlxH99cKeprazuc
        title: Virtual College Tour
        url: https://www.youtube.com/watch?v=AyWLvrWBKHA
        iconUrl: https://firebasestorage.googleapis.com/v0/b/icon.png
        createdAt: 1706719137865
        updatedAt: 1706719137865
    V1AppReleaseIdentifierKiosk:
      type: object
      title: App (Release Channel)
      properties:
        type:
          type: string
          enum:
            - app
          example: app
        id:
          description: Unique identifier of the app
          type: object
          properties:
            packageName:
              type: string
              description: Package Name of the application
            releaseChannel:
              type: string
              description: Name of the release channel
            type:
              enum:
                - shared
                - managed
          required:
            - packageName
            - releaseChannel
    V1AppVersionIdentifierKiosk:
      type: object
      title: App (Specific Version)
      properties:
        type:
          type: string
          enum:
            - app
          example: app
        id:
          description: Unique identifier of the app
          type: object
          properties:
            packageName:
              type: string
              description: Package Name of the application
            version:
              oneOf:
                - type: object
                  description: >-
                    Identify a specific version using the standard version
                    information.
                  properties:
                    versionCode:
                      type: number
                      description: App version code
                      example: 42
                    versionName:
                      type: string
                      description: App version name
                      example: 4.2.0
                    versionLabel:
                      type: string
                      description: >-
                        Optional version label (e.g. 'Stable', 'Beta', 'Quest').
                        Used to differentiate app versions with the same name
                        and code.
                      example: Stable
                  required:
                    - versionCode
                    - versionName
                - type: string
                  description: >
                    Use a shortcut to identify a recent version. "latest" =
                    latest semver version. "last-created" = most recently
                    created on ManageXR. 


                    _Select from the dropdown above for other version
                    identification options_
                  enum:
                    - latest
                    - last-created
                - type: string
                  description: >-
                    Unique identifier of app version on ManageXR. You can
                    retrieve this using the List App Versions endpoint.
    V1VideoIdentifierKiosk:
      type: object
      title: Video
      properties:
        type:
          type: string
          enum:
            - video
          example: video
        id:
          type: string
          description: Unique identifier of the video
          example: KD32I5NGL1345
        properties:
          type: object
          properties:
            kioskVideoSettings:
              type: object
              properties:
                loopVideo:
                  type: boolean
                  description: Whether to play the video on loop
                  example: true
                loopVideoAfterNSecondsHeadsetOff:
                  type: number
                  enum:
                    - 0
                    - 3
                    - 10
                    - 20
                    - 30
                    - 60
                    - 300
                    - 600
                  description: >-
                    Reset video play position to the beginning after headset has
                    been taken off for N seconds
                  example: 30
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: >
        API key based authentication where <encoded-value> is the Base64
        encoding of `API_KEY_ID`:`API_KEY_SECRET`

        - **Username**: The API Key ID.

        - **Password**: The API Key Secret.

````