Hei acolo! În calitate de furnizor API (ingredient farmaceutic activ), am fost adesea întrebat despre ce este o schemă API. Așadar, m -am gândit că voi lua ceva timp pentru a -l descompune într -un mod ușor de înțeles.
Să începem cu elementele de bază. O schemă API este ca un plan pentru o API. Este o descriere detaliată a modului în care funcționează o API, ce date se așteaptă și ce date va reveni. Gândiți -vă la acesta ca la un set de reguli și orientări pe care atât furnizorul API (asta sunt eu!), Cât și consumatorul API (asta sunteți tu sau echipa dvs.) trebuie să urmeze pentru a asigura o comunicare lină și eficientă.


De ce este importantă o schemă API?
Ei bine, imaginați -vă că construiți o casă. Nu ai începe doar să arunci cărămizi fără un plan, nu? Același lucru este valabil și pentru API -uri. O schemă API oferă o modalitate clară și consecventă pentru dezvoltatori să înțeleagă și să utilizeze API -ul. Ajută la evitarea neînțelegerilor, reduce șansele de erori și facilitează integrarea API -ului în diferite aplicații.
De exemplu, să zicem că sunteți un dezvoltator care dorește să folosească API -ul nostru pentru a accesa informații despreNano-carbonizat Niobium, carbură de niobiu micron, carbură de niobiu ultra-fină, HFC. Schema API vă va spune exact ce puncte finale sunt disponibile, ce parametri trebuie să treceți și în ce format va fi răspunsul. Acest lucru vă face mult mai ușor să scrieți codul pentru a interacționa cu API -ul și obținerea datelor de care aveți nevoie.
Ce este într -o schemă API?
O schemă API include de obicei următoarele componente:
1. Endpoints
Acestea sunt adresele URL pe care le puteți apela pentru a accesa funcționalitatea API. Fiecare punct final reprezintă o operație specifică, cum ar fi obținerea unei liste de produse, crearea unei noi comenzi sau actualizarea informațiilor despre utilizator.
2. Formate de solicitare și răspuns
Schema va defini formatul datelor pe care trebuie să le trimiteți în solicitările dvs. (de exemplu, JSON, XML) și formatul datelor pe care API le va returna în răspunsurile sale. Acest lucru asigură că atât furnizorul API, cât și consumatorul sunt pe aceeași pagină atunci când vine vorba de gestionarea datelor.
3. Parametri
Acestea sunt valorile pe care le puteți trece la un punct final pentru a personaliza operația. De exemplu, este posibil să treceți un ID de produs pentru a obține informații despre un anumit produs sau un interval de date pentru a filtra o listă de comenzi.
4. Manevrarea erorilor
Schema va descrie, de asemenea, modul în care API -ul va gestiona erorile. Acesta va defini codurile de eroare pe care API le -ar putea returna și ce înseamnă fiecare cod. Acest lucru îi ajută pe dezvoltatori să înțeleagă ce a mers greșit atunci când apare o eroare și cum să o remedieze.
Tipuri de scheme API
Există mai multe tipuri de scheme API, fiecare cu propriile avantaje și cazuri de utilizare. Unele dintre cele mai frecvente includ:
Specificația OpenAPI (OAS)
Acesta este unul dintre cele mai populare standarde pentru documentarea API -urilor odihnitoare. Folosește un fișier YAML sau JSON pentru a descrie punctele finale, formatele de solicitare și răspuns ale API -ului, parametrii și multe altele. OAS este acceptat pe scară largă de instrumente și cadre, ceea ce face ușor generarea de documentație, SDK și cazuri de testare.
Schema GraphQL
GraphQL este un limbaj de interogare pentru API -uri care permite clienților să solicite exact datele de care au nevoie. O schemă GraphQL definește tipurile de date pe care API le poate returna și operațiunile care pot fi efectuate pe aceste tipuri. Oferă o modalitate mai flexibilă și mai eficientă de a accesa date în comparație cu API -urile tradiționale odihnitoare.
Tampoane de protocol
Tampoarele de protocol (ProtoBuf) este un format de serializare binară de limbaj agnostic dezvoltat de Google. Utilizează un fișier de schemă pentru a defini structura datelor care vor fi serializate și deserializate. Protobuf este cunoscut pentru performanța ridicată și dimensiunea mică a mesajului, ceea ce îl face o alegere populară pentru API -urile care trebuie să gestioneze cantități mari de date.
Cum folosim schemele API ca furnizor de API
În calitate de furnizor de API, ne bazăm pe schemele API pentru a ne asigura că API -urile noastre sunt ușor de utilizat și de integrat. Folosim specificația OpenAPI pentru a documenta API -urile noastre, ceea ce ne permite să oferim documentație clară și detaliată pentru clienții noștri. Această documentație include informații despre punctele finale, formatele de solicitare și răspuns, parametri și gestionarea erorilor.
De asemenea, folosim scheme API pentru a valida cererile pe care le primim de la clienții noștri. Verificând solicitările primite împotriva schemei, ne putem asigura că datele sunt în formatul corect și că toți parametrii necesari sunt prezenți. Acest lucru ajută la prevenirea erorilor și asigură că API -urile noastre sunt fiabile și sigure.
În plus, folosim scheme API pentru a genera SDK -uri și cazuri de testare. Folosind instrumente care acceptă specificația OpenAPI, putem genera automat cod în diferite limbaje de programare, ceea ce face mai ușor pentru clienții noștri să integreze API -urile noastre în aplicațiile lor. De asemenea, folosim schema pentru a genera cazuri de testare, ceea ce ne ajută să ne asigurăm că API -urile noastre funcționează corect și că îndeplinesc cerințele clienților noștri.
Exemple din lumea reală
Să aruncăm o privire la câteva exemple din lumea reală despre modul în care sunt utilizate schemele API.
Exemplul 1: Utilizarea API -ului nostru pentru a obține informații despreTioxanthen-9-one CAS de înaltă calitate: 492-22-8
Să presupunem că sunteți un cercetător care dorește să obțină informații despre un compus chimic specific. Puteți utiliza API -ul nostru pentru a accesa date precum proprietățile compusului, metodele de sinteză și informațiile de siguranță. Schema API vă va spune exact ce punct de vedere să apelați, ce parametri să treceți (de exemplu, numărul CAS) și în ce format va fi răspunsul.
Iată un exemplu de solicitare către API -ul nostru folosind Curl:
curl -x obțineți "https://api.oursite.com/compounds/492-22-8" -h "Acceptare: aplicație/json"
Răspunsul ar putea arăta așa ceva:
{"name": "thioxanthen-9-one", "cas_number": "492-22-8", "molecular_weight": 212.26, "proprietăți": {"topting_point": "85-87 ° C", "Boiling_Point": "365.7 ° C la 760 mmhg"}, "Synthesis_Method 1: reacționează x cu y în prezența lui Z ... "," Metoda 2: Folosiți următoarele condiții de reacție ... "]}
Exemplul 2: Crearea unei noi comenzi pentruCAS nr.455943-61-0 Suport mare
Dacă sunteți o companie farmaceutică care dorește să plaseze o comandă pentru o ofertă mare de API specifică, puteți utiliza API -ul nostru pentru a crea o nouă comandă. Schema API va defini punctul final pentru crearea unei comenzi, formatul de solicitare (de exemplu, detaliile comenzii, cantitatea și adresa de livrare) și formatul de răspuns (de exemplu, ID -ul comenzii și mesajul de confirmare).
Iată un exemplu de solicitare către API -ul nostru folosind Python:
Import solicitări url = "https://api.oursite.com/orders" data = {"product_id": "455943-61-0", "cantitate": 1000, "livrare_address": "123 Main St, Anytown, SUA"} Headers = {"Content-Type": "Aplicație/JSON"} răspuns = solicitări anteturi = anteturi) print (răspuns.json ())
Răspunsul ar putea arăta așa ceva:
{"Order_id": "123456", "Mesaj": "Ordinea creată cu succes. Comanda dvs. va fi procesată în 24 de ore." }
Concluzie
În concluzie, o schemă API este o parte crucială a oricărei API. Oferă o modalitate clară și consecventă pentru dezvoltatori de a înțelege și utiliza API -ul, reduce șansele de erori și facilitează integrarea API -ului în diferite aplicații. În calitate de furnizor de API, ne bazăm pe schemele API pentru a ne asigura că API -urile noastre sunt ușor de utilizat, de încredere și sigure.
Dacă sunteți interesat să utilizați API -urile noastre pentru a accesa informații despre produsele noastre sau pentru a plasa comenzi, ne -ar plăcea să aflăm de la dvs. Indiferent dacă sunteți cercetător, o companie farmaceutică sau un dezvoltator, API -urile noastre vă poate oferi datele și funcționalitatea de care aveți nevoie. Așadar, nu ezitați să ne contactați pentru a discuta cerințele dvs. și pentru a începe procesul de achiziții. Suntem aici pentru a vă ajuta să profitați la maxim de API -urile noastre și pentru a vă asigura că experiența dvs. cu noi este una pozitivă.
Referințe
- Fielding, RT (2000). Stiluri arhitecturale și proiectarea arhitecturilor software bazate pe rețea. Universitatea din California, Irvine.
- Khare, R., & Frystyk, H. (1997). Protocol de transfer de hipertext - HTTP/1.1. RFC 2068.
- Lindley, S., & Miller, B. (2015). GraphQL: un limbaj de interogare a datelor. Facebook.
- Varda, A. (2008). Bufferele de protocol: formatul de schimb de date Google. Blog Google Open Source.