DOCS

アンケートの完了

アンケートの完了

Clarify は品目データから入力可能な回答を事前入力します。残りを確認または 修正してから確定します。

GraphQL

適用プログラムが分かったら( コンプライアンス要件の確認 を参照)、推奨フローは 3 つの呼び出しです。

  1. 推論complianceQuestionnaireInfer で品目データから事前入力された 回答付きのセッションを開始します。
  2. 確認と修正questionnaireAnswersSubmit で荷送人が同意しない回答を 変更し、残りに回答します。
  3. 証明questionnaireSessionAttest で承認して確定します。

すべての回答が既にある場合は、以下の 完全なレスポンスの送信 を参照して 1 回の呼び出しで完全なレスポンスを送信できます。

スコープ

読み取りには COMPLIANCE_READ スコープが必要です。回答の送信には COMPLIANCE_WRITE が必要です。OAuth を参照してください。

回答値は JSON エンコード

すべての回答 valueJSON エンコード された文字列です。ブール値は "true"、 選択またはテキスト値は "\"cosmetic\"" のように引用符付き、 マルチセレクトは "[\"a\",\"b\"]"、数値は "42" です。

推論と事前入力 

complianceQuestionnaireInfer は品目に適用されるプログラムを解決し、 セッション を開始し、品目データから質問に事前回答します。各事前入力回答には provenance: INFERREDconfidence スコアが付きます。

推論をガイドするために intendedUse を渡します — ストアフロントフローでは CONSUMER を送信してください。

1mutation InferQuestionnaire($input: ComplianceQuestionnaireInferInput!) {
2 complianceQuestionnaireInfer(input: $input) {
3 session {
4 id
5 status
6 lines {
7 id
8 programId
9 status
10 currentQuestion {
11 code
12 prompt
13 answerType
14 }
15 }
16 }
17 lines {
18 lineId
19 state
20 remainingRequiredCount
21 }
22 }
23}

各ラインの state は次に何をすべきかを示します。

  • READY_TO_ATTEST — すべての必須質問に回答済み。以下の 証明 に進みます。
  • PARTIAL — 一部の回答が事前入力されましたが、必須質問が残っています。 currentQuestion で回答してください。
  • NOT_INFERRED — 事前入力できませんでした。通常のアンケートとして回答します。

既存のレスポンスですでに満たされているプログラムはスキップされ、 alreadySatisfied に返されます(上記では省略)。

確認と修正 

セッションには 事前入力された回答 — 確定済みレスポンスではありません が 保持されます。各回答について、荷送人は次のいずれかを行います。

  • 承認 — そのままにして INFERRED のままにする、または
  • 修正questionnaireAnswersSubmit で新しい値を送信し、 MANUAL になります。

1 つの回答または複数を一度に送信できます。Clarify は currentQuestion を 次の残りの質問に進め、残りがなくなるとラインの レスポンス を確定します (responseId が設定されます)。

承認された回答は破棄されず保持されます

1 つの回答を修正しても、その回答だけが上書きされます。確定されたレスポンスには 完全な セットが保持されます — 承認された回答は INFERRED のまま、 修正は MANUAL — そのため、AI が提供した内容と人が変更した内容の記録が 常に残ります。

たとえば、荷送人は推論された intended_use を承認しますが contains_color_additives を修正するため、その 1 つの回答だけを送信します。

1mutation SubmitAnswers($input: QuestionnaireAnswersSubmitInput!) {
2 questionnaireAnswersSubmit(input: $input) {
3 status
4 lines {
5 id
6 status
7 responseId
8 answers {
9 questionCode
10 value
11 provenance
12 confidence
13 }
14 }
15 }
16}

証明 

ラインが READY_TO_ATTEST — すべての必須回答が既に事前入力され、 荷送人が同意 — の場合、questionnaireSessionAttest で 1 回の呼び出しで 承認します。対象となるすべてのラインを確定するか、渡した lineIds のみを 確定します。

1mutation AttestSession($input: QuestionnaireSessionAttestInput!) {
2 questionnaireSessionAttest(input: $input) {
3 id
4 status
5 lines {
6 id
7 status
8 responseId
9 }
10 }
11}

進行中のセッションを破棄するには、questionnaireSessionAbandon(id: ID!) を 呼び出します。

完全なレスポンスの送信 

すべての回答が既にある場合 — たとえば CATALOG_ITEM の再利用可能な 回答セット — セッションをスキップして questionnaireResponseSubmit で 直接送信できます。同じ品目とプログラムの以前のレスポンスを置き換えます。

1mutation SubmitResponse($input: QuestionnaireResponseSubmitInput!) {
2 questionnaireResponseSubmit(input: $input) {
3 id
4 status
5 completedAt
6 answers {
7 questionCode
8 value
9 provenance
10 }
11 }
12}

推論なしで回答しますか?questionnaireSessionStart で選択したプログラムの セッションを開始し、上記と同じ 確認と修正 および 証明 の呼び出しを 使用します。

レスポンスと準備状況の読み取り 

questionnaireResponse(id) で確定済みレコードを取得し、 containerComplianceReadiness でコンテナ全体の申告準備状況を確認できます — すべてのラインに完全なレスポンスがある場合にのみ readytrue です。

1query ContainerReadiness($containerType: ContainerType!, $containerId: ID!) {
2 containerComplianceReadiness(
3 containerType: $containerType
4 containerId: $containerId
5 ) {
6 ready
7 totalLineCount
8 outstandingLineCount
9 }
10}

次のステップ 

このページは役に立ちましたか?


このページでは: