The REST Admin API is a legacy API as of October 1, 2024. Starting April 1, 2025, all new public apps must be built exclusively with the GraphQL Admin API. For details and migration steps, visit our migration guide.
Mobile Platform Application
mobile_platform_applications
access scope.Please contact Shopify Support to enable this scope for your app
You can use the MobilePlatformApplication
resource to enable
shared web credentials for Shopify iOS apps, as well as to create
iOS universal link or Android app link 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 technical documentation.
For full configuration instructions on iOS universal links or Android App Links, see the respective iOS universal link or Android app link technical documentation.
Endpoints
- post/admin/api/latest/mobile_
platform_ applications. json Create a mobile platform application - get/admin/api/latest/mobile_
platform_ applications. json List all of the mobile platform applications associated with the app - get/admin/api/latest/mobile_
platform_ applications/{mobile_ platform_ application_ id}. json Get a mobile platform application - put/admin/api/latest/mobile_
platform_ applications/{mobile_ platform_ application_ id}. json Update a mobile platform application - del/admin/api/latest/mobile_
platform_ applications/{mobile_ platform_ application_ id}. json Delete a mobile platform application
The MobilePlatformApplication resource
Properties
Unique numeric identifier for the mobile platform application.
iOS App ID or Android application ID of the application.
The platform of the application.
The SHA256 fingerprints of the app’s signing certificate. (Android only)
Whether the application supports iOS universal links and Android App Links. If true, then URLs can be set up to link directly to the application. If false, then URLs can't link directly to the application.
Whether the application supports iOS shared web credentials.
Whether the application supports iOS app clips.
iOS App ID of the app clip.
The MobilePlatformApplication resource
Anchor to POST request, Create a mobile platform applicationpostCreate a mobile platform application
Create a mobile platform application
Create a mobile platform application for Android
Create a mobile platform application for Android
Show mobile_platform_application properties
The platform of the application.
iOS App ID or Android application ID of the application.
The SHA256 fingerprints of the app’s signing certificate. (Android only)
Whether the application supports iOS universal links and Android App Links. If true, then URLs can be set up to link directly to the application. If false, then URLs can't link directly to the application.
Create mobile platform application for iOS
Create mobile platform application for iOS
Show mobile_platform_application properties
The platform of the application.
iOS App ID or Android application ID of the application.
Whether the application supports iOS universal links and Android App Links. If true, then URLs can be set up to link directly to the application. If false, then URLs can't link directly to the application.
Whether the application supports iOS shared web credentials.
/admin/api/2025-07/mobile_ platform_ applications. json
Response
examples
Create a mobile platform application for Android
curl -d '{"mobile_platform_application":{"platform":"android","application_id":"com.example","sha256_cert_fingerprints":["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"],"enabled_universal_or_app_links":true}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-07/mobile_platform_applications.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json"
const { admin, session } = await authenticate.admin(request); const mobile_platform_application = new admin.rest.resources.MobilePlatformApplication({session: session}); mobile_platform_application.platform = "android"; mobile_platform_application.application_id = "com.example"; mobile_platform_application.sha256_cert_fingerprints = [ "14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5" ]; mobile_platform_application.enabled_universal_or_app_links = true; await mobile_platform_application.save({ update: true, });
# Session is activated via Authentication test_session = ShopifyAPI::Context.active_session mobile_platform_application = ShopifyAPI::MobilePlatformApplication.new(session: test_session) mobile_platform_application.platform = "android" mobile_platform_application.application_id = "com.example" mobile_platform_application.sha256_cert_fingerprints = [ "14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5" ] mobile_platform_application.enabled_universal_or_app_links = true mobile_platform_application.save!
// Session is built by the OAuth process const mobile_platform_application = new shopify.rest.MobilePlatformApplication({session: session}); mobile_platform_application.platform = "android"; mobile_platform_application.application_id = "com.example"; mobile_platform_application.sha256_cert_fingerprints = [ "14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5" ]; mobile_platform_application.enabled_universal_or_app_links = true; await mobile_platform_application.save({ update: true, });
response
HTTP/1.1 201 Created{"mobile_platform_application":{"id":1066176000,"application_id":"com.example","platform":"android","created_at":"2025-07-01T14:45:21-04:00","updated_at":"2025-07-01T14:45:21-04:00","sha256_cert_fingerprints":["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":false,"enabled_app_clips":false,"app_clip_application_id":null}}
Create mobile platform application for iOS
curl -d '{"mobile_platform_application":{"platform":"ios","application_id":"X1Y2.ca.domain.app","enabled_universal_or_app_links":true,"enabled_shared_webcredentials":true}}' \ -X POST "https://your-development-store.myshopify.com/admin/api/2025-07/mobile_platform_applications.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json"
const { admin, session } = await authenticate.admin(request); const mobile_platform_application = new admin.rest.resources.MobilePlatformApplication({session: session}); mobile_platform_application.platform = "ios"; mobile_platform_application.application_id = "X1Y2.ca.domain.app"; mobile_platform_application.enabled_universal_or_app_links = true; mobile_platform_application.enabled_shared_webcredentials = true; await mobile_platform_application.save({ update: true, });
# Session is activated via Authentication test_session = ShopifyAPI::Context.active_session mobile_platform_application = ShopifyAPI::MobilePlatformApplication.new(session: test_session) mobile_platform_application.platform = "ios" mobile_platform_application.application_id = "X1Y2.ca.domain.app" mobile_platform_application.enabled_universal_or_app_links = true mobile_platform_application.enabled_shared_webcredentials = true mobile_platform_application.save!
// Session is built by the OAuth process const mobile_platform_application = new shopify.rest.MobilePlatformApplication({session: session}); mobile_platform_application.platform = "ios"; mobile_platform_application.application_id = "X1Y2.ca.domain.app"; mobile_platform_application.enabled_universal_or_app_links = true; mobile_platform_application.enabled_shared_webcredentials = true; await mobile_platform_application.save({ update: true, });
response
HTTP/1.1 201 Created{"mobile_platform_application":{"id":1066176002,"application_id":"X1Y2.ca.domain.app","platform":"ios","created_at":"2025-07-01T14:45:23-04:00","updated_at":"2025-07-01T14:45:23-04:00","sha256_cert_fingerprints":[],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":true,"enabled_app_clips":false,"app_clip_application_id":null}}
Anchor to GET request, List all of the mobile platform applications associated with the appgetList all of the mobile platform applications associated with the app
List the mobile platform applications
List all of the mobile platform applications for the app
List all of the mobile platform applications for the app
/admin/api/2025-07/mobile_ platform_ applications. json
Response
examples
List all of the mobile platform applications for the app
curl -X GET "https://your-development-store.myshopify.com/admin/api/2025-07/mobile_platform_applications.json" \ -H "X-Shopify-Access-Token: {access_token}"
await admin.rest.resources.MobilePlatformApplication.all({ session: session, });
# Session is activated via Authentication test_session = ShopifyAPI::Context.active_session ShopifyAPI::MobilePlatformApplication.all( session: test_session, )
// Session is built by the OAuth process await shopify.rest.MobilePlatformApplication.all({ session: session, });
response
HTTP/1.1 200 OK{"mobile_platform_applications":[{"id":1066175998,"application_id":"X1Y2.ca.domain.app","platform":"ios","created_at":"2025-07-01T14:45:19-04:00","updated_at":"2025-07-01T14:45:19-04:00","sha256_cert_fingerprints":[],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":true,"enabled_app_clips":false,"app_clip_application_id":null},{"id":1066175999,"application_id":"com.example","platform":"android","created_at":"2025-07-01T14:45:19-04:00","updated_at":"2025-07-01T14:45:19-04:00","sha256_cert_fingerprints":["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":false,"enabled_app_clips":false,"app_clip_application_id":null}]}
Anchor to GET request, Get a mobile platform applicationgetGet a mobile platform application
Get a mobile platform application
Get a mobile platform application
Get a mobile platform application
/admin/api/2025-07/mobile_ platform_ applications/1066175997. json
Response
examples
Get a mobile platform application
curl -X GET "https://your-development-store.myshopify.com/admin/api/2025-07/mobile_platform_applications/1066175997.json" \ -H "X-Shopify-Access-Token: {access_token}"
await admin.rest.resources.MobilePlatformApplication.find({ session: session, id: 1066175997, });
# Session is activated via Authentication test_session = ShopifyAPI::Context.active_session ShopifyAPI::MobilePlatformApplication.find( session: test_session, id: 1066175997, )
// Session is built by the OAuth process await shopify.rest.MobilePlatformApplication.find({ session: session, id: 1066175997, });
response
HTTP/1.1 200 OK{"mobile_platform_application":{"id":1066175997,"application_id":"X1Y2.ca.domain.app","platform":"ios","created_at":"2025-07-01T14:45:19-04:00","updated_at":"2025-07-01T14:45:19-04:00","sha256_cert_fingerprints":[],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":true,"enabled_app_clips":false,"app_clip_application_id":null}}
Anchor to PUT request, Update a mobile platform applicationputUpdate a mobile platform application
Update a mobile platform application
Update a Mobile Platform Application for Android
Update a Mobile Platform Application for Android
Show mobile_platform_application properties
Unique numeric identifier for the mobile platform application.
iOS App ID or Android application ID of the application.
The platform of the application.
The SHA256 fingerprints of the app’s signing certificate. (Android only)
Whether the application supports iOS universal links and Android App Links. If true, then URLs can be set up to link directly to the application. If false, then URLs can't link directly to the application.
Whether the application supports iOS shared web credentials.
Whether the application supports iOS app clips.
iOS App ID of the app clip.
Update a Mobile Platform Application for iOS
Update a Mobile Platform Application for iOS
Show mobile_platform_application properties
Unique numeric identifier for the mobile platform application.
iOS App ID or Android application ID of the application.
The platform of the application.
The SHA256 fingerprints of the app’s signing certificate. (Android only)
Whether the application supports iOS universal links and Android App Links. If true, then URLs can be set up to link directly to the application. If false, then URLs can't link directly to the application.
Whether the application supports iOS shared web credentials.
Whether the application supports iOS app clips.
iOS App ID of the app clip.
/admin/api/2025-07/mobile_ platform_ applications/1066176001. json
Response
examples
Update a Mobile Platform Application for Android
curl -d '{"mobile_platform_application":{"id":1066176001,"application_id":"com.example.news.app","platform":"android","created_at":"2025-07-01T14:45:21-04:00","updated_at":"2025-07-01T14:45:21-04:00","sha256_cert_fingerprints":["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":false,"enabled_app_clips":false,"app_clip_application_id":null}}' \ -X PUT "https://your-development-store.myshopify.com/admin/api/2025-07/mobile_platform_applications/1066176001.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json"
const { admin, session } = await authenticate.admin(request); const mobile_platform_application = new admin.rest.resources.MobilePlatformApplication({session: session}); mobile_platform_application.id = 1066176001; mobile_platform_application.application_id = "com.example.news.app"; mobile_platform_application.platform = "android"; mobile_platform_application.created_at = "2025-07-01T14:45:21-04:00"; mobile_platform_application.updated_at = "2025-07-01T14:45:21-04:00"; mobile_platform_application.sha256_cert_fingerprints = [ "14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5" ]; mobile_platform_application.enabled_universal_or_app_links = true; mobile_platform_application.enabled_shared_webcredentials = false; mobile_platform_application.enabled_app_clips = false; mobile_platform_application.app_clip_application_id = null; await mobile_platform_application.save({ update: true, });
# Session is activated via Authentication test_session = ShopifyAPI::Context.active_session mobile_platform_application = ShopifyAPI::MobilePlatformApplication.new(session: test_session) mobile_platform_application.id = 1066176001 mobile_platform_application.application_id = "com.example.news.app" mobile_platform_application.platform = "android" mobile_platform_application.created_at = "2025-07-01T14:45:21-04:00" mobile_platform_application.updated_at = "2025-07-01T14:45:21-04:00" mobile_platform_application.sha256_cert_fingerprints = [ "14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5" ] mobile_platform_application.enabled_universal_or_app_links = true mobile_platform_application.enabled_shared_webcredentials = false mobile_platform_application.enabled_app_clips = false mobile_platform_application.app_clip_application_id = nil mobile_platform_application.save!
// Session is built by the OAuth process const mobile_platform_application = new shopify.rest.MobilePlatformApplication({session: session}); mobile_platform_application.id = 1066176001; mobile_platform_application.application_id = "com.example.news.app"; mobile_platform_application.platform = "android"; mobile_platform_application.created_at = "2025-07-01T14:45:21-04:00"; mobile_platform_application.updated_at = "2025-07-01T14:45:21-04:00"; mobile_platform_application.sha256_cert_fingerprints = [ "14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5" ]; mobile_platform_application.enabled_universal_or_app_links = true; mobile_platform_application.enabled_shared_webcredentials = false; mobile_platform_application.enabled_app_clips = false; mobile_platform_application.app_clip_application_id = null; await mobile_platform_application.save({ update: true, });
response
HTTP/1.1 200 OK{"mobile_platform_application":{"application_id":"com.example.news.app","platform":"android","sha256_cert_fingerprints":["14:6D:E9:83:C5:73:06:50:D8:EE:B9:95:2F:34:FC:64:16:A0:83:42:E6:1D:BE:A8:8A:04:96:B2:3F:CF:44:E5"],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":false,"id":1066176001,"created_at":"2025-07-01T14:45:21-04:00","updated_at":"2025-07-01T14:45:22-04:00","enabled_app_clips":false,"app_clip_application_id":null}}
Update a Mobile Platform Application for iOS
curl -d '{"mobile_platform_application":{"id":1066176003,"application_id":"A1B2.ca.domain.app","platform":"ios","created_at":"2025-07-01T14:45:23-04:00","updated_at":"2025-07-01T14:45:23-04:00","sha256_cert_fingerprints":[],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":true,"enabled_app_clips":false,"app_clip_application_id":null}}' \ -X PUT "https://your-development-store.myshopify.com/admin/api/2025-07/mobile_platform_applications/1066176003.json" \ -H "X-Shopify-Access-Token: {access_token}" \ -H "Content-Type: application/json"
const { admin, session } = await authenticate.admin(request); const mobile_platform_application = new admin.rest.resources.MobilePlatformApplication({session: session}); mobile_platform_application.id = 1066176003; mobile_platform_application.application_id = "A1B2.ca.domain.app"; mobile_platform_application.platform = "ios"; mobile_platform_application.created_at = "2025-07-01T14:45:23-04:00"; mobile_platform_application.updated_at = "2025-07-01T14:45:23-04:00"; mobile_platform_application.sha256_cert_fingerprints = []; mobile_platform_application.enabled_universal_or_app_links = true; mobile_platform_application.enabled_shared_webcredentials = true; mobile_platform_application.enabled_app_clips = false; mobile_platform_application.app_clip_application_id = null; await mobile_platform_application.save({ update: true, });
# Session is activated via Authentication test_session = ShopifyAPI::Context.active_session mobile_platform_application = ShopifyAPI::MobilePlatformApplication.new(session: test_session) mobile_platform_application.id = 1066176003 mobile_platform_application.application_id = "A1B2.ca.domain.app" mobile_platform_application.platform = "ios" mobile_platform_application.created_at = "2025-07-01T14:45:23-04:00" mobile_platform_application.updated_at = "2025-07-01T14:45:23-04:00" mobile_platform_application.sha256_cert_fingerprints = [] mobile_platform_application.enabled_universal_or_app_links = true mobile_platform_application.enabled_shared_webcredentials = true mobile_platform_application.enabled_app_clips = false mobile_platform_application.app_clip_application_id = nil mobile_platform_application.save!
// Session is built by the OAuth process const mobile_platform_application = new shopify.rest.MobilePlatformApplication({session: session}); mobile_platform_application.id = 1066176003; mobile_platform_application.application_id = "A1B2.ca.domain.app"; mobile_platform_application.platform = "ios"; mobile_platform_application.created_at = "2025-07-01T14:45:23-04:00"; mobile_platform_application.updated_at = "2025-07-01T14:45:23-04:00"; mobile_platform_application.sha256_cert_fingerprints = []; mobile_platform_application.enabled_universal_or_app_links = true; mobile_platform_application.enabled_shared_webcredentials = true; mobile_platform_application.enabled_app_clips = false; mobile_platform_application.app_clip_application_id = null; await mobile_platform_application.save({ update: true, });
response
HTTP/1.1 200 OK{"mobile_platform_application":{"application_id":"A1B2.ca.domain.app","platform":"ios","sha256_cert_fingerprints":[],"enabled_universal_or_app_links":true,"enabled_shared_webcredentials":true,"id":1066176003,"created_at":"2025-07-01T14:45:23-04:00","updated_at":"2025-07-01T14:45:24-04:00","enabled_app_clips":false,"app_clip_application_id":null}}
Anchor to DELETE request, Delete a mobile platform applicationdelDelete a mobile platform application
Delete a mobile platform application
Delete a mobile platform application
Delete a mobile platform application
/admin/api/2025-07/mobile_ platform_ applications/1066175996. json
Response
examples
Delete a mobile platform application
curl -X DELETE "https://your-development-store.myshopify.com/admin/api/2025-07/mobile_platform_applications/1066175996.json" \ -H "X-Shopify-Access-Token: {access_token}"
await admin.rest.resources.MobilePlatformApplication.delete({ session: session, id: 1066175996, });
# Session is activated via Authentication test_session = ShopifyAPI::Context.active_session ShopifyAPI::MobilePlatformApplication.delete( session: test_session, id: 1066175996, )
// Session is built by the OAuth process await shopify.rest.MobilePlatformApplication.delete({ session: session, id: 1066175996, });
response
HTTP/1.1 200 OK{}