Open API
ઓપન API (જેને ઘણીવાર પબ્લિક API તરીકે ઓળખવામાં આવે છે) એ જાહેરમાં ઉપલબ્ધ એપ્લિકેશન પ્રોગ્રામિંગ ઇન્ટરફેસ છે જે વિકાસકર્તાઓને (સંભવતઃ માલિકીની) સોફ્ટવેર એપ્લિકેશન અથવા વેબ સેવાની પ્રોગ્રામેટિક ઍક્સેસ પ્રદાન કરે છે. ઓપન API એ API છે જે ઇન્ટરનેટ પર પ્રકાશિત થાય છે અને ગ્રાહકો દ્વારા ઍક્સેસ કરવા માટે મુક્ત છે. વૈકલ્પિક વ્યાખ્યાઓ "ઓપન API" શબ્દની કોઈ સાર્વત્રિક સ્વીકૃત વ્યાખ્યા નથી અને તેનો ઉપયોગ વિવિધ સંદર્ભોમાં વિવિધ વસ્તુઓનો અર્થ કરવા માટે થઈ શકે છે, જેમાં નીચેનાનો સમાવેશ થાય છેઃ વિકાસકર્તાઓ અને પ્રમાણમાં ઓછા પ્રતિબંધો સાથે અન્ય વપરાશકર્તાઓ દ્વારા ઉપયોગ માટે API. તેને નોંધણીની જરૂર પડી શકે છે અથવા ક્વોટા અને દર-મર્યાદાઓ લાગુ કરી શકે છે, પરંતુ નોંધણી મફત છે અને બધા માટે ખુલ્લી છે; અથવા ખુલ્લા ડેટા દ્વારા સમર્થિત API. ઓપન ડેટા દરેકને કૉપિરાઇટ, પેટન્ટ અથવા નિયંત્રણની અન્ય પદ્ધતિઓના પ્રતિબંધો વિના, તેમની ઇચ્છા મુજબ ઉપયોગ કરવા અને ફરીથી પ્રકાશિત કરવા માટે મુક્તપણે ઉપલબ્ધ છે; અથવા ઓપન સ્ટાન્ડર્ડ પર આધારિત API, જે તે પદ્ધતિને સ્પષ્ટ કરે છે જેના દ્વારા ગ્રાહક API ને પ્રશ્ન કરે છે અને તેના પ્રતિસાદોનું અર્થઘટન કરે છે. ઓપન API વિરુદ્ધ ખાનગી API ખાનગી API એક ખાનગી API એ એક ઇન્ટરફેસ છે જે સંસ્થાના બેકએન્ડ ડેટા અને એપ્લિકેશન કાર્યક્ષમતાના ભાગોને તે સંસ્થામાં કામ કરતા વિકાસકર્તાઓ (અથવા કામ કરતા ઠેકેદારો) દ્વારા ઉપયોગ માટે ખોલે છે. ખાનગી API માત્ર આંતરિક વિકાસકર્તાઓ માટે ખુલ્લા હોય છે તેથી API પ્રકાશકો પાસે શું અને કેવી રીતે કાર્યક્રમો વિકસાવવામાં આવે છે તેના પર સંપૂર્ણ નિયંત્રણ હોય છે. ખાનગી API આંતરિક સહયોગના સંદર્ભમાં નોંધપાત્ર લાભો પ્રદાન કરે છે. સમગ્ર સંસ્થામાં ખાનગી API નો ઉપયોગ આંતરિક ડેટા મોડેલ્સ વિશે વધુ વહેંચાયેલ જાગૃતિ માટે પરવાનગી આપે છે. જેમ વિકાસકર્તાઓ એક સંસ્થા માટે કામ કરે છે (અથવા કરાર કરે છે), સંદેશાવ્યવહાર વધુ સીધો હશે અને તેથી તેઓ એક જૂથ તરીકે વધુ સુસંગત રીતે કામ કરવા માટે સક્ષમ હોવા જોઈએ. ખાનગી API આંતરિક પ્રણાલીઓને હેરફેર કરવા અને બનાવવા માટે જરૂરી વિકાસના સમયને નોંધપાત્ર રીતે ઘટાડી શકે છે જે ઉત્પાદકતાને મહત્તમ કરે છે અને ગ્રાહક-સામનો કરતી એપ્લિકેશનો બનાવે છે જે બજારની પહોંચમાં સુધારો કરે છે અને હાલની તકોમાંનુ મૂલ્ય ઉમેરે છે. ખાનગી API ને ઘણી રીતે "ખાનગી" બનાવી શકાય છે. સામાન્ય રીતે સંસ્થા આવા ઇન્ટરફેસનું દસ્તાવેજીકરણ ન કરવાનું પસંદ કરે છે, જેમ કે માઇક્રોસોફ્ટ વિન્ડોઝના બિનદસ્તાવેજીકૃત કાર્યોના કિસ્સામાં, જે પ્રતીક કોષ્ટકોના નિરીક્ષણ દ્વારા શોધી શકાય છે. કેટલાક વેબ-આધારિત API કીઓ દ્વારા પ્રમાણિત થઈ શકે છે, જે બંને એપ્લિકેશન ટ્રાફિકના વિશ્લેષણ દ્વારા શોધી શકાય છે. વધુમાં મેકઓએસ સિસ્ટમમાં ખાનગી APIની ઍક્સેસને નિયંત્રિત કરવા માટે માત્ર ડિજિટલ હસ્તાક્ષર દ્વારા આપવામાં આવેલ "હકદારી" નો ઉપયોગ કરે છે. ખાનગી API વ્યાખ્યા દ્વારા તૃતીય-પક્ષ વિકાસકર્તાને તેમને ઉઘાડું કરવા અને તેનો ઉપયોગ કરવાનું પસંદ કરવા માટે કોઈપણ બાંયધરી વિના છે. તેમ છતાં, માઈક્રોસોફ્ટ વિન્ડોઝ પર બિનદસ્તાવેજીકૃત કાર્યોનો ઉપયોગ એટલો વ્યાપક બની ગયો છે કે સિસ્ટમને "એપકોમ્પેટ" ડેટાબેઝનો ઉપયોગ કરીને ચોક્કસ પ્રોગ્રામ્સ માટે જૂના વર્તણૂકોને સાચવવાની જરૂર છે. ઓપન API ખાનગી API થી વિપરીત, એક ઓપન API બધા વિકાસકર્તાઓ માટે ઍક્સેસ કરવા માટે જાહેરમાં ઉપલબ્ધ છે. તેઓ સંસ્થાના કાર્યબળની બહારના વિકાસકર્તાઓને બેકએન્ડ ડેટાને ઍક્સેસ કરવાની મંજૂરી આપે છે જેનો ઉપયોગ પછી તેમની પોતાની એપ્લિકેશનોને વધારવા માટે થઈ શકે છે. ઓપન API વ્યવસાયને નવા વિકાસકર્તાઓની ભરતીમાં રોકાણ કર્યા વિના આવકમાં નોંધપાત્ર વધારો કરી શકે છે, જે તેમને ખૂબ જ નફાકારક સોફ્ટવેર એપ્લિકેશન બનાવે છે. જો કે, એ યાદ રાખવું અગત્યનું છે કે જાહેર જનતા માટે અંતિમ માહિતી ખોલવાથી સુરક્ષા અને વ્યવસ્થાપન પડકારોની શ્રેણી ઊભી થઈ શકે છે. ઉદાહરણ તરીકે, ખુલ્લા API પ્રકાશિત કરવાથી સંસ્થાઓ માટે તેમની માહિતી અસ્કયામતો સાથેના અંતિમ વપરાશકર્તાઓના અનુભવને નિયંત્રિત કરવાનું મુશ્કેલ બની શકે છે. ઓપન API પ્રકાશકો એવું માની શકતા નથી કે તેમના API પર બનેલી ક્લાયન્ટ એપ્લિકેશન્સ સારો વપરાશકર્તા અનુભવ પ્રદાન કરશે. વધુમાં, તેઓ ક્લાયન્ટ એપ્લિકેશન્સ તેમના કોર્પોરેટ બ્રાન્ડિંગના દેખાવ અને લાગણીને જાળવી રાખે છે તેની સંપૂર્ણ ખાતરી કરી શકતા નથી. વ્યવસાયમાં ઓપન API નો ઉપયોગ એવા વ્યવસાયો દ્વારા કરી શકાય છે જે ફ્રીલાન્સિંગ વિકાસકર્તાઓના સતત વિકસતા સમુદાયનો લાભ લેવા માંગે છે, જેમની પાસે નવીન એપ્લિકેશનો બનાવવાની ક્ષમતા છે જે તેમના મુખ્ય વ્યવસાયમાં મૂલ્ય ઉમેરે છે. વ્યવસાયિક ક્ષેત્રમાં ઓપન એપીઆઈની તરફેણ કરવામાં આવે છે કારણ કે તેઓ વિકાસના પ્રયાસોમાં સીધા રોકાણ કર્યા વિના નવા વિચારોના ઉત્પાદનમાં વધારો કરે છે. વ્યવસાયો ઘણીવાર તેમના API ને ચોક્કસ વિકાસકર્તા પ્રેક્ષકોને લક્ષ્ય બનાવવા માટે તૈયાર કરે છે જે તેમને લાગે છે કે મૂલ્યવાન નવી એપ્લિકેશનો બનાવવા માટે સૌથી વધુ અસરકારક રહેશે. જો કે, જો તે સુવિધાઓ સાથે ઓવરલોડ હોય તો API એપ્લિકેશનની કાર્યક્ષમતાને નોંધપાત્ર રીતે ઘટાડી શકે છે. ઉદાહરણ તરીકે, યાહૂની ઓપન સર્ચ API વિકાસકર્તાઓને તેમના પોતાના સોફ્ટવેર કાર્યક્રમોમાં યાહૂ શોધને એકીકૃત કરવાની મંજૂરી આપે છે. આ API નો ઉમેરો વિકાસકર્તાની એપ્લિકેશનમાં શોધ કાર્યક્ષમતા પ્રદાન કરે છે જ્યારે યાહૂના શોધ એન્જિન માટે શોધ ટ્રાફિકમાં પણ વધારો કરે છે જેથી બંને પક્ષોને ફાયદો થાય છે. ફેસબુક અને ટ્વિટરના સંદર્ભમાં, આપણે જોઈ શકીએ છીએ કે કેવી રીતે તૃતીય પક્ષોએ આ સેવાઓને તેમના પોતાના કોડથી સમૃદ્ધ બનાવી છે. ઉદાહરણ તરીકે, તમારા ફેસબુક ઓળખપત્રોનો ઉપયોગ કરીને બાહ્ય સાઇટ/એપ્લિકેશન પર ખાતું બનાવવાની ક્ષમતા ફેસબુકના ખુલ્લા API નો ઉપયોગ કરીને શક્ય બને છે. ટ્વિટર, લિંક્ડઇન અને ફેસબુક જેવી ઘણી મોટી તકનીકી કંપનીઓ તૃતીય પક્ષો અને સ્પર્ધકો દ્વારા તેમની સેવાનો ઉપયોગ કરવાની મંજૂરી આપે છે. એચ. ટી. એમ. એલ. 5 અને વેબ 2 ના પ્રાધાન્યમાં વધારો થતાં, આધુનિક બ્રાઉઝિંગનો અનુભવ ઇન્ટરેક્ટિવ અને ગતિશીલ બની ગયો છે અને આ, અંશતઃ, ખુલ્લા API ના ઉપયોગ દ્વારા વેગ આપવામાં આવ્યો છે. કેટલાક ખુલ્લા API વેબસાઇટની પાછળના ડેટાબેઝમાંથી ડેટા મેળવે છે અને તેને વેબ API કહેવામાં આવે છે. ઉદાહરણ તરીકે, ગૂગલની યુટ્યુબ API વિકાસકર્તાઓને વીડિયો શોધવા, પ્રમાણભૂત ફીડ પુનઃપ્રાપ્ત કરવાની અને સંબંધિત સામગ્રી જોવાની ક્ષમતા પ્રદાન કરીને તેમની એપ્લિકેશનોમાં યુટ્યુબને એકીકૃત કરવાની મંજૂરી આપે છે. વેબ API નો ઉપયોગ માહિતી પ્રાપ્ત કરીને અથવા મોકલીને વેબસાઇટ સાથે માહિતીની આપ-લે કરવા માટે થાય છે. જ્યારે વેબ API વેબસાઇટ પરથી ડેટા મેળવે છે, ત્યારે એપ્લિકેશન સર્વરને કાળજીપૂર્વક બનાવેલ HTTP વિનંતી કરે છે જેના પર સાઇટ સંગ્રહિત છે. સર્વર પછી તમારી એપ્લિકેશનની અપેક્ષા મુજબ ડેટા મોકલે છે (જો તમે ડેટાની વિનંતી કરી હોય તો) અથવા વેબસાઇટ પર તમારા ફેરફારોને સામેલ કરે છે (જો તમે ડેટા મોકલ્યો હોય તો). આ પણ જુઓ ઓપનએપીઆઈ સ્પષ્ટીકરણ એપ્લિકેશન સક્રિયકરણ ઓપન સિસ્ટમ (કમ્પ્યુટિંગ) મેશઅપ (વેબ એપ્લિકેશન હાઇબ્રિડ) વેબહૂક વેબ એપીઆઈ બાહ્ય લિંક્સ ઓપન એપીઆઈ ઇનિશિયેટિવ (ઓએઆઈ) વેબસાઇટ ઇક્લિપ્સ ઓપનએપીઆઈ (ઓએએસ) સંપાદક અને સ્ટુડિયો ઓપનએપીઆઈ સંપાદક અને ટેસ્ટ સ્ટુડિયો વપરાશ વિકી સંદર્ભો એપ્લિકેશન પ્રોગ્રામિંગ ઇન્ટરફેસ