<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Rodrigo Cordeiro</title>
    <description>The latest articles on DEV Community by Rodrigo Cordeiro (@rodcordeiro).</description>
    <link>https://dev.to/rodcordeiro</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F253542%2Fb4da64b9-9f99-4000-94ac-8440d333106f.jpeg</url>
      <title>DEV Community: Rodrigo Cordeiro</title>
      <link>https://dev.to/rodcordeiro</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rodcordeiro"/>
    <language>en</language>
    <item>
      <title>[Boost]</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Sun, 25 Jan 2026 17:45:52 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/-41nf</link>
      <guid>https://dev.to/rodcordeiro/-41nf</guid>
      <description>&lt;div class="ltag__link"&gt;
  &lt;a href="/hadil" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__pic"&gt;
      &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1209000%2Fb29d37d8-2efe-4391-9796-a6f8a483f1bd.png" alt="hadil"&gt;
    &lt;/div&gt;
  &lt;/a&gt;
  &lt;a href="https://dev.to/hadil/the-15-git-commands-every-software-engineer-uses-and-why-they-matter-more-than-you-think-c51" class="ltag__link__link"&gt;
    &lt;div class="ltag__link__content"&gt;
      &lt;h2&gt;The 15 Git Commands Every Software Engineer Uses (And Why They Matter More Than You Think)&lt;/h2&gt;
      &lt;h3&gt;Hadil Ben Abdallah ・ Jan 20&lt;/h3&gt;
      &lt;div class="ltag__link__taglist"&gt;
        &lt;span class="ltag__link__tag"&gt;#programming&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#git&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#productivity&lt;/span&gt;
        &lt;span class="ltag__link__tag"&gt;#codenewbie&lt;/span&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/a&gt;
&lt;/div&gt;


</description>
      <category>programming</category>
      <category>git</category>
      <category>productivity</category>
      <category>codenewbie</category>
    </item>
    <item>
      <title>[Boost]</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Fri, 24 Oct 2025 22:36:49 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/-h3j</link>
      <guid>https://dev.to/rodcordeiro/-h3j</guid>
      <description>&lt;p&gt;

