DOCS

Udfyld et spørgeskema

Udfyld et spørgeskema

Clarify forudfylder det, den kan, ud fra dine varedata; du bekræfter eller retter resten og finaliserer derefter.

GraphQL

Når du ved, hvilke programmer der gælder (se Tjek compliance-krav), er det anbefalede flow tre kald:

  1. InferercomplianceQuestionnaireInfer åbner en session med svar forududfyldt ud fra dine varedata.
  2. Gennemgå og retquestionnaireAnswersSubmit til at ændre det, afsenderen er uenig i, og besvare det, der mangler.
  3. AttesterquestionnaireSessionAttest til at acceptere og finalisere.

Hvis du allerede har alle svar, kan du indsende et komplet svar i ét kald i stedet — se Indsend et komplet svar nedenfor.

Scopes

Læsning kræver scope COMPLIANCE_READ; indsendelse af svar kræver COMPLIANCE_WRITE. Se OAuth.

Svarværdier er JSON-kodede

Hver svar-value er en JSON-kodet streng: en boolean er "true", en valg- eller tekstværdi er citeret som "\"cosmetic\"", et multi-select er "[\"a\",\"b\"]", og et tal er "42".

Inferer og forudfyld 

complianceQuestionnaireInfer opløser de relevante programmer for dine varer, åbner en session og forudbesvarer spørgsmål ud fra dine varedata. Hvert forududfyldt svar har provenance: INFERRED og en confidence-score.

Send intendedUse for at styre inferens — storefront-flows bør sende 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}

Hver linjes state fortæller dig, hvad der er næste skridt:

  • READY_TO_ATTEST — alle påkrævede spørgsmål er besvaret. Gå direkte til Attester (nedenfor).
  • PARTIAL — nogle svar blev forududfyldt, men påkrævede spørgsmål resterer. Besvar dem ved currentQuestion.
  • NOT_INFERRED — intet kunne forududfyldes; besvar det som et almindeligt spørgeskema.

Programmer, der allerede er dækket af et eksisterende svar, springes over og returneres i alreadySatisfied (udeladt ovenfor).

Gennemgå og ret 

Sessionen indeholder forududfyldte svar — ikke et finaliseret svar. For hvert svar gør afsenderen enten:

  • accepterer det — lader det være urørt, og det forbliver INFERRED, eller
  • retter det — indsender en ny værdi med questionnaireAnswersSubmit, som bliver MANUAL.

Indsend ét svar eller flere ad gangen. Clarify fremrykker currentQuestion til det næste resterende spørgsmål og, når ingen er tilbage, finaliserer linjens svar (dens responseId udfyldes).

Accepterede svar bevares, ikke kasseres

Rettelse af ét svar tilsidesætter kun det svar. Det finaliserede svar indeholder det fulde sæt — accepterede svar forbliver INFERRED, rettelser er MANUAL — så du altid bevarer en registrering af, hvad AI'en leverede, mod hvad en person ændrede.

For eksempel accepterer afsenderen det infererede intended_use, men retter contains_color_additives, så de indsender kun det ene svar:

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}

Attester 

Når en linje er READY_TO_ATTEST — alle påkrævede svar allerede forududfyldt og afsenderen er enig — accepter den i ét kald med questionnaireSessionAttest. Det finaliserer alle berettigede linjer eller kun de lineIds, du sender.

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

For at kassere en igangværende session, kald questionnaireSessionAbandon(id: ID!).

Indsend et komplet svar 

Hvis du allerede har alle svar — for eksempel et genanvendeligt sæt svar for et CATALOG_ITEM — spring sessionen over og indsend direkte med questionnaireResponseSubmit. Det erstatter ethvert tidligere svar for samme vare og program.

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}

Foretrækker du at besvare uden inferens? questionnaireSessionStart åbner en session for de programmer, du vælger, og derefter bruger du de samme kald til Gennemgå og ret og Attester som ovenfor.

Læs svar og parathed 

Hent en finaliseret registrering med questionnaireResponse(id), og tjek om en hel container er klar til indgivelse med containerComplianceReadinessready er true kun når hver linje har et komplet svar.

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

Næste trin 

Book en demo

Var denne side nyttig?