asc-in-app-events

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

asc in-app events

asc 应用内活动

Use
asc app-events
for the requested stages only. A localization, media upload, or diagnostic request does not authorize creating or submitting another event. Preserve the resolved app, event, platform, locales, and existing authorization.
仅对请求的阶段使用
asc app-events
。本地化、媒体上传 或诊断请求并不构成创建或提交另一个活动的授权。 保持已解析的应用、活动、平台、语言区域和现有授权不变。

Inspect the target

检查目标

Check
asc app-events --help
and the relevant subcommand help before execution. Resolve the app ID and auth profile; inspect an existing event before changing it:
bash
asc app-events list --app "APP_ID" --paginate --output json
asc app-events view --event-id "EVENT_ID" --output json
asc app-events localizations list --event-id "EVENT_ID" --paginate --output json
Use explicit
--output json
when parsing results; output defaults are TTY-aware. Keep event IDs and localization IDs distinct.
执行前检查
asc app-events --help
和相关子命令的帮助。 解析应用 ID 和认证配置;在更改现有活动之前先检查该活动:
bash
asc app-events list --app "APP_ID" --paginate --output json
asc app-events view --event-id "EVENT_ID" --output json
asc app-events localizations list --event-id "EVENT_ID" --paginate --output json
解析结果时,请显式使用
--output json
;默认输出会根据 TTY 环境调整格式。 请区分活动 ID 和本地化 ID。

Prepare and create

准备并创建

  • Choose the event badge and intended territories. Check help for accepted
    --event-type
    ,
    --purpose
    , and
    --purchase-requirement
    values; do not infer that every value described in App Store Connect is supported by the CLI.
  • Set future RFC 3339 dates: start before end, duration from 15 minutes to 31 days, and publish start no more than 14 days before the event and no later than start. The CLI parses timestamps but does not enforce all of Apple's schedule rules.
  • Provide a deep link that opens the event's destination. Test the universal link or custom URL scheme in the intended app build; a registered scheme alone does not prove the destination works. Creation without a deep link can succeed even though the event is not ready for review.
Replace the date variables with the agreed schedule before creating:
bash
asc app-events create \
  --app "APP_ID" --name "Summer Challenge" --event-type CHALLENGE \
  --start "$START_RFC3339" --end "$END_RFC3339" \
  --publish-start "$PUBLISH_START_RFC3339" \
  --deep-link "myapp://event/summer" --primary-locale en-US \
  --purchase-requirement NO_COST_ASSOCIATED \
  --priority NORMAL --purpose APPROPRIATE_FOR_ALL_USERS --output json
--name
is the internal reference name, limited to 64 characters. Retain the returned event ID. For an existing event, use
asc app-events update
instead of creating a replacement; check its help for the fields being changed.
  • 选择活动徽章和目标地区。查看帮助,了解受支持的
    --event-type
    、
    --purpose
    和
    --purchase-requirement
    值;不要推断 App Store Connect 中描述的每个值都受 CLI 支持。
  • 设置未来的 RFC 3339 日期:开始时间早于结束时间,时长为 15 分钟至 31 天, 发布开始时间最多比活动开始时间早 14 天,且不得晚于开始时间。 CLI 会解析时间戳,但不会执行 Apple 的所有日程规则。
  • 提供可打开活动目标页面的 deep link。在目标应用构建版本中测试 universal link 或自定义 URL scheme;仅注册 scheme 并不能证明目标页面可用。 未提供 deep link 也可能成功创建活动,但该活动仍不处于可审核状态。
创建前,将日期变量替换为约定的时间安排:
bash
asc app-events create \
  --app "APP_ID" --name "Summer Challenge" --event-type CHALLENGE \
  --start "$START_RFC3339" --end "$END_RFC3339" \
  --publish-start "$PUBLISH_RFC3339" \
  --deep-link "myapp://event/summer" --primary-locale en-US \
  --purchase-requirement NO_COST_ASSOCIATED \
  --priority NORMAL --purpose APPROPRIATE_FOR_ALL_USERS --output json
--name
是内部参考名称,长度上限为 64 个字符。保留返回的 活动 ID。对于现有活动,请使用
asc app-events update
,而不是创建替代活动; 查看其帮助以确认要更改的字段。

Localize and upload media

本地化并上传媒体

Create only missing, requested localizations. Displayed names allow 30 characters, short descriptions 50, and long descriptions 120. Use
asc app-events localizations update --localization-id "LOC_ID"
for an existing localization, supplying the text flags that need changing.
bash
asc app-events localizations create \
  --event-id "EVENT_ID" --locale en-US --name "Summer Challenge" \
  --short-description "Win three duels a day." \
  --long-description "Play every day during the challenge to earn the summer badge."

