Clarify 從你的物品資料預填可填寫的內容;你確認或更正其餘部分,然後完成。
GraphQL
一旦你知道哪些計劃適用(請見 檢查合規要求), 推薦的流程是三次調用:
complianceQuestionnaireInfer
questionnaireAnswersSubmit
questionnaireSessionAttest
如果你已經有每個答案,你可以改為在一次調用中提交完整回應 — 請見下面的提交完整回應。
讀取需要 COMPLIANCE_READ 作用域;提交答案需要 COMPLIANCE_WRITE。請見 OAuth。
COMPLIANCE_READ
COMPLIANCE_WRITE
每個答案 value 都是一個 JSON 編碼的字符串:布爾值是 "true", 選擇或文本值被引用如 "\"cosmetic\"" 、多選是 "[\"a\",\"b\"]",數字是 "42"。
value
"true"
"\"cosmetic\""
"[\"a\",\"b\"]"
"42"
complianceQuestionnaireInfer 解析你物品的適用計劃, 開啟一個會話,並從你的物品資料預先回答問題。每個 預填的答案有 provenance: INFERRED 和一個 confidence 分數。
provenance: INFERRED
confidence
傳遞 intendedUse 來指導推斷 — 店面流程應發送 CONSUMER。
intendedUse
CONSUMER
mutation InferQuestionnaire($input: ComplianceQuestionnaireInferInput!) {
complianceQuestionnaireInfer(input: $input) {
session {
id
status
lines {
programId
currentQuestion {
code
prompt
answerType
}
lineId
state
remainingRequiredCount
每行的 state 告訴你接下來的內容:
READY_TO_ATTEST
PARTIAL
currentQuestion
NOT_INFERRED
已由現有回應滿足的計劃會被跳過並在 alreadySatisfied 中返回(上面省略了)。
alreadySatisfied
會話保持預填答案 — 不是完成的回應。對於每個 答案,發貨人應該:
INFERRED
MANUAL
一次提交一個答案或多個答案。Clarify 將 currentQuestion 推進到 下一個剩餘的問題,當沒有剩餘時,完成行的 回應(其 responseId 已填充)。
responseId
更正一個答案只覆蓋該答案。完成的回應保持 完整集合 — 接受的答案保持 INFERRED,更正是 MANUAL — 所以你始終保持 AI 提供的內容與人所更改內容的記錄。
例如,發貨人接受推斷的 intended_use 但更正 contains_color_additives,所以他們只提交該一個答案:
intended_use
contains_color_additives
mutation SubmitAnswers($input: QuestionnaireAnswersSubmitInput!) {
questionnaireAnswersSubmit(input: $input) {
answers {
questionCode
provenance
當一行是 READY_TO_ATTEST 時 — 每個必需的答案已預填並且 發貨人同意 — 用 questionnaireSessionAttest 在一次調用中接受它。它 完成每個符合資格的行,或只有你傳遞的 lineIds。
lineIds
mutation AttestSession($input: QuestionnaireSessionAttestInput!) {
questionnaireSessionAttest(input: $input) {
要放棄進行中的會話,調用 questionnaireSessionAbandon(id: ID!)。
questionnaireSessionAbandon(id: ID!)
如果你已經有每個答案 — 例如一個 CATALOG_ITEM 的可重複使用答案集 — 跳過會話並 用 questionnaireResponseSubmit 直接提交。它替換相同 物品和計劃的任何先前回應。
CATALOG_ITEM
questionnaireResponseSubmit
mutation SubmitResponse($input: QuestionnaireResponseSubmitInput!) {
questionnaireResponseSubmit(input: $input) {
completedAt
更希望在不推斷的情況下回答?questionnaireSessionStart 開啟一個會話 用於你選擇的計劃,然後你使用上面相同的檢查並更正和 證明調用。
questionnaireSessionStart
用 questionnaireResponse(id) 取得完成的記錄,並用 containerComplianceReadiness 檢查整個容器是否已準備好可以申報 — ready 只在每行都有完整回應時為 true。
questionnaireResponse(id)
containerComplianceReadiness
ready
true
query ContainerReadiness($containerType: ContainerType!, $containerId: ID!) {
containerComplianceReadiness(
containerType: $containerType
containerId: $containerId
) {
totalLineCount
outstandingLineCount
ComplianceQuestionnaireInferInput QuestionnaireAnswersSubmitInput QuestionnaireResponseSubmitInput QuestionnaireSessionAttestInput
complianceQuestionnaireInfer questionnaireAnswersSubmit questionnaireResponseSubmit questionnaireSessionAttest
完成問卷
完成問卷
Clarify 從你的物品資料預填可填寫的內容;你確認或更正其餘部分,然後完成。
GraphQL
一旦你知道哪些計劃適用(請見 檢查合規要求), 推薦的流程是三次調用:
complianceQuestionnaireInfer開啟一個會話並預填 來自你物品資料的答案。questionnaireAnswersSubmit用於改變任何 發貨人不同意的內容並回答剩餘部分。questionnaireSessionAttest用於接受並完成。如果你已經有每個答案,你可以改為在一次調用中提交完整回應 — 請見下面的提交完整回應。
讀取需要
COMPLIANCE_READ作用域;提交答案需要COMPLIANCE_WRITE。請見 OAuth。每個答案
value都是一個 JSON 編碼的字符串:布爾值是"true", 選擇或文本值被引用如"\"cosmetic\""、多選是"[\"a\",\"b\"]",數字是"42"。推斷並預填
complianceQuestionnaireInfer解析你物品的適用計劃, 開啟一個會話,並從你的物品資料預先回答問題。每個 預填的答案有provenance: INFERRED和一個confidence分數。傳遞
intendedUse來指導推斷 — 店面流程應發送CONSUMER。mutation InferQuestionnaire($input: ComplianceQuestionnaireInferInput!) {complianceQuestionnaireInfer(input: $input) {session {idstatuslines {idprogramIdstatuscurrentQuestion {codepromptanswerType}}}lines {lineIdstateremainingRequiredCount}}}每行的
state告訴你接下來的內容:READY_TO_ATTEST- 每個必需的問題都已回答。直接前往 證明(下方)。PARTIAL- 某些答案已預填,但仍需要回答必要問題。 在currentQuestion回答它們。NOT_INFERRED- 無法預填任何內容;將其作為普通 問卷回答。已由現有回應滿足的計劃會被跳過並在
alreadySatisfied中返回(上面省略了)。檢查並更正
會話保持預填答案 — 不是完成的回應。對於每個 答案,發貨人應該:
INFERRED,或questionnaireAnswersSubmit提交新值,它 變成MANUAL。一次提交一個答案或多個答案。Clarify 將
currentQuestion推進到 下一個剩餘的問題,當沒有剩餘時,完成行的 回應(其responseId已填充)。更正一個答案只覆蓋該答案。完成的回應保持 完整集合 — 接受的答案保持
INFERRED,更正是MANUAL— 所以你始終保持 AI 提供的內容與人所更改內容的記錄。例如,發貨人接受推斷的
intended_use但更正contains_color_additives,所以他們只提交該一個答案:mutation SubmitAnswers($input: QuestionnaireAnswersSubmitInput!) {questionnaireAnswersSubmit(input: $input) {statuslines {idstatusresponseIdanswers {questionCodevalueprovenanceconfidence}}}}證明
當一行是
READY_TO_ATTEST時 — 每個必需的答案已預填並且 發貨人同意 — 用questionnaireSessionAttest在一次調用中接受它。它 完成每個符合資格的行,或只有你傳遞的lineIds。mutation AttestSession($input: QuestionnaireSessionAttestInput!) {questionnaireSessionAttest(input: $input) {idstatuslines {idstatusresponseId}}}要放棄進行中的會話,調用
questionnaireSessionAbandon(id: ID!)。提交完整回應
如果你已經有每個答案 — 例如一個
CATALOG_ITEM的可重複使用答案集 — 跳過會話並 用questionnaireResponseSubmit直接提交。它替換相同 物品和計劃的任何先前回應。mutation SubmitResponse($input: QuestionnaireResponseSubmitInput!) {questionnaireResponseSubmit(input: $input) {idstatuscompletedAtanswers {questionCodevalueprovenance}}}更希望在不推斷的情況下回答?
questionnaireSessionStart開啟一個會話 用於你選擇的計劃,然後你使用上面相同的檢查並更正和 證明調用。讀取回應和準備狀況
用
questionnaireResponse(id)取得完成的記錄,並用containerComplianceReadiness檢查整個容器是否已準備好可以申報 —ready只在每行都有完整回應時為true。query ContainerReadiness($containerType: ContainerType!, $containerId: ID!) {containerComplianceReadiness(containerType: $containerTypecontainerId: $containerId) {readytotalLineCountoutstandingLineCount}}後續步驟
ComplianceQuestionnaireInferInput QuestionnaireAnswersSubmitInput QuestionnaireResponseSubmitInput QuestionnaireSessionAttestInput
complianceQuestionnaireInfer questionnaireAnswersSubmit questionnaireResponseSubmit questionnaireSessionAttest
這個頁面有幫助嗎?