&lt;/p&gt;
&lt;div class="ltag__link--embedded"&gt;
  &lt;div class="crayons-story "&gt;
  &lt;a href="https://dev.to/adrianbailador/creating-a-net-api-with-websockets-and-jwt-authentication-for-real-time-chat-4np3" class="crayons-story__hidden-navigation-link"&gt;Creating a .NET API with WebSockets and JWT authentication for real-time chat&lt;/a&gt;


  &lt;div class="crayons-story__body crayons-story__body-full_post"&gt;
    &lt;div class="crayons-story__top"&gt;
      &lt;div class="crayons-story__meta"&gt;
        &lt;div class="crayons-story__author-pic"&gt;

          &lt;a href="/adrianbailador" class="crayons-avatar  crayons-avatar--l  "&gt;
            &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1257287%2F307e3f5d-e99f-4b8f-bc61-55f475e28311.jpeg" alt="adrianbailador profile" class="crayons-avatar__image"&gt;
          &lt;/a&gt;
        &lt;/div&gt;
        &lt;div&gt;
          &lt;div&gt;
            &lt;a href="/adrianbailador" class="crayons-story__secondary fw-medium m:hidden"&gt;
              Adrián Bailador
            &lt;/a&gt;
            &lt;div class="profile-preview-card relative mb-4 s:mb-0 fw-medium hidden m:inline-block"&gt;
              
                Adrián Bailador
                
              
              &lt;div id="story-author-preview-content-2320624" class="profile-preview-card__content crayons-dropdown branded-7 p-4 pt-0"&gt;
                &lt;div class="gap-4 grid"&gt;
                  &lt;div class="-mt-4"&gt;
                    &lt;a href="/adrianbailador" class="flex"&gt;
                      &lt;span class="crayons-avatar crayons-avatar--xl mr-2 shrink-0"&gt;
                        &lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1257287%2F307e3f5d-e99f-4b8f-bc61-55f475e28311.jpeg" class="crayons-avatar__image" alt=""&gt;
                      &lt;/span&gt;
                      &lt;span class="crayons-link crayons-subtitle-2 mt-5"&gt;Adrián Bailador&lt;/span&gt;
                    &lt;/a&gt;
                  &lt;/div&gt;
                  &lt;div class="print-hidden"&gt;
                    
                      Follow
                    
                  &lt;/div&gt;
                  &lt;div class="author-preview-metadata-container"&gt;&lt;/div&gt;
                &lt;/div&gt;
              &lt;/div&gt;
            &lt;/div&gt;

          &lt;/div&gt;
          &lt;a href="https://dev.to/adrianbailador/creating-a-net-api-with-websockets-and-jwt-authentication-for-real-time-chat-4np3" class="crayons-story__tertiary fs-xs"&gt;&lt;time&gt;Mar 9 '25&lt;/time&gt;&lt;span class="time-ago-indicator-initial-placeholder"&gt;&lt;/span&gt;&lt;/a&gt;
        &lt;/div&gt;
      &lt;/div&gt;

    &lt;/div&gt;

    &lt;div class="crayons-story__indention"&gt;
      &lt;h2 class="crayons-story__title crayons-story__title-full_post"&gt;
        &lt;a href="https://dev.to/adrianbailador/creating-a-net-api-with-websockets-and-jwt-authentication-for-real-time-chat-4np3" id="article-link-2320624"&gt;
          Creating a .NET API with WebSockets and JWT authentication for real-time chat
        &lt;/a&gt;
      &lt;/h2&gt;
        &lt;div class="crayons-story__tags"&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/ai"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;ai&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/dotnet"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;dotnet&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/csharp"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;csharp&lt;/a&gt;
            &lt;a class="crayons-tag  crayons-tag--monochrome " href="/t/chatgpt"&gt;&lt;span class="crayons-tag__prefix"&gt;#&lt;/span&gt;chatgpt&lt;/a&gt;
        &lt;/div&gt;
      &lt;div class="crayons-story__bottom"&gt;
        &lt;div class="crayons-story__details"&gt;
          &lt;a href="https://dev.to/adrianbailador/creating-a-net-api-with-websockets-and-jwt-authentication-for-real-time-chat-4np3" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left"&gt;
            &lt;div class="multiple_reactions_aggregate"&gt;
              &lt;span class="multiple_reactions_icons_container"&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/exploding-head-daceb38d627e6ae9b730f36a1e390fca556a4289d5a41abb2c35068ad3e2c4b5.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/multi-unicorn-b44d6f8c23cdd00964192bedc38af3e82463978aa611b4365bd33a0f1f4f3e97.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
                  &lt;span class="crayons_icon_container"&gt;
                    &lt;img src="https://assets.dev.to/assets/sparkle-heart-5f9bee3767e18deb1bb725290cb151c25234768a0e9a2bd39370c382d02920cf.svg" width="18" height="18"&gt;
                  &lt;/span&gt;
              &lt;/span&gt;
              &lt;span class="aggregate_reactions_counter"&gt;7&lt;span class="hidden s:inline"&gt; reactions&lt;/span&gt;&lt;/span&gt;
            &lt;/div&gt;
          &lt;/a&gt;
            &lt;a href="https://dev.to/adrianbailador/creating-a-net-api-with-websockets-and-jwt-authentication-for-real-time-chat-4np3#comments" class="crayons-btn crayons-btn--s crayons-btn--ghost crayons-btn--icon-left flex items-center"&gt;
              Comments


              &lt;span class="hidden s:inline"&gt;Add Comment&lt;/span&gt;
            &lt;/a&gt;
        &lt;/div&gt;
        &lt;div class="crayons-story__save"&gt;
          &lt;small class="crayons-story__tertiary fs-xs mr-2"&gt;
            4 min read
          &lt;/small&gt;
            
              &lt;span class="bm-initial"&gt;
                

              &lt;/span&gt;
              &lt;span class="bm-success"&gt;
                

              &lt;/span&gt;
            
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;

&lt;/div&gt;




</description>
      <category>ai</category>
      <category>dotnet</category>
      <category>csharp</category>
      <category>chatgpt</category>
    </item>
    <item>
      <title>CodeWars: battle for the knowledge</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Fri, 20 Aug 2021 13:01:21 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/codewars-battle-for-the-knowledge-33d0</link>
      <guid>https://dev.to/rodcordeiro/codewars-battle-for-the-knowledge-33d0</guid>
      <description>&lt;p&gt;Você conhece a técnica do patinho de borracha? Inconscientemente todos praticamos ela, mesmo sem conhecê-la. Esta técnica propõe que tentemos explicar conceitos complexos, assuntos que estejamos estudando ou problema que estejamos resolvendo para um objeto inanimado, como um pato de borracha. Na área do desenvolvimento, seria explicar aquele bug que apareceu no código ou aquela feature que você esta planejando ainda.&lt;br&gt;
 Bom, vocês serão meus patinhos de borracha.&lt;br&gt;
 Vamos solucionar desafios apresentados no &lt;a href="https://codewars.com"&gt;CodeWars&lt;/a&gt; apresentando minha lógica e convido a todos a apresentar sua própria solução do desafio ou pontos que poderia aprimorar. Vou mostrar como penso, e vocês tem liberdade de responder/corrigir minha lógica.&lt;br&gt;
 Vamos lá?&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;iframe height="600" src="https://codepen.io/cassidoo/embed/MyaWzp?height=600&amp;amp;default-tab=result&amp;amp;embed-version=2"&gt;
