> ## 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.

# Sponsoriser une publication

> Sponsorisez une publication en la soumettant à la plateforme publicitaire de Facebook

export const PlansAvailable = ({plans = [], maxPackRequired}) => {
  let displayPlans = plans;
  if (plans && plans.length === 1) {
    const lowerCasePlan = plans[0].toLowerCase();
    if (lowerCasePlan === "business") {
      displayPlans = ["Launch", "Business", "Enterprise"];
    } else if (lowerCasePlan === "premium") {
      displayPlans = ["Premium", "Launch", "Business", "Enterprise"];
    }
  }
  return <Note>
Available on {displayPlans.length === 1 ? "the " : ""}
{displayPlans.join(", ").replace(/\b\w/g, l => l.toUpperCase())}{" "}
{displayPlans.length > 1 ? "plans" : "plan"}.

{maxPackRequired && <span onClick={() => window.open('https://www.ayrshare.com/docs/additional/maxpack', '_self')} className="flex items-center mt-2 cursor-pointer">
 <span className="px-1.5 py-0.5 rounded text-sm" style={{
    backgroundColor: '#C264B6',
    color: 'white',
    fontSize: '12px'
  }}>
   Max Pack required
 </span>
</span>}
</Note>;
};

export const HeaderAPI = ({noProfileKey, profileKeyRequired}) => <>
    <ParamField header="Authorization" type="string" required>
      <a href="/apis/overview#authorization">API Key</a> of the Primary Profile.
      <br />
      <br />
      Format: <code>Authorization: Bearer API_KEY</code>
    </ParamField>
    {!noProfileKey && (profileKeyRequired ? <ParamField header="Profile-Key" type="string" required>
          <a href="/apis/overview#profile-key-format">Profile Key</a> of a User Profile.
          <br />
          <br />
          Format: <code>Profile-Key: PROFILE_KEY</code>
        </ParamField> : <ParamField header="Profile-Key" type="string">
          <a href="/apis/overview#profile-key-format">Profile Key</a> of a User Profile.
          <br />
          <br />
          Format: <code>Profile-Key: PROFILE_KEY</code>
        </ParamField>)}
  </>;

<PlansAvailable plans={["premium"]} maxPackRequired={false} />

Sponsorisez une publication Facebook existante pour créer une annonce.
Cet endpoint vous permet de convertir vos publications organiques en annonces payantes avec des paramètres de ciblage, de budget et de planification personnalisés.

<ul className="custom-bullets">
  <li>Les montants du budget et de l'enchère doivent être spécifiés en USD avec jusqu'à deux décimales.</li>
  <li>L'annonce doit être diffusée pendant au moins 30 heures pour respecter les exigences de Facebook.</li>

  <li>
    Vous pouvez utiliser l'[endpoint interests](/apis/ads/facebook/get-ad-interests) pour trouver les ID de centres d'intérêt
    pour le ciblage.
  </li>

  <li>Facebook peut prendre jusqu'à 24 heures pour examiner et approuver les publications sponsorisées.</li>

  <li>
    Si vous utilisez `fbPostId` directement (au lieu de `postId` Ayrshare), assurez-vous qu'il s'agit d'un ID
    de publication Facebook valide.
  </li>
</ul>

### Objectifs publicitaires

Chaque annonce doit avoir un objectif. L'objectif détermine la manière dont l'annonce sera optimisée pour l'affichage.

<ul className="custom-bullets">
  <li>
    `engagement` : Cet objectif vise à augmenter l'engagement tout en garantissant que l'annonce atteigne le
    nombre maximum d'utilisateurs uniques. Il équilibre la visibilité avec l'engagement, en montrant l'annonce à
    autant de personnes différentes que possible susceptibles d'interagir avec elle.
  </li>

  <li>
    `interactions` : Conçu pour stimuler les interactions, telles que les likes, les commentaires et les partages, sur l'annonce.
    Facebook priorise l'affichage de l'annonce aux utilisateurs les plus susceptibles d'interagir avec elle.
  </li>

  <li>
    `awareness_views` : Se concentre sur l'augmentation de la notoriété de la marque en maximisant le nombre de fois que
    l'annonce est affichée. Il priorise l'affichage de l'annonce autant de fois que possible dans le cadre du budget,
    quelle que soit la portée unique.
  </li>

  <li>
    `awareness_audience` : Vise à améliorer la notoriété de la marque en maximisant le nombre de personnes uniques
    qui voient l'annonce. Il garantit que l'annonce atteint autant d'utilisateurs différents que possible et maximise
    la taille de l'audience unique plutôt que de la montrer plusieurs fois à la même audience.
  </li>
