# MobilePlatformApplication - admin-graphql - UNION
Version: 2025-01

## Description
You can use the `MobilePlatformApplication` resource to enable
[shared web credentials](https://developer.apple.com/documentation/security/shared_web_credentials) for Shopify iOS apps,
as well as to create [iOS universal link](https://developer.apple.com/ios/universal-links/)
or [Android app link](https://developer.android.com/training/app-links/) verification endpoints for merchant Shopify iOS or Android apps.
Shared web credentials let iOS users access a native app after logging into the respective website in Safari without re-entering
their username and password. If a user changes their credentials in the app, then those changes are reflected in Safari.
You must use a custom domain to integrate shared web credentials with Shopify. With each platform's link system,
users can tap a link to a shop's website and get seamlessly redirected to a merchant's installed app without going
through a browser or manually selecting an app.

For full configuration instructions on iOS shared web credentials,
see the [associated domains setup](https://developer.apple.com/documentation/security/password_autofill/setting_up_an_app_s_associated_domains) technical documentation.

For full configuration instructions on iOS universal links or Android App Links,
see the respective [iOS universal link](https://developer.apple.com/documentation/uikit/core_app/allowing_apps_and_websites_to_link_to_your_content)
or [Android app link](https://developer.android.com/training/app-links) technical documentation.

### Access Scopes
`read_mobile_platform_applications` access scope. Please contact Shopify Support to enable this scope for your app.





## Possible types
* [AndroidApplication](/docs/api/admin-graphql/2025-01/objects/AndroidApplication)
* [AppleApplication](/docs/api/admin-graphql/2025-01/objects/AppleApplication)

## Fields with this union
* [MobilePlatformApplicationConnection.nodes](/docs/api/admin-graphql/2025-01/connections/MobilePlatformApplicationConnection)
* [MobilePlatformApplicationEdge.node](/docs/api/admin-graphql/2025-01/objects/MobilePlatformApplicationEdge)


## Examples
### Get a mobile platform application.
Curl example: "curl -X POST \\\nhttps://your-development-store.myshopify.com/admin/api/2025-01/graphql.json \\\n-H 'Content-Type: application/json' \\\n-H 'X-Shopify-Access-Token: {access_token}' \\\n-d '{\n\"query\": \"query MobilePlatformApplicationQuery { mobilePlatformApplication(id: \\\"gid://shopify/MobilePlatformApplication/1066176000\\\") { ... on AndroidApplication { id applicationId sha256CertFingerprints appLinksEnabled __typename } ... on AppleApplication { id appId universalLinksEnabled appClipApplicationId appClipsEnabled __typename } } }\"\n}'\n"
Node example: "const client = new shopify.clients.Graphql({session});\nconst data = await client.query({\n  data: `query MobilePlatformApplicationQuery {\n    mobilePlatformApplication(id: \"gid://shopify/MobilePlatformApplication/1066176000\") {\n      ... on AndroidApplication {\n        id\n        applicationId\n        sha256CertFingerprints\n        appLinksEnabled\n        __typename\n      }\n      ... on AppleApplication {\n        id\n        appId\n        universalLinksEnabled\n        appClipApplicationId\n        appClipsEnabled\n        __typename\n      }\n    }\n  }`,\n});\n"
Ruby example: "session = ShopifyAPI::Auth::Session.new(\n  shop: \"your-development-store.myshopify.com\",\n  access_token: access_token\n)\nclient = ShopifyAPI::Clients::Graphql::Admin.new(\n  session: session\n)\n\nquery = <<~QUERY\n  query MobilePlatformApplicationQuery {\n    mobilePlatformApplication(id: \"gid://shopify/MobilePlatformApplication/1066176000\") {\n      ... on AndroidApplication {\n        id\n        applicationId\n        sha256CertFingerprints\n        appLinksEnabled\n        __typename\n      }\n      ... on AppleApplication {\n        id\n        appId\n        universalLinksEnabled\n        appClipApplicationId\n        appClipsEnabled\n        __typename\n      }\n    }\n  }\nQUERY\n\nresponse = client.query(query: query)\n" 
Remix example: "const { admin } = await authenticate.admin(request);\n\nconst response = await admin.graphql(\n  `#graphql\n  query MobilePlatformApplicationQuery {\n    mobilePlatformApplication(id: \"gid://shopify/MobilePlatformApplication/1066176000\") {\n      ... on AndroidApplication {\n        id\n        applicationId\n        sha256CertFingerprints\n        appLinksEnabled\n        __typename\n      }\n      ... on AppleApplication {\n        id\n        appId\n        universalLinksEnabled\n        appClipApplicationId\n        appClipsEnabled\n        __typename\n      }\n    }\n  }`,\n);\n\nconst data = await response.json();\n"
Graphql query: "query MobilePlatformApplicationQuery {\n  mobilePlatformApplication(id: \"gid://shopify/MobilePlatformApplication/1066176000\") {\n    ... on AndroidApplication {\n      id\n      applicationId\n      sha256CertFingerprints\n      appLinksEnabled\n      __typename\n    }\n    ... on AppleApplication {\n      id\n      appId\n      universalLinksEnabled\n      appClipApplicationId\n      appClipsEnabled\n      __typename\n    }\n  }\n}"
#### Graphql Input
null
#### Graphql Response
{
  "data": {
    "mobilePlatformApplication": {
      "id": "gid://shopify/MobilePlatformApplication/1066176000",
      "applicationId": "androidfake.org.domain.com",
      "sha256CertFingerprints": [
        "A1:B2:C3:D4"
      ],
      "appLinksEnabled": true,
      "__typename": "AndroidApplication"
    }
  }
}