&lt;/iframe&gt;
&lt;/p&gt;


&lt;/blockquote&gt;

</description>
      <category>tutorial</category>
      <category>study</category>
      <category>todayilearned</category>
    </item>
    <item>
      <title>Print page with JS</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Tue, 30 Jun 2020 19:14:44 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/print-page-with-js-24g4</link>
      <guid>https://dev.to/rodcordeiro/print-page-with-js-24g4</guid>
      <description>&lt;p&gt;Hey Devs, I'm here today to show you something amazing. How to print the page with JS. &lt;/p&gt;

&lt;p&gt;Let's suppose you're have a form to fulfill a document and you need to print it. For this we're going to use a simple js function.&lt;/p&gt;

&lt;p&gt;For this example, I'm going to use a button calling the function.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;button&lt;/span&gt; &lt;span class="na"&gt;onclick=&lt;/span&gt;&lt;span class="s"&gt;"imprimir"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;Imprimir&lt;span class="nt"&gt;&amp;lt;/button&amp;gt;&lt;/span&gt;                
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Then, add the following script&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;    &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nx"&gt;imprimir&lt;/span&gt;&lt;span class="p"&gt;(){&lt;/span&gt;
        &lt;span class="nb"&gt;window&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;print&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
    &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



</description>
      <category>javascript</category>
      <category>html</category>
    </item>
    <item>
      <title>Refresh page using Metatags</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Wed, 17 Jun 2020 19:50:54 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/refresh-page-using-metatags-13k1</link>
      <guid>https://dev.to/rodcordeiro/refresh-page-using-metatags-13k1</guid>
      <description>&lt;p&gt;Ok, sometimes we need to refresh a page after an amount of time. Maybe to reload some data, to keep it up-to-date or just during the development that you're styling the page and need to see the changes. For that, one of the possibilities is using the meta tag bellow:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight html"&gt;&lt;code&gt; &lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;http-equiv=&lt;/span&gt;&lt;span class="s"&gt;"refresh"&lt;/span&gt; &lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"TIME_TO_RELOAD_ON_SECONDS;URL=PAGE_NAME"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;That's all folks!&lt;/p&gt;

</description>
      <category>html</category>
      <category>webdev</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Blocking user selection on css</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Wed, 17 Jun 2020 19:30:01 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/blocking-user-selection-on-css-3j60</link>
      <guid>https://dev.to/rodcordeiro/blocking-user-selection-on-css-3j60</guid>
      <description>&lt;p&gt;Hey guys, on this tutorial we're going to see how to block a user selection, so, preventing from coping the text.&lt;/p&gt;

&lt;p&gt;This is pretty simple and where going to use the `user-select` property. For this example we're going to use a simple paragraph with a lorem ipsum.&lt;/p&gt;



&lt;div class="highlight"&gt;&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;p&amp;gt;&lt;/span&gt;
  Lorem ipsum dolor sit amet, consectetur adipiscing elit. Etiam est sem, sodales vitae maximus sit amet, ornare nec ligula. Sed iaculis leo velit, in lobortis libero laoreet faucibus. Aliquam imperdiet sem eget quam dignissim, ut rutrum elit consectetur. Nulla tristique quam et vulputate sagittis. In luctus non nibh at volutpat. Vivamus eleifend pharetra dolor at placerat. Quisque id libero ut sem mollis commodo quis vitae nibh. In tincidunt pharetra venenatis. Nulla facilisi. Phasellus rutrum laoreet lacus, at mattis nunc volutpat et. Nulla facilisi. Phasellus in dui id leo facilisis vehicula. Praesent eleifend augue lectus, id aliquam felis consectetur sit amet. Nullam maximus convallis tortor, non dapibus leo ullamcorper et. Nulla in nunc eleifend, posuere diam vel, volutpat metus. Nullam at mollis tortor.