asc app-events screenshots create \
  --event-id "EVENT_ID" --locale en-US \
  --path "./event-card.png" --asset-type EVENT_CARD
asc app-events screenshots create \
  --event-id "EVENT_ID" --locale en-US \
  --path "./event-details.png" --asset-type EVENT_DETAILS_PAGE
Use
--localization-id "LOC_ID"
instead of
--event-id
plus
--locale
when the localization is already resolved. Video uploads use
asc app-events video-clips create
; inspect its help for asset types and
--preview-frame-time-code
.
To reuse existing Asset Library media, use
asc app-events localizations placements
with the event localization ID and
EVENT_CARD_ASSET
or
EVENT_DETAILS_PAGE_ASSET
. Follow the Asset Library workflow for upload, delivery, and placement checks; a placement does not submit the event.
Use JPG/JPEG/PNG images, at most 500 MB each. Export opaque images without alpha channels for upload compatibility. Apple specifies these dimensions:
AssetAspect ratioMinimumMaximum
EVENT_CARD
16:91920 × 10803840 × 2160
EVENT_DETAILS_PAGE
9:161080 × 19202160 × 3840
Avoid embedded text or logos where possible. Account for crops, gradients, and App Store controls; inspect the App Store Connect preview when available rather than assuming a fixed percentage of the image is safe. Verify media for each intended localization; do not assume a locale with translated text inherits missing assets from the primary locale. See Apple's media specifications and presentation guidance.
仅创建缺失且已请求的本地化。显示名称最多 30 个字符, 简短描述最多 50 个字符,详细描述最多 120 个字符。对于现有本地化, 请使用
asc app-events localizations update --localization-id "LOC_ID"
, 并提供需要更改的文本参数。
bash
asc app-events localizations create \
  --event-id "EVENT_ID" --locale en-US --name "Summer Challenge" \
  --short-description "Win three duels a day." \
  --long-description "Play every day during the challenge to earn the summer badge."

asc app-events screenshots create \
  --event-id "EVENT_ID" --locale en-US \
  --path "./event-card.png" --asset-type EVENT_CARD
asc app-events screenshots create \
  --event-id "EVENT_ID" --locale en-US \
  --path "./event-details.png" --asset-type EVENT_DETAILS_PAGE
本地化 ID 已解析时,请使用
--localization-id "LOC_ID"
,而不是同时使用
--event-id
和
--locale
。视频上传使用
asc app-events video-clips create
;查看其帮助以了解素材类型和
--preview-frame-time-code
。
如需复用现有 Asset Library 媒体,请将
asc app-events localizations placements
与活动本地化 ID 以及
EVENT_CARD_ASSET
或
EVENT_DETAILS_PAGE_ASSET
配合使用。 按照 Asset Library 工作流 执行上传、交付和放置检查;放置操作不会提交活动。
请使用 JPG/JPEG/PNG 图像,每个文件最大 500 MB。为保证上传兼容性, 请导出不含 alpha 通道的不透明图像。Apple 规定了以下尺寸:
素材宽高比最小尺寸最大尺寸
EVENT_CARD
16:91920 × 10803840 × 2160
EVENT_DETAILS_PAGE
9:161080 × 19202160 × 3840
尽可能避免在图片中嵌入文字或 Logo。请考虑裁剪、渐变和 App Store 控件; 如可用,请检查 App Store Connect 预览,不要想当然地认为图像中某个固定百分比区域可以安全显示。 针对每个目标语言区域验证媒体;不要假设已翻译文本的语言区域会从主语言区域 继承缺失的素材。请参阅 Apple 的媒体规格 和展示指南。

Verify and submit

验证并提交

