> ## Documentation Index
> Fetch the complete documentation index at: https://www.ayrshare.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Guia de Início Rápido

> Vincule suas contas sociais e envie sua primeira publicação em poucos minutos.

Este guia é para configurar uma única empresa. Para assinaturas do Business Plan e Enterprise Plan com múltiplos usuários, é fornecido um guia de integração personalizado.

<div class="video-container">
  <iframe width="560" height="315" src="https://www.youtube.com/embed/HaWh_QOib_Y" title="Ayrshare's Social API Quick Start Guide" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscsope; picture-in-picture" />
</div>

## Conecte Suas Contas de Redes Sociais

Faça login ou cadastre-se em uma [conta Ayrshare](https://app.ayrshare.com/).
Na página Social Account, clique nas redes sociais que você quer conectar.
Por favor, conceda todas as permissões.

<p align="center">
  <img width="240" src="https://mintcdn.com/ayrshare-docs/dKBti0xVDJrOZ19f/images/fb-connect.webp?fit=max&auto=format&n=dKBti0xVDJrOZ19f&q=85&s=d256f4862cb21b388d388cc62aa94659" alt="Exemplo de vinculação do Facebook" data-path="images/fb-connect.webp" />
</p>

## Obtenha Sua API Key

Uma API Key é necessária para autorizar o acesso aos endpoints da API.
Essa chave é usada no header das suas requisições e deve ser precedida pela palavra-chave `Bearer`.

Sua API Key está localizada no [Painel Ayrshare](https://app.ayrshare.com/), na página **API Key**. Se necessário, mude para seu 'Primary Profile' pela página **User Profiles**.
A partir daí, você pode encontrar a página **API Key** no painel lateral esquerdo.

<img src="https://mintcdn.com/ayrshare-docs/Nmrhj2Gh7WSf62Bh/images/api-key.webp?fit=max&auto=format&n=Nmrhj2Gh7WSf62Bh&q=85&s=29ebd3dd2f23c9f9f1c52a974ebd6240" alt="API Key" width="4000" height="1126" data-path="images/api-key.webp" />

Toda chamada de API deve incluir a API Key no Header usando um Token `Bearer`. Inclua também o `Content-Type` de `application/json`.

```json Header theme={"system"}
"Authorization": "Bearer API_KEY",
"Content-Type": "application/json"
```

Consulte [Authorization](/apis/overview#authorization) para mais informações.

## Envie Sua Primeira Publicação via API

### Publicando o Post

Abaixo estão exemplos de código mostrando como fazer uma publicação usando nossa API em diferentes linguagens de programação.
Para uma integração ainda mais fácil, você pode usar um de nossos [pacotes SDK](/packages-guides/overview) pré-construídos.

Para fazer uma publicação, você precisará de:

<ul className="custom-bullets">
  <li>Sua [API Key](/apis/overview#authorization) para autenticação.</li>
  <li>O conteúdo de texto da sua publicação.</li>
  <li>As plataformas de redes sociais em que você quer publicar (inclua apenas as plataformas que você vinculou).</li>
  <li>Opcional: URLs de quaisquer imagens ou vídeos que você queira incluir.</li>
</ul>

Todos os exemplos usam o endpoint [/post](/apis/post/post). Vamos ver um código de exemplo:

<Info>
  **Publicando no X/Twitter?** O X exige suas próprias credenciais de API. Adicione 2 headers BYO (`X-Twitter-OAuth1-Api-Key` e `X-Twitter-OAuth1-Api-Secret`) à sua requisição. Esta é uma **configuração única por conta Ayrshare**, e o mesmo par de chaves funciona para todo sub-profile / usuário final. Veja o [guia de configuração](/dashboard/connect-social-accounts/x-twitter-byo-keys) para mais detalhes.
</Info>

<CodeGroup>
  ```bash cURL theme={"system"}
  curl \
  -H "Authorization: Bearer API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "post": "Today is a great day!",
    "platforms": ["facebook", "instagram", "linkedin"],
    "mediaUrls": ["https://img.ayrshare.com/012/gb.jpg"]
  }' \
  -X POST https://api.ayrshare.com/api/post
  ```

  ```javascript JavaScript theme={"system"}
  const API_KEY = "API_KEY";

  fetch("https://api.ayrshare.com/api/post", {
        method: "POST",
        headers: {
          "Content-Type": "application/json",
          "Authorization": `Bearer ${API_KEY}`
        },
        body: JSON.stringify({
          post: "Today is a great day!", // required
          platforms: ["bluesky", "facebook", "instagram", "linkedin"], // required
          mediaUrls: ["https://img.ayrshare.com/012/gb.jpg"] //optional
        }),
      })
        .then((res) => res.json())
        .then((json) => console.log(json))
        .catch(console.error);
  ```

  ```python Python theme={"system"}
  import requests

  payload = {'post': 'Today is a great day!',
          'platforms': ['bluesky', 'facebook', 'instagram', 'linkedin'],
          'mediaUrls': ['https://img.ayrshare.com/012/gb.jpg']}
  headers = {'Content-Type': 'application/json',
          'Authorization': 'Bearer API_KEY'}

  r = requests.post('https://api.ayrshare.com/api/post',
      json=payload,
      headers=headers)

  print(r.json())
  ```

  ```php PHP theme={"system"}
  <?php

  $curl = curl_init();
  $data = [
      "post" => "Today is a great day!",
      "platforms" => ["bluesky", "facebook", "instagram", "linkedin", "pinterest"],
      "mediaUrls" => ["https://img.ayrshare.com/012/gb.jpg"]
  ];

  curl_setopt_array($curl, [
      CURLOPT_URL => 'https://api.ayrshare.com/api/post',
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_POST => true,
      CURLOPT_POSTFIELDS => json_encode($data),
      CURLOPT_HTTPHEADER => [
          'Authorization: Bearer API_KEY', // Replace 'API_KEY' with your actual API key
          'Content-Type: application/json'
      ],
  ]);

  $response = curl_exec($curl);
  curl_close($curl);
  echo $response;
  ```

  ```go Go theme={"system"}
  package main

  import (
  	"bytes"
  	"encoding/json"
  	"log"
  	"net/http"
  )

  func main() {
  	message := map[string]interface{}{
  		"post":      "Today is a great day!",
  		"platforms": []string{"bluesky", "facebook", "instagram", "linkedin"},
  		"mediaUrls": []string{"https://img.ayrshare.com/012/gb.jpg"}
  	}

  	bytesRepresentation, err := json.Marshal(message)
  	if err != nil {
  		log.Fatalln(err)
  	}

  	req, _ := http.NewRequest("POST", "https://api.ayrshare.com/api/post",
  		bytes.NewBuffer(bytesRepresentation))

  	req.Header.Add("Content-Type", "application/json; charset=UTF-8")
  	req.Header.Add("Authorization", "Bearer API_KEY")

  	res, err := http.DefaultClient.Do(req)
  	if err != nil {
  		log.Fatal("Error:", err)
  	}

  	res.Body.Close()
  }
  ```

  ```csharp C# theme={"system"}
  using System;
  using System.Net.Http;
  using System.Text;
  using System.Threading.Tasks;

  namespace PostPOSTRequest_csharp
  {
    class Post
    {
      private static readonly HttpClient client = new HttpClient();

          static async Task Main(string[] args)
          {
              string API_KEY = "API_KEY";
              string url = "https://api.ayrshare.com/api/post";

              // Set up request headers
              client.DefaultRequestHeaders.Add("Authorization", "Bearer " + API_KEY);

              // Prepare JSON content
              string json = "{\"post\" : \"Today is a great day!\","
                  + "\"platforms\" : [ \"bluesky\", \"facebook\", \"instagram\", \"linkedin\" ],"
                  + "\"mediaUrls\" : [ \"https://img.ayrshare.com/012/gb.jpg\" ]}";
              var content = new StringContent(json, Encoding.UTF8, "application/json");

              try
              {
                  // Send POST request
                  HttpResponseMessage response = await client.PostAsync(url, content);
                  response.EnsureSuccessStatusCode();

                  // Read response
                  string responseBody = await response.Content.ReadAsStringAsync();
                  Console.WriteLine(responseBody);
              }
              catch (HttpRequestException e)
              {
                  Console.WriteLine($"Error: {e.Message}");
              }
          }
      }
  }
  ```

  ```ruby Ruby theme={"system"}
  require 'httparty'    # gem install httparty

  res = HTTParty.post("https://api.ayrshare.com/api/post",
      headers: {Authorization: "Bearer API_KEY"},
      body: {
          post: "Today is a great day!",
          platforms: ['bluesky', 'facebook', 'instagram', 'linkedin'],
          mediaUrls: ["https://img.ayrshare.com/012/gb.jpg"]
      }).body

  puts res
  ```
</CodeGroup>

Parabéns! Você acabou de enviar sua primeira publicação.

### Resposta do Post

Você receberá uma resposta com um `status` de "success" quando nossa API processar sua publicação com sucesso. A resposta inclui:

<ul className="custom-bullets">
  <li>`status`: Status geral da chamada de API ("success" ou "error")</li>
  <li>`errors`: Array de quaisquer erros encontrados (vazio se bem-sucedido)</li>
  <li>`postIds`: Array de objetos contendo detalhes específicos de cada plataforma:</li>

  <ul className="custom-bullets">
    <li>Nome da plataforma</li>
    <li>ID da publicação nessa plataforma</li>
    <li>URL para visualizar a publicação</li>
    <li>Informações adicionais específicas da plataforma</li>
  </ul>
</ul>

Cada plataforma no array `postIds` terá seu próprio status, permitindo verificar quais plataformas receberam sua publicação com sucesso.

Verifique suas páginas de redes sociais para garantir que a publicação foi processada com sucesso e está no ar. Observe que algumas plataformas podem ter um pequeno atraso antes que as publicações apareçam publicamente.

Aqui está um exemplo de resposta:

```json Post Response theme={"system"}
{
  "status": "success",
  "errors": [],
  "postIds": [
    {
      "status": "success",
      "id": "738681876342836_1530521371228093",
      "postUrl": "https://www.facebook.com/738681876342836/posts/1530521371228093",
      "platform": "facebook"
    },
    {
      "status": "success",
      "id": "18008340650526653",
      "postUrl": "https://www.instagram.com/p/DGf4hgZObR0/",
      "usedQuota": 1,
      "platform": "instagram"
    },
    {
      "status": "success",
      "id": "urn:li:share:7300150903578275840",
      "postUrl": "https://www.linkedin.com/feed/update/urn:li:share:7300150903578275840",
      "owner": "urn:li:organization:66755239",
      "platform": "linkedin"
    }
  ],
  "id": "K0DmYRgugS5P694it",
  "refId": "d93ca2784c9bf7bf83e0bf081d16c91598",
  "post": "Today is a great day!"
}
```

Veja mais exemplos de código chamando a API de redes sociais em Node.js, Python, PHP, Golang, C# e Ruby, além de outras ótimas funcionalidades:

<Card title="Post" icon="code" href="/apis/post/post" horizontal />

### Aprofundando um Pouco Mais

Vamos detalhar o processo do que aconteceu quando fizemos essa chamada de API.

<Steps>
  <Step title="Configurar o Header">
    Definimos o token bearer de Authorization do header (API Key) e o content type
    json.
  </Step>

  <Step title="Criar um Objeto de Corpo">
    Em seguida, criamos um objeto de corpo:

    <ul className="custom-bullets">
      <li>Publicação contendo o texto "Today is a great day!".</li>

      <li>
        Plataformas de redes sociais Facebook, Instagram e LinkedIn.
        Você só deve incluir as plataformas que vinculou na Social Linkage
        Page.
      </li>

      <li>Adicionamos uma imagem em mediaUrls.</li>
    </ul>
  </Step>

  <Step title="Chamar o Endpoint /post">
    Enviamos tudo como uma requisição HTTP POST para o endpoint /post.
  </Step>
</Steps>

## Antes de Você Ir, Algumas Boas Práticas

### Leia a Documentação

Mantemos uma documentação extensa e atualizada. Já que você está aqui, tire um tempo para conferir as seções da documentação na navegação à esquerda.

### Códigos de Erro São Importantes

Você precisa lidar com eles para que seus usuários tenham uma ótima experiência.

<Card title="Erros" icon="link" href="/errors/overview" horizontal />

### Mantenha Sua API Key Segura

Levamos segurança muito a sério, e você também deve. Você tem controle total sobre a conexão entre a Ayrshare e suas contas de redes sociais. Uma vez que as contas estão conectadas, a API Key da Ayrshare se torna a forma de você se autenticar. Por favor, mantenha essa chave secreta e segura.

### Publique Publicações de Teste

Você pode publicar publicações de teste com uma citação, imagem ou vídeo aleatório usando os parâmetros `randomPost`, `randomMediaUrl` e `isLandscapeVideo` ou `isPortraitVideo` no [endpoint /post](/apis/post/post). Se você usar o `randomPost`, o parâmetro `post` não é obrigatório.

<div class="video-container">
  <iframe width="560" height="315" src="https://www.youtube.com/embed/hMI0eK-5qBk?si=y5dkygosZ1B2DtlV" title="Post Random Content" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" />
</div>

<Warning>
  Essas publicações ficam ao vivo nas suas páginas de redes sociais, então, se for apropriado, exclua-as após os testes.
</Warning>

#### Citação Aleatória

Envie uma citação aleatória para testar a publicação adicionando `randomPost: true`.

Usado com o endpoint [/post](/apis/post/post).

```json theme={"system"}
"randomPost": true
```

#### Imagem Aleatória

Envie uma imagem aleatória adicionando `randomMediaUrl: true`.

Usado com o endpoint [/post](/apis/post/post).

```json theme={"system"}
"randomMediaUrl": true
```

#### Vídeo Aleatório

Envie um vídeo em paisagem aleatório adicionando `isVideo: true` e `isLandscapeVideo: true`.
O vídeo terá o tamanho padrão de paisagem.

Usado com o endpoint [/post](/apis/post/post).

```json theme={"system"}
"randomMediaUrl": true,
"isLandscapeVideo": true
```

Envie um vídeo em retrato aleatório, necessário para TikTok ou Reels do Facebook/Instagram, adicionando `isVideo: true` e `isPortraitVideo: true`.

Usado com o endpoint [/post](/apis/post/post).

```json theme={"system"}
"randomMediaUrl": true,
"isPortraitVideo": true
```

#### Comentário Aleatório

Envie um comentário aleatório para testar a publicação de um comentário adicionando `randomComment: true`.

Usado com o endpoint [/comment](/apis/comments/post-comment).

```json theme={"system"}
"randomComment": true
```

#### Exemplo de Chamada cURL

Envie uma citação aleatória e um vídeo em retrato.

```bash theme={"system"}
curl \
-H "Authorization: Bearer API_KEY" \
-H "Content-Type: application/json" \
-X POST \
-d '{
    "randomPost": true,
    "platforms": ["facebook", "instagram", "linkedin"],
    "randomMediaUrl": true,
    "isPortraitVideo": true
}' \
https://api.ayrshare.com/api/post
```

### **Use o Postman para Testar Suas Chamadas de API**

[Postman](https://www.postman.com/) é uma ferramenta incrível para testar chamadas de API. Você pode até gerar código em mais de uma dezena de linguagens.

### Código Demo

Se você procura um projeto de demonstração em React e NodeJS, veja este repositório no GitHub:

<Card title="Aplicativo Demo de Publicação Social no Github" icon="github" href="https://github.com/ayrshare/social-api-demo" horizontal />

### **Solução de Problemas Comuns**

Às vezes as coisas não vão bem, então aqui está uma pequena ajuda em nossa central de ajuda.

<Card title="Solução de Problemas" icon="link" href="/help-center/overview" horizontal />

### **Fale Conosco para Ajuda**

Estamos aqui para ajudar, então use o chat no canto inferior direito ou [nos envie um e-mail](mailto:support@ayrshare.com).
