# Samsung Galaxy Store Apps Scraper (`maximedupre/samsung-galaxy-store`) Actor

Look up known Samsung Galaxy Store apps by package ID or exact app-detail URL. Get localized titles, descriptions, IDs, public links, locale data, and availability in a structured dataset.

- **URL**: https://apify.com/maximedupre/samsung-galaxy-store.md
- **Developed by:** [Maxime Dupré](https://apify.com/maximedupre) (community)
- **Categories:** Developer tools, Marketing, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.10 / 1,000 app metadata

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

### 📱 Samsung Galaxy Store app metadata for known apps

For Android app teams, ASO researchers, and developers, this Actor looks up known Samsung Galaxy Store apps from package IDs or exact public app-detail URLs. It returns localized titles and descriptions, stable app IDs, public links, alternate locale pages, and requested-locale availability in structured dataset records.

Use it for Samsung Galaxy apps and Samsung apps for Android when you already know the package ID or app page. It reads public metadata; it does not download a Galaxy Store APK or install a Galaxy Store update.

**Use cases**

- Look up one known app from an exact **[Galaxy Store App Detail Url](https://apify.com/maximedupre/samsung-galaxy-store/examples/galaxy-store-app-detail-url)**.
- Find a known app with a **[Galaxy Store Package Id Lookup](https://apify.com/maximedupre/samsung-galaxy-store/examples/galaxy-store-package-id-lookup)**.
- Read localized app data with **[Samsung Galaxy Store App Details](https://apify.com/maximedupre/samsung-galaxy-store/examples/samsung-galaxy-store-app-details)**.
- Review known targets as **[Samsung Galaxy Apps](https://apify.com/maximedupre/samsung-galaxy-store/examples/samsung-galaxy-apps)** for one language and country.
- Build a target list for **[Samsung Apps List For Android](https://apify.com/maximedupre/samsung-galaxy-store/examples/samsung-apps-list-for-android)** from known package IDs or app pages.

#### 🧾 Localized Galaxy Store app records

**What you get**

Each successful lookup saves one app record. Core data includes the app title, description, package ID, Store ID, locale details, and extraction time. Public source data can also include a developer website, app icon, Android deep link, alternate locale pages, and canonical, source, and fetched page URLs.

The `locale` object keeps the requested and resolved language and country. `locale.requestedLocaleAvailable` says whether the requested pair had app data, and `locale.outcome` says whether the record uses the requested locale or the chosen US-English fallback. If the same app target is submitted again, the first saved match is kept and later repeats are ignored.

#### ▶️ Run a known Galaxy Store lookup

**Run steps**

1. Choose **Package IDs** or **App detail URLs** in **Target**.
2. Add 1 to 100 known app targets of the type you chose. Use a Samsung package ID or an exact public URL under `https://galaxystore.samsung.com/detail/`.
3. Enter the two-letter language and country codes for the lookup, such as `en` and `us`.
4. Choose **Strict requested locale** or **US-English fallback**. Fallback makes one bounded US-English request only when you choose it and the requested locale is not available.
5. Start the run and open the default dataset to read the app metadata.

#### ⚙️ Input

**Input fields**

| Field | Type | What it does |
| --- | --- | --- |
| `target` | string (select) | Chooses whether the values in `appTargets` are `packageIds` or `appDetailUrls`. Use one type for every value in a run. |
| `appTargets` | array of strings | Lists 1 to 100 known package IDs or exact public Galaxy Store app-detail URLs, based on `target`. |
| `languageCode` | string | Sets the two-letter language code for each lookup, such as `en`. |
| `countryCode` | string | Sets the two-letter country code for each lookup, such as `us`. |
| `fallbackMode` | string (select) | Uses the requested locale only with `strict`, or allows one bounded US-English fallback with `usEnglishFallback`. |

All five input fields are required. There is no empty-target mode: submit at least one known app target, and submit no more than 100 in one run.

**Default input**

This example is copied from a successful current-beta default-input run:

```json
{
  "target": "packageIds",
  "appTargets": [
    "com.sec.android.app.sbrowser"
  ],
  "languageCode": "en",
  "countryCode": "us",
  "fallbackMode": "strict"
}
```

#### 🧾 Output

**Output fields**

The default dataset uses one successful app-record shape for package ID and app-detail URL lookups. Optional fields are included when the public Galaxy Store page provides them.

The `dataset` link in the Output tab opens the default dataset. Each saved item follows the table below.

| Field | Type | What it does |
| --- | --- | --- |
| `title` | string | Public app title in the resolved locale. |
| `description` | string | Public app description in the resolved locale. |
| `packageId` | string | Samsung package ID for the app. |
| `storeId` | string | Stable Galaxy Store ID for the app. |
| `developerWebsite` | string (optional) | Public developer website, when provided by the source. |
| `iconUrl` | string (optional) | Public app icon URL, when provided by the source. |
| `canonicalUrl` | string | Canonical Galaxy Store app-detail page URL. |
| `sourceUrl` | string | Galaxy Store page URL used as the source. |
| `fetchedUrl` | string | Galaxy Store page URL fetched for the record. |
| `androidDeepLink` | string (optional) | Samsung Android link that opens the app, when provided by the source. |
| `alternateLocales` | array of objects | Other public Galaxy Store pages for the same app. |
| `alternateLocales[].languageCode` | string | Two-letter language code for an alternate page. |
| `alternateLocales[].countryCode` | string | Two-letter country code for an alternate page. |
| `alternateLocales[].url` | string | Public Galaxy Store URL for the alternate locale. |
| `locale` | object | Requested and resolved locale details for the record. |
| `locale.requested.languageCode` | string | Two-letter language code chosen for the lookup. |
| `locale.requested.countryCode` | string | Two-letter country code chosen for the lookup. |
| `locale.resolved.languageCode` | string | Two-letter language code used for the returned data. |
| `locale.resolved.countryCode` | string | Two-letter country code used for the returned data. |
| `locale.requestedLocaleAvailable` | boolean | Says whether the requested locale had source data. |
| `locale.outcome` | string | Says whether the record is `available` or uses `fallback`. |
| `extractionTimestamp` | date-time string | Time when the app record was extracted. |

**Example app record**

This is a genuine row from the current beta run for an app-detail URL. The example is shortened: the full `alternateLocales` array is replaced by the JSON string `"..."`.

```json
{
  "title": "Samsung Browser",
  "description": "Samsung Browser provides the best web browsing experience for you with Video Assistant, Dark Mode, Customize menu, Extensions such as Translator, and by protecting your privacy with Secret mode, Sm...",
  "packageId": "com.sec.android.app.sbrowser",
  "storeId": "com.sec.android.app.sbrowser",
  "canonicalUrl": "https://galaxystore.samsung.com/detail/com.sec.android.app.sbrowser?cntyCd=USA",
  "sourceUrl": "https://galaxystore.samsung.com/detail/com.sec.android.app.sbrowser?langCd=en&cntyCd=USA",
  "fetchedUrl": "https://galaxystore.samsung.com/detail/com.sec.android.app.sbrowser?langCd=en&cntyCd=USA",
  "alternateLocales": "...",
  "locale": {
    "requested": {
      "languageCode": "en",
      "countryCode": "us"
    },
    "resolved": {
      "languageCode": "en",
      "countryCode": "us"
    },
    "requestedLocaleAvailable": true,
    "outcome": "available"
  },
  "extractionTimestamp": "2026-08-03T17:40:56.923Z",
  "developerWebsite": "http://galaxystore.samsung.com/",
  "iconUrl": "https://img.samsungapps.com/productNew/000005046627/ENG/IconImage_20260630060927116_NEW_WAP_ICON_512_512.png",
  "androidDeepLink": "samsungapps://ProductDetail/com.sec.android.app.sbrowser?gsw_source=GSWebToDetail"
}
```

#### 💳 Pricing

**How charges work**

This Actor uses pay-per-event pricing. The primary event covers one successful app metadata record saved to the dataset. Current rates depend on your Apify plan and are shown in the Pricing tab.

#### 🔌 Integrations

**Video**

https://www.youtube.com/watch?v=bNACk1\_S\_6w\&list=PLObrtcm1Kw6MUrlLNDbK9QRg8VDJg0gOW\&index=4

**Apify access**

Open the default dataset in Apify after a run, or read it through the Apify API. You can also schedule repeated runs in Apify when you need to check known apps over time.

#### ❓ FAQ

##### Can it search the whole Galaxy Store?

No. It does not search by app name, crawl categories, or provide rankings. Submit a known package ID or an exact public app-detail URL.

##### Should I submit a package ID or an app-detail URL?

Choose one target type per run. Use package IDs for known Samsung package values, or use exact public Galaxy Store app-detail URLs. Run the Actor again when you need the other type.

##### What happens when the requested locale is not available?

Strict mode keeps the requested locale. If you choose `usEnglishFallback`, a successful fallback can return US English and set `locale.outcome` to `fallback`; `locale.requestedLocaleAvailable` stays `false`.

##### Why does the record include alternate locale pages?

`alternateLocales` lists public pages that the source exposes for other language and country pairs. It is separate from the locale used for the returned app data.

##### Does it return Galaxy Store APK files, ratings, or reviews?

No. It returns public app metadata and links. It does not download APK files or provide app ratings, reviews, install counts, or download files.

##### Can I submit Google Play URLs?

No. URL scope is limited to public Galaxy Store app-detail pages. For Google Play data, use a Google Play Store scraper.

##### How are duplicate app targets handled?

If the same app target appears again, the first saved match is kept and later repeats are ignored. One saved record does not merge evidence from later submitted values.

##### Is this an official Samsung API?

No. This is an Apify Actor, not a Samsung API or official Samsung integration. It reads public Galaxy Store pages through Apify.

### 📝 Changelog

**0.0: Initial release**

### 🆘 Support

For issues, questions, or feature requests, [file a ticket](https://console.apify.com/actors/maximedupre~samsung-galaxy-store/issues) and I'll fix or implement it in less than 24h 🫡

### 🔗 Related Actors

- [Google Play Store Scraper](https://apify.com/maximedupre/google-play-store-scraper) — Compare known Samsung app metadata with Google Play app data for cross-platform checks.
- [Apple App Store Scraper](https://apify.com/maximedupre/apple-app-store-scraper) — Compare Android and iOS app metadata for mobile market research.
- [App Store Ratings Scraper](https://apify.com/maximedupre/app-store-ratings-scraper) — Compare app ratings and metadata across Google Play and Apple App Store targets.
- [Samsung Galaxy Store Apps Scraper](https://apify.com/automation-lab/samsung-galaxy-store-apps-scraper) — Compare another known-app Galaxy Store extraction workflow for localized metadata.
- [Appstore Aso Localizer](https://apify.com/aluminum_jam/appstore-aso-localizer) — Translate and optimize app-store metadata for localization work after collection.

**Made with ❤️ by Maxime Dupré**

# Actor input Schema

## `target` (type: `string`):

Choose how to identify the apps in this run. Use the same type for every value in App targets. Run the Actor again to use the other type.

## `appTargets` (type: `array`):

Enter 1 to 100 known app targets. Use a package ID such as com.sec.android.app.sbrowser or an exact public Galaxy Store app-detail URL such as https://galaxystore.samsung.com/detail/com.sec.android.app.sbrowser. Choose the matching type in Target.

## `languageCode` (type: `string`):

Set the two-letter language code for each lookup, such as en.

## `countryCode` (type: `string`):

Set the two-letter country code for each lookup, such as us.

## `fallbackMode` (type: `string`):

Choose strict requested-locale behavior, or allow one bounded US-English fallback when the requested locale is not available.

## Actor input object example

```json
{
  "target": "packageIds",
  "appTargets": [
    "com.sec.android.app.sbrowser"
  ],
  "languageCode": "en",
  "countryCode": "us",
  "fallbackMode": "strict"
}
```

# Actor output Schema

## `dataset` (type: `string`):

Successful app metadata from the default dataset.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "target": "packageIds",
    "appTargets": [
        "com.sec.android.app.sbrowser"
    ],
    "languageCode": "en",
    "countryCode": "us",
    "fallbackMode": "strict"
};

// Run the Actor and wait for it to finish
const run = await client.actor("maximedupre/samsung-galaxy-store").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "target": "packageIds",
    "appTargets": ["com.sec.android.app.sbrowser"],
    "languageCode": "en",
    "countryCode": "us",
    "fallbackMode": "strict",
}

# Run the Actor and wait for it to finish
run = client.actor("maximedupre/samsung-galaxy-store").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "target": "packageIds",
  "appTargets": [
    "com.sec.android.app.sbrowser"
  ],
  "languageCode": "en",
  "countryCode": "us",
  "fallbackMode": "strict"
}' |
apify call maximedupre/samsung-galaxy-store --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=maximedupre/samsung-galaxy-store",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/rPsn2GpthmD70COEn/builds/O7dHwvTkWJBzOHkSy/openapi.json
