Two numbers move underneath شام كولد - Sham Gold every minute the market is open: the gram price of gold across karats, and a row of foreign currencies quoted against the Turkish Lira. The app's own description calls the updates live, which is the whole reason a third party wants the feed — not the screen, the stream behind it. The screen is read-only and account-free, so the integration problem is narrow and pleasant: find the request the app makes for its quotes, learn its shape, and turn that into something you can poll on your own terms.
Because there are no logins, statements, or per-user records here, the value sits entirely in the price payload and how fresh it is. Our recommendation is the direct one: capture the app's quote request under your authorization, document it, and ship a small normalized service that re-exposes gold and currency rates as clean JSON. That is the route below, and it is the one we would build first because it matches exactly what the app actually does — nothing speculative bolted on.
What the feed carries
The payload splits cleanly into two families. Metal quotes are keyed by karat; the listing describes gold priced across karats, and Turkish market trackers commonly publish 24K, 22K and 18K gram rates, so expect quotes at that granularity. The currency side is a set of pairs against the Turkish Lira. Both come with a freshness marker.
| Data domain | Where it shows up in the app | Granularity | What an integrator does with it |
|---|---|---|---|
| Gold by karat | Main price list, per-karat rows | Per karat, gram-denominated, per refresh | Drive a jewellery or buyback pricing screen; alert on a karat crossing a threshold |
| Currency vs TRY | Foreign-exchange section | Per currency pair, bid/ask if exposed | Feed a remittance or conversion tool aimed at the Turkey market |
| Update timestamp | Implicit in the "live" refresh | Per fetch | Detect staleness and gate downstream caching |
| Quote identifiers | Internal keys per instrument | String/numeric codes | Map app instruments to your own symbol table for a stable join |
Historical series are not described in the listing and we do not assume one exists; if you need history, the honest answer is that you accumulate it yourself by recording the live feed over time, and we can stand that recorder up as part of the work.
On the wire
What the work produces first is a precise description of the single request the app makes to refresh its quotes. The sketch below reflects the shape we expect to confirm during the build — a polled JSON endpoint, an app-level token rather than a user login, and a payload that separates metal from currency. Field names get pinned to what the running app actually sends.
GET /api/v1/quotes?market=TRY HTTP/1.1
Host: feed.<sham-gold-backend> # resolved during capture
X-App-Token: <app-level token, no user account>
Accept: application/json
200 OK
{
"as_of": "2026-06-04T11:42:07Z", # freshness marker, normalized to UTC
"gold": [
{ "karat": 24, "unit": "gram", "buy": 4180.5, "sell": 4192.0, "ccy": "TRY" },
{ "karat": 22, "unit": "gram", "buy": 3832.0, "sell": 3844.5, "ccy": "TRY" },
{ "karat": 18, "unit": "gram", "buy": 3135.0, "sell": 3146.0, "ccy": "TRY" }
],
"fx": [
{ "pair": "USD/TRY", "buy": 32.41, "sell": 32.55 },
{ "pair": "EUR/TRY", "buy": 35.02, "sell": 35.20 }
]
}
# client handling we ship:
# - retry with backoff on 429/5xx, honour any cache header
# - reject a payload whose as_of is older than the measured refresh window
# - schema assertion: karat in known set, numbers parse, pair matches /^[A-Z]{3}\/TRY$/
The numbers above are placeholders for illustration; the structure, the auth style, and the split between gold and fx are what we lock down against the live app. If the real endpoint nests differently, the parser follows the real one.
What you get back
Delivery is a small, self-contained package, not a slide deck. Concretely, for this app:
- An OpenAPI description of the normalized service: a
/goldresource keyed by karat and a/fxresource keyed by pair, each with theas_offreshness field. - A protocol and auth-flow report covering the captured quote request — host, token handling, headers, and how the app decides a quote is fresh.
- Runnable source for the fetch-normalize-serve loop in Python or Node.js, whichever you deploy, including the schema assertions shown above.
- Automated tests: a contract test against a recorded fixture, plus a live smoke test that flags a shape change.
- Interface documentation and short KVKK-aware notes on what is logged and what is discarded.
If you take the hosted option instead, you skip the source and just call our endpoints for the same two resources.
Ways in
Authorized protocol analysis of the quote request
This is the route we would actually build. Under your authorization we observe the request the app makes for its quotes, document the structure, and reimplement it as a clean, polled service. Reachable: the full gold-by-karat and currency-vs-TRY payload plus its freshness marker. Effort is modest because there is no account flow to model. Durability is good as long as we keep a re-validation check running for app updates. We arrange the capture environment with you during onboarding — a device or emulator running the app under observation.
User-consented device or session access
If the backend issues any device or app-instance token, we treat acquiring and refreshing it as part of the consented setup rather than something you hand us up front. For a feed this simple the token is usually app-level and short to handle, but we account for refresh if it expires.
Upstream reconstruction as a fallback
Gold and TRY rates are also published by independent market sources. Where you need a guaranteed-available figure regardless of the app's own state, we can blend a public market source to fill gaps. This is a backstop, not the primary feed, because it will not be byte-identical to what the app shows its users.
Freshness and how we poll
A price feed is only worth what its latency lets you promise. We measure the real refresh cadence before choosing a poll interval, respect any cache or rate-limit signal the server sends, and stamp every record with the server's own as_of normalized to UTC. Downstream you get an explicit staleness flag rather than a silently old number, which matters when the Lira moves fast and a minute-old gold quote is already wrong.
Consent and KVKK
Quotes are market data, not personal data, so most of this feed sits outside personal-data rules entirely. The frame that does apply, given the Turkish Lira market, is Turkey's Personal Data Protection Law No. 6698 (KVKK), and it bites only where integration touches a device or session identifier. There we apply KVKK's data-minimization principle directly: collect the token needed to make the request work, keep nothing else, and log access rather than payload identifiers. Work runs under your written authorization to analyze the interface, with an NDA where you want one, and access records are retained so the chain is auditable.
Engineering notes
A few specifics we account for on this app rather than hand to you as homework:
- We pin the karat set and FX symbol table to what the running app emits, because a tracker like this can quietly add or drop a karat tier or a currency pair between releases; a contract test fails loudly when the set changes instead of letting a missing row slip through silent.
- We design the poll loop around the measured refresh window so the feed stays fresh without tripping rate limits — for an account-free public-style quote endpoint, polite polling is the difference between a stable integration and a blocked one.
- We normalize every quote's timestamp to UTC and carry it through, since an Arabic-market app may stamp times in a local zone and a downstream consumer comparing gold ticks needs one clock.
- We wire a re-check into maintenance for when a new app version reshapes the payload, so a front-end change becomes a flagged test rather than a silent data outage.
Cost and how we work
The gold-and-currency normalizer for this app is a one-to-two-week build. Source-code delivery starts at $300: you receive the runnable fetch-normalize-serve service, the OpenAPI description, tests and docs, and you pay after delivery once it runs the way you need. The alternative is the hosted route — you call our endpoints for the /gold and /fx resources and pay per call, with nothing up front. Tell us the app and what you want out of its feed and we handle the capture setup, the authorization, and the build. Start the conversation on the contact page and we will scope it back to you.
How this was checked
Worked through the app's Play Store description for its stated features and the live-update behaviour, cross-read Turkish gold-market trackers to sanity-check the karat tiers and the Lira framing, and confirmed the applicable data regime against Turkey's data-protection authority. Sources opened: the Play Store listing for com.toiall.gold_sham, GoldRate24's Turkey gold-by-karat page, and the KVKK statement on Law No. 6698.
OpenBanking Studio integration desk — feed mapping, June 2026.
Comparable apps
Other trackers in the same gold-and-currency space, listed to widen the picture rather than rank them. Each holds a similar price payload, and a unified integration would normalize all of them behind one schema.
- Harem Altın - Gold & Currency — Turkish gold dealer's app with live international and local gold, multiple karats, and currency rates against the Lira.
- Gold Price in Middle East — bilingual Arabic/English tracker covering gulf-country gold rates in local currencies.
- Gold Price UAE - Live Tracker — 24K/22K/21K/18K rates in AED with historical charts and a Zakat calculator.
- AYAR Gold Live Prices — bilingual price tracker and portfolio tool with a gold-value and Zakat calculator.
- Dubai Gold Price App — focused on Dubai and UAE gold rates with frequent refresh.
- Altın Fiyatları (livepriceofgold) — Turkey-focused live gold rates in Turkish Lira across units.
- GoldPrice.org app — global gold charts in many national currencies, including TRY.
- GoldBroker mobile app — gold and silver price charts and precious-metals news across currencies.
Questions integrators ask
How often does Sham Gold's gold and currency data actually change?
Its listing describes live updates, so the feed behaves as a frequently-refreshed tick stream rather than a once-a-day publish. During the build we measure the real refresh cadence and the server cache headers, then size the poll interval to that rhythm instead of hammering the endpoint.
Can you separate the gold-by-karat prices from the Turkish Lira currency rates?
Yes. The two are distinct domains in the payload: metal quotes keyed by karat, and foreign-currency pairs quoted against the Turkish Lira. We model them as separate resources in the normalized schema so you can subscribe to one without the other.
Which data-protection regime applies when the app targets the Turkish Lira market?
Turkey's Personal Data Protection Law No. 6698 (KVKK) is the relevant frame. The feed itself is market data and not personal data, but where any device or session identifier is touched during integration we apply KVKK's data-minimization principle and keep nothing we do not need.
What happens to the integration if Sham Gold changes its app and feed format?
Field names and quote structures drift over app versions. We pin the parser to the observed schema, add a contract test that fails loudly on a shape change, and the maintenance arrangement covers re-mapping when a new release moves things around.
App profile
شام كولد - Sham Gold is an Arabic-language gold and currency price tracker (package com.toiall.gold_sham, per its Play Store listing). It shows live gold prices by karat and foreign-currency exchange rates against the Turkish Lira, with a light, low-data interface aimed at traders, investors and market followers. The listing states prices are informational only, that the app gives no investment advice, and that it does not collect personal information without permission. There is no account or per-user state described — the app reads a shared market feed.