Default App Clip Experience Localizations
Get the header image ID for an App Clip default experience localization
Read related IDs directly, without Apple’s resource-type envelope. The response contains only the related ID.
/app-clip-default-experiences/{experienceId}/localizations/{locale}/app-clip-header-image/idProposed · Extended read design · Adapter not implemented
Request
Routes are relative to your connection. Use a facade API key; the service manages Apple authentication.
BASE='https://asc.example.com/v1/connections/conn_example'
curl --fail-with-body "$BASE/app-clip-default-experiences/experience_123/localizations/en-US/app-clip-header-image/id" \
-H "Authorization: Bearer $ASC_FACADE_KEY"const base = "https://asc.example.com/v1/connections/conn_example";
const response = await fetch(`${base}/app-clip-default-experiences/experience_123/localizations/en-US/app-clip-header-image/id`, {
headers: { Authorization: `Bearer ${process.env.ASC_FACADE_KEY}` }
});
const body = await response.json();
if (!response.ok) {
throw new Error(body.error?.message ?? `HTTP ${response.status}`);
}
console.log(body);import json
import os
from urllib.request import Request, urlopen
from urllib.error import HTTPError
base = "https://asc.example.com/v1/connections/conn_example"
request = Request(
f"{base}/app-clip-default-experiences/experience_123/localizations/en-US/app-clip-header-image/id",
headers={"Authorization": f"Bearer {os.environ['ASC_FACADE_KEY']}"},
)
try:
with urlopen(request) as response:
print(json.load(response))
except HTTPError as error:
detail = json.load(error)
raise RuntimeError(detail["error"]["message"]) from errorasc.example.com is a placeholder for your deployment. Examples use fictional IDs.
Path parameters
| Name | Type | Description |
|---|---|---|
| experienceId | string | The selected resource’s ID. |
| locale | string | The exact locale to read. No fallback to a different locale. |
Response
A plain ID object. An empty optional relationship returns id: null; an upstream error remains an error.
{
"id": "app_clip_header_image_123"
}Illustrative response. Optional read fields may be absent or null; unknown enum values are preserved.
Response fields
| Name | Type | Description |
|---|---|---|
| id | string | null | Apple’s resource ID. Keep this string unchanged when addressing a resource. |
Behavior
- Resolve the exact locale within the selected parent, validate ownership, and read the resolved localization. No match returns localization_not_found; multiple matches return ambiguous_selection. GET does not create a locale or substitute another language.
Errors
| HTTP | Type | Description |
|---|---|---|
| 400 | invalid_query | Unsupported filter, sort, limit, or cursor. |
| 401 | unauthorized | Missing or invalid facade API key. |
| 403 | forbidden / upstream_forbidden | The caller or configured Apple key cannot read this resource. |
| 404 | localization_not_found | The requested resource, parent, or exact locale is absent or outside the caller’s scope. |
| 409 | ambiguous_selection | More than one localization matches the selected parent and locale. |
| 429 | rate_limited | A facade or Apple rate limit was reached. Respect Retry-After when returned. |
| 502–504 | upstream error | Apple authentication, response parsing, availability, or timeout failure; this is not an empty result. |
Apple mapping
Upstream route and translation
The adapter calls GET /v1/appClipDefaultExperienceLocalizations/{id}/relationships/appClipHeaderImage. Read Apple’s original endpoint ↗
Resolve the parent’s localization collection using the exact locale, validate ownership, and then supply the resolved ID to this Apple endpoint.
Keep the related ID values and remove Apple’s resource-type objects. Collections use the facade cursor rather than an upstream pagination URL.
Reviewed 2026-10-14 · OpenAPI 4.5.1