&lt;span class="nt"&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;So, on the css where going to put the property, it has the following syntax &lt;code&gt;user-select: auto | none | text | all;&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight css"&gt;&lt;code&gt;&lt;span class="nt"&gt;-webkit-user-select&lt;/span&gt;&lt;span class="nd"&gt;:none&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="c"&gt;/* Safari 3.1+ */&lt;/span&gt;
&lt;span class="nt"&gt;-moz-user-select&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;none&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;&lt;span class="c"&gt;/* Firefox 2+ */&lt;/span&gt;
&lt;span class="nt"&gt;-ms-user-select&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;none&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;&lt;span class="c"&gt;/* IE 10+ */&lt;/span&gt;
&lt;span class="nt"&gt;user-select&lt;/span&gt;&lt;span class="o"&gt;:&lt;/span&gt; &lt;span class="nt"&gt;none&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt; &lt;span class="c"&gt;/* Standard syntax */&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;That's all folks!&lt;/p&gt;

</description>
      <category>css</category>
      <category>html</category>
      <category>webdev</category>
      <category>frontend</category>
    </item>
    <item>
      <title>Problemns with Remote Desktop (MSTSC)</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Mon, 27 Apr 2020 15:59:43 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/problemns-with-remote-desktop-mstsc-2a8l</link>
      <guid>https://dev.to/rodcordeiro/problemns-with-remote-desktop-mstsc-2a8l</guid>
      <description>&lt;h1&gt;
  
  
  IT Support tips &amp;amp; quicknotes
&lt;/h1&gt;

&lt;p&gt;Hey guys! Here I'm gonna tell you about some tips and tricks I've learned as IT Analyst working on a Helpdesk company. The complete doc about it can be found &lt;a href="https://rodcordeiro.github.io/TodayILearned/IT_Support_quicknotes"&gt;here&lt;/a&gt;. But now, let's talk about this error:&lt;/p&gt;

&lt;h4&gt;
  
  
  The remote session was disconnected because there are no remote desktop client access licenses for this computer.
&lt;/h4&gt;

&lt;p&gt;Sometimes, the windows just stop recognizing your access trough mstsc, returning the error that &lt;em&gt;"The remote session was disconnected because there are no remote desktop client access licenses for this computer"&lt;/em&gt;, I didn't found a good explanation about it yet, but it returns an error, saying to call the network administrator.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--Qx1tdBEX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://rodcordeiro.github.io/TodayILearned/assets/conexao_remota_erro_licencas.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--Qx1tdBEX--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://rodcordeiro.github.io/TodayILearned/assets/conexao_remota_erro_licencas.png" alt="error reference"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;To solve this, it's pretty simple:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;You will run &lt;strong&gt;Regedit&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Go to &lt;code&gt;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Delete the &lt;code&gt;MSLicensing&lt;/code&gt; key and close regedit&lt;/li&gt;
&lt;li&gt;Run the MSTSC as administrator and &lt;em&gt;'et voilá'&lt;/em&gt;!&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>it</category>
      <category>tech</category>
    </item>
    <item>
      <title>Creating your own API using NodeJS</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Thu, 23 Apr 2020 19:17:21 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/creating-your-own-api-using-nodejs-1cce</link>
      <guid>https://dev.to/rodcordeiro/creating-your-own-api-using-nodejs-1cce</guid>
      <description>&lt;p&gt;Hey guys, today we're going to build an API using &lt;code&gt;NodeJs&lt;/code&gt; and &lt;code&gt;ExpressJS&lt;/code&gt;. This will be kind an 'Hello world' api but, maybe we do something more (challenging is always a good deal). Ok, so prepare the coffe and let's code!&lt;/p&gt;

&lt;h2&gt;
  
  
  Prepare the enviroment
&lt;/h2&gt;

&lt;p&gt;To begin, you need to have the node installed (check the process &lt;a href="https://nodejs.org/en/download/"&gt;here&lt;/a&gt;, to install it on linux, see &lt;a href="https://nodejs.org/en/download/package-manager/"&gt;this section&lt;/a&gt;), it will install the npm too during the process, the npm is the &lt;code&gt;Node Package Manager&lt;/code&gt;, used to handle the node packages used on the project. &lt;/p&gt;

&lt;p&gt;Now that we have the enviroment, we need to setup the project. For that we will create a folder to keep it and we're gonna call it as 'HelloUniverse' &lt;em&gt;(The 'hello universe' is kind of my initiation rite, a step beyond the hello world. To start off on the right foot)&lt;/em&gt; and go into it. Now, let's start the project by running the command &lt;code&gt;npm init -y&lt;/code&gt; on the terminal. The &lt;code&gt;npm init&lt;/code&gt;command initializes the project, asking a few questions to fullfil the information about the project, when used with the &lt;code&gt;-y&lt;/code&gt; flag, it creates a project with the basic information. &lt;em&gt;Et voilà&lt;/em&gt;, now you can see a &lt;code&gt;package.json&lt;/code&gt; file like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"HelloUniverse"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"version"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"1.0.0"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"main"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"index.js"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"scripts"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"test"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"echo &lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s2"&gt;Error: no test specified&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s2"&gt; &amp;amp;&amp;amp; exit 1"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"keywords"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[],&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"author"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;""&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"license"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"ISC"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Yes, dev! Can you feel it? That feeling of "Fuck, is being born!!"?&lt;/p&gt;

