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

# Hashtags automatiques

> Ajoutez les hashtags les plus pertinents à votre publication

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"]} />

Lors de la création de votre publication, ajoutez des hashtags pertinents en les intégrant dans le texte ou en les plaçant à la fin.
Notre système d'IA avancé analysera votre contenu pour générer des hashtags appropriés en fonction du sujet.
Bien que vous puissiez utiliser n'importe quelle langue pour votre publication, la rédaction en anglais donne généralement les meilleurs résultats pour notre processus de génération de hashtags.

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

<HeaderAPI />

## Paramètres du corps

<ParamField body="post" type="string" required>
  Texte de la publication auquel ajouter les hashtags. Longueur maximale de 1 000 caractères.
</ParamField>

<ParamField body="position" type="string">
  validate
</ParamField>

<ParamField body="max" type="integer" default={2}>
  Nombre entier maximal de hashtags à ajouter. Plage de valeurs maximales de 1 à 10. Remarque : Instagram autorise un maximum de 5 hashtags par publication.
</ParamField>

<ParamField body="language" type="string">
  Spécifiez le [code de langue](/iso-codes/language) de la langue de la publication pour aider l'algorithme de hashtag.

  ```json theme={"system"}
  {
    "language": "fr"
  }
  ```
</ParamField>

<RequestExample>
  ```bash cURL theme={"system"}
  curl \
  -H "Authorization: Bearer API_Key" \
  -d '{"post": "Today is a great day!", "max": 3, "position": "auto"}'
  -X POST https://api.ayrshare.com/api/hashtags/auto
  ```

  ```javascript JavaScript theme={"system"}
  const API_KEY = "API_KEY";
  fetch(`https://api.ayrshare.com/api/hashtags/auto`, {
        method: "POST",
        headers: {
          "Authorization": `Bearer ${API_KEY}`
        },
        body: JSON.stringify({
          post: "Today is a great day!", // required
          max: 3,           // optional, range 1-5
          position: "auto"  // optional, "auto" or "end"
        })
      })
        .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!',
          'max': 3,           # optional, range 1-5
          'position': 'auto'  # optional, 'auto' or 'end'
  }
  headers = {'Content-Type': 'application/json',
          'Authorization': 'Bearer API_KEY'}

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

  print(r.json())
  ```

  ```php PHP theme={"system"}
  <?php
  require 'vendor/autoload.php';// Composer auto-loader using Guzzle. See .../guzzlephp.org/en/stable/overview.html

  $client = new GuzzleHttp\Client();
  $res = $client->request(
      'POST',
      'https://api.ayrshare.com/api/hashtags/auto',
      [
          'headers' => [
              'Content-Type'  => 'application/json',
              'Authorization' => 'Bearer API_KEY'
          ],
          'json' => [
              'post' => 'Today is a great day!',
              'max'  => 3,
              'position' => 'auto'
          ]
      ]
  );

  echo json_encode(json_decode($res->getBody()), JSON_PRETTY_PRINT);
  ```
</RequestExample>

<ResponseExample>
  ```javascript 200 Hashtagged Post Returned theme={"system"}
  {
      post: "Disney’s trouble with Oswald the #LuckyRabbit is a great lesson #ForStartups in a crisis"
  }
  ```
</ResponseExample>
