Inferir e preencher previamente complianceQuestionnaireInfer resolve os programas aplicáveis para seus itens,
abre um sessãoe pré-responde a perguntas dos dados do seu item. Cada
resposta pré-preenchida tem provenance: INFERRED e um confidence pontuação.
Passar intendedUse para orientar a inferência – os fluxos da vitrine devem enviar CONSUMER.
mutation InferQuestionnaire($input: ComplianceQuestionnaireInferInput!) { complianceQuestionnaireInfer(input: $input) { session { id status lines { id programId status currentQuestion { code prompt answerType } } } lines { lineId state remainingRequiredCount } }}Cada linha state diz o que vem a seguir:
READY_TO_ATTEST- todas as perguntas obrigatórias são respondidas. Vá direto para Atestar (abaixo).PARTIAL- algumas respostas foram pré-preenchidas, mas as perguntas obrigatórias permanecem. Responda-os emcurrentQuestion.NOT_INFERRED- nada poderia ser pré-preenchido; responda como um simples questionário.
Os programas já satisfeitos por uma resposta existente são ignorados e retornados em alreadySatisfied (omitido acima).
Revise e corrija
A sessão dura respostas pré-preenchidas – não uma resposta finalizada. Para cada resposta, o remetente:
- aceita isso - deixa-o intocado e permanece
INFERRED, ou - corrige it - envia um novo valor com
questionnaireAnswersSubmit, qual torna-seMANUAL.
Envie uma resposta ou várias de uma vez. Clarify avança currentQuestion para o
próxima pergunta restante e, quando não sobrar nenhuma, finaliza a linha
resposta (isso é responseId está preenchido).
Por exemplo, o expedidor aceita o valor inferido intended_use mas corrige contains_color_additives, então eles enviam apenas aquela resposta:
mutation SubmitAnswers($input: QuestionnaireAnswersSubmitInput!) { questionnaireAnswersSubmit(input: $input) { status lines { id status responseId answers { questionCode value provenance confidence } } }}Atestado
Quando uma linha é READY_TO_ATTEST— todas as respostas obrigatórias já pré-preenchidas e
o remetente concorda - aceite em uma ligação com questionnaireSessionAttest. Isto
finaliza todas as linhas elegíveis, ou apenas a lineIds você passa.
mutation AttestSession($input: QuestionnaireSessionAttestInput!) { questionnaireSessionAttest(input: $input) { id status lines { id status responseId } }}Para descartar uma sessão em andamento, ligue questionnaireSessionAbandon(id: ID!).
Envie uma resposta completa
Se você já tiver todas as respostas — por exemplo, um conjunto de respostas reutilizável para um CATALOG_ITEM - pule a sessão e envie diretamente com questionnaireResponseSubmit. Ele substitui qualquer resposta anterior pela mesma
item e programa.
mutation SubmitResponse($input: QuestionnaireResponseSubmitInput!) { questionnaireResponseSubmit(input: $input) { id status completedAt answers { questionCode value provenance } }}Prefere responder sem inferência?questionnaireSessionStart abre uma sessão
para os programas que você escolher e então você usa o mesmo Revise e corrija e
Atestar chamadas acima.
Leia as respostas e a preparação
Obtenha um registro finalizado com questionnaireResponse(id), e verifique se um
todo o contêiner está pronto para ser arquivado containerComplianceReadiness -readyé true somente quando cada linha tiver uma resposta completa.
query ContainerReadiness($containerType: ContainerType!, $containerId: ID!) { containerComplianceReadiness( containerType: $containerType containerId: $containerId ) { ready totalLineCount outstandingLineCount }}Próximas etapas
- Como funciona - ramificação, proveniência, opções dinâmicas e uso pretendido.
- Verifique os requisitos de conformidade - descubra programas e leia estruturas de questionários.
Preencha um questionário
Clarify preenche previamente o que pode com os dados do item; você confirma ou corrige o descanse e finalize.
GraphQL
Depois de saber quais programas se aplicam (consulte Verifique os requisitos de conformidade), o fluxo recomendado é de três chamadas:
complianceQuestionnaireInferabre uma sessão com respostas pré-preenchido a partir dos dados do seu item.questionnaireAnswersSubmitpara mudar qualquer coisa remetente discorda e responde o que resta.questionnaireSessionAttestaceitar e finalizar.Se você já tiver todas as respostas, poderá enviar uma resposta completa em uma chamada em vez disso - veja Envie uma resposta completa abaixo.
A leitura exige
COMPLIANCE_READescopo; enviar respostas requerCOMPLIANCE_WRITE. Ver OAuth.Cada resposta
valueé um Codificado em JSON string: um booleano é"true", um selecione ou o valor do texto é citado como"\"cosmetic\"", uma seleção múltipla é"[\"a\",\"b\"]", e um número é"42".