&lt;h2&gt;
  
  
  Installing the packages
&lt;/h2&gt;

&lt;p&gt;Ok, now that we have the project we're going to install the packages needed. For the basic step is just the &lt;code&gt;Express&lt;/code&gt;, so we'll run the command &lt;code&gt;npm install express -s&lt;/code&gt;. After installing it, you can see that it has created the folder &lt;em&gt;node_modules/&lt;/em&gt;, on this folder the npm will store the packages installed and his dependencies, and the &lt;code&gt;package-lock.json&lt;/code&gt;, this file controls all the dependencies installed and his dependencies &lt;em&gt;(I install **A&lt;/em&gt;&lt;em&gt;, and it has the dependencies **B&lt;/em&gt;* and &lt;strong&gt;C&lt;/strong&gt;, this file controls this)*.&lt;br&gt;
During the development we're going to use the &lt;code&gt;nodemon&lt;/code&gt; package, for that we run the &lt;code&gt;npm install nodemon -D&lt;/code&gt;. The &lt;code&gt;-D&lt;/code&gt; or &lt;code&gt;--dev&lt;/code&gt; flag tell the npm that is a dependency used for developing, not needed on production.&lt;/p&gt;
&lt;h2&gt;
  
  
  Creating the API
&lt;/h2&gt;

&lt;p&gt;Ok, so, I'm gonna do this like I learned and feels cleaner. To this we're going to create a src folder, resulting on the following structure:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight plaintext"&gt;&lt;code&gt;-HelloUniverse/
\_node_modules/
  _src/
  _package.json
  _package-lock.json
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Ok, now we go to &lt;em&gt;src/&lt;/em&gt; and create the &lt;code&gt;app.js&lt;/code&gt; file and start it importing the express package:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;express&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Then, we create the instance:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Almost done, now we're going to set the endpoints, or the routes, of our api. For this, we'll set a constant named &lt;em&gt;routes&lt;/em&gt; that will handle them.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;routes&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Router&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;And now we create the basic route, the &lt;code&gt;'/'&lt;/code&gt;:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;routes&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="kd"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;request&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hello&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;So, every time it receives a request on &lt;code&gt;'/'&lt;/code&gt;, it answers with &lt;em&gt;'hello'&lt;/em&gt;. But our api wont hear it yet, we need 2 more steps for that:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;routes&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="c1"&gt;//So the api will use the routes we defined&lt;/span&gt;

&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;3333&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="c1"&gt;//Here we setted the port the api will listen.&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;On the end, our code will look like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;express&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;app&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;routes&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;express&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;Router&lt;/span&gt;&lt;span class="p"&gt;();&lt;/span&gt;

&lt;span class="nx"&gt;routes&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="kd"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;request&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hello&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;})&lt;/span&gt;

&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;routes&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;listen&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;3333&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Let's add a few tips to make it better:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;use&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;express&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;json&lt;/span&gt;&lt;span class="p"&gt;());&lt;/span&gt; &lt;span class="c1"&gt;//Add this before importing the routes (app.use(routes));&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;h2&gt;
  
  
  Starting the API
&lt;/h2&gt;

&lt;p&gt;All ready, let's run! We're gonna do some tricks to help us, part of that was installing the &lt;em&gt;nodemon&lt;/em&gt;. We're going to set npm commands. For this, we go to the package.json and add the following line on the &lt;code&gt;scripts&lt;/code&gt; part:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="w"&gt;    &lt;/span&gt;&lt;span class="nl"&gt;"start"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"nodemon src/app.js"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;This means that everytime we run the &lt;code&gt;npm start&lt;/code&gt; command, it will call the nodemon and run the src/app.js file. The nodemon will keep watching all files with the &lt;code&gt;.js,.mjs,.json&lt;/code&gt; extension. So, our &lt;code&gt;scripts&lt;/code&gt; section will be like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="nl"&gt;"scripts"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"start"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"nodemon src/app.js"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"test"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"echo &lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s2"&gt;Error: no test specified&lt;/span&gt;&lt;span class="se"&gt;\"&lt;/span&gt;&lt;span class="s2"&gt; &amp;amp;&amp;amp; exit 1"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;Now, go to &lt;a href="http://localhost:3333"&gt;&lt;code&gt;http://localhost:3333&lt;/code&gt;&lt;/a&gt; on your browser and see the magic!&lt;/p&gt;

