🚀 Arkive Product Passport API

RESTful JSON API for Digital Product Passports & LCA Integration

Overview & Base URL

The Arkive API provides a robust, compliant interface for managing Product Passports. All endpoints are RESTful and use JSON payloads.

Base URL:
https://api.arkive.com/v1/passports

Authentication

Secure all requests with your API Key. Your key should be passed in the Authorization header:

Authorization: Bearer YOUR_API_KEY

Core Endpoints

  • POST /passports — **Create or update** a product passport (upsert)
  • GET /passports/{product_id}/{batch_id} — **Retrieve** passport data (DPP + LCA)
  • **DELETE /passports/{product_id}/{batch_id}** — **Permanently delete** a product passport

Data Model Hierarchy

[PRODUCT_PASSPORT]
    |-- product_id (PK)
    |-- batch_id (PK)
    |-- DPP fields (regulatory data)
    |-- environmental_footprint (object container for 68+ LCA fields)

Mandatory Fields (Top Level)

Attribute Required Type Description
product_idYesstringUnique product identifier (e.g., SKU-12345)
batch_idYesstringUnique batch identifier (e.g., KA8-2005)
economic_operator_nameYesstringBrand owner / manufacturer
ean_codeYesstringEAN/UPC code
product_nameYesstringCommercial product name
product_categoryYesstringMain category (e.g. Skincare)
manufacturing_dateYesdateProduction date (YYYY-MM-DD)
functional_unit.weightYesfloatWeight
functional_unit.unitYesstringUnit of measure (e.g., kg, piece)
lifecycle_stageYesstringLifecycle stage (e.g., Manufacturing)
environmental_footprintYesobjectContainer for LCA fields

Sample Request Body (Partial)

{
    "product_identification": {
      "product_id": "SKU-12345",
      "batch_id": "KA8-2005",
      "economic_operator_name": "Arkive Cosmetics Inc.",
      "ean_code": "0655439008006",
      "product_name": "Lavender Hand Cream",
      "product_category": "Personal Care/Skincare",
      "manufacturing_date": "2024-06-15",
      "functional_unit": {
        "weight": 1.0,
        "unit": "kg"
      }
    },
    "environmental_footprint": {
      "material_composition": {
        "packaging": [
          {
            "packaging_id": "PACK-JAR-001",
            "material": "Glass",
            "quantity_per_functional_unit": 0.2
          }
        ]
      },
      "manufacturing": {
        "manufacturing_processes": [
          {"process_name": "Mixing", "process_location": "Germany"}
        ],
        "energy_consumption": {
          "quantity": 1.5,
          "unit": "kWh"
        }
      }
    }
    }

Example Requests (cURL)

Use these cURL commands to test the core functionality. Replace YOUR_API_KEY and the placeholder values.

1. Create or Update a Passport (POST)

curl -X POST \
    "https://api.arkive.com/v1/passports" \
    -H "Authorization: Bearer YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '@sample_passport_data.json'

*(Assumes you have saved the Sample Request Body above into a file named sample_passport_data.json)*

2. Retrieve Passport Data (GET)

curl -X GET \
    "https://api.arkive.com/v1/passports/SKU-12345/KA8-2005" \
    -H "Authorization: Bearer YOUR_API_KEY"

Consumer Insights & Data Services

The Arkive DPP API not only ensures compliance but also unlocks consumer engagement and data-driven insights via scan events, location, and BI integrations.