1dex Connector Tester l'API

Démarrage

Appeler l'API publique 1dex

La racine publique est https://1dex.fr/api/v1. Les exemples couvrent l'aperçu, les détails authentifiés, les suggestions, le score public et les routes cartographiques canoniques.

Une clé de démonstration, disponible pour un compte professionnel Free lorsque la démo est publiée, est limitée à l'adresse épinglée; une clé live suit les droits du compte. Utilisez account/usage pour identifier la vue live ou demo.

Les détails et déblocages exigent une Idempotency-Key. Conservez-la pour rejouer la même intention; changez-la pour une nouvelle intention. Les réponses 202, 429 et 503 sont temporaires, contrairement à 409.

Erreurs d'acces a prevoir: invalid_api_key, api_subscription_required, api_professional_required, address_unlock_required et insufficient_credits.

curl

Points d'entrée publics

Autocomplete adresse

curl "https://1dex.fr/api/v1/autocomplete/address?q=10+rue+de+la+paix&limit=5"
curl "https://1dex.fr/api/v1/communes/search?q=aix&limit=5"

Détails pro abonnés

curl "https://1dex.fr/api/v1/address-details?address=10%20rue%20des%20cordeliers%20aix&fields=summary,rail" \
  -H "Authorization: Bearer $ONEDEX_API_KEY" \
  -H "Idempotency-Key: $ONEDEX_DETAILS_REQUEST_ID"

curl -X POST "https://1dex.fr/api/v1/address-unlocks" \
  -H "Authorization: Bearer $ONEDEX_API_KEY" \
  -H "Idempotency-Key: $ONEDEX_UNLOCK_REQUEST_ID" \
  -H "Content-Type: application/json" \
  -d '{"address":"10 rue des cordeliers aix"}'

curl "https://1dex.fr/api/v1/account/usage" \
  -H "Authorization: Bearer $ONEDEX_API_KEY"

Si address-details renvoie address_unlock_required, postez normalized_address_key seul ou l'objet unlock_request, puis appelez exactement le details_url retourné avec une nouvelle clé d'idempotence.

Etat d'une page adresse

curl "https://1dex.fr/api/v1/address-pages/10-rue-de-la-paix-paris-75002/state"
curl "https://1dex.fr/api/v1/public-preview?path=/ville/aix-en-provence-13001"

Aperçu adresse

curl "https://1dex.fr/api/v1/address-overview?address=10%20rue%20des%20cordeliers%20aix&dvf_radius_m=600"

Calque carte et viewport

curl "https://1dex.fr/api/v1/map-layer/parcelles?address=50%20rue%20des%20tanneurs%20aix&viewport_render_mode=features"
curl "https://1dex.fr/api/v1/map-viewport?layers=context,iris&address=10%20rue%20des%20cordeliers%20aix"
curl "https://1dex.fr/api/v1/map-focus/public-location?lon=5.446766&lat=43.529667"

Score public

curl -X POST "https://1dex.fr/api/v1/score/address" \
  -H "Content-Type: application/json" \
  -d '{"items":[{"address":"10 rue des cordeliers aix"}]}'

curl "https://1dex.fr/api/v1/score/address-suggest?q=10%20rue%20des%20cordeliers%20aix&limit=5"
curl "https://1dex.fr/api/v1/score/grid?bbox=5.4457,43.5274,5.4468,43.5282&zoom=15&category=global"

JavaScript

Client npm

Le package JS couvre les routes publiques d'aperçu, détails pro abonnés, autocomplete, score, état de page adresse, aperçu public, calques carte, focus carte et viewport.

@1dex-fr/connector

npm i @1dex-fr/connector

import { randomUUID } from "node:crypto";
import { OneDexClient } from "@1dex-fr/connector";

const client = new OneDexClient({
  apiKey: process.env.ONEDEX_API_KEY,
});
const overview = await client.overview.address({
  address: "10 rue des cordeliers aix",
  dvf_radius_m: 600,
});
const suggestions = await client.autocomplete.address({
  q: "10 rue des cordeliers aix",
  limit: 5,
});
const score = await client.score.address({
  items: [{ address: "10 rue des cordeliers aix" }],
});
const details = await client.address.details({
  address: "10 rue des cordeliers aix",
  fields: ["summary", "rail"],
  idempotencyKey: randomUUID(),
}, { retry: true });
const usage = await client.account.usage();

console.log(overview.version, suggestions.suggestions, score.items, details.fields, usage.version);

Python

Client Python

onedex

python -m pip install 1dex-connector

import os
import uuid

from onedex import OneDexClient

client = OneDexClient(api_key=os.getenv("ONEDEX_API_KEY"))
overview = client.overview.address({
    "address": "10 rue des cordeliers aix",
    "dvf_radius_m": 600,
})
suggestions = client.autocomplete.address({
    "q": "10 rue des cordeliers aix",
    "limit": 5,
})
score = client.score.address({
    "items": [{"address": "10 rue des cordeliers aix"}],
})
details = client.address.details(
    address="10 rue des cordeliers aix",
    fields=["summary", "rail"],
    idempotency_key=str(uuid.uuid4()),
    max_attempts=3,
)
usage = client.account.usage()

print(overview["version"], suggestions["suggestions"], score["items"], details["fields"], usage["version"])