> For the complete documentation index, see [llms.txt](https://docs.appetize.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.appetize.io/rest-api/apps.md).

# Apps

## List Apps

> List all apps in the account, with associated metadata.

```json
{"openapi":"3.0.3","info":{"title":"Appetize V2 API Reference","version":"2"},"servers":[{"url":"https://api.appetize.io"}],"security":[{"jwt":[]},{"apiToken":[]}],"components":{"securitySchemes":{"apiToken":{"type":"apiKey","in":"header","name":"X-API-KEY","description":"Use an API token for authentication via X-API-KEY header"}},"schemas":{"Pagination":{"type":"object","properties":{"total":{"type":"integer","format":"int32"},"nextPage":{"type":"number","nullable":true,"format":"int32"}}},"AppCollection":{"type":"object","properties":{"apps":{"type":"array","items":{"$ref":"#/components/schemas/App"}}}},"App":{"type":"object","required":["appId","latestBuild","platform","created","createdBy","updated","updatedBy"],"properties":{"appId":{"type":"string","description":"The unique identifier for the app. On Android this is the package name, on iOS this is the bundle identifier."},"name":{"type":"string","description":"The latest app name, as specified by the latest version."},"iconUrl":{"type":"string","description":"The latest app icon, as specified by the latest version.","format":"uri"},"latestBuild":{"description":"The latest build number for the app determined by its latest version and build number","allOf":[{"$ref":"#/components/schemas/Build"}]},"platform":{"type":"string","enum":["ios","android"]},"created":{"description":"The date the app was created.","type":"string","format":"date-time"},"createdBy":{"description":"The user who created the app.","type":"string"},"updated":{"description":"The date the app was last updated.","type":"string","format":"date-time"},"updatedBy":{"description":"The user who last updated the app.","type":"string"},"lastPlayed":{"description":"The time the app was last played.","type":"string","format":"date-time"}}},"Build":{"type":"object","required":["id","created"],"properties":{"id":{"type":"string","description":"The unique identifier for the build."},"appId":{"type":"string","description":"The unique identifier for the app build. On Android this is the package name, on iOS this is the bundle identifier."},"platform":{"type":"string","enum":["ios","android"]},"name":{"description":"The app name, as specified by the specific build. This is the CFBundleDisplayName on iOS and the application label on Android.","type":"string"},"iconUrl":{"description":"The app icon, as specified by the specific build.","type":"string","format":"uri"},"versionName":{"description":"The version name, as specified by the build. In Android this is the versionName, in iOS this is the CFBundleShortVersionString.","type":"string"},"buildNumber":{"description":"The build number, as specified by the build. In Android this is the versionCode, in iOS this is the CFBundleVersion.","type":"string"},"tags":{"description":"The tags associated with the app version.","type":"array","items":{"type":"string"}},"note":{"description":"The note associated with the app version.","type":"string"},"created":{"description":"The date the build was created.","type":"string","format":"date-time"},"createdBy":{"description":"The user who created the build.","type":"string"},"updated":{"description":"The date the build was last updated.","type":"string","format":"date-time"},"updatedBy":{"description":"The user who last updated the build.","type":"string"},"lastPlayed":{"description":"The time the build was last played.","type":"string","format":"date-time"},"metadata":{"description":"The platform specific metadata associated with the build.","oneOf":[{"type":"object","properties":{"android":{"$ref":"#/components/schemas/AndroidMetadata"}}},{"type":"object","properties":{"ios":{"$ref":"#/components/schemas/IosMetadata"}}}]}}},"AndroidMetadata":{"type":"object","properties":{"packageName":{"type":"string"},"name":{"type":"string"},"versionName":{"type":"string"},"versionCode":{"type":"integer","format":"int64"},"minSDKVersion":{"type":"integer","format":"int32"},"targetSDKVersion":{"type":"integer","format":"int32"},"architectures":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string"}},"localizations":{"type":"array","items":{"type":"string"}}}},"IosMetadata":{"type":"object","properties":{"CFBundleId":{"type":"string"},"CFBundleName":{"type":"string"},"CFBundleDisplayName":{"type":"string"},"MinimumOSVersion":{"type":"string"},"DTPlatformName":{"type":"string"},"CFBundleVersion":{"type":"string"},"CFBundleShortVersionString":{"type":"string"},"CFBundleSupportedPlatforms":{"type":"array","items":{"type":"string"}},"UIRequiredDeviceCapabilities":{"type":"array","items":{"type":"string"}},"DTSDKName":{"type":"string"},"UsageDescriptions":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":{"type":"string"}}]}},"UISupportedInterfaceOrientations":{"type":"array","items":{"type":"string"}},"UISupportedInterfaceOrientationsIpad":{"type":"array","items":{"type":"string"}},"CFBundleURLTypes":{"type":"array","items":{"$ref":"#/components/schemas/CfBundleUrlType"}},"Localizations":{"type":"array","items":{"type":"string"}},"Frameworks":{"type":"array","items":{"type":"string"}},"Architectures":{"type":"array","items":{"type":"string"}}}},"CfBundleUrlType":{"type":"object","properties":{"CFBundleURLName":{"type":"string"},"CFBundleURLSchemes":{"type":"array","items":{"type":"string"}}}},"Error":{"type":"object","properties":{"message":{"description":"Error message.","type":"string"}}}}},"paths":{"/v2/apps":{"get":{"summary":"List Apps","tags":["Apps"],"description":"List all apps in the account, with associated metadata.","operationId":"listApps","parameters":[{"in":"query","name":"page","description":"The page number of results","schema":{"type":"integer"}},{"in":"query","name":"limit","description":"The number of results to return per page","schema":{"type":"integer"}},{"in":"query","name":"search","description":"The search term to filter by, example \"My App\".","schema":{"type":"string"}},{"in":"query","name":"platform","description":"The platform to filter by","schema":{"type":"string","enum":["ios","android"]}},{"in":"query","name":"appId","description":"The unique identifier for an app to filter by. On Android this is the package name, on iOS this is the bundle identifier.","schema":{"type":"string"}},{"in":"query","name":"versionName","description":"The version name to filter by, example \"1.0.0\". This is the CFBundleShortVersionString on iOS and versionName on Android.","schema":{"type":"string"}},{"in":"query","name":"buildNumber","description":"The build number to filter by, example \"1\", this is the versionCode on Android and CFBundleVersion on iOS.","schema":{"type":"integer","format":"int32"}},{"in":"query","name":"note","description":"The notes to filter by, example \"This is a note\".","schema":{"type":"string"}},{"in":"query","name":"tags","description":"The tags to filter by, example \"tag1,tag2\".","schema":{"type":"string"}},{"in":"query","name":"disabled","description":"The disabled status to filter by, example \"true\".","schema":{"type":"boolean"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Pagination"},{"$ref":"#/components/schemas/AppCollection"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## Get app icon by its unique identifier and platform

> Get app icon by its unique identifier and platform

```json
{"openapi":"3.0.3","info":{"title":"Appetize V2 API Reference","version":"2"},"servers":[{"url":"https://api.appetize.io"}],"security":[{"jwt":[]},{"apiToken":[]}],"components":{"securitySchemes":{"apiToken":{"type":"apiKey","in":"header","name":"X-API-KEY","description":"Use an API token for authentication via X-API-KEY header"}}},"paths":{"/v2/apps/{platform}/{appId}/icon":{"get":{"summary":"Get app icon by its unique identifier and platform","description":"Get app icon by its unique identifier and platform","tags":["Apps"],"parameters":[{"name":"appId","in":"path","required":true,"description":"Unique identifier for the app.","schema":{"type":"string"}},{"name":"platform","in":"path","required":true,"description":"The platform of the app. Either ios or android","schema":{"type":"string","enum":["ios","android"]}}],"responses":{"307":{"description":"Redirect to the icon image file","headers":{"Location":{"content":{"text/plain":{"schema":{"type":"string","enum":["/app/icon/path"]}}}}}}}}}}}
```

## Get App

> Get an app by its unique identifier.

```json
{"openapi":"3.0.3","info":{"title":"Appetize V2 API Reference","version":"2"},"servers":[{"url":"https://api.appetize.io"}],"security":[{"jwt":[]},{"apiToken":[]}],"components":{"securitySchemes":{"apiToken":{"type":"apiKey","in":"header","name":"X-API-KEY","description":"Use an API token for authentication via X-API-KEY header"}},"schemas":{"App":{"type":"object","required":["appId","latestBuild","platform","created","createdBy","updated","updatedBy"],"properties":{"appId":{"type":"string","description":"The unique identifier for the app. On Android this is the package name, on iOS this is the bundle identifier."},"name":{"type":"string","description":"The latest app name, as specified by the latest version."},"iconUrl":{"type":"string","description":"The latest app icon, as specified by the latest version.","format":"uri"},"latestBuild":{"description":"The latest build number for the app determined by its latest version and build number","allOf":[{"$ref":"#/components/schemas/Build"}]},"platform":{"type":"string","enum":["ios","android"]},"created":{"description":"The date the app was created.","type":"string","format":"date-time"},"createdBy":{"description":"The user who created the app.","type":"string"},"updated":{"description":"The date the app was last updated.","type":"string","format":"date-time"},"updatedBy":{"description":"The user who last updated the app.","type":"string"},"lastPlayed":{"description":"The time the app was last played.","type":"string","format":"date-time"}}},"Build":{"type":"object","required":["id","created"],"properties":{"id":{"type":"string","description":"The unique identifier for the build."},"appId":{"type":"string","description":"The unique identifier for the app build. On Android this is the package name, on iOS this is the bundle identifier."},"platform":{"type":"string","enum":["ios","android"]},"name":{"description":"The app name, as specified by the specific build. This is the CFBundleDisplayName on iOS and the application label on Android.","type":"string"},"iconUrl":{"description":"The app icon, as specified by the specific build.","type":"string","format":"uri"},"versionName":{"description":"The version name, as specified by the build. In Android this is the versionName, in iOS this is the CFBundleShortVersionString.","type":"string"},"buildNumber":{"description":"The build number, as specified by the build. In Android this is the versionCode, in iOS this is the CFBundleVersion.","type":"string"},"tags":{"description":"The tags associated with the app version.","type":"array","items":{"type":"string"}},"note":{"description":"The note associated with the app version.","type":"string"},"created":{"description":"The date the build was created.","type":"string","format":"date-time"},"createdBy":{"description":"The user who created the build.","type":"string"},"updated":{"description":"The date the build was last updated.","type":"string","format":"date-time"},"updatedBy":{"description":"The user who last updated the build.","type":"string"},"lastPlayed":{"description":"The time the build was last played.","type":"string","format":"date-time"},"metadata":{"description":"The platform specific metadata associated with the build.","oneOf":[{"type":"object","properties":{"android":{"$ref":"#/components/schemas/AndroidMetadata"}}},{"type":"object","properties":{"ios":{"$ref":"#/components/schemas/IosMetadata"}}}]}}},"AndroidMetadata":{"type":"object","properties":{"packageName":{"type":"string"},"name":{"type":"string"},"versionName":{"type":"string"},"versionCode":{"type":"integer","format":"int64"},"minSDKVersion":{"type":"integer","format":"int32"},"targetSDKVersion":{"type":"integer","format":"int32"},"architectures":{"type":"array","items":{"type":"string"}},"permissions":{"type":"array","items":{"type":"string"}},"localizations":{"type":"array","items":{"type":"string"}}}},"IosMetadata":{"type":"object","properties":{"CFBundleId":{"type":"string"},"CFBundleName":{"type":"string"},"CFBundleDisplayName":{"type":"string"},"MinimumOSVersion":{"type":"string"},"DTPlatformName":{"type":"string"},"CFBundleVersion":{"type":"string"},"CFBundleShortVersionString":{"type":"string"},"CFBundleSupportedPlatforms":{"type":"array","items":{"type":"string"}},"UIRequiredDeviceCapabilities":{"type":"array","items":{"type":"string"}},"DTSDKName":{"type":"string"},"UsageDescriptions":{"type":"object","additionalProperties":{"anyOf":[{"type":"string"},{"type":"object","additionalProperties":{"type":"string"}}]}},"UISupportedInterfaceOrientations":{"type":"array","items":{"type":"string"}},"UISupportedInterfaceOrientationsIpad":{"type":"array","items":{"type":"string"}},"CFBundleURLTypes":{"type":"array","items":{"$ref":"#/components/schemas/CfBundleUrlType"}},"Localizations":{"type":"array","items":{"type":"string"}},"Frameworks":{"type":"array","items":{"type":"string"}},"Architectures":{"type":"array","items":{"type":"string"}}}},"CfBundleUrlType":{"type":"object","properties":{"CFBundleURLName":{"type":"string"},"CFBundleURLSchemes":{"type":"array","items":{"type":"string"}}}},"Error":{"type":"object","properties":{"message":{"description":"Error message.","type":"string"}}}}},"paths":{"/v2/apps/{platform}/{appId}":{"get":{"summary":"Get App","tags":["Apps"],"description":"Get an app by its unique identifier.","operationId":"getApp","parameters":[{"in":"path","name":"appId","description":"The unique identifier for the app. On Android this is the package name, on iOS this is the bundle identifier.","required":true,"schema":{"type":"string"}},{"in":"path","name":"platform","description":"The platform to filter by","required":true,"schema":{"type":"string","enum":["ios","android"]}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/App"}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## Delete App

> Delete an app by its app identifier. This removes all associated builds.

```json
{"openapi":"3.0.3","info":{"title":"Appetize V2 API Reference","version":"2"},"servers":[{"url":"https://api.appetize.io"}],"security":[{"jwt":[]},{"apiToken":[]}],"components":{"securitySchemes":{"apiToken":{"type":"apiKey","in":"header","name":"X-API-KEY","description":"Use an API token for authentication via X-API-KEY header"}},"schemas":{"Error":{"type":"object","properties":{"message":{"description":"Error message.","type":"string"}}}}},"paths":{"/v2/apps/{platform}/{appId}":{"delete":{"summary":"Delete App","tags":["Apps"],"description":"Delete an app by its app identifier. This removes all associated builds.","operationId":"deleteApp","parameters":[{"in":"path","name":"appId","description":"The unique identifier for the app. On Android this is the package name, on iOS this is the bundle identifier.","required":true,"schema":{"type":"string"}},{"in":"path","name":"platform","description":"The platform to filter by","required":true,"schema":{"type":"string","enum":["ios","android"]}}],"responses":{"204":{"description":"App deleted"},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not Found","content":{"application/json":{}}}}}}}}
```

## List All Versions for a given App

> List all version names of a given app. The default paging limit is 1000 items per page.

```json
{"openapi":"3.0.3","info":{"title":"Appetize V2 API Reference","version":"2"},"servers":[{"url":"https://api.appetize.io"}],"security":[{"jwt":[]},{"apiToken":[]}],"components":{"securitySchemes":{"apiToken":{"type":"apiKey","in":"header","name":"X-API-KEY","description":"Use an API token for authentication via X-API-KEY header"}},"schemas":{"Pagination":{"type":"object","properties":{"total":{"type":"integer","format":"int32"},"nextPage":{"type":"number","nullable":true,"format":"int32"}}},"AppVersionCollection":{"type":"object","required":["versions"],"properties":{"versions":{"type":"array","items":{"type":"string"}}}},"Error":{"type":"object","properties":{"message":{"description":"Error message.","type":"string"}}}}},"paths":{"/v2/apps/{platform}/{appId}/versions":{"get":{"summary":"List All Versions for a given App","tags":["Apps","Versions"],"description":"List all version names of a given app. The default paging limit is 1000 items per page.","operationId":"listAppVersions","parameters":[{"in":"path","name":"platform","description":"The platform to filter by","required":true,"schema":{"type":"string","enum":["ios","android"]}},{"in":"path","name":"appId","description":"The unique identifier for the app. On Android this is the package name, on iOS this is the bundle identifier.","required":true,"schema":{"type":"string"}},{"in":"query","name":"page","description":"The page number of results","schema":{"type":"integer"}},{"in":"query","name":"limit","description":"The number of items to return per page","schema":{"type":"integer"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Pagination"},{"$ref":"#/components/schemas/AppVersionCollection"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```

## List All Tags for a given App

> List all tags of a given app. The default paging limit is 1000 items per page.

```json
{"openapi":"3.0.3","info":{"title":"Appetize V2 API Reference","version":"2"},"servers":[{"url":"https://api.appetize.io"}],"security":[{"jwt":[]},{"apiToken":[]}],"components":{"securitySchemes":{"apiToken":{"type":"apiKey","in":"header","name":"X-API-KEY","description":"Use an API token for authentication via X-API-KEY header"}},"schemas":{"Pagination":{"type":"object","properties":{"total":{"type":"integer","format":"int32"},"nextPage":{"type":"number","nullable":true,"format":"int32"}}},"TagCollection":{"type":"object","properties":{"tags":{"type":"array","items":{"type":"string"}}}},"Error":{"type":"object","properties":{"message":{"description":"Error message.","type":"string"}}}}},"paths":{"/v2/apps/{platform}/{appId}/tags":{"get":{"summary":"List All Tags for a given App","tags":["Apps","Tags"],"description":"List all tags of a given app. The default paging limit is 1000 items per page.","operationId":"listAppTags","parameters":[{"in":"path","name":"platform","description":"The platform to filter by","required":true,"schema":{"type":"string","enum":["ios","android"]}},{"in":"path","name":"appId","description":"The unique identifier for the app. On Android this is the package name, on iOS this is the bundle identifier.","required":true,"schema":{"type":"string"}},{"in":"query","name":"page","description":"The page number of results","schema":{"type":"integer"}},{"in":"query","name":"limit","description":"The number of items to return per page","schema":{"type":"integer"}}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"allOf":[{"$ref":"#/components/schemas/Pagination"},{"$ref":"#/components/schemas/TagCollection"}]}}}},"400":{"description":"Bad Request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"404":{"description":"Not Found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}}}
```
