asc-customer-reviews

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Customer Reviews & Review Responses with
asc

使用
asc
管理客户评论与评论回复

Read customer reviews left on your App Store listing and manage developer responses — reply to feedback, revise responses, or delete them.
查看用户在App Store应用列表中留下的客户评论,并管理开发者回复——回复反馈、修改回复或删除回复。

Authentication

认证配置

Set up credentials before any review commands:
bash
asc auth login --key-id <id> --issuer-id <id> --private-key-path ~/.asc/AuthKey.p8
在执行任何评论相关命令前,先配置凭证:
bash
asc auth login --key-id <id> --issuer-id <id> --private-key-path ~/.asc/AuthKey.p8

CAEOAS — Affordances Guide Next Steps

CAEOAS — 功能指引与后续步骤

Every JSON response includes
"affordances"
with ready-to-run commands:
CustomerReview affordances:
json
{
  "id": "rev-001",
  "appId": "123456789",
  "rating": 5,
  "title": "Great app!",
  "body": "Love using this app every day.",
  "reviewerNickname": "user123",
  "territory": "USA",
  "affordances": {
    "getResponse": "asc review-responses get --review-id rev-001",
    "respond": "asc review-responses create --review-id rev-001 --response-body \"\"",
    "listReviews": "asc reviews list --app-id 123456789"
  }
}
CustomerReviewResponse affordances:
json
{
  "id": "resp-001",
  "reviewId": "rev-001",
  "responseBody": "Thank you for your feedback!",
  "state": "PUBLISHED",
  "affordances": {
    "delete": "asc review-responses delete --response-id resp-001",
    "getReview": "asc reviews get --review-id rev-001"
  }
}
Copy affordance commands directly — no need to look up IDs.
每个JSON响应都包含
"affordances"
字段,其中提供了可直接运行的命令:
CustomerReview的affordances字段:
json
{
  "id": "rev-001",
  "appId": "123456789",
  "rating": 5,
  "title": "Great app!",
  "body": "Love using this app every day.",
  "reviewerNickname": "user123",
  "territory": "USA",
  "affordances": {
    "getResponse": "asc review-responses get --review-id rev-001",
    "respond": "asc review-responses create --review-id rev-001 --response-body \"\"",
    "listReviews": "asc reviews list --app-id 123456789"
  }
}
CustomerReviewResponse的affordances字段:
json
{
  "id": "resp-001",
  "reviewId": "rev-001",
  "responseBody": "Thank you for your feedback!",
  "state": "PUBLISHED",
  "affordances": {
    "delete": "asc review-responses delete --response-id resp-001",
    "getReview": "asc reviews get --review-id rev-001"
  }
}
直接复制功能字段中的命令即可,无需手动查找ID。

Resolve App ID

解析App ID

See project-context.md — check
.asc/project.json
before asking the user or running
asc apps list
.
参考project-context.md — 在询问用户或执行
asc apps list
前,先检查
.asc/project.json
文件。

Commands

命令说明

reviews list — list all reviews for an app

reviews list — 列出某款应用的所有评论

bash
asc reviews list --app-id <APP_ID> [--pretty] [--output table|markdown]
Returns reviews sorted by most recent first. Fields:
id
,
appId
,
rating
(1-5),
title?
,
body?
,
reviewerNickname?
,
createdDate?
,
territory?
(ISO 3166-1 alpha-3 code like "USA", "GBR").
Nil optional fields are omitted from JSON output.
bash
asc reviews list --app-id <APP_ID> [--pretty] [--output table|markdown]
返回的评论按最新发布时间排序。包含字段:
id
appId
rating
(1-5分)、
title?
body?
reviewerNickname?
createdDate?
territory?
(ISO 3166-1 alpha-3格式代码,如"USA"、"GBR")。
JSON输出中会省略值为空的可选字段。

reviews get — get a single review

reviews get — 获取单条评论

bash
asc reviews get --review-id <REVIEW_ID> [--pretty]
Note:
appId
will be empty (
""
) because the single-GET API endpoint doesn't return the parent app ID.
bash
asc reviews get --review-id <REVIEW_ID> [--pretty]
注意:
appId
字段会为空(
""
),因为该单条评论查询API接口不会返回所属应用的ID。

review-responses get — get the response to a review

review-responses get — 获取评论的回复

bash
asc review-responses get --review-id <REVIEW_ID> [--pretty]
Uses the review ID (not the response ID) to fetch the linked response.
bash
asc review-responses get --review-id <REVIEW_ID> [--pretty]
通过评论ID(而非回复ID)获取关联的回复内容。

review-responses create — respond to a review

review-responses create — 回复评论

bash
asc review-responses create --review-id <REVIEW_ID> --response-body "Thank you for your feedback!"
New responses start in
PENDING_PUBLISH
state — they go live within ~24 hours.
bash
asc review-responses create --review-id <REVIEW_ID> --response-body "Thank you for your feedback!"
新提交的回复初始状态为
PENDING_PUBLISH
— 通常会在24小时内上线。

review-responses delete — delete a response

review-responses delete — 删除回复

bash
asc review-responses delete --response-id <RESPONSE_ID>
To revise a response, delete the existing one and create a new one.
bash
asc review-responses delete --response-id <RESPONSE_ID>
如需修改回复,请先删除现有回复,再创建新的回复内容。

Typical Workflow

典型工作流

bash
APP_ID=$(cat .asc/project.json 2>/dev/null | jq -r '.appId // empty')
bash
APP_ID=$(cat .asc/project.json 2>/dev/null | jq -r '.appId // empty')

If empty: ask user or run
asc apps list | jq -r '.data[0].id'

若为空:询问用户或执行
asc apps list | jq -r '.data[0].id'
获取

1. List reviews for the app

1. 列出该应用的所有评论

asc reviews list --app-id "$APP_ID" --output table
asc reviews list --app-id "$APP_ID" --output table

2. Read a specific review in detail

2. 查看单条评论的详细内容

asc reviews get --review-id rev-001 --pretty
asc reviews get --review-id rev-001 --pretty

3. Check if there is already a response

3. 检查该评论是否已有回复

asc review-responses get --review-id rev-001
asc review-responses get --review-id rev-001

4. Respond to the review

4. 回复该评论

asc review-responses create
--review-id rev-001
--response-body "Thank you! We fixed the crash in v2.1."
asc review-responses create
--review-id rev-001
--response-body "Thank you! We fixed the crash in v2.1."

5. To revise, delete and recreate

5. 如需修改,先删除再重新创建

asc review-responses delete --response-id resp-001 asc review-responses create
--review-id rev-001
--response-body "Updated response with more detail."
undefined
asc review-responses delete --response-id resp-001 asc review-responses create
--review-id rev-001
--response-body "Updated response with more detail."
undefined

Response State

回复状态

StateMeaning
PUBLISHED
Response is live on the App Store
PENDING_PUBLISH
Response submitted, awaiting publication (up to 24 hours)
Semantic booleans:
isPublished
,
isPending
.
状态含义
PUBLISHED
回复已在App Store上线
PENDING_PUBLISH
回复已提交,等待发布(最长24小时)
语义布尔值:
isPublished
isPending

Output Flags

输出参数

bash
--pretty          # Pretty-print JSON
--output table    # Table format
--output markdown # Markdown table
bash
--pretty          # 格式化输出JSON
--output table    # 表格格式输出
--output markdown # Markdown表格格式输出