Read back the schedule, deep link, localized text, and delivered media. Inspect video clips too when used. Report any preview or link behavior not verified.
bash
asc app-events view --event-id "EVENT_ID" --output json
asc app-events screenshots list --event-id "EVENT_ID" --locale en-US --paginate --output json
For an app with an approved iOS version, when submission is authorized and no existing submission needs to be continued:
bash
asc app-events submit --event-id "EVENT_ID" --app "APP_ID" --platform IOS --confirm --output json
asc review submissions-get --id "SUBMISSION_ID" --output json
Use the
submissionId
from the receipt for the second command. Report the state returned by Apple; a successful submit receipt is not evidence of approval or publication. If the app has no approved iOS version, Apple requires the event in the first version's submission. Use
asc-release-flow
to prepare that version, then add the event to its intended draft with
review items-add
as shown below; skip the standalone
app-events submit
command. Coordinate the build and event release when new functionality is needed. See Apple's submission guidance.
回读时间安排、deep link、本地化文本和已交付的媒体。使用视频片段时, 也应检查视频片段。报告任何未验证的预览或链接行为。
bash
asc app-events view --event-id "EVENT_ID" --output json
asc app-events screenshots list --event-id "EVENT_ID" --locale en-US --paginate --output json
对于已有获批 iOS 版本的应用,在已获得提交授权且没有需要继续处理的现有提交时:
bash
asc app-events submit --event-id "EVENT_ID" --app "APP_ID" --platform IOS --confirm --output json
asc review submissions-get --id "SUBMISSION_ID" --output json
第二条命令使用回执中的
submissionId
。报告 Apple 返回的状态; 提交成功的回执并不能证明活动已获批准或发布。如果应用没有获批的 iOS 版本, Apple 要求在首个版本的提交中包含该活动。使用
asc-release-flow
准备该版本, 然后按照下方所示,使用
review items-add
将活动添加到目标草稿; 不要使用独立的
app-events submit
命令。需要新功能时,请协调构建版本和活动发布。 请参阅 Apple 的提交指南。

Recover without duplicating work

恢复工作且避免重复

app-events submit
creates a new review submission, adds the event, then submits it. A failure after creation can leave a draft behind, even when no submission ID appears in the error. Inspect submissions and their items before retrying:
bash
asc review submissions-list --app "APP_ID" --platform IOS --paginate --output json
asc review submissions-get --id "SUBMISSION_ID" --output json
asc review items-list --submission "SUBMISSION_ID" --paginate --output json
For an intended
READY_FOR_REVIEW
draft, confirm the app, platform, and all items belong to the authorized submission. Repair the event first. For example, use
asc app-events update --event-id "EVENT_ID" --deep-link "myapp://event/summer"
when Apple reports a missing deep link. Then reuse the draft:
bash
asc review items-add --submission "SUBMISSION_ID" --item-type appEvents --item-id "EVENT_ID" --if-exists skip
asc review submissions-submit --id "SUBMISSION_ID" --confirm
Do not cancel an empty
READY_FOR_REVIEW
draft: it has no active review to cancel. Do not resubmit a submission already waiting for review. Route other submission states to
asc-submission-health
, preserving the target and authorized work.
A
403 FORBIDDEN_ERROR
can indicate real access restrictions. Check the selected profile, app access, and role before diagnosing a transient service error; one 403 is not a reason to rotate credentials or assume they are valid. If recent successful calls support a transient diagnosis, retry reads with bounded backoff and stop if the error persists. Before repeating an uncertain create or upload, list the existing resource and inspect its delivery state to avoid duplicates.
For current provider requirements, consult Apple's event setup guidance.
app-events submit
会创建新的审核提交、添加活动,然后提交。创建之后的失败 可能遗留一个草稿,即使错误中没有出现 submission ID。重试前请检查提交及其项目:
bash
asc review submissions-list --app "APP_ID" --platform IOS --paginate --output json
asc review submissions-get --id "SUBMISSION_ID" --output json
asc review items-list --submission "SUBMISSION_ID" --paginate --output json
对于应处于
READY_FOR_REVIEW
状态的草稿,请确认应用、平台和所有项目 均属于已授权的提交。先修复活动。例如,当 Apple 报告缺少 deep link 时, 请使用
asc app-events update --event-id "EVENT_ID" --deep-link "myapp://event/summer"
进行修复。然后复用草稿:
bash
asc review items-add --submission "SUBMISSION_ID" --item-type appEvents --item-id "EVENT_ID" --if-exists skip
asc review submissions-submit --id "SUBMISSION_ID" --confirm
不要取消空的
READY_FOR_REVIEW
草稿:它没有正在进行的审核可供取消。 不要重新提交已处于等待审核状态的提交。将其他提交状态交由
asc-submission-health
处理,同时保留目标和已授权的工作。
403 FORBIDDEN_ERROR
可能表示确实存在访问限制。在将问题诊断为临时服务错误之前, 请检查所选配置、应用访问权限和角色;不能仅凭一次 403 就轮换凭据, 也不能据此认定凭据有效。如果近期成功的调用表明这可能是暂时性故障, 请使用有限退避重试读取操作;如果错误持续存在,则停止。重试执行结果不确定的 创建或上传操作之前,请列出现有资源并检查其交付状态,以避免重复。
有关当前提供方的要求,请参阅 Apple 的活动设置指南。