DOCS

Menyelesaikan kuesioner

Menyelesaikan kuesioner

Clarify mengisi sebelumnya apa yang dapat dari data item Anda; Anda mengkonfirmasi atau memperbaiki sisanya, kemudian menyelesaikan.

GraphQL

Setelah Anda mengetahui program mana yang berlaku (lihat Periksa persyaratan kepatuhan), alur yang disarankan adalah tiga panggilan:

  1. Inferensi - complianceQuestionnaireInfer membuka sesi dengan jawaban yang sudah diisi sebelumnya dari data item Anda.
  2. Tinjau dan perbaiki - questionnaireAnswersSubmit untuk mengubah apa pun yang tidak setuju pengiriman dan menjawab yang tertinggal.
  3. Attestasi - questionnaireSessionAttest untuk menerima dan menyelesaikan.

Jika Anda sudah memiliki setiap jawaban, Anda dapat mengirimkan respons lengkap dalam satu panggilan sebagai gantinya — lihat Kirimkan respons lengkap di bawah.

Cakupan

Membaca memerlukan ruang lingkup COMPLIANCE_READ; mengirimkan jawaban memerlukan COMPLIANCE_WRITE. Lihat OAuth.

Nilai jawaban dikodekan JSON

Setiap value jawaban adalah string yang dikodekan JSON: boolean adalah "true", nilai pilih atau teks dikutip seperti "\"cosmetic\"", multi-pilih adalah "[\"a\",\"b\"]", dan angka adalah "42".

Inferensi dan isi sebelumnya 

complianceQuestionnaireInfer menyelesaikan program yang berlaku untuk item Anda, membuka sesi, dan menjawab sebelumnya pertanyaan dari data item Anda. Setiap jawaban yang sudah diisi sebelumnya memiliki provenance: INFERRED dan skor confidence.

Lulus intendedUse untuk memandu inferensi — alur storefront harus mengirimkan 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}

Status state setiap baris memberi tahu Anda apa yang selanjutnya:

  • READY_TO_ATTEST - setiap pertanyaan yang diperlukan dijawab. Lanjutkan langsung ke Attestasi (di bawah).
  • PARTIAL - beberapa jawaban sudah diisi sebelumnya, tetapi pertanyaan yang diperlukan masih ada. Jawab mereka di currentQuestion.
  • NOT_INFERRED - tidak ada yang bisa diisi sebelumnya; jawab sebagai kuesioner biasa.

Program yang sudah puas oleh respons yang ada dilewati dan dikembalikan di alreadySatisfied (dihilangkan di atas).

Tinjau dan perbaiki 

Sesi menyimpan jawaban yang sudah diisi sebelumnya — bukan respons yang sudah selesai. Untuk setiap jawaban, pengiriman salah satu:

  • menerima - meninggalkannya tidak tersentuh, dan tetap INFERRED, atau
  • memperbaiki - mengirimkan nilai baru dengan questionnaireAnswersSubmit, yang menjadi MANUAL.

Kirimkan satu jawaban atau beberapa sekaligus. Clarify memajukan currentQuestion ke pertanyaan yang tersisa berikutnya dan, ketika tidak ada yang tersisa, menyelesaikan baris respons (its responseId diisi).

Jawaban yang diterima disimpan, bukan dibuang

Memperbaiki satu jawaban hanya mengatasi jawaban itu. Respons yang sudah selesai menyimpan kumpulan penuh — jawaban yang diterima tetap INFERRED, perbaikan adalah MANUAL — jadi Anda selalu menyimpan catatan tentang apa yang AI berikan versus apa yang orang ubah.

Misalnya, pengiriman menerima intended_use yang disimpulkan tetapi memperbaiki contains_color_additives, jadi mereka mengirimkan hanya jawaban itu:

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}

Attestasi 

Ketika baris READY_TO_ATTEST — setiap jawaban yang diperlukan sudah diisi sebelumnya dan pengiriman setuju — terima dalam satu panggilan dengan questionnaireSessionAttest. Ini menyelesaikan setiap baris yang memenuhi syarat, atau hanya lineIds yang Anda lewatkan.

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

Untuk membuang sesi yang sedang berlangsung, panggil questionnaireSessionAbandon(id: ID!).

Kirimkan respons lengkap 

Jika Anda sudah memiliki setiap jawaban — misalnya set jawaban yang dapat digunakan kembali untuk CATALOG_ITEM — lewati sesi dan kirimkan langsung dengan questionnaireResponseSubmit. Ini menggantikan respons sebelumnya untuk item dan program yang sama.

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}

Lebih suka menjawab tanpa inferensi? questionnaireSessionStart membuka sesi untuk program yang Anda pilih, dan kemudian Anda menggunakan Tinjau dan perbaiki dan panggilan Attestasi yang sama di atas.

Baca respons dan kesiapan 

Ambil catatan yang sudah selesai dengan questionnaireResponse(id), dan periksa apakah seluruh kontainer siap untuk diajukan dengan containerComplianceReadinessready adalah true hanya ketika setiap baris memiliki respons lengkap.

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

Langkah berikutnya 

Pesan demo

Apakah halaman ini bermanfaat?