&lt;h1&gt;
  
  
  Let's play!
&lt;/h1&gt;

&lt;p&gt;Ok, I won't explain here all the kind of parameters you can send on a request because I know it, but don't know how to explain it. So, here is a little guide:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;http://localhost.com/:id&lt;/code&gt; You can have &lt;em&gt;request params&lt;/em&gt;, that are params passed as part of the URL;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;http://localhost.com/?id=xxxx&lt;/code&gt; you can have &lt;em&gt;query params&lt;/em&gt;, that are params passed as queries on the URL;&lt;/li&gt;
&lt;li&gt;You can have &lt;em&gt;body params&lt;/em&gt;, that are informations sent trough the body of the request;&lt;/li&gt;
&lt;li&gt;Or &lt;em&gt;header params&lt;/em&gt;, passed trough the header of the params.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The first challenge we're going to do is build a &lt;code&gt;GET&lt;/code&gt; request with a &lt;code&gt;request param&lt;/code&gt; to show us an especific message. For this, we add the following route:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="nx"&gt;routes&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="kd"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;/user/:user&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;request&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt; 
    &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;request&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;params&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;user&lt;/span&gt;
    &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;send&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;hello &lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt; &lt;span class="o"&gt;+&lt;/span&gt; &lt;span class="nx"&gt;user&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;So, when you go to &lt;a href="http://localhost:3333/user/something"&gt;&lt;code&gt;http://localhost:3333/user/something&lt;/code&gt;&lt;/a&gt;, for example, it will return the &lt;code&gt;hello something&lt;/code&gt;.&lt;/p&gt;

</description>
      <category>todayilearned</category>
      <category>showdev</category>
      <category>api</category>
      <category>integrations</category>
    </item>
    <item>
      <title>Dev.to API 002 - Creating a Post</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Tue, 21 Apr 2020 23:43:11 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/dev-to-api-002-creating-a-post-3b8c</link>
      <guid>https://dev.to/rodcordeiro/dev-to-api-002-creating-a-post-3b8c</guid>
      <description>&lt;h2&gt;
&lt;span class="octicon octicon-link"&gt;&lt;/span&gt;002 - Creating a Post with the API&lt;/h2&gt;

&lt;p&gt;Ok, now we already know what to do to get the feed and the basic to work with the API, so, now we're going to post something using the API. To this, we must send a &lt;code&gt;POST&lt;/code&gt; request to &lt;code&gt;/articles&lt;/code&gt; with a the information about the post, see all the parameters possibilities at the &lt;a href="https://docs.dev.to/api/" rel="nofollow"&gt;api documentation&lt;/a&gt;.&lt;/p&gt;

&lt;h4&gt;
&lt;span class="octicon octicon-link"&gt;&lt;/span&gt;curl&lt;/h4&gt;

&lt;pre&gt;curl --request POST  
--url https://dev.to/api/articles  
--header &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;'&lt;/span&gt;api-key: YOUR_API_TOKEN&lt;span class="pl-pds"&gt;'&lt;/span&gt;&lt;/span&gt;  
--header &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;'&lt;/span&gt;content-type: application/json&lt;span class="pl-pds"&gt;'&lt;/span&gt;&lt;/span&gt;  
--data &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;'&lt;/span&gt;{ &lt;/span&gt;
&lt;span class="pl-s"&gt; "article": { &lt;/span&gt;
&lt;span class="pl-s"&gt;     "title": "Creating new post", &lt;/span&gt;
&lt;span class="pl-s"&gt;     "published": true, &lt;/span&gt;
&lt;span class="pl-s"&gt;     "body_markdown": "Hey there, here go some post.", &lt;/span&gt;
&lt;span class="pl-s"&gt;     "tags": [ &lt;/span&gt;
&lt;span class="pl-s"&gt;         "todayilearned", &lt;/span&gt;
&lt;span class="pl-s"&gt;         "showdev" &lt;/span&gt;
&lt;span class="pl-s"&gt;     ]&lt;/span&gt;
&lt;span class="pl-s"&gt; }&lt;/span&gt;
&lt;span class="pl-s"&gt;}&lt;span class="pl-pds"&gt;'&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;

&lt;h4&gt;
&lt;span class="octicon octicon-link"&gt;&lt;/span&gt;node&lt;/h4&gt;

&lt;pre&gt;&lt;span class="pl-k"&gt;var&lt;/span&gt; unirest &lt;span class="pl-k"&gt;=&lt;/span&gt; &lt;span class="pl-c1"&gt;require&lt;/span&gt;(&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;unirest&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;);

