ConnectWiz + API እና Webhooks
ሥራ ላይ ያለ ትስስርየምንሸጠው API የምንጠቀምበት API ነው
መላው መድረክ የሚገለጸው በአንድ የOpenAPI ውል ነው፤ የራሳችን ፓነል እና የሞባይል መተግበሪያ የሚመነጩትም ከእሱ ነው። የተደበቁ መግቢያዎች የሉም፣ ሰነዱም ከእውነታው አይለይም። በዚህ ላይ፦ ወሰን ያላቸው የCommerce API ቁልፎች፣ ደህንነታቸው የተጠበቀ የwebhook ቀስቃሾች፣ እና ሥርዓቶችዎን የሚጠሩ ፍሰቶች።
ለገንቢዎች
በትክክል ምን ይሠራል
አንድ ዋና ውል
መድረኩን የሚገልጸው አንድ OpenAPI 3 ሰነድ ነው፤ የራሳችን የTypeScript ደንበኛ ኮድ የሚመነጨው ከእሱ ነው። እውነታው ራሱ የሚገነባው ከሰነዱ ስለሆነ ሰነዱ ከእውነታው ሊለይ አይችልም።
የCommerce API ቁልፎች
በየሥራ ቦታው የሚሰጡ፣ ግልጽ ወሰን ያላቸው ቁልፎች (ካታሎግ ማንበብ፣ ትዕዛዝ ማንበብ፣ ትዕዛዝ መጻፍ) የራስዎን የመደብር ገጽ ወይም መተግበሪያ በዚያው የትዕዛዝ ሥርዓት ላይ ያንቀሳቅሳሉ፤ ዋጋዎች ሁልጊዜ በሰርቨር በኩል ይወሰናሉ።
ገቢ webhookዎች፣ ደህንነታቸው የተጠበቀ
እያንዳንዱ የፍሰት webhook ቀስቃሽ የራሱ ዩአርኤል እና ሚስጥር፣ በጥሬው የጥያቄ አካል ላይ የHMAC ማረጋገጫ፣ እንዲሁም ከድጋሚ መላክ ጥበቃ አለው። የሚላከው ይዘት አንድን ሰው ሊጠቅስ ይችላል፤ የፍሰቱን ውስጣዊ አሠራር ግን ፈጽሞ ሊመራ አይችልም።
ወጪ፣ በፍሰቶች በኩል
የREST ደረጃው ሥርዓቶችዎን የሚጠራው በሸራው ላይ በሳሏቸው ቅጽበቶች ላይ በትክክል ነው፦ ትዕዛዝ ሲገባ፣ ፈቃድ ሲሰጥ፣ ቀጠሮ ሲያዝ።
ውስጣዊ አሠራሩ
የAPI ንድፍ አቋሞች፣ በግልጽ
ዋጋ ፈጽሞ ከጠያቂው ወገን አይመጣም
የትዕዛዝ ጥያቄ የሚናገረው ምን እና ስንት እንደሆነ ብቻ ነው፤ ስሙ እና ዋጋው በዚያች ቅጽበት ከካታሎጉ በሰርቨር በኩል ተነበው በመስመሩ ላይ እንደ ቋሚ ቅጂ ይጻፋሉ። የተነካካ ጥያቄ ቅናሽ ሊፈጥር አይችልም።
ከጥሪ በፊት ችሎታዎች
እያንዳንዱ የትስስር ገጽታ የችሎታ ውል ያትማል፦ በስልክ ቁጥር ማዛመድ ይችላል? የእንግዳ ትዕዛዞችን መዘርዘር? ትዕዛዝ መፍጠር? ከታወጀ «አይችልም» አልፎ መጥራት ጥልቅ ቦታ ላይ ከመክሸፍ ይልቅ ወዲያውኑ ስህተት ይሰጣል።
ትርጉም ያላቸው ስህተቶች
የማስተላለፊያው ንብርብር «አልተፈቀደም»ን ከ«አገልግሎቱ አይሠራም» ይለያል፤ ስለዚህ «ሱቁ ሊደረስበት አልቻለም» ፈጽሞ «ይህ ደንበኛ ምንም ገዝቶ አያውቅም» ተብሎ አይታይም። በAPI እና በግምት ጨዋታ መካከል ያለውን ልዩነት የሚፈጥሩት ስም ያላቸው ስህተቶች ናቸው።
ድጋሚ መላክን የሚቋቋሙ webhookዎች
እያንዳንዱ ገቢ ክስተት ከመስተናገዱ በፊት በidempotency መዝገብ ውስጥ ልዩ ቁልፍ ይይዛል፤ እንደገና የተሞከረ ወይም የተደገመ መልዕክት የሚቆመው በዳታቤዝ ደረጃ ነው እንጂ በራስ-ሰር አሠራርዎ ውስጥ አይደለም።
ቁልፎች በሃሽ፣ ሚስጥሮች በወሰን
የAPI ቁልፎች የሚቀመጡት በሃሽ መልክ ነው፤ በበሩ ላይ የሚለዩት ሃሹ እና ወሰኖቹ ብቻ ናቸው። ሾልኮ የወጣ የዳታቤዝ ረድፍ የትኛውንም የሥራ ቦታ አይጠቅስም፤ ከወሰኑ ውጭ ምንም አይከፍትም።
ረቂቆች እና ማረጋገጫዎች ግልጽ ናቸው
ትዕዛዝ መፍጠር ግልጽ የconfirm መለኪያ ይወስዳል፤ ይፋዊው API በነባሪ የተረጋገጠ ትዕዛዝ ይፈጥራል፣ የፓነል ፍሰቶች ደግሞ ረቂቆችን ማዘጋጀት ይችላሉ። ስለዚህ «ይሄ እውነተኛ ነው?» የሚለው ጥያቄ በልማድ ሳይሆን በመስክ ይመለሳል።
ማዋቀር
እንዴት ይገናኛል
ቁልፍ ይፍጠሩ
በፓነሉ ውስጥ ወሰን ያለው የCommerce API ቁልፍ ይፍጠሩ፤ በዚያው ቀላልነት ይሻሩት።
webhook ያገናኙ
webhook ቀስቃሽ ያለው ፍሰት ይፍጠሩ፤ ጥያቄዎችን በሚስጥሩ ይፈርሙ።
ወደ ውጭ ይጥሩ
ሥርዓቶችዎ ሊያውቁት በሚገባበት ቦታ የREST ደረጃዎችን ያክሉ።
አብሮ የተሻለ
ከምን ጋር ይጣመራል
Flows
የwebhook ቀስቃሾች ፍሰቶችን ያስጀምራሉ፤ የREST ደረጃዎች ደግሞ በሳሏቸው ቅጽበቶች ሥርዓቶችዎን መልሰው ይጠራሉ። ገቢ እና ወጪ ራስ-ሰር አሠራር አንድ ሸራ ይጋራሉ።
የራስዎ የመደብር ገጽ
ቡድኖች ዛሬም የራሳቸውን የመደብር ገጽ በCommerce API ላይ ገንብተው ያስኬዳሉ። ይህ የተፈተነ መንገድ ነው፤ የShopify ገጽ ቤተኛው ማገናኛ እስኪገነባ ድረስ በሐቀኝነት የሚመክረውም ይኸው ነው።
ደህንነት እና ዋስትናዎች
አሰልቺዎቹ ዋስትናዎች
በጥሬው የጥያቄ አካል ላይ HMAC
የwebhook ማረጋገጫ ጥሬውን የጥያቄ አካል ለእያንዳንዱ ቀስቃሽ በተለየ ሚስጥር ይፈርማል፣ በቋሚ ጊዜም ያነጻጽራል፤ ይዘቱ የሚተነተነው ማረጋገጫው ካለፈ በኋላ ብቻ ነው።
የሚላከው ይዘት መረጃ እንጂ ትዕዛዝ አይደለም
የwebhook ይዘት አንድን ሰው ሊጠቅስ ይችላል፤ የፍሰቱን ውስጣዊ አሠራር ግን ፈጽሞ ሊመራ፣ ለኤአይ የሚሰጡ መመሪያዎችን ሊቀይር ወይም መሣሪያዎችን ሊጠራ አይችልም። በመረጃ እና በመመሪያ መካከል ያለው ወሰን የባህሪ ሳይሆን የአርክቴክቸር ጉዳይ ነው።
በእያንዳንዱ በር የፍጥነት ገደብ
ይፋዊ መግቢያዎች መደበኛ የፍጥነት ገደብ አላቸው፤ የንባብ ገደቦችም በሰርቨር በኩል ይወሰናሉ። በአግባቡ የማይሠራ ጠያቂ የሚጎዳው ራሱን እንጂ መድረኩን አይደለም።
ጥቃቅኑ ዝርዝር፣ በሐቀኝነት
ገደቦች፣ በግልጽ
ሁሉንም ክስተቶች የሚያፈስ ምግብ ገና የለም
ለሁሉም ክስተቶች በአንዴ የሚመዘገቡበት አጠቃላይ የwebhook ምግብ አልተገነባም፤ ወጪ ክስተቶች ዛሬ የሚፈጸሙት በፍሰት ደረጃዎች በኩል ነው። ማንም የሽያጭ ጥሪ ሌላ ነገር እንዳያስመስል እዚህ ተገልጿል።
የተገደቡ ንባቦች፣ ሆን ተብሎ
ንባቦች ከገጽ ጠቋሚ ጋር እስከ 100 ረድፎች ይመልሳሉ፤ APIው የተገነባው ለዕለት ተዕለት የሥራ ትስስር እንጂ ለጅምላ ወደ ውጭ መላክ አይደለም። የጅምላ ፍላጎት የውይይት ጉዳይ እንጂ ክፍተት መፈለጊያ አይደለም።