</ul>

En savoir plus sur l'intégration de la Facebook Marketing API avec Ayrshare dans notre [Guide d'intégration de la Facebook Marketing API](https://www.ayrshare.com/blog/facebook-ads-api-boosting-with-the-marketing-api/).

## Paramètres d'en-tête

<HeaderAPI />

## Paramètres du corps

<ParamField body="accountId" type="string" required>
  L'ID du compte publicitaire Facebook sur lequel sponsoriser la publication. L'ID du compte peut être récupéré depuis
  l'[endpoint des comptes publicitaires](/apis/ads/facebook/get-ad-accounts).
</ParamField>

<ParamField body="adName" type="string" required>
  Nom de votre annonce (apparaît dans le Facebook Ad Manager) au format `{adName} - {postId or fbPostId} - {current date}`.
</ParamField>

<ParamField body="bidAmount" type="number" required>
  Montant maximum de l'enchère en USD. Le montant minimum de l'enchère est de 1,00 \$.
</ParamField>

<ParamField body="budget" type="number" required>
  Budget quotidien en USD. Le budget minimum est de 1,00 \$.
</ParamField>

<ParamField body="fbPostId" type="string" required>
  L'[ID de publication sociale Facebook](/apis/overview#social-post-id) de la publication à sponsoriser, qui vous permet
  de créer une annonce à partir d'une publication créée directement sur Facebook. Il s'agit de l'ID de la [publication sur
  Facebook](/apis/history/history-platform), pas d'Ayrshare. Requis si `postId` n'est pas défini.
</ParamField>

