Ressources

Catégories

Chaque point de terminaison Catégories, avec la portée qu'il impose, le corps qu'il accepte, une réponse lisible et les refus qu'il peut renvoyer.

Lister les catégories de produits.

get/categories
Portée
Aucune portée requise
Idempotency-Key
Non accepté
Renvoie
200
Requête
curl "https://passportcraft.com/api/v1/categories" \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY"
Réponse · 200
{
  "object": "list",
  "data": [
    {
      "object": "category",
      "id": "general",
      "name": "categories/general",
      "display_name": "General Product",
      "schema_version": "1.0.0-draft",
      "field_count": 28
    },
    {
      "object": "category",
      "id": "textile",
      "name": "categories/textile",
      "display_name": "Textile / Apparel",
      "schema_version": "1.0.0-draft",
      "field_count": 51
    },
    {
      "object": "category",
      "id": "battery",
      "name": "categories/battery",
      "display_name": "Battery",
      "schema_version": "1.0.0-draft",
      "field_count": 92
    }
  ],
  "has_more": false,
  "next_cursor": null
}

GET /categories

Récupérer le schéma de champs d’une catégorie.

get/categories/{category}/schema
Portée
Aucune portée requise
Idempotency-Key
Non accepté
Renvoie
200

Paramètres de chemin

categorystringObligatoire

Un identifiant de catégorie, tel que renvoyé par la liste des catégories.

Erreurs

Tous les refus que ce point de terminaison peut renvoyer, avec le statut qui les accompagne.

Requête
curl "https://passportcraft.com/api/v1/categories/textile/schema" \
  -H "Authorization: Bearer $PASSPORTCRAFT_API_KEY"
Réponse · 200
{
  "object": "category_schema",
  "id": "textile",
  "name": "categories/textile/schema",
  "category": "textile",
  "display_name": "Textile / Apparel",
  "schema_version": "1.0.0-draft",
  "field_groups": [
    {
      "object": "field_group",
      "id": "identification",
      "label": "Product Identification",
      "description": "Core identifiers and descriptors for the product"
    },
    {
      "object": "field_group",
      "id": "manufacturer",
      "label": "Manufacturer / Economic Operator",
      "description": "Details of the manufacturer or EU responsible person"
    },
    {
      "object": "field_group",
      "id": "sustainability",
      "label": "Environmental Data",
      "description": "Carbon footprint and material recycling data"
    },
    {
      "object": "field_group",
      "id": "compliance",
      "label": "Regulatory Compliance",
      "description": "Substances of concern and conformity declarations"
    },
    {
      "object": "field_group",
      "id": "end_of_life",
      "label": "End of Life",
      "description": "Recycling and disposal guidance for the product"
    },
    {
      "object": "field_group",
      "id": "circular_economy",
      "label": "Circular Economy",
      "description": "Recyclability, disassembly, and end-of-life information"
    },
    {
      "object": "field_group",
      "id": "materials",
      "label": "Material Composition",
      "description": "Fiber content and testing methodology for textile materials"
    },
    {
      "object": "field_group",
      "id": "care",
      "label": "Care Instructions",
      "description": "ISO 3758 care symbols and human-readable care guidance"
    },
    {
      "object": "field_group",
      "id": "manufacturing",
      "label": "Manufacturing Details",
      "description": "Country of manufacture, production date, and batch traceability"
    },
    {
      "object": "field_group",
      "id": "durability",
      "label": "Durability & Repairability",
      "description": "Lifetime estimates, repairability score, and repair resources"
    }
  ],
  "fields": [
    {
      "object": "field",
      "name": "product_name",
      "type": "text",
      "required": true,
      "access_tier": "public",
      "group": "identification",
      "label": "Product Name",
      "description": "Commercial name of the product",
      "hint": "Shown as the headline on the public passport and in search.",
      "requirement": "required",
      "functional_basis": "Record identity — the passport cannot identify its product without a name.",
      "regulatory_basis": [
        {
          "regulation": "ESPR (Reg (EU) 2024/1781)",
          "reference": "Annex III(a)",
          "status": "anticipated",
          "note": "Product identifier/name — DA-gated for textiles."
        }
      ]
    },
    {
      "object": "field",
      "name": "recyclable_content_percentage",
      "type": "number",
      "required": false,
      "access_tier": "public",
      "group": "sustainability",
      "label": "Recyclable Content (%)",
      "description": "Percentage of the product that is recyclable at end of life",
      "min": 0,
      "max": 100
    },
    {
      "object": "field",
      "name": "conformity_declaration_url",
      "type": "url",
      "required": false,
      "access_tier": "authority",
      "group": "compliance",
      "label": "Declaration of Conformity URL",
      "description": "Link to the EU Declaration of Conformity document, or upload the PDF.",
      "document_types": [
        "conformity_declaration"
      ],
      "document_id_key": "conformity_declaration_url__document_id"
    }
  ]
}

GET /categories/textile/schema

Catégories — référence de l’API PassportCraft | PassportCraft