Deduci e precompila
complianceQuestionnaireInfer risolve i programmi applicabili ai tuoi articoli,
apre una sessione e pre-risponde alle domande dai dati dell'articolo. Ciascuno
la risposta precompilata ha provenance: INFERRED e un confidence punto.
Passaggio intendedUse per guidare l'inferenza: i flussi del negozio dovrebbero essere inviati CONSUMER.
mutation InferQuestionnaire($input: ComplianceQuestionnaireInferInput!) { complianceQuestionnaireInfer(input: $input) { session { id status lines { id programId status currentQuestion { code prompt answerType } } } lines { lineId state remainingRequiredCount } }}Ogni riga state ti dice cosa c'è dopo:
READY_TO_ATTEST- viene data risposta a ogni domanda richiesta. Vai direttamente a Attestato (sotto).PARTIAL- alcune risposte erano precompilate, ma rimangono le domande obbligatorie. Rispondi acurrentQuestion.NOT_INFERRED- non è possibile precompilare nulla; rispondi in modo semplice questionario.
I programmi già soddisfatti da una risposta esistente vengono saltati e restituiti
alreadySatisfied (omesso sopra).
Rivedi e correggi
La sessione contiene risposte precompilate, non una risposta definitiva. Per ciascuno risposta, lo spedizioniere:
- accetta lo lascia intatto e rimane
INFERRED, o - lo corregge — invia un nuovo valore con
questionnaireAnswersSubmit, quale diventaMANUAL.
Invia una o più risposte contemporaneamente. Clarify avanza currentQuestion al
successiva domanda rimanente e, quando non ne rimane nessuna, finalizza quella della riga
risposta (it responseId è popolato).
Ad esempio, il mittente accetta quanto dedotto intended_use ma corregge
contains_color_additives, quindi inviano solo quella risposta:
mutation SubmitAnswers($input: QuestionnaireAnswersSubmitInput!) { questionnaireAnswersSubmit(input: $input) { status lines { id status responseId answers { questionCode value provenance confidence } } }}Attesta
Quando una linea è READY_TO_ATTEST — ogni risposta richiesta già precompilata e
il mittente è d'accordo: accettalo in una sola chiamata con questionnaireSessionAttest. Esso
finalizza ogni riga idonea o solo la lineIds tu passi.
mutation AttestSession($input: QuestionnaireSessionAttestInput!) { questionnaireSessionAttest(input: $input) { id status lines { id status responseId } }}Per eliminare una sessione in corso, chiamare questionnaireSessionAbandon(id: ID!).
Invia una risposta completa
Se hai già tutte le risposte, ad esempio una risposta riutilizzabile impostata per a
CATALOG_ITEM - salta la sessione e invia direttamente con
questionnaireResponseSubmit. Sostituisce qualsiasi risposta precedente per lo stesso
elemento e programma.
mutation SubmitResponse($input: QuestionnaireResponseSubmitInput!) { questionnaireResponseSubmit(input: $input) { id status completedAt answers { questionCode value provenance } }}Preferisci rispondere senza fare deduzioni? questionnaireSessionStart apre una sessione
per i programmi che scegli, quindi usi gli stessi Rivedi e correggi e
Attesta le chiamate sopra.
Leggi le risposte e la preparazione
Recupera un record finalizzato con questionnaireResponse(id)e verificare se a
l'intero contenitore è pronto per essere archiviato containerComplianceReadiness —
ready È true solo quando ogni riga ha una risposta completa.
query ContainerReadiness($containerType: ContainerType!, $containerId: ID!) { containerComplianceReadiness( containerType: $containerType containerId: $containerId ) { ready totalLineCount outstandingLineCount }}Passaggi successivi
- Come funziona - ramificazione, provenienza, opzioni dinamiche e destinazione d'uso.
- Verificare i requisiti di conformità - scoprire i programmi e leggere le strutture dei questionari.
Completa un questionario
Clarify precompila ciò che può dai dati del tuo articolo; confermi o correggi il riposare, quindi finalizzare.
GraphQL
Una volta che sai quali programmi si applicano (vedi Verificare i requisiti di conformità), il flusso consigliato è di tre chiamate:
complianceQuestionnaireInferapre una sessione con le risposte precompilato dai dati dell'articolo.questionnaireAnswersSubmitper cambiare qualsiasi cosa il mittente non è d'accordo e risponde su ciò che resta.questionnaireSessionAttestaccettare e finalizzare.Se hai già tutte le risposte, puoi inviare una risposta completa in una sola chiamata invece, vedi Invia una risposta completa di seguito.
La lettura richiede il
COMPLIANCE_READambito; l'invio delle risposte richiedeCOMPLIANCE_WRITE. Vedere OAuth.Ogni risposta
valueè una stringa codificata JSON: un booleano è"true", un select o il valore del testo è citato come"\"cosmetic\"", è una selezione multipla"[\"a\",\"b\"]", e un numero è"42".