Suy luận và điền sẵn
complianceQuestionnaireInfer giải quyết các chương trình áp dụng cho các mục của bạn,
mở một phiên, và trả lời sẵn các câu hỏi từ dữ liệu mục của bạn. Mỗi
câu trả lời được điền sẵn có provenance: INFERRED và điểm confidence.
Truyền intendedUse để hướng dẫn suy luận — các quy trình cửa hàng trực tuyến phải gửi CONSUMER.
mutation InferQuestionnaire($input: ComplianceQuestionnaireInferInput!) { complianceQuestionnaireInfer(input: $input) { session { id status lines { id programId status currentQuestion { code prompt answerType } } } lines { lineId state remainingRequiredCount } }}Trạng thái state của mỗi dòng cho bạn biết tiếp theo là gì:
READY_TO_ATTEST- mọi câu hỏi bắt buộc đều được trả lời. Đi thẳng đến Chứng thực (bên dưới).PARTIAL- một số câu trả lời đã được điền sẵn, nhưng các câu hỏi bắt buộc vẫn còn. Trả lời chúng tạicurrentQuestion.NOT_INFERRED- không thể điền sẵn gì; trả lời nó như một bảng câu hỏi thông thường.
Các chương trình đã được thỏa mãn bởi phản hồi hiện có sẽ bị bỏ qua và được trả về trong
alreadySatisfied (bị bỏ qua ở trên).
Xem xét và sửa chữa
Phiên chứa câu trả lời được điền sẵn — không phải phản hồi cuối cùng. Đối với mỗi câu trả lời, người gửi hàng:
- chấp nhận nó — để nguyên vẹn, và nó vẫn là
INFERRED, hoặc - sửa chữa nó — gửi giá trị mới với
questionnaireAnswersSubmit, trở thànhMANUAL.
Gửi một hoặc nhiều câu trả lời cùng một lúc. Clarify đẩy currentQuestion đến câu hỏi
tiếp theo còn lại và, khi không có câu nào còn lại, hoàn tất phản hồi của dòng
(responseId của nó được điền).
Ví dụ, người gửi hàng chấp nhận intended_use được suy luận nhưng sửa chữa
contains_color_additives, vì vậy họ chỉ gửi một câu trả lời đó:
mutation SubmitAnswers($input: QuestionnaireAnswersSubmitInput!) { questionnaireAnswersSubmit(input: $input) { status lines { id status responseId answers { questionCode value provenance confidence } } }}Chứng thực
Khi một dòng là READY_TO_ATTEST — mọi câu trả lời bắt buộc đã được điền sẵn và
người gửi hàng đồng ý — chấp nhận nó trong một lệnh gọi với questionnaireSessionAttest. Nó
hoàn tất mọi dòng đủ điều kiện, hoặc chỉ những lineIds bạn truyền.
mutation AttestSession($input: QuestionnaireSessionAttestInput!) { questionnaireSessionAttest(input: $input) { id status lines { id status responseId } }}Để hủy bỏ một phiên đang diễn ra, hãy gọi questionnaireSessionAbandon(id: ID!).
Gửi phản hồi hoàn chỉnh
Nếu bạn đã có mọi câu trả lời — ví dụ như một bộ câu trả lời có thể tái sử dụng cho
CATALOG_ITEM — bỏ qua phiên và gửi trực tiếp với
questionnaireResponseSubmit. Nó thay thế bất kỳ phản hồi trước đó nào cho cùng
mục và chương trình.
mutation SubmitResponse($input: QuestionnaireResponseSubmitInput!) { questionnaireResponseSubmit(input: $input) { id status completedAt answers { questionCode value provenance } }}Thích trả lời mà không cần suy luận? questionnaireSessionStart mở một phiên
cho các chương trình bạn chọn, và sau đó bạn sử dụng Xem xét và sửa chữa và
các lệnh gọi Chứng thực tương tự ở trên.
Đọc phản hồi và sẵn sàng
Tìm nạp một hồ sơ cuối cùng với questionnaireResponse(id), và kiểm tra xem
toàn bộ container có sẵn sàng để nộp với containerComplianceReadiness —
ready chỉ là true khi mọi dòng đều có phản hồi hoàn chỉnh.
query ContainerReadiness($containerType: ContainerType!, $containerId: ID!) { containerComplianceReadiness( containerType: $containerType containerId: $containerId ) { ready totalLineCount outstandingLineCount }}Các bước tiếp theo
- Cách nó hoạt động - nhánh, nguồn gốc, các tùy chọn động và mục đích sử dụng.
- Kiểm tra yêu cầu tuân thủ - khám phá các chương trình và cấu trúc bảng câu hỏi đọc.
Hoàn thành bảng câu hỏi
Clarify điền sẵn những gì nó có thể từ dữ liệu mục của bạn; bạn xác nhận hoặc sửa chữa phần còn lại, sau đó hoàn tất.
GraphQL
Khi bạn biết các chương trình nào được áp dụng (xem Kiểm tra yêu cầu tuân thủ), quy trình được khuyến nghị là ba lệnh gọi:
complianceQuestionnaireInfermở một phiên với câu trả lời được điền sẵn từ dữ liệu mục của bạn.questionnaireAnswersSubmitđể thay đổi bất cứ điều gì người gửi hàng không đồng ý và trả lời những gì còn lại.questionnaireSessionAttestđể chấp nhận và hoàn tất.Nếu bạn đã có mọi câu trả lời, bạn có thể gửi phản hồi hoàn chỉnh trong một lệnh gọi thay vào đó — xem Gửi phản hồi hoàn chỉnh bên dưới.
Đọc yêu cầu phạm vi
COMPLIANCE_READ; gửi câu trả lời yêu cầuCOMPLIANCE_WRITE. Xem OAuth.Mọi giá trị
valuecủa câu trả lời là một chuỗi được mã hóa JSON: một boolean là"true", một giá trị chọn hoặc văn bản được trích dẫn như"\"cosmetic\"", một multi-select là"[\"a\",\"b\"]", và một số là"42".