მიუხედავად იმისა, ერკვევით თუ არა ტექნოლოგიურ სამყაროში, API-ების შესახებ შეიძლება ერთხელ მაინც გქონდეთ გაგონილი. თუ ქართულ, ტექნიკურ ლექსიკონში ჩავიხედებით, იქ API ასეა განმარტებული — გამოყენებითი პროგრამების ინტერფეისი (პროგრამის კომპონენტი, რომელიც მოიცავს ფუნქციებს, კლასებსა და პროცედურებს და გამოიყენება ამავე პროგრამის სხვა კომპონენტებთან ან გარეშე პროგრამებთან ბრძანებებისა და მონაცემების მიმოცვლისთვის).

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

მოდით დავიწყოთ — API არის ის კომპონენტი, რომელიც აგზავნის ინფორმაციას წინ და უკან, საიტსა და მომხმარებელს შორის.

რა არის API — მარტივად

ფოტო: Dribbble

ერთი მარტივი მაგალითი მოვიყავნოთ — თქვენ ვახშამი რესტორანში გადაწყვიტეთ, მიხვედით და მენიუდან რაც გსურდათ ისიც აარჩიეთ, თუმცა სამზარეულოში არ შედიხართ და საკვების მომზადებას თქვენით არ იწყებთ. ამის ნაცვლად ეძახით მიმტანს, რომელსაც აბარებთ, რა გსურთ. შეკვეთასაც სწორედ ის აკეთებს და მზა საკვებიც მოაქვს მაგიდამდე. ეს ყველაფერი ციფრულ რეალობაში რომ გადმოვიტანოთ, საიტი რომელზეც შევდივართ არის რესტორანი, ჩვენ ვართ მომხმარებელი, მიმტანი კი არის API.

როგორც უკვე აღვნიშნეთ, API ქართულად გამოყენებითი პროგრამების ინტერფეისს ნიშნავს. ერთი შეხედვით საკმაოდ კომპლექსურად ჟღერს, მაგრამ არც ისე რთულადაა საქმე. API არის პროგრამა, რომელიც ვებსაიტსა და მომხმარებელს შორის, ფონურ რეჟიმში მუშაობს და მის გაწეულ საქმეს ჩვენ ვერც კი ვამჩნევთ. სიმართლე რომ ვთქვათ, მას ვერც საიტებისა და აპლიკაციების მფლობელები ხედავენ, თუმცა ეს ასე მხოლოდ მაშინ ხდება, თუ API გამართულად მუშაობს. ის შესამჩნევი მხოლოდ მაშინაა, როცა თავის სამუშაოს სწორად ვერ ასრულებს.

ფოტო: Dribbble

კიდევ ერთხელ რომ წარმოვიდგინოთ, რეალურ ცხოვრებაში ეს ამბავი ასე გამოიყურება — თქვენ კონცერტის ბილეთები გსურთ, შედიხართ კონკრეტულ საიტზე, პოულობთ ბილეთებს და ონლაინ იხდით ფულს. ამ დროს ერთვება API საქმეში. API უკავშირდება ბანკს, ამოწმებს, მწყობრშია თუ არა თქვენი საბანკო ბარათი, შემდეგ უბრუნდება ვებსაიტს და ამ გადამოწმებულ ინფორმაციას აწვდის. სწორედ ამის შემდეგ დაადასტურებს საიტი თქვენს შესყიდვას. ტრანზაქციის განხორციელების შემდეგ API შესყიდვის შესახებ ინფორმაციას აწვდის აპლიკაციასაც და მომხმარებელსაც თავის ეკრანზე.

ამ პროცესის განმავლობაში API-ს თქვენ ვერსად დაინახავთ, თუმცა ფაქტია, რომ ბილეთებს მიიღებთ და ეს სწორედ მისი დამსახურება იქნება. ასე, API-ები ციფრული სამყაროს პატარა და კეთილი მოჩვენებები არიან, რომლებიც ჩვენგან შეუმჩნევლად ასრულებენ კოლოსალურ სამუშაოს.

API და მისი ინტეგრაცია

