Skip to main content

Cas d’usage

Le benchmark prix permet aux laboratoires et distributeurs de :
  • Comparer leurs prix à la concurrence
  • Identifier les opportunités de positionnement
  • Suivre l’évolution des prix dans le temps

Implémentation

1. Comparer les prix d’un produit

Utilisez l’endpoint /v1/prices/compare avec l’EAN du produit :
import requests

API_KEY = "oc_YOUR_API_KEY"
EAN = "3401560504507"  # doliprane 1000mg

response = requests.get(
    f"https://api.officiscan.com/v1/prices/compare?ean={EAN}",
    headers={"Authorization": f"Bearer {API_KEY}"}
)

data = response.json()

print(f"Produit: {data['product_name']}")
print(f"Prix min: {data['stats']['min_price']}€")
print(f"Prix max: {data['stats']['max_price']}€")
print(f"Prix moyen: {data['stats']['avg_price']}€")
print(f"Nombre de sources: {data['stats']['source_count']}")

2. Suivre l’évolution des prix

Utilisez l’endpoint /v1/prices/product/{id} pour l’historique :
product_id = 12345

response = requests.get(
    f"https://api.officiscan.com/v1/prices/product/{product_id}?days=30",
    headers={"Authorization": f"Bearer {API_KEY}"}
)

history = response.json()["history"]

for point in history:
    print(f"{point['collected_at']}: {point['price']}€")

3. Créer un rapport de benchmark

import pandas as pd

def benchmark_report(ean_list):
    results = []

    for ean in ean_list:
        response = requests.get(
            f"https://api.officiscan.com/v1/prices/compare?ean={ean}",
            headers={"Authorization": f"Bearer {API_KEY}"}
        )
        data = response.json()

        results.append({
            "ean": ean,
            "product": data["product_name"],
            "min_price": data["stats"]["min_price"],
            "max_price": data["stats"]["max_price"],
            "avg_price": data["stats"]["avg_price"],
            "sources": data["stats"]["source_count"]
        })

    return pd.DataFrame(results)

# Exemple d'utilisation
eans = ["3401560504507", "3400930001035", "3401599504502"]
report = benchmark_report(eans)
print(report)

Endpoints utilisés

GET /v1/prices/compare

Comparer les prix d’un produit

GET /v1/prices/product/{id}

Historique des prix