---
title: "Get an App Catalog Item"
method: GET
path: "/api/v2/software/catalog/apps/{objectId}"
tags: ["App Catalog"]
---

# Get an App Catalog Item

`GET /api/v2/software/catalog/apps/{objectId}`

## Request

- Base URL: `https://console.jumpcloud.com`
- URL: `https://console.jumpcloud.com/api/v2/software/catalog/apps/{objectId}`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/jumpcloud/apis/jumpcloud-console-api/docs/api/v2/software/catalog/apps/:objectId/get.ts> (a function with typed inputs; its response is checked against the schema)

Get an App Catalog Item.

#### Sample Request
```
curl -X GET https://console.jumpcloud.com/api/v2/software/catalog/apps/{object_id} \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key:{API_KEY}'
```

## Path parameters

- `objectId` string, byte, required

## Response `200`

Success getting App Catalog Item.

- DevicesAppCatalogItem
  - `iconSha256` string
  - `iconUrl` string
  - `installableItems` DevicesAppCatalogInstallableItem[]
    - `architectures` string[]
    - `installerType` string
    - `objectId` string, byte
    - `operatingSystem` string
    - `softwareApp` DevicesSoftwareApp
      - `createdAt` string, date-time, nullable
      - `deletedAt` string, date-time, nullable
      - `displayName` string
      - `objectId` string, byte
      - `organizationObjectId` string, byte
      - `settings` DevicesSoftwareAppSetting[]
        - `adminIntent` 'INTENT_UNSPECIFIED' | 'INTENT_FORCE_MANAGED' | 'INTENT_FORCE_UNMANAGED'
        - `allowUpdateDelay` boolean
        - `appCatalogInstallableObjectId` string, byte
        - `appDeliveryMethod` 'IMMEDIATE' | 'ON_DEMAND'
        - `appFileName` string
        - `appleVpp` DevicesSoftwareAppAppleVpp
          - `appConfiguration` string
          - `assignedLicenses` string, int64
          - `availableLicenses` string, int64
          - `details` string
          - `isConfigEnabled` boolean
          - `supportedDeviceFamilies` DevicesSoftwareAppAppleVppDeviceFamily[]
          - `totalLicenses` string, int64
        - `architectures` string[]
        - `assetKind` string
        - `assetSha256Size` integer
        - `assetSha256Strings` string[]
        - `autoUpdate` boolean
        - `autoUpdateNotificationsDisabled` boolean
        - `bundleId` string
        - `commandLineArguments` string
        - `createdAt` string, date-time, nullable
        - `description` string
        - `desiredState` 'INSTALL' | 'UNINSTALL'
        - `detectionRules` DevicesWindowsCustomDetectionRules
          - `customScript` DevicesDetectionRuleCustomScript
            - `powerShellScript` string
          - `displayName` DevicesDetectionRuleDisplayName
            - `expectedDisplayName` string
          - `registry` DevicesDetectionRuleRegistry
            - `registryExpectedValue` string
            - `registryPath` string
            - `registryValueName` string
        - `displayVersion` string
        - `downloadUrl` string
        - `enterpriseObjectId` string, byte
        - `format` 'PKG' | 'APP_IN_DMG' | 'PKG_IN_DMG' | 'IPA' | 'APP_IN_ZIP' | 'PKG_IN_ZIP' | 'APP_IN_DMG_ZIP'
        - `googleAndroid` DevicesSoftwareAppGoogleAndroid
          - `androidFeatures` string[]
          - `appPricing` string
          - `appVersion` string
          - `author` string
          - `autoUpdateMode` 'AUTO_UPDATE_MODE_UNSPECIFIED' | 'AUTO_UPDATE_DEFAULT' | 'AUTO_UPDATE_POSTPONED' | 'AUTO_UPDATE_HIGH_PRIORITY'
          - `category` string
          - `contentRating` string
          - `disabled` boolean
          - `displayMode` string
          - `distributionChannel` string
          - `fullDescription` string
          - `iconUrl` string
          - `installPriority` integer
          - `installType` 'INSTALL_TYPE_UNSPECIFIED' | 'PREINSTALLED' | 'FORCE_INSTALLED' | 'BLOCKED' | 'AVAILABLE' | 'REQUIRED_FOR_SETUP' | 'KIOSK'
          - `managedConfigurationTemplateId` string
          - `managedProperties` boolean
          - `minSdkVersion` string, int64
          - `name` string
          - `permissionGrants` DevicesSoftwareAppPermissionGrant[]
            - `id` string
            - `policy` 'PERMISSION_POLICY_UNSPECIFIED' | 'PROMPT' | 'GRANT' | 'DENY'
          - `playStoreUrl` string
          - `runtimePermission` 'PERMISSION_POLICY_UNSPECIFIED' | 'PROMPT' | 'GRANT' | 'DENY'
          - `startUrl` string
          - `type` 'APP_TYPE_UNSPECIFIED' | 'PUBLIC' | 'PRIVATE' | 'WEBAPP'
          - `updateTime` string
          - `versionCode` string, int64
        - `iconUrl` string
        - `installerConfig` DevicesWindowsCustomInstallerConfig
          - `successExitCodes` integer[]
        - `installerType` string: Winget installer format (e.g. "msix"); empty means the winget default installer.
        - `location` string
        - `locationObjectId` string, byte
        - `managedInstallEligibilityStatus` 'MANAGED_INSTALL_ELIGIBILITY_NOT_EVALUATED' | 'MANAGED_INSTALL_ELIGIBLE' | 'MANAGED_INSTALL_INELIGIBLE' | 'MANAGED_INSTALL_ELIGIBILITY_UNKNOWN'
        - `microsoftStore` DevicesSoftwareAppMicrosoftStore
          - `doNotUpdate` boolean
          - `nonRemovable` boolean
          - `packageFamilyName` string
        - `migrationSafe` boolean: JumpCloud has validated the MSI->MSIX (or equivalent) migration for this app is safe.
        - `packageFamilyName` string: MSIX package family name (DisplayName_PublisherId), used for machine-wide MSIX installs.
        - `packageId` string
        - `packageKind` string
        - `packageManager` 'UNKNOWN' | 'CHOCOLATEY' | 'APPLE_VPP' | 'APPLE_CUSTOM' | 'GOOGLE_ANDROID' | 'WINDOWS_MDM' | 'MICROSOFT_STORE' | 'WINGET' | 'MAC_OS_APP_CATALOG' | 'WINDOWS_CUSTOM': - WINDOWS_MDM: Private-repo MSI installers (object storage). - WINDOWS_CUSTOM: Private-repo EXE/MSIX and other non-MSI custom installers (object storage); agent uses windowsCustom.
        - `packageSubtitle` string
        - `packageVersion` string
        - `packageVersionUpdatedAt` string, date-time, nullable
        - `scope` 'SYSTEM' | 'USER'
        - `shortVersion` string
        - `silentInstallFlags` string[]: Optional silent install flags (e.g. comma-separated in UI).
        - `storedPackage` DevicesObjectStorageItem
          - `objectId` string, byte
          - `references` DevicesObjectStorageReferrer[]
            - `trackObject` DevicesTrackObject: TrackObject is a slimmed down version of a jumpcloud.directory.GraphObject.
              - …
          - `versions` DevicesObjectStorageVersion[]
            - `createdAt` string, date-time
            - `displayVersion` string: Optional admin display label for this upload; copied to software_app_settings on successful validation.
            - `metadata` DevicesObjectStorageMetadata
              - …
            - `name` string
            - `objectId` string, byte
            - `rejectedReason` string
            - `sha256sum` string
            - `size` integer
            - `status` 'UNKNOWN' | 'PENDING' | 'VALIDATING' | 'AVAILABLE' | 'REJECTED' | 'INACTIVE'
            - `storagePath` string
            - `updatedAt` string, date-time
            - `version` integer
        - `storedPackageObjectId` string, byte
        - `teamId` string
        - `uninstallOnUnbind` boolean
        - `unsafeUninstall` boolean
        - `updateTool` string
        - `updateToolArguments` string
        - `updatedAt` string, date-time, nullable
        - `versionlessDownloadUrl` boolean
      - `updatedAt` string, date-time, nullable
    - `version` string
  - `name` string
  - `objectId` string, byte
  - `version` string

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
- `500`: Internal Server Error

---

[API](https://skmtc.dev/jumpcloud/apis/jumpcloud-console-api.md) - [All operations](https://skmtc.dev/jumpcloud/apis/jumpcloud-console-api/llms.txt) - [OpenAPI document](https://skmtc.dev/jumpcloud/apis/jumpcloud-console-api/revisions/f396d9271b46?raw)