&lt;span class="pl-smi"&gt;unirest&lt;/span&gt;.&lt;span class="pl-en"&gt;post&lt;/span&gt;(&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;'&lt;/span&gt;https://dev.to/api/articles&lt;span class="pl-pds"&gt;'&lt;/span&gt;&lt;/span&gt;)
 .&lt;span class="pl-c1"&gt;type&lt;/span&gt;(&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;'&lt;/span&gt;json&lt;span class="pl-pds"&gt;'&lt;/span&gt;&lt;/span&gt;)
 .&lt;span class="pl-c1"&gt;headers&lt;/span&gt;({
   &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;'&lt;/span&gt;api-key&lt;span class="pl-pds"&gt;'&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-k"&gt;:&lt;/span&gt;&lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;'&lt;/span&gt;YOUR_API_TOKEN&lt;span class="pl-pds"&gt;'&lt;/span&gt;&lt;/span&gt;
 })
 .&lt;span class="pl-c1"&gt;send&lt;/span&gt;({
   &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;article&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-k"&gt;:&lt;/span&gt; {
     &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;title&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-k"&gt;:&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;Creating new post&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;,
     &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;published&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-k"&gt;:&lt;/span&gt; &lt;span class="pl-c1"&gt;true&lt;/span&gt;,
     &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;body_markdown&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-k"&gt;:&lt;/span&gt; &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;Hey there, here go some post.&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;,
     &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;tags&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;&lt;span class="pl-k"&gt;:&lt;/span&gt; [
       &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;todayilearned&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;,
       &lt;span class="pl-s"&gt;&lt;span class="pl-pds"&gt;"&lt;/span&gt;showdev&lt;span class="pl-pds"&gt;"&lt;/span&gt;&lt;/span&gt;
     ]
   }
 })
 .&lt;span class="pl-c1"&gt;then&lt;/span&gt;((&lt;span class="pl-smi"&gt;response&lt;/span&gt;)&lt;span class="pl-k"&gt;=&amp;gt;&lt;/span&gt;{
   &lt;span class="pl-en"&gt;console&lt;/span&gt;.&lt;span class="pl-c1"&gt;log&lt;/span&gt;(&lt;span class="pl-smi"&gt;response&lt;/span&gt;.&lt;span class="pl-c1"&gt;body&lt;/span&gt;)
 })&lt;/pre&gt;

&lt;p&gt;That's all folks!! You can see all the steps on my &lt;a href="https://rodcordeiro.github.io/TodayILearned/Dev.to_API"&gt;documentation&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>todayilearned</category>
      <category>showdev</category>
      <category>api</category>
      <category>integrations</category>
    </item>
    <item>
      <title>Dev.to API 001 - Starting with the API</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Tue, 21 Apr 2020 04:30:58 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/starting-with-the-api-001-26hd</link>
      <guid>https://dev.to/rodcordeiro/starting-with-the-api-001-26hd</guid>
      <description>&lt;p&gt;On this doc I'll write about my process of learning to use the api of the dev.to. To requests that needs an authorization, you can use the API Token or OAuth2 authentication. I'm going to use the API Token, so the first step is to acess your account settings and go to the account section (or &lt;a href="https://dev.to/settings/account"&gt;follow this link&lt;/a&gt;) and generate your API Key. Our &lt;em&gt;hello world&lt;/em&gt; will be a GET request that retrieves the posts of the feed, you can send some parameters, see all the possibilities at the &lt;a href="https://docs.dev.to/api/#operation/getArticles"&gt;api documentation&lt;/a&gt;.&lt;br&gt;
We are going to send a GET request to &lt;code&gt;https://dev.to/api/articles&lt;/code&gt;.&lt;/p&gt;
&lt;h4&gt;
  
  
  curl
&lt;/h4&gt;


&lt;div class="highlight"&gt;&lt;pre class="highlight shell"&gt;&lt;code&gt;curl https://dev.to/api/articles
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;h4&gt;
  
  
  node
&lt;/h4&gt;


