Você está na página 1de 13
2o/10/2017 OV Magento AP Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio Q Magento Open ag ‘eCommerce Entendendo as APIs do Magento - SOAP - Introdugao Est pos faz parte de uma sree de posts que vou fazer sobre os WabServices do Magent, tanto em SOAP quanto am REST. xpero realmente que curam este cont edo eo que esté por vi [AAPISOAPI de Ragen® properciona a possibldade de gerenclar suas jas ecommerce do chamnadas para vabalhar com os resources do Magento como cents, produtos« pecidos de vendas. Ele também permite gerencir 0s earinhos de compres e oestoque de cada ja AAPI SOAP verso \2.est8cponivelna Magento desde sua verso 1.3 ums reso do WS- comellant ext spaniel desc sua versio 1.6, Supported Types AAPI do Magento suporta SOAP e XML-RFC, aon SOAP &0 protocal padréo. SOAP Para se conectar ao Web Serices do Magento a SOAP, caregue oarqulvo WSDL em seu clente SOAP de alguma dessasduas URLs: 11 hetp://magentohost/p1/?ase 21 hetp://magentohost/api/soap/ Psd onde magentohos © dominic para sua lja Magento, Apart da versSo 13 voce deve usar 3 URL ato pare acessar a APIv2 do Magento, o qual eve uma melhor de compatiiisd com Jas @ INET 21 hetp://magentohost/api/v2_souprwsaiaa ‘© exemploPHE absixo mostra como fazer uma chamada SOAP na APIVI do Magento: 2] Seatent = new Soapcttent(nttp://nagentohost/soap/apt/ sa") 2] 17 1¢ sonesturt requires apt authenti fication, | 17 then get a session token S| Session S seifent-stogint apiuser’, “apikey")s Z| gresuie = sctient-rcall(gsession, ‘sonestutf.nethoa")s 2) Hesuit © SSticneseati(gsession, ‘sonesturfnethod'> ‘args 5] Seesule < Sclsene-seall¢ssession, ‘sonsstureimethad"; array( agi", ‘args ‘ane | $result = $ctient-omultieati(gsessions arrayt array(soncsiure method’), Srraytsonestotfinethod”»"3rg1") srray(csonestuft method", array(“Srgi", “are2")) y: 2° | 11 26 you don’t neea she session anymore 8 | Seatent*Sendsesston(ssession): XML-RPC Para utr 0 XML-RPC carregue a seguinte URL em seu clenteXML-RPC: hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! Tago Sampaio Deservolvedor web ha mals de 7 anos vasa experince conhecine deeconmerceeespecazads > egento Commerc. plsaorn agent Ces Developer Categorias curso magento agerto Tags ws. 2o/10/2017 Entendendo as APIs da Magento — SOAP — Inrodugdo - Tiago Sampaio (0 seguinte exemple PHP mostra como foter chamados XMI-RPC: Selient = new Zend xalage_¢ hexps//nagentabast/apt/sarpe/") 11 UF sonestut# requires api authenti#ication, Uf we Stoula get session taken SSetsion = eltent=sealTC login’, srrayCapiUser', "3piKey")): Sellent-oeali(call', arrayt$session, ‘'sonestuff.nethod’, array("argl's ‘ane2"s Sellene-seati(-coll') deraytgsession, “se Selene seali(-call'y aeray(Ssestion, *S Selient-seati( nuiticaln', srray(Ssezsion, areayt Stray(sonestuffsmethod’, ‘argt'), Stray somestuff method" 5 arrayC'Srgi', "2rg2")), array(-sonestur# rath S eure imetned 3) Ds Uff you don’t need the session anymore Sealente>call(enssessisn™, arey(Ssession)) ‘OXML-RC suporta apenas a vers3o1 da API do Magento Métodos da API _Atabelasequinteconter os métodos da AP que podem ser chamados de seu clente SOAP ou XML PCa APIVI do Magento, Method Description starsession Star he API session and return sesion 1 < —endsession'sessionld) End he APIsesson. loginapiUser apiey) Start the aPsession, retun the session 1D, and sushorze the API user. calisessontd, Callthe AP resource thats allowed inthe current resourcePatharray session. See Note below. arguments) rmultialisessioni, array Callehe API resource’ methods that ar allowed for callsaray options) currant session. See Notes below. resourcestsesionis) _—Returnallst of avallable API resources and methods allowed forthe current session. slobalFauts(sssionid) Return alist of fault messages and their codes that do rot depend an any resource, resourceFaults(sessionl, Return alist ofthe specified resource faut messages, resourceNome) If this resource i alowed Inthe current session, Return Value boelean sng mixed array ary array array Nota: para chamadas e multiplas cnamadss, se nenhuma sesso for especlicada voc8 pode chamar apenas resources que ndo so proteidos nas chamadas. Nota: Para mapas charnadas, se a op(30breale for especicada, a miipla chamada para no primaire er. |AAPIv2 do Magento no supora os métods cll) emultiall) em ver disso ele fornece um método separado para cada resource da APL Erros Globais da API hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! > Arquivos sbel2o16 novembro 2015, agosto 2015 uth 2015 abez015 andro 2015| Junho 2013 abe2018 rang 2013 fevereo2013 janero2013 sererbr0 2012 23 2o/10/2017 Entendendo as APIs do Magento ~ SOAP. Faule Code Fale Message ° Unknown 1 Internal Eror Please see og for deta 2 ‘Acces denied a eval ap path 4 Resource paths not alae API SOAP Versio v2 entre vi @v2& que a0 invés de ular os métados cll e multcall ele separa ce método para cada athe Paranamplo.napsdenpi seguinteclgo PHP usizando avi do SOAP: fGaain« 2) Sporans = array(array( 2 talus. coarray(eq'=>' pending") 3), coorer teamest oaray('ea'95'17) » Sresult = Selient-rcall(Ssessionld, ‘sales_order. List’, $parans); om 0 SOAP v2, 0 seguinte cio seria equivalents 1) Sporans = array(’lzer’ => array( a] PP Sreay(koy! > teeaeur, Teale’ => “peneine'), CBP BRBGEGh S eieaned laste Halle Sa > Ds Sresule = Seiient-rsalesorderLis(Ssessiontd, $parans); Note que o W5DI para aI ev? do SOAP so diferentes, No SOAP", customizar 9 APIO envolve 8 alteragdo do WSDL. No SOAP v2, as ateragbes no WSL sto necessiias. ode contgurar © SOAP v2 para ser compative com @ WS: no menu de configuragSes do ‘stem, Para farera aeragdo navegue até Series > Magento Core API> WS Compliance eaters seu aer para Yes Também percata que o WSDL para 0 SOAP v1 &v2 sto diferentes quando esto em made compative! com W54 Lnlzande a compatisdads WS pars © WSDL de API SOAP v2 fea fl gerarautomstleamente = classes do clente para ava,.NETe ouraslinguagens que utlizem bibotecaspadro Um abrago eaté proximal Tiago sampaio compara ss: vine Usando. Shellsript do Apliearcupons/regras de Ero a Carregar um Cente Mopento para impanar desconto dnamicamente va no Magenta: Customer ‘Opctes dentnbutes por «PHP na Magento, webste ID must be spectied Arquivos CV unho 10 ‘when using the website abril 20,2015 im "Checkout scope sm "Magento butubro 24,2012 hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! 313 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio TAGS: AP, DESENVOLMIMENTE, SECURANEA, SOAP, WEBEERVCES oo eof Tiago Sampai lions: Magenta Frontend Developer (MFD} Magento Crtifed Developer (HC) « Magento Certifies Daw Pos nwa worked n mary comerce projects bese n Magento Communry Eaton (C2) and Corry Enterprse Edin (Ef) Projects af cansierablesies ke Hering Web Store, Se fonado, rand ru, Tonn, resto, Amster Sauer, vo Eyewear, Puke 10, PayPal ras and projects ot huge ze We Lala arava, one ofthe lor, Nowadays work a a Senior Sofware ct and adler ofthe Magen evelopment team a smart the man Magenta Gold Parser in Latin Amerca and af ein < Related Articles > Novo Métulo Magento Magento 2~ Request Flow Magento 20 Finaimente & paralntepracdo com AP (@ootsrapping) Langado pela Magento ne po Plst wacevro20 / sant 19,206 seacewro 1 novenste 30 Comments Verdell ser ‘ery nice pest. |just stumbled upon your blog and wanted to say tha have truly enjoyed browsing your blog posts. Ate al willbe subserbing to your ss fed ard hope you wrt agaln soon! Zz Tiago Sampaio sen hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! 43 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio {hope you enjoy each pos realy hope they help you to, Thanks 3 ot Tiago Sampaio Alexandre Gomes ener Thiago, boa tarde, Voce sabe © motive de se nfo conseguir uiizara AI do magento no mesmo senior? Tenho Um hossite que va usar AP, constr uma camads de acesso a AP do magento eta tudo funconando, ‘6 que quando tentoacessar a API do magento da minha maquina, le crrega © WSDL mas r30 funciona tudo perfetamente..tem alguma dla do que pode 2°? Obrigado. eparabéns peo post! zz Tiago Sampaio any 01 Alexandre, (© SOAP ext instalaso no senior? Acreito que voe® preciso entrar em contato com 0 suport teri de seu hos. ‘Abacos, Tiago Sarmpaio So Raphael igor unr ol Tage. documentacie dis. ola. pretendofarer uma pacers com uma loa para vender virulent seus produtos e gostara de saber se na plataforma do magento eu consigo crar um webservice para buscar asinformacbes de reco estoque dos progutos que serSo comerciazadose se sim como fazer? brigade! hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! 513 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio Eduardo Martins 1 Thiago tudo bem? lu tenho um servdor que montamos um ublntyna Under, ele no é gerendad entio os caras Efi webservice noes untionand. Quando eu mando pro servidor um arquivo com o script do exemploagul do pos, oda, roda, rods eno rarorna nada, 8 algo assim? Renan Polonia Estou a meses tentado funciona 0 soap eno consgo por naa, js ene em contato co pessoal do serldore est ude lgado da parte dees zz tiago.sampaio * sun ‘sRenan Elbe alzuma mensogem de erro? Em caso positive, Ua bragos, Tao cela ricardo suney ‘Too, pederia me dar uma de Estou usando © Magento 1.na minha méquina localmente, usando 0 E3syPHP. Quando instalelo Pugin dos Core, apareceu a seguinte mensagem:"A extensdo do PHP Soap deve estar instlada para que © méudule dos Corrie funcione corretament,stou comesando apora no Magento « nio ‘tenho conhecimenta de programagée. Nao consigeresoker iso. Poderia me dar uma ajudinna? abs Reardo cello ricardo hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! 63 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio Plugin dos Corrios, apareceu a sguin rmensagemn” A extansie de PHP Soap deve estar instal ara que © mésule dos Corrie funcione corretament.Estou comasande agora no Magenta eno ‘tenho conhecimenta tence nese assunta, Paulo suner Togo, {sto com problemas pata obter 0 customerCustomerist na versso 1.6 da magento, ois no tis nenhum retro, habit! o trace enada de geLasthesponse Temidela do que pode estar fatando 7 ages, Sergio ener ‘mio, ve tem um tutorial de como configura aljacadastrande 0s usuarios do webseries, ete Cosagu conacar a0 webservice da ljs pelo Ce masnao tenho os dados de conexte,ususco, senha 6 Tago, éstou com um problema que esth ef de resolver nossa ntagrac2e, 20 mover do cretorio de homologacao para ede produce parou de funciona. oer: “SOAP-ERROR: Parsing WSDL: Could load ‘rom tps. canelladcom.orindes;php/apiv2_soapiindex/Msdle1':falledtoload external entiyy “rep. canelindo com.bfindex php/opin2.soapiindenasalea” Fuiveriicar se os usuiro enave da api estavary corretas me depareicom outro problems 3 ops ‘Sstema" > "Compartir recurso’ desapareceu do ments ‘Antes da migrago tudo funconava, tem idéa do que possa estar acontecendo? Seu" coe ols sey, Nesta migraglo podem er ocori wiles problemas «2 que mais poderia mpactar sera a migracio do banco de dados. Veriique seo banco de dados fol migra corretamente, Ours questo pode ser 2 configura do ambiente, ji me deparl como mesmo tipo de problems hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! a3 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio rages, ~ Tage Sergio Mordente ery ob, ¢stou com problema para conecar Java com Magento via Sopa er que podria me dar alguma sugestio? Consigo cir o arrinho,adconarclente, enderec e produto, mas quando tents pagamento, retorna que método de pagamente no & permite, Estu usando © método “eashondelvery’ mas jst também acantece com outros métedos hablltadce no backend amon Valentim sane 0 Tago, boa tarde! Estov inkiando no Magento, Fiza instal semana passada, seg todos os pasos recomendados pelo ste do prépre Magerto ea principio est tudo funcionando. No momento estou tentando _consumirum webservice do Magento através de uma apicagio ber simples feta em php. Quando > execute 0 comand Sclent = new SoapChentehtp//meumagento.comv/index php/apiN2_ sap? stl: recede 0 seguint retorne:"Fatal error: UncaughtScapFeult exception: [WSDL] SOAP-ERROR: Parsing WSDL: Could loa from hitotimeumagentaconvindexphp/apiv2_soaphrs load external ensty“hpimeumagentaSoapCientthtp//meumagen..) #1 {main} thrown in Vartwwutitestefindex php on fine 19. Tens alguma psta do que pode ser? brigade desde jt zZ Tiago Sampaio Pw ery (018 Ramon, tudo bem? \-ove problemas assim e resol aumentancoo seguintepardmetro do PHP. ak socket, meout “300 Espero que te jude, Teste e dene o comentéia ag, rages, ~Tago hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! 93 2o/10/2017 Entendendo as APIs do Magento ~ SOAP. Invodugdo - Tiago Sampaio Ramon Valenti ener Boa tarde Tage, Conseguiresolver. _Apatentemente era algum problema com a versio do Magento e a contiguragso que euhawa fe, Desinstae a ve 0 anterior, instal a versso 1,924 realize um teste com a mesmo aligo no PHP e consegul realzar acomunicagso, CObrigato pelo retorno Celso ener Tago JInutiizo a API do magento erm meu ERP, fo totamente desenveWda internarne nwo de produto do ERP para alo, ond ullzo @ APISOAP V2 eeatalogProducCreat, precisa ‘enviar atributos ant single come multiple, os single somente esto indo certin, utlze © PHP. Para evar os atrbutos simple cle um array em addtional atribbutes «funciona, agora preciso passar dos dole ios, vac tem lade conn posso fazer sso am PHP? a Tugosamealo. reas _ ol cls, Fiqueina vida sobre os termos single ¢ multiple. 0 que voc® quer dizer com estes terms? ‘Abacos, ~ Tago Celso Rondineli ener Simple um atrbute de dic escola, © Maple & um atibuto malpa eseotha. 05 simples esto indo bem zz Tiago Sampaio se a Voc tentou enviar os valores de um tribute mutple como testo, separado por vrgular? hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! 10113 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio Rodrigo sur (ls thigo, boa tarde ‘tov usando uma URL SOAP no formate: htptimagentohostapisoap/rasd Use eset Protheus eee ria um cent automatcamente onde consigo instinciar um objeto WiskiagentoSerice e usar or métodos para integragéo via WS Esto usando 0 métode Calle preciso buscar uma Ista com os peddos no Magento ‘o métode Call enade no meu chent tam 3 parmetros e nfo estou conseguinde passarotercero pardmetrocorretamente. oe saber me infermar come fro para passar esse pardmetro, eu tetel montar um atray mss deu era inormando que tipo no & 0 correto, © método Call ests abaixe para malnorentendimento, Note que o parSmetro oWSargs€ do tie “anyType" {1¥9501 Method call of Service WSMagentaserce \WSMETHOD call WSSEND ceessionlrasourcePath oWSargs WSRECEIVE oWScalleturn WSCLI WsMagentoservice Local Soap =, oxmtRet BEGIN WSMIETHOD Soap Soap ‘Soap += WSSoapValuetresourcePath’ eresourcePath,cresourceath, “String. T..0,NIL A) WsSoapValue'args soWSargs, oWSargs,“anyType' TT, 0, NILA) WSSoapValuesessonl :esessonl,cessionld, “tn TT, 0M) ‘Soop okmlRet= SveSoapCail SlieSoap; ~urnMage. Aol Mode! Server Mandlerktion “Reoe sumMagensa,: “hep. wjcommerce.com.brishpreusidevtsndex phprapilsoapindex”) Ine soWScalReturn = WSAdWaluel oXmIRet_CALLRETURN'anyType7ILAILNIL"O"NILNI) END WoMETHOD xrntRet= NL Return. We exou chamando © método dessa forma, sem informar oercelragerdmetr, porém ass cexcedeolmite de 1MB do servidor web pois estaria buscando todos os pees: o9ve = WSMagentosericetiNewt) MagUser = ALLTRIM(GetNewParf MV_MAGUSRY user ag = ALLTRIM(GetNewParC¥V_MAGPSW senha") SvelogintMagUsereMagPsa) «ldSesson aSvecloginRecurn oSycalfeaSession order 3") Tiago Sampaio Pos vs hitp:t'agosampsio.convantandendo-as-apis-do-magento-soap-introducao! 1013 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio (0s Rodrigo, tudo bem? Na realidad no sei exatamente como resolver seu problema, i que minha especioidade & PHP, Em PHP o ercelro par3metr pode Ser uma sting em alguns casos ou um avray em (0 que posse tentar fazer para te ajudar& Indica um médulo que eu erie para facia essa Incegrade do lado do Magento. hnepsvietnub comlagosampaiesAp Plus _imples de que @ SOAP, norm com a mesma camaca de abtragte, erage, ~Togo Rodrigo ener brigade Tiago, «u consegui desenvolveraaplicago usando outro métode, ne caso o sal ordernf < calclsession‘sales_order.inf'cNumPes, Nasse métada consigo pasar o pede no > ‘erceita pordmetro e com sso feou mais para im Leave AReply * Notiique-me sobre novas puliagSes por eal hitp:t'agosampsio.convantendendo-as-apis-do-magento-soap-introducao! 123 2o/10/2017 Entendendo as APIs da Magento — SOAP — Introdugdo - Tiago Sampaio [Assine vgoro@torne-se um essay sobre Magento ago sampaio Eopocunee hitp:t'agosampsio.convantendendo-as-apis-do-magento-soap-introducao! 1313

Você também pode gostar