<ParamField body="goal" type="string" required default="engagement">
  L'objectif de l'annonce. Valeurs : `engagement`, `interactions`, `awareness_views` et
  `awareness_audience`. Consultez les [détails des objectifs publicitaires](/apis/ads/facebook/boost-post#ad-goals) ci-dessus pour
  plus d'informations.
</ParamField>

<ParamField body="locations" type="object" required default={{ countries: ["US"] }}>
  Localisations cibles de l'annonce avec un objet de tableaux : `countries`, `regions`, `cities`.

  <Expandable title="child attributes">
    <ParamField body="countries" type="array">
      Liste des codes de pays.

      ```json theme={"system"}
      {
        "countries": ["US", "CA"]
      }
      ```
    </ParamField>

    <ParamField body="regions" type="array">
      Les régions nécessitent la valeur `key` de la région Facebook. Consultez l'[endpoint regions](/apis/ads/facebook/get-ad-regions) pour plus d'informations.

      ```json theme={"system"}
      {
        "regions": [{ "key": "3886" }]
      }
      ```
    </ParamField>

    <ParamField body="cities" type="array">
      Les villes nécessitent : `key` (de Facebook), `radius` et `distance_unit`.
      `radius` est la distance autour de la ville : 10 à 50 miles ou 17 à 80 kilomètres.
      `distance_unit` est `mile` ou `kilometer`.
      Consultez l'[endpoint cities](/apis/ads/facebook/get-ad-cities) pour plus d'informations.

      ```json theme={"system"}
      {
        "cities": [
          { "key": "2420605", "radius": 25, "distance_unit": "mile" }
        ]
      }
      ```
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="postId" type="string" required>
  L'[ID de publication Ayrshare](/apis/overview#ayrshare-post-id) de la publication à sponsoriser. Requis si
  `fbPostId` n'est pas défini.
</ParamField>

<ParamField body="status" type="string" default="active" required>
  Le statut de l'annonce. Valeurs : `active` et `paused`.

  Vous pouvez modifier ultérieurement le statut de l'annonce en utilisant l'[endpoint update ad](/apis/ads/facebook/put-ad-update).
</ParamField>

<ParamField body="adSetBudgetSharingEnabled" type="boolean" default={false}>
  Contrôle le partage du budget de l'ad set au niveau de la campagne par Meta.
  Meta exige désormais ce champ sur chaque campagne créée sans budget au niveau de la campagne, donc Ayrshare l'envoie toujours — la valeur par défaut est `false` pour la rétrocompatibilité.

  Définissez sur `true` pour permettre à Meta de partager jusqu'à \~20 % du budget d'un ad set avec d'autres ad sets de la même campagne afin d'optimiser les performances globales. Consultez la [référence du groupe de campagnes publicitaires](https://developers.facebook.com/docs/marketing-api/reference/ad-campaign-group/) de Meta pour plus de détails.
</ParamField>

<ParamField body="tracking" type="object">
  Suivez l'annonce à l'aide d'un Facebook Pixel.

  <Expandable title="child attributes">
    <ParamField body="pixelId" type="number" required>
      L'ID du Facebook Pixel pour suivre l'annonce.

      ```json theme={"system"}
      {
       "pixelId": 1234567890
      }
      ```
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="urlTags" type="array">
  Ajoutez des balises UTM à l'URL de l'annonce.

  ```json theme={"system"}
  {
    "urlTags": ["utm_source=ayrshare", "utm_medium=social", "utm_campaign=ayrshare-social"]
  }
  ```

  Par exemple, si l'URL de destination est `https://www.mysite.com/my-post` et que les balises d'URL ajoutées sont :

  `utm_source=ayrshare`, `utm_medium=social` et `utm_campaign=ayrshare-social`.

  L'URL de l'annonce sera :
  `https://www.mysite.com/my-post?utm_source=ayrshare&utm_medium=social&utm_campaign=ayrshare-social`.
</ParamField>

<ParamField body="specialAdCategories" type="array">
  Meta exige que les annonceurs des [catégories publicitaires spéciales](https://www.facebook.com/business/help/298000447747885?helpref=faq_content) auto-identifient la catégorie de leur campagne.

  Si votre entreprise appartient à l'une de ces catégories, vous devez sélectionner la catégorie appropriée lors de la sponsorisation de votre publication.

  Les valeurs suivantes sont prises en charge :

  <ul className="custom-bullets">
    <li>
      `housing` : Annonces qui promeuvent ou renvoient directement à une opportunité de logement ou à un service connexe,
      y compris, mais sans s'y limiter, les annonces de vente ou de location d'une maison ou d'un appartement, l'assurance habitation,
      l'assurance hypothécaire, les prêts hypothécaires, les réparations domiciliaires et les services d'évaluation ou de prêt sur valeur nette
      du domicile.
    </li>

    <li>
      `financial_product_services` : Annonces qui promeuvent ou renvoient directement à une offre de produits et
      services financiers, y compris le crédit.
    </li>

    <li>
      `employment` : Annonces qui promeuvent ou renvoient directement à une opportunité d'emploi, y compris, mais sans
      s'y limiter, les emplois à temps partiel ou à temps plein, les stages ou les programmes de certification professionnelle. Les
      annonces connexes appartenant à cette catégorie incluent des promotions pour des tableaux d'emploi ou des salons de l'emploi, des services
      d'agrégation ou des annonces détaillant les avantages qu'une entreprise peut offrir, indépendamment d'une offre d'emploi spécifique.
    </li>

    <li>
      `issues_elections_politics` : Annonces réalisées par, au nom de, ou concernant un candidat à une fonction publique,
      une personnalité politique, un parti politique ou plaidant pour l'issue d'une élection à une fonction publique.
      Cela inclut également les annonces concernant toute élection, référendum ou initiative de vote, y compris les
      campagnes électorales « Allez voter ». Les annonces réglementées comme publicité politique ou concernant des questions
      sociales dans tout lieu où l'annonce est diffusée. Si vous sélectionnez questions, élections ou politique,
      vous devez sélectionner le pays dans lequel vous souhaitez diffuser ces annonces. Vous devez être
      autorisé à diffuser des annonces concernant des questions sociales, des élections ou la politique dans le pays spécifié.
    </li>
  </ul>

  <Warning>
    Meta exige des annonceurs qu'ils auto-identifient la catégorie de leur campagne.
    Meta utilise des évaluateurs humains et l'apprentissage automatique pour identifier ce type d'annonces.
    Si vous nous envoyez un `specialAdCategory` incorrect, vos annonces risquent d'être mises en pause jusqu'à ce que la campagne soit ajustée.
  </Warning>
</ParamField>

<ParamField body="endDate" type="string">
  Date et heure de fin au format ISO 8601 (doit être au moins 30 heures après le début), par exemple `2025-03-01T00:00:00Z`.

  Si non défini, l'annonce sera diffusée indéfiniment et aura une date de fin `ongoing`.
</ParamField>

<ParamField body="excludedLocations" type="object">
  Excluez des localisations à l'aide d'un objet avec des tableaux de `countries`, `regions` et `cities`.

  <Expandable title="child attributes">
    <ParamField body="countries" type="array">
      Liste des codes de pays à exclure.

      ```json theme={"system"}
      {
        "countries": ["US", "CA"]
      }
      ```
    </ParamField>

    <ParamField body="regions" type="array">
      Les régions nécessitent la valeur `key` de la région Facebook. Consultez l'[endpoint regions](/apis/ads/facebook/get-ad-regions) pour plus d'informations.

      ```json theme={"system"}
      {
        "regions": [{ "key": "3886" }]
      }
      ```
    </ParamField>

    <ParamField body="cities" type="array">
      Les villes nécessitent : `key` (de Facebook), `radius` et `distance_unit`.
      `radius` est la distance autour de la ville : 10 à 50 miles ou 17 à 80 kilomètres.
      `distance_unit` est `mile` ou `kilometer`.
      Consultez l'[endpoint cities](/apis/ads/facebook/get-ad-cities) pour plus d'informations.

      ```json theme={"system"}
      {
        "cities": [
          { "key": "2420605", "radius": 25, "distance_unit": "mile" }
        ]
      }
      ```
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="gender" type="string" default="all">
  Le genre de l'audience. Valeurs : `all`, `male`, `female`.
</ParamField>

<ParamField body="interests" type="array">
  Les centres d'intérêt cibles de l'annonce sous forme d'un tableau d'[ID de centres d'intérêt
  Facebook](/apis/ads/facebook/get-ad-interests).
</ParamField>

<ParamField body="maxAge" type="number" default={65}>
  Âge maximum pour le ciblage de l'annonce (par défaut : 65).
</ParamField>

<ParamField body="minAge" type="number" default={18}>
  Âge minimum pour le ciblage de l'annonce (par défaut : 18).
</ParamField>

<ParamField body="startDate" type="string">
  Date et heure de début au format ISO 8601, par exemple `2025-03-01T00:00:00Z`.

  Si non défini, l'annonce démarrera immédiatement.
</ParamField>

<ParamField body="dsaBeneficiary" type="string">
  Le bénéficiaire de l'annonce pour la conformité au Digital Services Act (DSA) pour les pays de l'UE. Doit être défini
  conjointement avec `dsaPayor` si l'un ou l'autre est fourni. Veuillez consulter notre [guide
  DSA](/apis/ads/facebook/get-dsa-recommendations) pour plus d'informations.
</ParamField>

<ParamField body="dsaPayor" type="string">
  Le payeur de l'annonce pour la conformité au Digital Services Act (DSA) pour les pays de l'UE. Doit être défini
  conjointement avec `dsaBeneficiary` si l'un ou l'autre est fourni.
</ParamField>

<RequestExample>
  ```bash cURL theme={"system"}
  curl -X POST https://api.ayrshare.com/api/ads/facebook/boost \
    -H "Authorization: Bearer API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "postId": "1234567890",
      "accountId": "1234567890",
      "adName": "My Ad",
      "status": "active",
      "goal": "engagement",
      "minAge": 18,
      "maxAge": 65,
      "locations": { "countries": ["US"] },
      "budget": 100,
      "bidAmount": 1,
      "startDate": "2025-03-01T00:00:00Z",
      "endDate": "2025-03-07T23:59:59Z",
      "interests": [1234567890, 1234567891]
    }'
  ```

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

  fetch("https://api.ayrshare.com/api/ads/facebook/boost", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      Authorization: `Bearer ${API_KEY}`
    },
    body: JSON.stringify({
      postId: "1234567890",
      accountId: "1234567890",
      adName: "My Ad",
      status: "active",
      goal: "engagement",
      minAge: 18,
      maxAge: 65,
      locations: { countries: ["US"] },
      budget: 100,
      bidAmount: 1,
      startDate: "2025-03-01T00:00:00Z",
      endDate: "2025-03-07T23:59:59Z",
      interests: [1234567890, 1234567891]
    })
  })
    .then((res) => res.json())
    .then((json) => console.log(json))
    .catch(console.error);
  ```

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

  API_KEY = "API_KEY"

  url = "https://api.ayrshare.com/api/ads/facebook/boost"
  payload = {
      "postId": "1234567890",
      "accountId": "1234567890",
      "adName": "My Ad",
      "status": "active",
      "goal": "engagement",
      "minAge": 18,
      "maxAge": 65,
      "locations": {"countries": ["US"]},
      "budget": 100,
      "bidAmount": 1,
      "startDate": "2025-03-01T00:00:00Z",
      "endDate": "2025-03-07T23:59:59Z",
      "interests": [1234567890, 1234567891]
  }

  response = requests.post(url, headers={"Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json"}, json=payload)

  print(response.json())
  ```

  ```php PHP theme={"system"}
  <?php
  $API_KEY = "API_KEY";

  $payload = [
      "postId" => "1234567890",
      "accountId" => "1234567890",
      "adName" => "My Ad",
      "status" => "active",
      "goal" => "engagement",
      "minAge" => 18,
      "maxAge" => 65,
      "locations" => ["countries" => ["US"]],
      "budget" => 100,
      "bidAmount" => 1,
      "startDate" => "2025-03-01T00:00:00Z",
      "endDate" => "2025-03-07T23:59:59Z",
      "interests" => [1234567890, 1234567891]
  ];

  $ch = curl_init("https://api.ayrshare.com/api/ads/facebook/boost");
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  curl_setopt($ch, CURLOPT_POST, true);
  curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
  curl_setopt($ch, CURLOPT_HTTPHEADER, [
      "Content-Type: application/json",
      "Authorization: Bearer " . $API_KEY
  ]);

  $response = curl_exec($ch);
  $result = json_decode($response, true);

  print_r($result);
  curl_close($ch);
  ```

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

  class Program
  {
      static async Task Main()
      {
          string API_KEY = "API_KEY";

          var payload = new
          {
              postId = "1234567890",
              accountId = "1234567890",
              adName = "My Ad",
              status = "active",
              goal = "engagement",
              minAge = 18,
              maxAge = 65,
              locations = new { countries = new[] { "US" } },
              budget = 100,
              bidAmount = 1,
              startDate = "2025-03-01T00:00:00Z",
              endDate = "2025-03-07T23:59:59Z",
              interests = new[] { 1234567890, 1234567891 }
          };

          using var client = new HttpClient();
          client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", API_KEY);

          var content = new StringContent(
              JsonSerializer.Serialize(payload),
              Encoding.UTF8,
              "application/json"
          );

          var response = await client.PostAsync("https://api.ayrshare.com/api/ads/facebook/boost", content);
          var responseBody = await response.Content.ReadAsStringAsync();

          Console.WriteLine(responseBody);
      }
  }
  ```

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

  import (
  	"bytes"
  	"encoding/json"
  	"fmt"
  	"io/ioutil"
  	"net/http"
  )

  func main() {
  	apiKey := "API_KEY"

  	payload := map[string]interface{}{
  		"postId":    "1234567890",
  		"accountId": "1234567890",
  		"adName":    "My Ad",
  		"status":    "active",
  		"goal":      "engagement",
  		"minAge":    18,
  		"maxAge":    65,
  		"locations":  map[string]interface{}{"countries": []string{"US"}},
  		"budget":    100,
  		"bidAmount": 1,
  		"startDate": "2025-03-01T00:00:00Z",
  		"endDate":   "2025-03-07T23:59:59Z",
  		"interests": []int{1234567890, 1234567891},
  	}

  	jsonData, err := json.Marshal(payload)
  	if err != nil {
  		fmt.Println("Error marshaling JSON:", err)
  		return
  	}

  	req, err := http.NewRequest("POST", "https://api.ayrshare.com/api/ads/facebook/boost", bytes.NewBuffer(jsonData))
  	if err != nil {
  		fmt.Println("Error creating request:", err)
  		return
  	}

  	req.Header.Set("Content-Type", "application/json")
  	req.Header.Set("Authorization", "Bearer "+apiKey)

  	client := &http.Client{}
  	resp, err := client.Do(req)
  	if err != nil {
  		fmt.Println("Error sending request:", err)
  		return
  	}
  	defer resp.Body.Close()

  	body, err := ioutil.ReadAll(resp.Body)
  	if err != nil {
  		fmt.Println("Error reading response:", err)
  		return
  	}

  	fmt.Println(string(body))
  }
  ```

  ```java Java theme={"system"}
  import java.io.IOException;
  import java.net.URI;
  import java.net.http.HttpClient;
  import java.net.http.HttpRequest;
  import java.net.http.HttpResponse;
  import java.util.Arrays;
  import java.util.HashMap;
  import java.util.Map;

  import com.fasterxml.jackson.databind.ObjectMapper;

  public class BoostPost {
      public static void main(String[] args) {
          String API_KEY = "API_KEY";
          String url = "https://api.ayrshare.com/api/ads/facebook/boost";

          Map<String, Object> payload = new HashMap<>();
          payload.put("postId", "1234567890");
          payload.put("accountId", "1234567890");
          payload.put("adName", "My Ad");
          payload.put("status", "active");
          payload.put("goal", "engagement");
          payload.put("minAge", 18);
          payload.put("maxAge", 65);
          Map<String, Object> locations = new HashMap<>();
          locations.put("countries", Arrays.asList("US"));
          payload.put("locations", locations);
          payload.put("budget", 100);
          payload.put("bidAmount", 1);
          payload.put("startDate", "2025-03-01T00:00:00Z");
          payload.put("endDate", "2025-03-07T23:59:59Z");
          payload.put("interests", Arrays.asList(1234567890, 1234567891));

          try {
              ObjectMapper objectMapper = new ObjectMapper();
              String requestBody = objectMapper.writeValueAsString(payload);

              HttpClient client = HttpClient.newHttpClient();
              HttpRequest request = HttpRequest.newBuilder()
                      .uri(URI.create(url))
                      .header("Content-Type", "application/json")
                      .header("Authorization", "Bearer " + API_KEY)
                      .POST(HttpRequest.BodyPublishers.ofString(requestBody))
                      .build();

              HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
              System.out.println(response.body());

          } catch (IOException | InterruptedException e) {
              e.printStackTrace();
          }
      }
  }
  ```

  ```ruby Ruby theme={"system"}
  require 'net/http'
  require 'uri'
  require 'json'

  API_KEY = "API_KEY"

  uri = URI.parse("https://api.ayrshare.com/api/ads/facebook/boost")
  payload = {
    postId: "1234567890",
    accountId: "1234567890",
    adName: "My Ad",
    status: "active",
    goal: "engagement",
    minAge: 18,
    maxAge: 65,
    locations: { countries: ["US"] },
    budget: 100,
    bidAmount: 1,
    startDate: "2025-03-01T00:00:00Z",
    endDate: "2025-03-07T23:59:59Z",
    interests: [1234567890, 1234567891]
  }

  http = Net::HTTP.new(uri.host, uri.port)
  http.use_ssl = true

  request = Net::HTTP::Post.new(uri.request_uri)
  request["Content-Type"] = "application/json"
  request["Authorization"] = "Bearer #{API_KEY}"
  request.body = payload.to_json

  response = http.request(request)
  puts response.body
  ```
</RequestExample>

<ResponseExample>
  ```json 200: Post Boosted theme={"system"}
  {
      "status": "success",
      "adId": "120217670757750410",
      "adName": "API Post - DE6gpw8kxlonHy2b7Lo - 2025-03-26T23:42:43",
      "adStatus": "active",
      "bidAmount": 10,
      "budget": 100,
      "endDate": "2026-03-28T22:30:00Z",
      "goal": {
          "title": "Get More Engagement",
          "description": "This goal seeks to increase engagement...",
          "type": "engagement"
      },
      "interests": [
          "6003195554098"
      ],
      "locations": { "countries": ["US"] },
      "maxAge": 65,
      "minAge": 18,
      "postId": "DE6gpw8kxlonHy2b7Lo",
      "startDate": "2026-03-26T22:30:00Z"
  }
  ```

  ```json 400: Invalid Account ID theme={"system"}
  {
    "action": "boost post",
    "status": "error",
    "code": 369,
    "message": "Unable to boost post. Please try again or contact us if the issue persists.",
    "details": "The accountId likely does not exist. Please check the accountId and try again."
  }
  ```

  ```json 400: Missing Required Parameters theme={"system"}
  {
    "action": "request",
    "status": "error",
    "code": 101,
    "message": "Missing or incorrect parameters. Please verify with the docs. https://www.ayrshare.com/docs/apis",
    "details": "Missing required fields: budget"
  }
  ```
</ResponseExample>
