Découvrir les programmes applicables
Passez le hsCode et le shipToCountry d'un article pour trouver quels programmes s'appliquent. Le
résultat est une connexion paginée de nœuds ComplianceRequirement, chacun pointant vers le
ComplianceProgram qu'il déclenche.
query ComplianceRequirements($filter: ComplianceRequirementFilter!) { complianceRequirements(filter: $filter, first: 10) { totalCount pageInfo { hasNextPage endCursor } edges { cursor node { id hsCode shipToCountry shipFromCountry program { id code name programType authority jurisdiction status strictness currentVersion { id version status } } } } }}Un shipFromCountry à null sur une exigence signifie que le programme s'applique
quelle que soit l'origine. Lorsque vous fournissez shipFromCountry dans le filtre, les lignes
spécifiques à l'origine et les lignes « toute origine » sont toutes deux correspondantes.
Filtrage et pagination
complianceRequirements accepte un ComplianceRequirementFilter plus les arguments de pagination par curseur standard (first / after pour la pagination avant, last /
before pour la pagination arrière).
| Filter field↕ | Type↕ | Notes↕ |
|---|---|---|
hsCode | String | Correspondance exacte du code HS. Mutuellement exclusif avec hsCodePrefix. |
hsCodePrefix | String | Correspondance par préfixe (chiffres et points uniquement, 12 caractères max). Mutuellement exclusif avec hsCode. |
shipToCountry | CountryCode | Pays de destination. |
shipFromCountry | CountryCode | Pays d'origine. Les lignes avec origine null (« toute origine ») correspondent aussi. |
programTypes | [ComplianceProgramType!] | Correspondre uniquement à ces types de programme. Liste vide = pas de filtre. |
Par exemple, listez toutes les exigences PGA pour le chapitre cosmétiques 3304 :
query PgaRequirements($filter: ComplianceRequirementFilter!) { complianceRequirements(filter: $filter, first: 25) { totalCount edges { node { hsCode shipToCountry program { code name } } } }}Lire le questionnaire d'un programme
Chaque ComplianceProgram expose sa currentVersion — le questionnaire
ACTIVE — et les questions de cette version dans l'ordre d'affichage. Chaque question déclare son
answerType, si elle est required, ses options (pour les types select), et une
displayCondition optionnelle qui branche le questionnaire. Lisez cette structure
pour afficher votre propre interface ou pour comprendre exactement ce qu'un importateur doit fournir.
query QuestionnaireStructure($filter: ComplianceRequirementFilter!) { complianceRequirements(filter: $filter, first: 1) { edges { node { program { code name currentVersion { version status questions { code prompt helpText answerType required section displayOrder optionsSource options { value label displayOrder } displayCondition { questionCode operator values } } } } } } }}Dans l'exemple ci-dessus, contains_color_additives n'est affichée que lorsque
intended_use est égal à cosmetic — c'est la displayCondition en action. Pour le
modèle de branchement complet et les options dynamiques (optionsSource), consultez
Comment ça marche.
Prochaines étapes
- Compléter un questionnaire — inférer, répondre et finaliser les questionnaires découverts ici.
- Comment ça marche — branchement, provenance et options dynamiques.
Vérifier les exigences de conformité
Découvrez quels programmes de conformité s'appliquent à un article, et lisez le questionnaire auquel vous devrez répondre.
GraphQL
La query
complianceRequirementsest le point d'entrée de Zonos Clarify. À partir du code HS et de la route d'un article, elle renvoie les programmes de conformité déclenchés, et vous permet de parcourir la structure complète du questionnaire de chaque programme — questions, options et logique de branchement. Utilisez-la pour déterminer si un envoi nécessite des réponses de conformité et pour afficher votre propre interface de questionnaire.Cette query requiert le scope
COMPLIANCE_READ. Consultez OAuth pour l'authentification des requêtes API.