Documentation de l'API
API REST gratuite pour les données des éléments. Aucune clé API requise.
https://api.periodictableofelements.org
Cette API est gratuite pour les projets personnels, éducatifs et commerciaux. Nous vous demandons simplement d'inclure un lien vers PériodiqueTableOfElements.org quelque part dans votre application ou site web.
Exemple d'attribution :
<a href="https://periodictableofelements.org">Data from PeriodicTableOfElements.org</a>
Ou en texte clair:
Data provided by PeriodicTableOfElements.org
Points finals
Renvoie tous les 118 éléments ayant des propriétés clés, y compris la masse atomique, la catégorie, la configuration des électrons, les points de fusion et de brouillage et les positions de grille pour la mise en page de la table.
[
{
"atomic_number": 1,
"symbol": "H",
"name": "Hydrogen",
"slug": "hydrogen",
"atomic_mass": 1.008,
"category": "nonmetal",
"block": "s",
"group_number": 1,
"period": 1,
"state_at_room_temp": "gas",
"electronegativity": 2.2,
"ionization_energy": 1312.0,
"electron_affinity": -73.0,
"atomic_radius": 53,
"density": 0.00008988,
"melting_point": 14.01,
"boiling_point": 20.28,
"discovery_year": 1766,
"category_color": "#2ecc71",
"cpk_hex_color": "FFFFFF",
"grid_row": 1,
"grid_column": 1,
"electrons_per_shell": [1],
"electron_configuration_semantic": "1s1"
},
...
]
fetch('https://api.periodictableofelements.org/elements/')
.then(r => r.json())
.then(data => console.log(data));
Retourne des données complètes pour un seul élément, incluant tous les champs : propriétés physiques, informations de découverte, isotopes, utilisations, faits amusants, et plus encore.
{
"atomic_number": 79,
"symbol": "Au",
"name": "Gold",
"slug": "gold",
"atomic_mass": 196.9666,
"category": "transition_metal",
"block": "d",
"group_number": 11,
"period": 6,
"state_at_room_temp": "solid",
"electronegativity": 2.54,
"density": 19.3,
"melting_point": 1337.33,
"boiling_point": 3129.0,
"discovery_year": -2500,
"discovered_by": "Ancient civilizations",
"electron_configuration": "1s2 2s2 2p6 3s2 3p6 3d10 4s2 4p6 4d10 5s1 4f14 5p6 5d10 6s1",
"electron_configuration_semantic": "[Xe] 4f14 5d10 6s1",
"oxidation_states": "+1, +3",
"is_radioactive": false,
"is_synthetic": false,
...
}
fetch('https://api.periodictableofelements.org/elements/79/')
.then(r => r.json())
.then(data => console.log(data));
Les types de questions comprennent l'identification des symboles, la recherche des numéros atomiques, la classification des catégories et les indices basés sur des propriétés.
{
"type": "symbol",
"question": "What element has the symbol Fe?",
"choices": [
{"name": "Iron", "atomic_number": 26},
{"name": "Fluorine", "atomic_number": 9},
{"name": "Francium", "atomic_number": 87},
{"name": "Fermium", "atomic_number": 100}
],
"answer": 26
}
fetch('https://api.periodictableofelements.org/elements/quiz/')
.then(r => r.json())
.then(data => console.log(data));
Retourne l'élément présenté d'aujourd'hui. L'élément change quotidiennement et les cycles à travers tous les 118 éléments. Comprend un résumé et un fait amusant.
{
"atomic_number": 6,
"symbol": "C",
"name": "Carbon",
"slug": "carbon",
"category": "nonmetal",
"category_color": "#2ecc71",
"summary": "Carbon is a chemical element...",
"fun_fact": "Carbon can form nearly 10 million different compounds...",
"atomic_mass": 12.011,
"discovery_year": -3750,
"date": "2026-03-29"
}
fetch('https://api.periodictableofelements.org/elements/element-of-the-day/')
.then(r => r.json())
.then(data => console.log(data));
Calcule la masse molaire d'une formule chimique. Prend en charge les parenthèses et les sous-crits (p. ex. Ca(OH)2, H2SO4). Renvoie une ventilation par élément.
{
"formula": "H2O",
"molar_mass": 18.015,
"breakdown": [
{
"symbol": "H",
"count": 2,
"atomic_mass": 1.008,
"subtotal": 2.016
},
{
"symbol": "O",
"count": 1,
"atomic_mass": 15.999,
"subtotal": 15.999
}
]
}
fetch('https://api.periodictableofelements.org/elements/molar-mass/?formula=H2O')
.then(r => r.json())
.then(data => console.log(data));
Télécharge les 118 éléments sous forme de fichier JSON formaté. Comprend des propriétés atomiques, des informations de découverte, des configurations d'électrons, et plus encore.
https://api.periodictableofelements.org/elements/export/json/
Télécharger tous les 118 éléments comme un fichier CSV. Mêmes champs que l'exportation JSON, adapté pour les feuilles de calcul et l'analyse de données.
https://api.periodictableofelements.org/elements/export/csv/
Limites de taux
Les limites de taux sont par adresse IP. Au-delà de la limite renvoie HTTP 429 (Trop de demandes).
Exemples de codes
// Fetch all elements fetch('https://api.periodictableofelements.org/elements/') .then(res => res.json()) .then(elements => { console.log(`Loaded ${elements.length} elements`); elements.forEach(el => { console.log(`${el.symbol} - ${el.name} (${el.atomic_mass})`); }); }); // Get a single element fetch('https://api.periodictableofelements.org/elements/79/') .then(res => res.json()) .then(gold => { console.log(`${gold.name}: ${gold.atomic_mass} u`); }); // Calculate molar mass fetch('https://api.periodictableofelements.org/elements/molar-mass/?formula=H2SO4') .then(res => res.json()) .then(data => { console.log(`${data.formula}: ${data.molar_mass} g/mol`); }); // Get element of the day fetch('https://api.periodictableofelements.org/elements/element-of-the-day/') .then(res => res.json()) .then(el => { console.log(`Today's element: ${el.name} (${el.symbol})`); });
# Fetch all elements import requests response = requests.get('https://api.periodictableofelements.org/elements/') elements = response.json() print(f'Loaded {len(elements)} elements') for el in elements: print(f"{el['symbol']} - {el['name']} ({el['atomic_mass']})") # Get a single element gold = requests.get('https://api.periodictableofelements.org/elements/79/').json() print(f"{gold['name']}: {gold['atomic_mass']} u") # Calculate molar mass data = requests.get( 'https://api.periodictableofelements.org/elements/molar-mass/', params={'formula': 'H2SO4'} ).json() print(f"{data['formula']}: {data['molar_mass']} g/mol") # Get element of the day el = requests.get( 'https://api.periodictableofelements.org/elements/element-of-the-day/' ).json() print(f"Today's element: {el['name']} ({el['symbol']})")
Télécharger les données
JSON
Tous les 118 éléments avec toutes les propriétés. Idéal pour les applications web et les scripts.
Télécharger JSONCSV
Format de feuille de calcul facile à utiliser. Ouvrez dans Excel, Google Sheets ou Pandas.
Télécharger CSV