{"id":34354,"date":"2019-10-31T21:57:51","date_gmt":"2019-10-31T18:57:51","guid":{"rendered":"https:\/\/prohoster.info\/blog\/pisali-api-porvali-xml-dva\/"},"modified":"2019-10-31T21:57:51","modified_gmt":"2019-10-31T18:57:51","slug":"pisali-api-porvali-xml-dva","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/pisali-api-porvali-xml-dva","title":{"rendered":"Kemi shkruar API \u2014 kemi thyer XML (dy)","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>API i par\u00eb i Mo\u0451goskad ka dal\u00eb 10 vjet m\u00eb par\u00eb. Gjat\u00eb gjith\u00eb k\u00ebtyre viteve ne kemi punuar n\u00eb versionet ekzistuese t\u00eb API-s\u00eb dhe kemi zhvilluar t\u00eb reja. Disa versione t\u00eb API-s\u00eb tashm\u00eb kan\u00eb p\u00ebrfunduar n\u00eb humbje. <\/p>\n<p>N\u00eb k\u00ebt\u00eb artikull do t\u00eb ket\u00eb shum\u00eb gj\u00ebra: si u krijua API, p\u00ebrse \u00ebsht\u00eb i nevojsh\u00ebm p\u00ebr sh\u00ebrbimin n\u00eb cloud, \u00e7far\u00eb u ofron p\u00ebrdoruesve, n\u00eb cilat gremina kemi r\u00ebn\u00eb dhe \u00e7far\u00eb d\u00ebshirojm\u00eb t\u00eb b\u00ebjm\u00eb m\u00eb tej. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nM\u00eb quajn\u00eb Oleg Alekseev <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/oalexeev\/\" class=\"user_link\">oalexeev<\/a><\/noindex>, jam drejtori teknik dhe bashk\u00ebthemeluesi i Mo\u0451goskad. <\/p>\n<h2>P\u00ebrse t\u00eb krijojm\u00eb API p\u00ebr sh\u00ebrbimin<\/h2>\n<p>\nK\u00ebta jan\u00eb klient\u00ebt tan\u00eb, q\u00eb p\u00ebrfshijn\u00eb dhjet\u00ebra mij\u00ebra sip\u00ebrmarr\u00ebs, q\u00eb e p\u00ebrdorin aktivisht zgjidhjet n\u00eb cloud: bankarizimin, dyqanet online, menaxhimin e mallrave, CRM. T\u00eb lidheni me nj\u00eb sh\u00ebrbim \u2014 dhe \u00ebsht\u00eb e v\u00ebshtir\u00eb t\u00eb ndaloni. Dhe ja ku sh\u00ebrbimi i pest\u00eb, t\u00eb tetin, t\u00eb dhjetin i b\u00ebn pun\u00ebn e sip\u00ebrmarr\u00ebsve m\u00eb t\u00eb leht\u00eb, por t\u00eb dh\u00ebnat nd\u00ebrmjet k\u00ebtyre sh\u00ebrbimeve n\u00eb cloud p\u00ebrdoruesit i transferojn\u00eb n\u00eb m\u00ebnyr\u00eb manuale. Puna kthehet n\u00eb nj\u00eb makth.<\/p>\n<p>Nj\u00eb zgjidhje evidente \u00ebsht\u00eb t'u jepet p\u00ebrdoruesve mund\u00ebsia p\u00ebr t\u00eb transferuar t\u00eb dh\u00ebna midis sh\u00ebrbimeve cloud. P\u00ebr shembull, t\u00eb importojn\u00eb dhe eksportojn\u00eb t\u00eb dh\u00ebna si skedar\u00eb, t\u00eb cilat mund t\u00eb ngarkohen m\u00eb pas n\u00eb sh\u00ebrbimin e d\u00ebshiruar. Skedar\u00ebt zakonisht p\u00ebrshtaten p\u00ebr formatin e secilit sh\u00ebrbim. Kjo \u00ebsht\u00eb nj\u00eb pun\u00eb manuale m\u00eb shum\u00eb-shum\u00eb e thjesht\u00eb, por me rritjen e numrit t\u00eb k\u00ebtyre sh\u00ebrbimeve, realizimi i saj b\u00ebhet gjithnj\u00eb e m\u00eb i komplikuar.<\/p>\n<p>Prandaj, hapi tjet\u00ebr \u00ebsht\u00eb API. Me t\u00eb, sh\u00ebrbimi cloud p\u00ebrfiton duke lidhur disa sh\u00ebrbime n\u00eb nj\u00eb pik\u00eb. Shfaqja e nj\u00eb ekosistemi t\u00eb till\u00eb t\u00ebrheq klient\u00eb t\u00eb rinj p\u00ebrmes mund\u00ebsive shtes\u00eb. Nj\u00eb produkt me funksionalitete t\u00eb reja b\u00ebhet m\u00eb i leverdish\u00ebm dhe m\u00eb i dobish\u00ebm.<\/p>\n<p>N\u00ebse krijoni nd\u00ebrfaqe programesh t\u00eb veta, kjo t\u00ebrheq shit\u00ebs t\u00eb tret\u00eb n\u00eb form\u00ebn e programist\u00ebve q\u00eb din\u00eb p\u00ebr produktin tuaj fal\u00eb API. Ata fillojn\u00eb t\u00eb nd\u00ebrt \u03ba\u03ac\u03bd\u03bf\u03c5\u03bd zgjidhje mbi baz\u00ebn e API t\u00eb propozuar dhe fitojn\u00eb para nga automatizimi i detyrave t\u00eb klient\u00ebve t\u00eb tyre.<\/p>\n<p>Sistemi i menaxhimit t\u00eb MoiSk\u0142ad ndihmon n\u00eb proceset e thjeshta. E r\u00ebnd\u00ebsishmja \u00ebsht\u00eb puna me dokumentet e para, mund\u00ebsia p\u00ebr t\u00eb kryer pranim dhe d\u00ebrgim t\u00eb mallrave, si dhe p\u00ebr t\u00eb marr\u00eb raporte p\u00ebr biznesin bazuar n\u00eb k\u00ebto dokumente. Nj\u00ebkoh\u00ebsisht, ka transferime t\u00eb t\u00eb dh\u00ebnave, p\u00ebr shembull n\u00eb kontabilitetin n\u00eb re, si dhe marrjen e tyre nga sistemet bankare ose pika t\u00ebshitjes. Gjithashtu, ne punojm\u00eb me dyqanet online: theksojm\u00eb informacionin mbi produktet dhe d\u00ebrgojm\u00eb t\u00eb dh\u00ebna p\u00ebr stoqet.<\/p>\n<p><img decoding=\"async\" alt=\"Kemi shkruar API \u2014 kemi thyer XML (dy)\" src=\"\/wp-content\/uploads\/2019\/05\/aefa36019217c463d2a513a9e025ebc7.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<\/p>\n<h2>API i Par\u00eb i MoiSk\u0142ad<\/h2>\n<p>\nGjat\u00eb 10 viteve t\u00eb pun\u00ebs s\u00eb MoiSk\u0142ad me API, ne kemi krijuar integrime t\u00eb \u00e7do lloji, q\u00eb lejojn\u00eb shk\u00ebmbimin e t\u00eb dh\u00ebnave, pun\u00ebn me bankat, kryerjen e pagesave dhe p\u00ebrdorimin e telefonis\u00eb s\u00eb jashtme.<\/p>\n<p>N\u00eb vitin e par\u00eb, ne krijuam mund\u00ebsin\u00eb p\u00ebr t\u00eb eksportuar \u00e7do t\u00eb dh\u00ebn\u00eb n\u00eb formatin XML. At\u00ebher\u00eb p\u00ebrdoruesit kishin nj\u00eb kuptim m\u00eb t\u00eb qart\u00eb dhe m\u00eb t\u00eb zakonsh\u00ebm t\u00eb mbajtjes s\u00eb t\u00eb dh\u00ebnave n\u00eb offline, sesa n\u00eb ndonj\u00eb sh\u00ebrbim online, dhe ne u ofruam k\u00ebt\u00eb mund\u00ebsi. Eksporti iniciohej me an\u00eb t\u00eb nj\u00eb eksportimi manual nga nd\u00ebrfaqja. Pra, API nuk mund t\u00eb quhej ende i till\u00eb. <\/p>\n<p>Kjo \u00ebsht\u00eb koh\u00eb kur filluam t\u00eb bashk\u00ebpunojm\u00eb me kompanin\u00eb Rusagro \u2014 ata tashm\u00eb kishin p\u00ebrdorur nj\u00eb ERP 't\u00eb rritur' p\u00ebr planifikimin e prodhimit dhe shp\u00ebrndarjes, nd\u00ebrsa automatizimin e ngarkesave n\u00eb fabrikat e tyre e realizuan me M\u00f3jSklad. K\u00ebshtu, gjeneruam hapat e par\u00eb drejt nj\u00eb API t\u00eb v\u00ebrtet\u00eb: shk\u00ebmbimi midis sh\u00ebrbimit ton\u00eb dhe ERP-s\u00eb b\u00ebhej p\u00ebrmes d\u00ebrgimit t\u00eb nj\u00eb skedari t\u00eb madh me t\u00eb dh\u00ebna p\u00ebr t\u00eb gjith\u00eb llojet e dokumenteve. <\/p>\n<p>Ky \u00ebsht\u00eb nj\u00eb opsion i mir\u00eb p\u00ebr shk\u00ebmbim grupor t\u00eb t\u00eb dh\u00ebnave, por s\u00eb bashku me dokumentet duhej t\u00eb d\u00ebrgoheshin edhe var\u00ebsit\u00eb e tyre: informacionet p\u00ebr produktet, kontraktuesit dhe magazinat. Nj\u00eb p\u00ebrzierje e till\u00eb \u00ebsht\u00eb e leht\u00eb p\u00ebr t'u gjeneruar gjat\u00eb eksportit, por shum\u00eb e v\u00ebshtir\u00eb p\u00ebr tu ndar\u00eb gjat\u00eb importit, pasi n\u00eb nj\u00eb paket\u00eb vijn\u00eb t\u00eb gjitha informacionet: si p\u00ebr dokumentet e reja, ashtu edhe p\u00ebr ato ekzistuese.<\/p>\n<p>XML API-i i par\u00eb nuk jetoi shum\u00eb \u2014 pas dy vitesh filluam riparimin e tij. Q\u00eb n\u00eb fillim t\u00eb funksionimit, b\u00ebm\u00eb disa gabime n\u00eb nd\u00ebrtimin e nd\u00ebrfaqes s\u00eb programit.<\/p>\n<p><img decoding=\"async\" alt=\"Kemi shkruar API \u2014 kemi thyer XML (dy)\" src=\"\/wp-content\/uploads\/2019\/05\/3f1b04d030e7fcb5add795f8fd75d92b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Si u nd\u00ebrtua XML API: ilustruar nga nj\u00eb nga arkitekt\u00ebt tan\u00eb. P\u00ebrshtypje, prisni artikujt e tij.<\/i><\/p>\n<p>K\u00ebto jan\u00eb gabimet tona kryesore:<\/p>\n<ol>\n<li>Markup JAXB \u00ebsht\u00eb b\u00ebr\u00eb direkt mbi entity beans. P\u00ebr t\u00eb komunikuar me baz\u00ebn e t\u00eb dh\u00ebnave, ne p\u00ebrdorim Hibernate, dhe markup JAXB \u00ebsht\u00eb b\u00ebr\u00eb p\u00ebr k\u00ebto bina. Ky gabim u shfaq pothuajse menj\u00ebher\u00eb: \u00e7do azhurnim i struktur\u00ebs s\u00eb t\u00eb dh\u00ebnave p\u00ebrfundonte me nevoj\u00ebn p\u00ebr t\u00eb njoftuar me urgjenc\u00eb gjith\u00eb ata q\u00eb p\u00ebrdorin API-in, ose nd\u00ebrtimin e kostileve q\u00eb do t\u00eb siguronin p\u00ebrputhshm\u00ebrin\u00eb me struktur\u00ebn e m\u00ebparshme t\u00eb t\u00eb dh\u00ebnave.<\/li>\n<li>API filloi si nj\u00eb shtes\u00eb, dhe fillimisht ne nuk e caktuam se cila pjes\u00eb e produktit p\u00ebrb\u00ebnte. As nuk menduam n\u00ebse API-i ishte di\u00e7ka e r\u00ebnd\u00ebsishme, n\u00ebse duhet t\u00eb mbaheshin standardet e prapambetjes p\u00ebr klient\u00ebt e tij t\u00eb par\u00eb. N\u00eb nj\u00eb moment, numri i p\u00ebrdoruesve t\u00eb API-s\u00eb p\u00ebrb\u00ebnte rreth 5% t\u00eb numrit t\u00eb vog\u00ebl total, dhe nuk u kushtua v\u00ebmendje. Filtrimi universalisht i b\u00ebr\u00eb n\u00eb at\u00eb koh\u00eb \u00e7oi n\u00eb p\u00ebrdorimin ton\u00eb si backend. Ky filtrim nuk ishte sakt\u00ebsisht GraphQL, por di\u00e7ka e ngjashme \u2014 funksiononte p\u00ebrmes nj\u00eb numri t\u00eb madh parametrash n\u00eb k\u00ebrkes\u00ebn e url-s\u00eb. Me nj\u00eb mjet kaq t\u00eb fuqish\u00ebm, p\u00ebrdoruesit u ndjen\u00eb t\u00eb detyruar t\u00eb kalonin tek ne, dhe k\u00ebrkesat u d\u00ebrguan direkt nga UI i dyqaneve t\u00eb tyre online. Situata u b\u00eb nj\u00eb befasi e pak\u00ebndshme, sepse ofrimi i nj\u00eb sh\u00ebrbimi t\u00eb till\u00eb duhet t\u00eb k\u00ebrkonte nj\u00eb tarifim t\u00eb ndrysh\u00ebm dhe, n\u00eb fakt, nj\u00eb kuptim t\u00eb ndrysh\u00ebm t\u00eb vet\u00eb API si produkt.<\/li>\n<li>P\u00ebr shkak se API \u00ebsht\u00eb zhvilluar m\u00eb shum\u00eb si nj\u00eb produkt an\u00ebsor, dokumentacioni p\u00ebr API \u00ebsht\u00eb b\u00ebr\u00eb dhe publikuar n\u00eb m\u00ebnyr\u00eb t\u00eb n\u00ebnkuptuar \u2014 p\u00ebrmes inxhinieris\u00eb s\u00eb kund\u00ebrt. Ky proces duket mjaft i thjesht\u00eb dhe i p\u00ebrshtatsh\u00ebm, por \u00ebsht\u00eb n\u00eb kund\u00ebrshtim me pun\u00ebn sipas kontrat\u00ebs. Kjo ndodh kur ka nj\u00eb komponent me nj\u00eb skem\u00eb pune t\u00eb instaluar paraprakisht. Zhvilluesi e realizon at\u00eb n\u00eb p\u00ebrputhje me k\u00ebt\u00eb skem\u00eb dhe detyr\u00eb, komponenti kalon testimin, klienti merr nj\u00eb produkt q\u00eb p\u00ebrputhet me vizionin e analistit. Inxhinieria e kund\u00ebrt, nga ana tjet\u00ebr, lanzon n\u00eb treg nj\u00eb produkt q\u00eb thjesht ekziston: me zgjidhje improvizuese, zgjidhje t\u00eb \u00e7uditshme dhe \u201cbicikleta\u201d n\u00eb vend t\u00eb funksionalitetit t\u00eb nevojsh\u00ebm. <\/li>\n<li>I gjith\u00eb fluksi i k\u00ebrkesave q\u00eb vinte p\u00ebrmes API-t mund t\u00eb analizohej vet\u00ebm si nj\u00eb log i Nginx-it ose i serverit t\u00eb aplikacioneve. Kjo nuk lejonte identifikimin e fushave tematike, p\u00ebrve\u00e7se t\u00eb ndaheshin sipas p\u00ebrdoruesve dhe abonent\u00ebve. N\u00ebse nuk ka mund\u00ebsi p\u00ebr t\u00eb rregulluar regjistrimin e aplikacionit ose t\u00eb klient\u00ebve, analizimi i situat\u00ebs b\u00ebhet i pamundur. Ky problem ndikon pak n\u00eb zhvillimin e API-t, pasi lidhet m\u00eb shum\u00eb me kuptimin e k\u00ebrkes\u00ebs p\u00ebr t\u00eb dhe p\u00ebrmbushjen e funksionalitetit.<\/li>\n<\/ol>\n<p><\/p>\n<h2>P\u00ebrpjekja e dyt\u00eb: REST API<\/h2>\n<p>\nN\u00eb vitin 2010, ne p\u00ebrpiqeshim t\u00eb nd\u00ebrtonim nj\u00eb sistem shk\u00ebmbimi me kontabilitetin online \u2014 BuxhoSoft. Nuk funksionoi. Megjithat\u00eb, gjat\u00eb procesit t\u00eb integrimit u krijua nj\u00eb API i plot\u00eb: nj\u00eb sh\u00ebrbim REST p\u00ebr shk\u00ebmbim, ku mungonin lirimet si thirrjet e operacioneve si thirrje RPC. T\u00eb gjitha komunikimet me API-n\u00eb u orientuan n\u00eb m\u00ebnyr\u00ebn standarde p\u00ebr REST: n\u00eb vargun e k\u00ebrkes\u00ebs p\u00ebrmban emrin e entitetit, nd\u00ebrsa operacioni q\u00eb kryhet me t\u00eb p\u00ebrcaktohet me metod\u00ebn http. Ne shtuam filtrimin sipas momentit t\u00eb p\u00ebrdit\u00ebsimit t\u00eb entiteteve, dhe p\u00ebrdoruesit mor\u00ebn mund\u00ebsin\u00eb t\u00eb nd\u00ebrtuan replikimin me sistemet e tyre.<\/p>\n<p>N\u00eb t\u00eb nj\u00ebjtin vit, u shfaq API p\u00ebr transferimin e inventarit dhe stokut t\u00eb produkteve. P\u00ebr p\u00ebrdoruesit u b\u00ebn\u00eb t\u00eb aksesueshme p\u00ebrmes API-s\u00eb pjes\u00ebt m\u00eb t\u00eb \u00e7muara t\u00eb sistemit \u2014 shk\u00ebmbimi i dokumenteve fillestare dhe t\u00eb dh\u00ebnat llogarit\u00ebse p\u00ebr stoqet dhe koston e produkteve.<\/p>\n<p>N\u00eb dhjetor 2015, RetailCRM publikoi bibliotek\u00ebn e par\u00eb t\u00eb jashtme p\u00ebr akses n\u00eb API-n\u00eb ton\u00eb. Ajo filloi t\u00eb p\u00ebrdorej mjaft aktiivisht, nd\u00ebrkoh\u00eb q\u00eb po rritej popullariteti i sh\u00ebrbimit n\u00eb t\u00ebr\u00ebsi, ngarkesa n\u00eb API po rritej m\u00eb shpejt sesa ngarkesa n\u00eb nd\u00ebrfaqen e webit. Nj\u00eb her\u00eb, rritja u shnd\u00ebrrua n\u00eb nj\u00eb skok ngarkese. <\/p>\n<p><img decoding=\"async\" alt=\"Kemi shkruar API \u2014 kemi thyer XML (dy)\" src=\"\/wp-content\/uploads\/2019\/05\/86b289455db8a13f5583cd4eeb377970.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n<img decoding=\"async\" alt=\"Kemi shkruar API \u2014 kemi thyer XML (dy)\" src=\"\/wp-content\/uploads\/2019\/05\/da221a6a122ff6d15bcbf9ea09758727.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDhe ky skok, p\u00ebr t\u00eb cilin tregon shigjeta e majt\u00eb, \u00e7oi n\u00eb nj\u00eb habi t\u00eb plot\u00eb t\u00eb serverit q\u00eb sh\u00ebrbente API-n\u00eb ton\u00eb. Nj\u00eb jav\u00eb ne u merrem me at\u00eb \u00e7far\u00eb e gjeneronte k\u00ebt\u00eb ngarkes\u00eb. Doli se ishin ato k\u00ebrkesa q\u00eb transmetoheshin n\u00eb API-n\u00eb ton\u00eb nga frontet e klient\u00ebve. Rreth 50 klient\u00eb ishin p\u00ebrgjegj\u00ebs p\u00ebr gjith\u00e7ka. At\u00ebher\u00eb kuptuam nj\u00eb nga gabimet tona \u2014 munges\u00ebn e plot\u00eb t\u00eb limiteve. <\/p>\n<p>N\u00eb fund, vendos\u00ebm nj\u00eb kufi p\u00ebr numrin e k\u00ebrkesave n\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb. Me nj\u00eb llogari ishte e mundur t\u00eb hapnim jo m\u00eb shum\u00eb se dy k\u00ebrkesa n\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb. Kjo \u00ebsht\u00eb e mjaftueshme p\u00ebr t\u00eb punuar n\u00eb m\u00ebnyr\u00eb replikimi p\u00ebr shk\u00ebmbimin e t\u00eb dh\u00ebnave n\u00eb modulin e paketave. Nd\u00ebrsa ata q\u00eb donin t\u00eb p\u00ebrdorin sh\u00ebrbimin ton\u00eb si backend, nga ky moment ishin t\u00eb detyruar t\u00eb p\u00ebrputhen m\u00eb mir\u00eb me tarifat, pasi vendos\u00ebm q\u00eb programet e tyre t\u00eb punonin me disa llogari.<\/p>\n<h2>Rregullojm\u00eb<\/h2>\n<p>\nQ\u00eb nga viti 2014, k\u00ebrkesa p\u00ebr API-n\u00eb ekzistuese \u00ebsht\u00eb b\u00ebr\u00eb nj\u00eb pjes\u00eb e r\u00ebnd\u00ebsishme e biznesit, dhe vet\u00eb API ka gjeneruar volumet m\u00eb t\u00eb m\u00ebdha t\u00eb t\u00eb dh\u00ebnave gjat\u00eb shk\u00ebmbimit me klient\u00ebt. N\u00eb vitin 2015, ne nis\u00ebm nj\u00eb projekt p\u00ebr rregullimin e API-s\u00eb. Zgjodh\u00ebm formatin JSON n\u00eb vend t\u00eb XML dhe filluam ta nd\u00ebrtuam at\u00eb mbi karakteristikat q\u00eb identifikuam gjat\u00eb implementimit t\u00eb versionit t\u00eb kaluar:<\/p>\n<ol>\n<li>Aft\u00ebsia p\u00ebr t\u00eb menaxhuar versionet. Versionimi lejon zhvillimin e nj\u00eb versioni t\u00eb ri, pa prekur aplikacionin ekzistues dhe pa nd\u00ebrprer\u00eb funksionimin e p\u00ebrdoruesve. <\/li>\n<li>Aft\u00ebsia p\u00ebr p\u00ebrdoruesin q\u00eb t\u00eb shoh\u00eb metadatat n\u00eb p\u00ebrgjigjen q\u00eb merr.<\/li>\n<li>Mund\u00ebsia p\u00ebr t\u00eb shk\u00ebmbyer dokumente t\u00eb m\u00ebdha. N\u00ebse ne p\u00ebrpunojm\u00eb nj\u00eb dokument me m\u00eb shum\u00eb se 4-5 mij\u00eb pozita, kjo b\u00ebhet nj\u00eb problem p\u00ebr serverin: nj\u00eb transaksion i gjat\u00eb, nj\u00eb k\u00ebrkes\u00eb http e gjat\u00eb. Nd\u00ebrtuam nj\u00eb mekaniz\u00ebm t\u00eb ve\u00e7ant\u00eb q\u00eb lejon p\u00ebrdit\u00ebsimin e dokumentit n\u00eb pjes\u00eb dhe menaxhimin e pozita t\u00eb ve\u00e7anta t\u00eb k\u00ebtij dokumenti, duke i d\u00ebrguar ato n\u00eb server.<\/li>\n<li>Mjetet p\u00ebr replikim \u2014 kan\u00eb qen\u00eb edhe n\u00eb versionin e m\u00ebparsh\u00ebm.<\/li>\n<li>Limite t\u00eb ngarkes\u00ebs \u2014 si trash\u00ebgimi e nj\u00eb problematike nga versioni i m\u00ebparsh\u00ebm. Njoftuam limite p\u00ebr numrin e k\u00ebrkesave n\u00eb nj\u00eb interval kohe, numrin e k\u00ebrkesave paralele dhe k\u00ebrkesat nga nj\u00eb adres\u00eb IP.<\/li>\n<\/ol>\n<p>\nQ\u00eb nga ajo koh\u00eb, ne kemi l\u00ebshuar dy versione t\u00eb vogla t\u00eb API-s\u00eb dhe kemi lan\u00e7uar disa API t\u00eb specializuara, por n\u00eb p\u00ebrgjith\u00ebsi, qasja ka mbetur e pandryshuar. Formati i p\u00ebrdit\u00ebsuar i shk\u00ebmbimit dhe arkitektura e re lejuan korrigjimin e dob\u00ebsive n\u00eb API shum\u00eb m\u00eb shpejt.<\/p>\n<h2>API-s\u00eb s\u00eb MojeSklad sot<\/h2>\n<p>\nSot API-ja e MojeSklad zgjidh shum\u00eb detyra:<\/p>\n<ul>\n<li>shk\u00ebmbimi i t\u00eb dh\u00ebnave me dyqanet online, sistemet e llogarive, bankat;<\/li>\n<li>marrja e t\u00eb dh\u00ebnave p\u00ebr llogaritje, raporte;<\/li>\n<li>p\u00ebrdorimi si backend p\u00ebr aplikacionet kliente \u2014 aplikacionet tona celulare dhe kasat desktop punojn\u00eb p\u00ebrmes API-s\u00eb<\/li>\n<li>d\u00ebrgimi i njoftimeve p\u00ebr ndryshimet e t\u00eb dh\u00ebnave n\u00eb M\u00f3jSklad \u2014 webhooks;<\/li>\n<li>telefonia;<\/li>\n<li>sistemet e lojalitetit.<\/li>\n<\/ul>\n<p>\nN\u00eb baz\u00eb t\u00eb API-s\u00eb, drejtori yn\u00eb i p\u00ebrgjithsh\u00ebm Askar Rahimberdiev <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/users\/rhino\/\" class=\"user_link\">rhino<\/a><\/noindex> n\u00eb kat\u00ebr or\u00eb shkroi nj\u00eb bot t\u00eb Telegramit, i cili merr p\u00ebrmes API-s\u00eb stoqet: <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/arahimberdiev\/com-lognex-telegram-moysklad-stock\">github.com\/arahimberdiev\/com-lognex-telegram-moysklad-stock<\/a><\/noindex><\/p>\n<p>Tani numrat e thata. <\/p>\n<p>Ja statistika jon\u00eb p\u00ebr API-n\u00eb e vjet\u00ebr REST:<\/p>\n<ul>\n<li>400 kompani;<\/li>\n<li>600 p\u00ebrdorues;<\/li>\n<li>2 milion k\u00ebrkesa n\u00eb dit\u00eb;<\/li>\n<li>200 GB\/dit\u00eb trafik dal\u00ebs.<\/li>\n<\/ul>\n<p>\nK\u00ebtu \u00ebsht\u00eb se \u00e7far\u00eb arrit\u00ebm p\u00ebr t\u00eb gjith\u00eb API-t\u00eb e M\u00f3jSklad:<\/p>\n<ul>\n<li>m\u00eb shum\u00eb se 70 integ\u00ebrime (disa prej tyre mund t\u00eb shihen k\u00ebtu <noindex><a rel=\"nofollow\" href=\"https:\/\/www.moysklad.ru\/integratsii\/\">www.moysklad.ru\/integratsii<\/a><\/noindex>);<\/li>\n<li>8500 kompani;<\/li>\n<li>12 000 p\u00ebrdorues;<\/li>\n<li>46 milion k\u00ebrkesa n\u00eb dit\u00eb;<\/li>\n<li>2 TB\/dit\u00eb trafik dal\u00ebs.<\/li>\n<\/ul>\n<p><\/p>\n<h2>\u00c7far\u00eb ndodh m\u00eb pas<\/h2>\n<p>\nPlanet p\u00ebr zhvillimin e API-s\u00eb jan\u00eb n\u00eb diskutim aktiv. Ne p\u00ebrpiqemi t\u00eb marrim parasysh p\u00ebrvoj\u00ebn e p\u00ebrdorimit, t\u00eb cil\u00ebn na e ofrojn\u00eb p\u00ebrdoruesit. Nuk \u00ebsht\u00eb gjithmon\u00eb e mundur t\u00eb b\u00ebjm\u00eb gjith\u00e7ka menj\u00ebher\u00eb, por nj\u00eb version i ri i API-s\u00eb me metad data m\u00eb t\u00eb p\u00ebrshtatshme dhe nj\u00eb struktur\u00eb m\u00eb t\u00eb thjesht\u00eb, OAuth p\u00ebr autentifikim, API p\u00ebr integrimin n\u00eb nd\u00ebrfaqet e aplikacioneve \u00ebsht\u00eb af\u00ebr. <\/p>\n<p>Mund t\u00eb ndiqni lajmet n\u00eb nj\u00eb faqe t\u00eb ve\u00e7ant\u00eb p\u00ebr zhvilluesit e integrimeve me MoimSklad: <noindex><a rel=\"nofollow\" href=\"https:\/\/dev.moysklad.ru\">dev.moysklad.ru<\/a><\/noindex>.<br \/>\n<br \/>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/moysklad\/blog\/453136\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0435\u0440\u0432\u044b\u0439 API \u041c\u043e\u0435\u0433\u043e\u0421\u043a\u043b\u0430\u0434\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f 10 \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434. \u0412\u0441\u0451 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430\u0434 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 API \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0435. \u0410 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0440\u0441\u0438\u0439 API \u0443\u0436\u0435 \u0443\u0441\u043f\u0435\u043b\u0438 \u043f\u043e\u0445\u043e\u0440\u043e\u043d\u0438\u0442\u044c. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u0432\u0441\u0435\u0433\u043e: \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b\u0438 API, \u0437\u0430\u0447\u0435\u043c \u043e\u043d \u043d\u0443\u0436\u0435\u043d \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u0447\u0442\u043e \u0434\u0430\u0435\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c, \u043d\u0430 \u043a\u0430\u043a\u0438\u0435 \u0433\u0440\u0430\u0431\u043b\u0438 \u043c\u044b \u0443\u0441\u043f\u0435\u043b\u0438 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u0438 \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435. \u041c\u0435\u043d\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25898,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-34354","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.0.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0435\u0440\u0432\u044b\u0439 API \u041c\u043e\u0435\u0433\u043e\u0421\u043a\u043b\u0430\u0434\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f 10 \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434. \u0412\u0441\u0451 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430\u0434 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 API \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0435. \u0410 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0440\u0441\u0438\u0439 API \u0443\u0436\u0435 \u0443\u0441\u043f\u0435\u043b\u0438 \u043f\u043e\u0445\u043e\u0440\u043e\u043d\u0438\u0442\u044c. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u0432\u0441\u0435\u0433\u043e: \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b\u0438 API, \u0437\u0430\u0447\u0435\u043c \u043e\u043d \u043d\u0443\u0436\u0435\u043d \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u0447\u0442\u043e \u0434\u0430\u0435\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c, \u043d\u0430 \u043a\u0430\u043a\u0438\u0435 \u0433\u0440\u0430\u0431\u043b\u0438 \u043c\u044b \u0443\u0441\u043f\u0435\u043b\u0438 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u0438 \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435. \u041c\u0435\u043d\u044f\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/pisali-api-porvali-xml-dva\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.0.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041f\u0438\u0441\u0430\u043b\u0438 API \u2014 \u043f\u043e\u0440\u0432\u0430\u043b\u0438 XML (\u0434\u0432\u0430) | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0435\u0440\u0432\u044b\u0439 API \u041c\u043e\u0435\u0433\u043e\u0421\u043a\u043b\u0430\u0434\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f 10 \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434. \u0412\u0441\u0451 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430\u0434 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 API \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0435. \u0410 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0440\u0441\u0438\u0439 API \u0443\u0436\u0435 \u0443\u0441\u043f\u0435\u043b\u0438 \u043f\u043e\u0445\u043e\u0440\u043e\u043d\u0438\u0442\u044c. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u0432\u0441\u0435\u0433\u043e: \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b\u0438 API, \u0437\u0430\u0447\u0435\u043c \u043e\u043d \u043d\u0443\u0436\u0435\u043d \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u0447\u0442\u043e \u0434\u0430\u0435\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c, \u043d\u0430 \u043a\u0430\u043a\u0438\u0435 \u0433\u0440\u0430\u0431\u043b\u0438 \u043c\u044b \u0443\u0441\u043f\u0435\u043b\u0438 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u0438 \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435. \u041c\u0435\u043d\u044f\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/pisali-api-porvali-xml-dva\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T18:57:51+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:57:51+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Krijuam API-n\u00eb \u2014 gris\u00ebm XML (dy) | ProHoster","description":"API i MoimSklad u shfaq 10 vjet m\u00eb par\u00eb. Gjat\u00eb gjith\u00eb k\u00ebsaj kohe, ne kemi punuar mbi versionet ekzistuese t\u00eb API-s\u00eb dhe kemi zhvilluar t\u00eb reja. Disa versione API-s\u00eb tashm\u00eb jan\u00eb harruar. N\u00eb k\u00ebt\u00eb artikull do t\u00eb kemi shum\u00eb informacione: si e krijuam API-n\u00eb, p\u00ebr \u00e7far\u00eb i nevojitet nj\u00eb sh\u00ebrbimi n\u00eb re, \u00e7far\u00eb ofron p\u00ebr p\u00ebrdoruesit, cila ka qen\u00eb p\u00ebrvoja jon\u00eb dhe \u00e7far\u00eb duam t\u00eb b\u00ebjm\u00eb m\u00eb tej. Mua","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/pisali-api-porvali-xml-dva","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041f\u0438\u0441\u0430\u043b\u0438 API \u2014 \u043f\u043e\u0440\u0432\u0430\u043b\u0438 XML (\u0434\u0432\u0430) | ProHoster","og:description":"\u041f\u0435\u0440\u0432\u044b\u0439 API \u041c\u043e\u0435\u0433\u043e\u0421\u043a\u043b\u0430\u0434\u0430 \u043f\u043e\u044f\u0432\u0438\u043b\u0441\u044f 10 \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434. \u0412\u0441\u0451 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u043c \u043d\u0430\u0434 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c\u0438 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438 API \u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0435. \u0410 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0435\u0440\u0441\u0438\u0439 API \u0443\u0436\u0435 \u0443\u0441\u043f\u0435\u043b\u0438 \u043f\u043e\u0445\u043e\u0440\u043e\u043d\u0438\u0442\u044c. \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u0431\u0443\u0434\u0435\u0442 \u043c\u043d\u043e\u0433\u043e \u0432\u0441\u0435\u0433\u043e: \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b\u0438 API, \u0437\u0430\u0447\u0435\u043c \u043e\u043d \u043d\u0443\u0436\u0435\u043d \u043e\u0431\u043b\u0430\u0447\u043d\u043e\u043c\u0443 \u0441\u0435\u0440\u0432\u0438\u0441\u0443, \u0447\u0442\u043e \u0434\u0430\u0435\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c, \u043d\u0430 \u043a\u0430\u043a\u0438\u0435 \u0433\u0440\u0430\u0431\u043b\u0438 \u043c\u044b \u0443\u0441\u043f\u0435\u043b\u0438 \u043d\u0430\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u0438 \u0447\u0442\u043e \u0445\u043e\u0442\u0438\u043c \u0434\u0435\u043b\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435. \u041c\u0435\u043d\u044f","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/pisali-api-porvali-xml-dva","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T18:57:51+00:00","article:modified_time":"2019-10-31T18:57:51+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34354","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 18:52:24","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:23:17","updated":"2026-01-21 18:52:24","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/34354","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=34354"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/34354\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/25898"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=34354"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=34354"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=34354"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}