Ҳужжатлаштириш

Элемент маълумотлари учун бепул REST API. API қулфи талаб этилмайди.

API калит талаб этилмайди CORS барча манбалар учун ишга туширилган JSON
https://api.periodictableofelements.org

Бу API шахсий, таълим ва савдо лойиҳалари учун бепул. Биз фақат сиздан ўз дастурингиз ёки веб-сайтингизда PeriodicTableOfElements.org сайтига қайтиш учун ҳавола киритишни сўраймиз.

Мисол:

<a href="https://periodictableofelements.org">Data from PeriodicTableOfElements.org</a>

Ёки оддий матнда:

Data provided by PeriodicTableOfElements.org

Охири

GET /elements/

Барча 118 элементни, жумладан атом массаси, категория, электрон конфигурацияси, эритиш/қайнатиш нуқталари ва жадвал кўринишидаги устунлар жойлашувини ўз ичига олган асосий хусусиятлари билан қайтаради.

Rate limit: 200/hr
Намуна жавоби
[
  {
    "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));
GET /elements/{atomic_number}/

Бир элемент учун барча майдонлар, жумладан: физик хусусиятлар, кашф этиш маълумотлари, изотоплар, ишлатмалар, қизиқарли фактлар ва бошқалар билан тўлиқ маълумотларни қайтаради.

Rate limit: 300/hr
Example Response — /elements/79/
{
  "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));
GET /elements/quiz/

Элементлар ҳақидаги саволларни қайтаради. Савол турлари: белгилар идентификацияси, атом рақами қидируви, категориялар синфи ва хоссаларга асосланган ишоралар.

Rate limit: 300/hr
Намуна жавоби
{
  "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));
GET /elements/element-of-the-day/

Бугунги кўрсатилган элементни қайтаради. Элемент ҳар куни ўзгаради ва барча 118 элементлар орасида айланиб туради. Мақола ва қизиқарли фактларни ҳам ўз ичига олади.

Rate limit: 200/hr
Намуна жавоби
{
  "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));
GET /elements/molar-mass/?formula={formula}

Химик формуланинг молар массасини ҳисоблайди. Қўнғироқчалар ва остин-устунларни қўллаб-қувватлайди (масалан, Ca(OH)2, H2SO4). Элемент бўйича бўлиниш қайтарилади.

Rate limit: 300/hr
Example Response — /elements/molar-mass/?formula=H2O
{
  "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));
GET /elements/export/json/

Барча 118 элементни шакллантирилган JSON файли сифатида юклаб олади. Атом хоссалари, кашф этиш маълумотлари, электрон конфигурациялари ва бошқалар ҳам киритилган.

Rate limit: 20/hr Қайтаради: application/json attachment
GET /elements/export/csv/

Барча 118 элементни CSV файли сифатида юклаб олади. JSON экспорти билан бир хил майдонлар, электрон варақалар ва маълумотлар таҳлили учун мос келади.

Rate limit: 20/hr Қайталайди: text/csv attachment

Сифат чегаралари

Endpoint Limit
/elements/ 200 requests/hour
/elements/{n}/ 300 requests/hour
/elements/quiz/ 300 requests/hour
/elements/element-of-the-day/ 200 requests/hour
/elements/molar-mass/ 300 requests/hour
/elements/export/json/ 20 requests/hour
/elements/export/csv/ 20 requests/hour

Ҳар бир IP-адрес учун тезлик чегаралари мавжуд. Чегарадан ошиб кетиш HTTP 429 (Кўплаб талаблар) ни қайтаради.

Код мисоллари

// 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']})")

Маълумотни юклаб олиш

JSON

Ҳамма 118 элемент тўлиқ хусусиятлар билан. Веб дастурлар ва скриптлар учун идеал.

JSON юклаб олиш

CSV файли

Элементлар варақасига мос формат. Excel, Google Sheets ёки Pandas да очиш мумкин.

CSV юклаб олиш