დოკუმენტაცია

თავისუფალი 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/

ელემენტის სახელი

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/

ელემენტის სახელი

Rate limit: 20/hr დაბრუნება: application/json attachment
მყისიერი ჩამოტვირთვა
https://api.periodictableofelements.org/elements/export/json/
GET /elements/export/csv/

ჩამოტვირთვა ყველა 118 ელემენტი როგორც CSV ფაილი. იგივე ველი როგორც JSON ექსპორტი, შესაფერისი ელექტრონული ცხრილებისა და მონაცემთა ანალიზისთვის.

Rate limit: 20/hr უბრუნებს: text/csv attachment
მყისიერი ჩამოტვირთვა
https://api.periodictableofelements.org/elements/export/csv/

სიჩქარის საზღვრები

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 ელემენტი სრული თვისებებით. იდეალურია ვებ პროგრამებისა და სკრიპტებისთვის. Name

JSON ჩამოტვირთვა

CSV ფაილი

ელექტრონული ცხრილებისთვის ადაპტირებული ფორმატი. გახსნა Excel, Google Sheets ან Pandas პროგრამებში.

CSV ჩამოტვირთვა