{"id":2789,"date":"2014-09-25T12:36:45","date_gmt":"2014-09-25T15:36:45","guid":{"rendered":"http:\/\/blog.dialhost.com.br\/?p=2789"},"modified":"2014-09-25T12:36:45","modified_gmt":"2014-09-25T15:36:45","slug":"review-apiary-fazendo-muito-mais-que-apenas-documentar","status":"publish","type":"post","link":"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/","title":{"rendered":"Review: Apiary \u2013 Fazendo muito mais que apenas documentar"},"content":{"rendered":"<figure id=\"attachment_2792\" aria-describedby=\"caption-attachment-2792\" style=\"width: 700px\" class=\"wp-caption aligncenter\"><a href=\"http:\/\/blog.dialhost.com.br\/wp-content\/uploads\/2014\/09\/apiary.jpg\"><img loading=\"lazy\" class=\"wp-image-2792 size-full\" src=\"http:\/\/blog.dialhost.com.br\/wp-content\/uploads\/2014\/09\/apiary.jpg\" alt=\"apiary\" width=\"700\" height=\"260\" \/><\/a><figcaption id=\"caption-attachment-2792\" class=\"wp-caption-text\">P\u00e1gina do Apiary<\/figcaption><\/figure>\n<p>H\u00e1 algum tempo, venho trabalhando diretamente com APIs de diversos tipos. Tanto APIs p\u00fablicas abertas, quanto fechadas. Em partes, meu trabalho est\u00e1 na cria\u00e7\u00e3o de documenta\u00e7\u00f5es, SDKs e artigos t\u00e9cnicos para utiliza\u00e7\u00e3o e consumo.<\/p>\n<p>Uma das maiores dificuldades na cria\u00e7\u00e3o de documenta\u00e7\u00e3o de API, al\u00e9m, claro, da manuten\u00e7\u00e3o, \u00e9 a ilustra\u00e7\u00e3o de sua utiliza\u00e7\u00e3o para o desenvolvedor que est\u00e1 tento o primeiro contato com ela. Ao iniciar a integra\u00e7\u00e3o, \u00e9 natural que o desenvolvedor precise, por exemplo, saber como suas requisi\u00e7\u00f5es HTTP est\u00e3o sendo recebidas pela API e qual est\u00e1 sendo a resposta da API, para aquela requisi\u00e7\u00e3o espec\u00edfica.<\/p>\n<p>Ilustrar o recebimento da requisi\u00e7\u00e3o e a resposta para essa requisi\u00e7\u00e3o, em uma documenta\u00e7\u00e3o, n\u00e3o \u00e9 uma tarefa simples. E \u00e9 justamente nesse ponto que o <a href=\"http:\/\/apiary.io\/\" target=\"_blank\" rel=\"noopener noreferrer\">Apiary<\/a> mostra sua for\u00e7a.<\/p>\n<p><strong>Primeiro contato<\/strong><\/p>\n<p>Eu j\u00e1 tinha uma conta no Apiary h\u00e1 algum tempo, mas apenas recentemente fui realmente utiliz\u00e1-lo para um caso de uso em produ\u00e7\u00e3o. A interface do Apiary \u00e9 bastante simples e a organiza\u00e7\u00e3o facilita sua utiliza\u00e7\u00e3o:<\/p>\n<p><a href=\"http:\/\/blog.dialhost.com.br\/wp-content\/uploads\/2014\/09\/ri01.png\"><img loading=\"lazy\" class=\"aligncenter size-full wp-image-2790\" src=\"http:\/\/blog.dialhost.com.br\/wp-content\/uploads\/2014\/09\/ri01.png\" alt=\"ri01\" width=\"600\" height=\"297\" \/><\/a><br \/>\nDe um lado, temos o conte\u00fado da API. A separa\u00e7\u00e3o por recurso\/verbo HTTP simplifica tanto a cria\u00e7\u00e3o da documenta\u00e7\u00e3o para aquele recurso\/verbo, quanto o entendimento daquilo que est\u00e1 sendo documentado. Algumas documenta\u00e7\u00f5es podem ter diversos recursos e o ToC no lado direito facilita a navega\u00e7\u00e3o entre os recursos.<\/p>\n<p><strong>Documenta\u00e7\u00e3o facilitada<\/strong><\/p>\n<p>A ferramenta j\u00e1 seria excelente, por cumprir muito bem seu prop\u00f3sito de documentar. Mas como manter a documenta\u00e7\u00e3o \u00e9 uma tarefa, talvez, ainda mais complexa que escrever a documenta\u00e7\u00e3o, o Apiary oferece a integra\u00e7\u00e3o com um reposit\u00f3rio no Github.<\/p>\n<p>Isso significa que podemos escrever toda a documenta\u00e7\u00e3o em Markdown e, ao fazer push para o reposit\u00f3rio, a documenta\u00e7\u00e3o no Apiary \u00e9 atualizada automaticamente.<\/p>\n<p><strong>Ambiente de testes<\/strong><\/p>\n<p>Pronto, escrevi a documenta\u00e7\u00e3o da minha API. E agora?<\/p>\n<p>Apesar de o Apiary ter a documenta\u00e7\u00e3o como foco, o ponto mais forte, na minha opini\u00e3o, \u00e9 o Mock Server. Ao definir os recursos da API e os verbos, podemos tamb\u00e9m definir o que \u00e9 esperado para determinada requisi\u00e7\u00e3o HTTP e qual ser\u00e1 a resposta, se a requisi\u00e7\u00e3o for feita corretamente.<\/p>\n<p>O Mock Server \u00e9 composto por dois ambientes distintos:<\/p>\n<ul>\n<li>O pr\u00f3prio Mock Server, para onde devemos enviar as requisi\u00e7\u00f5es de teste.<\/li>\n<li>O Traffic Inspector, que monitora as requisi\u00e7\u00f5es feitas para o Mock Server.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>Para localizar a URL do Mock Server, basta observar a coluna da direita, logo abaixo a tabela de conte\u00fado. Ser\u00e1 alguma coisa como: netojoaobatista.apiary-mock.com.<\/p>\n<p>Uma vez localizada a URL do Mock Server, basta fazer uma requisi\u00e7\u00e3o HTTP como documentado na sua API. Assim que a requisi\u00e7\u00e3o for feita, basta verificar o Traffic Inspector, para ver como ela chegou na API e qual foi a resposta dada pela API:<\/p>\n<p><a href=\"http:\/\/blog.dialhost.com.br\/wp-content\/uploads\/2014\/09\/ri01.png\"><img loading=\"lazy\" class=\"aligncenter size-full wp-image-2790\" src=\"http:\/\/blog.dialhost.com.br\/wp-content\/uploads\/2014\/09\/ri01.png\" alt=\"ri01\" width=\"600\" height=\"297\" \/><\/a><\/p>\n<p>Pr\u00f3s<\/p>\n<ul>\n<li>A interface \u00e9 simples e intuitiva. Muito f\u00e1cil de utilizar.<\/li>\n<li>Permite a utiliza\u00e7\u00e3o de Markdown para a documenta\u00e7\u00e3o.<\/li>\n<li>\u00c9 poss\u00edvel documentar cada verbo HTTP de cada recurso.<\/li>\n<li>\u00c9 poss\u00edvel descrever como ser\u00e3o as requisi\u00e7\u00f5es e respostas HTTP.<\/li>\n<li>O Mock Server e Traffic Inspector facilitam a integra\u00e7\u00e3o, ao ilustrar como a requisi\u00e7\u00e3o foi recebida e o que foi retornado. Permite, ainda, mostrar se a requisi\u00e7\u00e3o foi bem sucedida ou se houve algum erro.<\/li>\n<li>Permite integra\u00e7\u00e3o com Github, tanto com reposit\u00f3rios p\u00fablicos, quanto privados.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>Contras<\/p>\n<ul>\n<li>O Mock Server \u00e9 bastante r\u00edgido com o que foi especificado. Se voc\u00ea colocou 3 espa\u00e7os na documenta\u00e7\u00e3o, ent\u00e3o a requisi\u00e7\u00e3o deve ser feita com 3 espa\u00e7os.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>Conclus\u00e3o<\/strong><\/p>\n<p>Se voc\u00ea est\u00e1 desenvolvendo uma API e precisa document\u00e1-la, o Apiary \u00e9, certamente, uma excelente ferramenta. A facilidade de escrever e manter a documenta\u00e7\u00e3o, j\u00e1 seriam argumentos o suficiente para sua utiliza\u00e7\u00e3o. Mas o Mock Server + Traffic Inspector s\u00e3o o algo mais. Documenta\u00e7\u00e3o de API \u00e9 algo feito para o desenvolvedor. O que melhor, ent\u00e3o, para o desenvolvedor, que oferecer um ambiente para ele \u201cbrincar\u201d com sua API, enquanto l\u00ea a documenta\u00e7\u00e3o?<\/p>\n<p>&#8212;&#8212;&#8211;<\/p>\n<p>Artigo de Jo\u00e3o Batista Neto, publicado originalmente no <a href=\"http:\/\/imasters.com.br\/apis\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/\" target=\"_blank\" rel=\"noopener noreferrer\">iMasters<\/a>.\t\t\t\t<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\t\t\t\tA facilidade de escrever e manter a documenta\u00e7\u00e3o, j\u00e1 seriam argumentos o suficiente para utilizar o Apiary. Mas o Mock Server + Traffic Inspector s\u00e3o o algo mais. \t\t\t\t<\/p>\n","protected":false},"author":1,"featured_media":2812,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[3],"tags":[35,86,99,158],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v15.0 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Review: Apiary \u2013 Fazendo muito mais que apenas documentar - Blog DialHost<\/title>\n<meta name=\"description\" content=\"A facilidade de escrever e manter a documenta\u00e7\u00e3o, j\u00e1 seriam argumentos o suficiente para utilizar o Apiary. Mas o Mock Server + Traffic Inspector s\u00e3o o algo mais.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Review: Apiary \u2013 Fazendo muito mais que apenas documentar - Blog DialHost\" \/>\n<meta property=\"og:description\" content=\"A facilidade de escrever e manter a documenta\u00e7\u00e3o, j\u00e1 seriam argumentos o suficiente para utilizar o Apiary. Mas o Mock Server + Traffic Inspector s\u00e3o o algo mais.\" \/>\n<meta property=\"og:url\" content=\"\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog DialHost\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/www.facebook.com\/DialHost\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/DialHost\" \/>\n<meta property=\"article:published_time\" content=\"2014-09-25T15:36:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.dialhost.com.br\/blog\/wp-content\/uploads\/2019\/04\/og-image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@dialhost\" \/>\n<meta name=\"twitter:site\" content=\"@dialhost\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#organization\",\"name\":\"DialHost Internet\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/\",\"sameAs\":[\"http:\/\/www.facebook.com\/DialHost\",\"https:\/\/www.instagram.com\/dialhost_oficial\/\",\"https:\/\/www.linkedin.com\/company\/dialhost-internet\",\"https:\/\/www.youtube.com\/channel\/UCAiqiX8IiqTSfA8wQhpzgXQ\",\"https:\/\/twitter.com\/dialhost\"],\"logo\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#logo\",\"inLanguage\":\"pt-BR\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/wp-content\/uploads\/2019\/03\/marca-dialhost.png\",\"width\":81,\"height\":81,\"caption\":\"DialHost Internet\"},\"image\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#logo\"}},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#website\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/\",\"name\":\"Blog DialHost\",\"description\":\"Os melhores conte\\u00fados sobre Desenvolvimento Web, Marketing e Neg\\u00f3cios\",\"publisher\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":\"https:\/\/www.dialhost.com.br\/blog\/?s={search_term_string}\",\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#primaryimage\",\"inLanguage\":\"pt-BR\",\"url\":\"\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#webpage\",\"url\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/\",\"name\":\"Review: Apiary \\u2013 Fazendo muito mais que apenas documentar - Blog DialHost\",\"isPartOf\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#primaryimage\"},\"datePublished\":\"2014-09-25T15:36:45+00:00\",\"dateModified\":\"2014-09-25T15:36:45+00:00\",\"description\":\"A facilidade de escrever e manter a documenta\\u00e7\\u00e3o, j\\u00e1 seriam argumentos o suficiente para utilizar o Apiary. Mas o Mock Server + Traffic Inspector s\\u00e3o o algo mais.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"item\":{\"@type\":\"WebPage\",\"@id\":\"\/blog\/\",\"url\":\"\/blog\/\",\"name\":\"In\\u00edcio\"}},{\"@type\":\"ListItem\",\"position\":2,\"item\":{\"@type\":\"WebPage\",\"@id\":\"\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/\",\"url\":\"\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/\",\"name\":\"Review: Apiary \\u2013 Fazendo muito mais que apenas documentar\"}}]},{\"@type\":\"Article\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#webpage\"},\"author\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#\/schema\/person\/a0b10cbe35449dea173a06d4664f9fcc\"},\"headline\":\"Review: Apiary \\u2013 Fazendo muito mais que apenas documentar\",\"datePublished\":\"2014-09-25T15:36:45+00:00\",\"dateModified\":\"2014-09-25T15:36:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#webpage\"},\"publisher\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/review-apiary-fazendo-muito-mais-que-apenas-documentar\/#primaryimage\"},\"keywords\":\"api,documenta\\u00e7\\u00e3o,feed de parceiros,noticias\",\"articleSection\":\"Dicas e Not\\u00edcias\",\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#\/schema\/person\/a0b10cbe35449dea173a06d4664f9fcc\",\"name\":\"DialHost Internet\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/www.dialhost.com.br\/blog\/#personlogo\",\"inLanguage\":\"pt-BR\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/05feec2f99aef1c42b09aeaa637ee66f?s=96&r=g\",\"caption\":\"DialHost Internet\"},\"description\":\"H\\u00e1 mais de 18 anos proporcionando um servi\\u00e7o de hospedagem de sites voltado 100% na Experi\\u00eancia e Sucesso do Cliente, prezando a qualidade, transpar\\u00eancia e seguran\\u00e7a.\",\"sameAs\":[\"https:\/\/www.facebook.com\/DialHost\",\"https:\/\/www.instagram.com\/dialhost_oficial\/\",\"https:\/\/www.linkedin.com\/company\/dialhost-internet\",\"https:\/\/twitter.com\/dialhost\",\"https:\/\/www.youtube.com\/channel\/UCAiqiX8IiqTSfA8wQhpzgXQ\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","_links":{"self":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/posts\/2789"}],"collection":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/comments?post=2789"}],"version-history":[{"count":0,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/posts\/2789\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/media\/2812"}],"wp:attachment":[{"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/media?parent=2789"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/categories?post=2789"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dialhost.com.br\/blog\/wp-json\/wp\/v2\/tags?post=2789"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}