API ჭკვიანია და ეს ძალიან მნიშვნელოვანია. ის მომხმარებლისაგან იღებს ინფორმაციის მცირე ნაწილს, თუმცა მოწყობილობას ან საიტს დაუცველს არ ტოვებს. უკეთ რომ გავიგოთ, API-მ ზუსტად იცის თუ ინფორმაციის რა ნაწილი ჭირდება თავისი დანიშნულების შესასრულებლად. მას კონკრეტული დავალება აქვს და ამ დავალების ჩარჩოებიდან არასდროს გადის, ეს კი იმას ნიშნავს, რომ ის თქვენთვის მნიშვნელოვან სხვა ინფორმაციას არ და ვერ შეეხება.

ეს მახასიათებლები API-ებს ინფორმაციის მიმოცვლის უსაფრთხო გზად აქცევს. ამ ყველაფრის გათვალისწინებით, გარკვეული კომპანიები API-ებს პროდუქტებადაც აღიქვამენ, რომელთა გაყიდვაც შეიძლება ან უბრალოდ დეველოპერზე გადაცემა, რათა შემდგომში მან უკეთესი პროდუქტი შემოგვთავაზოს.

მაგალითად — ჩვენ გვსურს აპლიკაცია, რომელიც თბილისში საუკეთესო ღვინის მარნებს შემოგვთავაზებს. ამისათვის ველოსიპედის ხელახლა გამოგონება საჭირო არ არის. Google-ს უკვე აქვს მზა API, რომელიც ნებისმიერ აპლიკაციაში Google Maps-ის ინტეგრაციის საშუალებას გვაძლევს. მარტივად, ვიღებთ გუგლის API-ს და ჩვენს კოდში ვსვამთ.

ეს ნებისმიერი მხარისთვის კარგია. Google რწმუნდება, რომ სწორ გზაზეა და მის API-ებს ხალხი იყენებს. მეორე მხრივ, თქვენც ზუსტად იცით, რომ მომხმარებელს გამართულ და მუშა პროდუქტს აწვდით.

ფინანსური API

თუ გვინდა, რომ ფინანსურ API-ებში გავერკვეთ, უნდა ვიცოდეთ როგორ მუშაობს ბანკების აპლიკაციები და ვებსაიტები. საბანკო API-ები არის ის ძირითადი კომპონენტები, რაც აპლიკაციებსა და საიტებს გამართულად და რაც მთავარია, დაცულად მუშაობის საშუალებას აძლევს.

ნებისმიერი საბანკო აპლიკაციისა თუ საიტის მთავარი დავალება ინფორმაციის მომხმარებელთან მიმოცვლაა. ჩვენ უნდა მივიღოთ ზუსტად ის ინფორმაცია, რაც გვჭირდება და თავის მხრივ ბანკსაც უნდა ჩვენზე გარკვეული ინფორმაციის ფლობა. მაგრამ, მთავარი ისაა, რომ ბანკსაც და მომხმარებელსაც სურს, რომ მათ შორის მხოლოდ ის ინფორმაცია გაიცვალოს, რაც გარკვეული მოქმედებისთვისაა აუცილებელი. ბანკს არ სურს, რომ მომხმარებელთან ჭარბი ინფორმაცია მიდიოდეს და არც ჩვენ გვინდა, რომ ბანკმა ჩვენზე იმაზე მეტი იცოდეს ვიდრე საჭიროა.

საბანკო API-ები სწორედ ამაში გვეხმარება. ისინი შუამავლის როლს ისე ასრულებენ, რომ სხვა ინფორმაციას არც ეხებიან. ინფორმაცია ორ ადრესატს, ამჯერად ბანკსა და მომხმარებელს შორის ისე მიმოიცვლება, რომ ზედმეტ მონაცემებს არცერთი მხარე არ გასცემს. ეს ერთგვარი უსაფრთხოების გარანტია, როგორც ბანკისთვის, ასევე მომხმარებლისათვის.

API-ები ძალიან ვრცელი თემაა და ამ სტატიით მათზე საუბარს ნამდვილად ვერ მოვრჩებით. მომდევნო სტატიებში კი დაწვრილებით განვიხილავთ თუ რა სფეროებში რა კუთხით შეიძლება მათი გამოყენება და როგორ ეხმარება ახალი API-ები ფინანსურ თუ სხვა ინსტიტუციებს.