&lt;div class="highlight"&gt;&lt;pre class="highlight javascript"&gt;&lt;code&gt;  &lt;span class="kd"&gt;var&lt;/span&gt; &lt;span class="nx"&gt;unirest&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nx"&gt;require&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;unirest&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;

  &lt;span class="nx"&gt;unirest&lt;/span&gt;
    &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="kd"&gt;get&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;https://dev.to/api/articles&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;then&lt;/span&gt;&lt;span class="p"&gt;((&lt;/span&gt;&lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
      &lt;span class="nx"&gt;console&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;log&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;response&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;body&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;
    &lt;span class="p"&gt;})&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;This will return a list of objects containing some information about the article and its author, see an example below:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight"&gt;&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"type_of"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"article"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;315312&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"title"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"I Built an App to Accompany Questlove’s DJ Set in 20 Minutes"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Twelve hours of live music, fifteen thousand words of commentary, one Glitch app"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"cover_image"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://res.cloudinary.com/practicaldev/image/fetch/s--cdWtimkP--/c_imagga_scale,f_auto,fl_progressive,h_420,q_auto,w_1000/https://dev-to-uploads.s3.amazonaws.com/i/ixvv8wylkr9xwp4b2jvw.png"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"readable_publish_date"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Apr 20"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"social_image"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://res.cloudinary.com/practicaldev/image/fetch/s--eouLbf3o--/c_imagga_scale,f_auto,fl_progressive,h_500,q_auto,w_1000/https://dev-to-uploads.s3.amazonaws.com/i/ixvv8wylkr9xwp4b2jvw.png"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"slug"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"i-built-an-app-to-accompany-questlove-s-dj-set-in-20-minutes-5ep4"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"path"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"/glitch/i-built-an-app-to-accompany-questlove-s-dj-set-in-20-minutes-5ep4"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"url"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://dev.to/glitch/i-built-an-app-to-accompany-questlove-s-dj-set-in-20-minutes-5ep4"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"canonical_url"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://glitch.com/glimmer/post/questlove-live-prince-music-notes-app"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"comments_count"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;0&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"positive_reactions_count"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="mi"&gt;36&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"collection_id"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"created_at"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2020-04-20T21:49:18Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"edited_at"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"crossposted_at"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"published_at"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2020-04-20T21:58:09Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"last_comment_at"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2020-04-20T21:58:09Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"published_timestamp"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"2020-04-20T21:58:09Z"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"tag_list"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="s2"&gt;"showdev"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="s2"&gt;"javascript"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="s2"&gt;"node"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"tags"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"showdev, javascript, node"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"user"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Anil Dash"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"username"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"anildash"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"twitter_username"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"anildash"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"github_username"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="kc"&gt;null&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"website_url"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://anildash.com/"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"profile_image"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://res.cloudinary.com/practicaldev/image/fetch/s--5QdTfjfY--/c_fill,f_auto,fl_progressive,h_640,q_auto,w_640/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/35740/7a2a5a03-9913-4a5d-a5d8-d89881c5de32.jpg"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"profile_image_90"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://res.cloudinary.com/practicaldev/image/fetch/s--_jstlNmz--/c_fill,f_auto,fl_progressive,h_90,q_auto,w_90/https://dev-to-uploads.s3.amazonaws.com/uploads/user/profile_image/35740/7a2a5a03-9913-4a5d-a5d8-d89881c5de32.jpg"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"organization"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Glitch"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"username"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"glitch"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"slug"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"glitch"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"profile_image"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://res.cloudinary.com/practicaldev/image/fetch/s--rVDCwPJW--/c_fill,f_auto,fl_progressive,h_640,q_auto,w_640/https://dev-to-uploads.s3.amazonaws.com/uploads/organization/profile_image/609/d36daa95-5d60-4559-a0cd-f234d10ef61d.png"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"profile_image_90"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"https://res.cloudinary.com/practicaldev/image/fetch/s--S4GfcNfo--/c_fill,f_auto,fl_progressive,h_90,q_auto,w_90/https://dev-to-uploads.s3.amazonaws.com/uploads/organization/profile_image/609/d36daa95-5d60-4559-a0cd-f234d10ef61d.png"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"flare_tag"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"showdev"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"bg_color_hex"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"#091b47"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
      &lt;/span&gt;&lt;span class="nl"&gt;"text_color_hex"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"#b2ffe1"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;



&lt;p&gt;You can see all the steps on my &lt;a href="https://rodcordeiro.github.io/TodayILearned/Dev.to_API"&gt;documentation&lt;/a&gt;&lt;/p&gt;

</description>
      <category>api</category>
      <category>todayilearned</category>
      <category>showdev</category>
    </item>
    <item>
      <title>Hello API!</title>
      <dc:creator>Rodrigo Cordeiro</dc:creator>
      <pubDate>Tue, 21 Apr 2020 03:30:29 +0000</pubDate>
      <link>https://dev.to/rodcordeiro/hello-api-7fe</link>
      <guid>https://dev.to/rodcordeiro/hello-api-7fe</guid>
      <description>&lt;p&gt;Hello Devs, This is my first post and I'm doing it trough the API.&lt;/p&gt;

</description>
      <category>api</category>
      <category>todayilearned</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
