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

# دليل البدء السريع

> اربط حسابات التواصل الاجتماعي الخاصة بك وأرسل أول منشور خلال دقائق قليلة.

هذا الدليل مخصص لإعداد شركة واحدة. لاشتراكات خطة Business وEnterprise متعددة المستخدمين، يتم توفير دليل تكامل مخصص.

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

## قم بتوصيل حسابات وسائل التواصل الاجتماعي الخاصة بك

سجّل الدخول أو أنشئ [حساب Ayrshare](https://app.ayrshare.com/).
في صفحة Social Account، انقر على شبكات التواصل الاجتماعي التي تريد توصيلها.
يُرجى التأكد من منح جميع الأذونات.

<p align="center">
  <img width="240" src="https://mintcdn.com/ayrshare/xrGl9DrFFYfXkVdh/images/fb-connect.webp?fit=max&auto=format&n=xrGl9DrFFYfXkVdh&q=85&s=dbc963410e2c9033b6e30cae7c377f92" alt="Facebook Linking Example" data-path="images/fb-connect.webp" />
</p>

## احصل على مفتاح API الخاص بك

مفتاح API مطلوب لتفويض الوصول إلى نقاط نهاية API.
يُستخدم هذا المفتاح في ترويسة طلباتك، ويجب أن يسبقه الكلمة الأساسية `Bearer`.

يوجد مفتاح API الخاص بك داخل [لوحة تحكم Ayrshare](https://app.ayrshare.com/)، في صفحة **API Key**. إذا لزم الأمر، بدّل إلى 'Primary Profile' عبر صفحة **User Profiles**.
من هناك، يمكنك العثور على صفحة **API Key** في اللوحة الجانبية اليسرى.

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

يجب أن يتضمن كل استدعاء API مفتاح API في الترويسة باستخدام رمز `Bearer`. قم أيضًا بتضمين `Content-Type` بقيمة `application/json`.

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

راجع [المصادقة](/apis/overview#authorization) لمزيد من المعلومات.

## أرسل أول منشور API لك

### نشر المنشور

فيما يلي أمثلة كود توضح كيفية إجراء منشور باستخدام واجهة API الخاصة بنا بلغات برمجة مختلفة.
لتكامل أسهل، يمكنك استخدام إحدى [حزم SDK](/packages-guides/overview) الجاهزة الخاصة بنا.

لإجراء منشور، ستحتاج إلى:

<ul className="custom-bullets">
  <li>[مفتاح API](/apis/overview#authorization) الخاص بك للمصادقة.</li>
  <li>المحتوى النصي لمنشورك.</li>
  <li>منصات وسائل التواصل الاجتماعي التي تريد النشر عليها (قم بتضمين المنصات التي قمت بربطها فقط).</li>
  <li>اختياري: عناوين URL لأي صور أو فيديوهات تريد تضمينها.</li>
</ul>

تستخدم جميع الأمثلة نقطة النهاية [/post](/apis/post/post). لنلقِ نظرة على بعض أمثلة الكود:

<Info>
  **تنشر على X/Twitter؟** يتطلب X بيانات اعتماد API الخاصة بك. أضف ترويستَي BYO (`X-Twitter-OAuth1-Api-Key` و`X-Twitter-OAuth1-Api-Secret`) إلى طلبك. هذا **إعداد لمرة واحدة لكل حساب Ayrshare**، ويعمل زوج المفاتيح نفسه لكل ملف فرعي / مستخدم نهائي. راجع [دليل الإعداد](/dashboard/connect-social-accounts/x-twitter-byo-keys) للتفاصيل.
</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>

تهانينا! لقد أرسلت للتو أول منشور لك.

### استجابة المنشور

ستتلقى استجابة بحالة `status` "success" عندما تعالج واجهة API الخاصة بنا منشورك بنجاح. تتضمن الاستجابة:

<ul className="custom-bullets">
  <li>`status`: الحالة العامة لاستدعاء API ("success" أو "error")</li>
  <li>`errors`: مصفوفة من أي أخطاء تم مواجهتها (فارغة إذا نجحت)</li>
  <li>`postIds`: مصفوفة من الكائنات تحتوي على تفاصيل خاصة بالمنصة:</li>

  <ul className="custom-bullets">
    <li>اسم المنصة</li>
    <li>معرّف المنشور على تلك المنصة</li>
    <li>عنوان URL لعرض المنشور</li>
    <li>معلومات إضافية خاصة بالمنصة</li>
  </ul>
</ul>

سيكون لكل منصة في مصفوفة `postIds` حالتها الخاصة، مما يتيح لك التحقق من المنصات التي استلمت منشورك بنجاح.

تحقق من صفحات وسائل التواصل الاجتماعي الخاصة بك للتأكد من أن المنشور قد تمت معالجته بنجاح وأنه مباشر. لاحظ أن بعض المنصات قد تشهد تأخيرًا طفيفًا قبل ظهور المنشورات علنًا.

فيما يلي عيّنة من الاستجابة:

```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!"
}
```

راجع المزيد من أمثلة الكود لاستدعاء واجهة API لوسائل التواصل الاجتماعي بلغات Node.js وPython وPHP وGolang وC# وRuby، بالإضافة إلى إمكانات رائعة أخرى:

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

### الغوص قليلًا في العمق

لنقسّم عملية ما حدث للتو عندما أجرينا هذا الاستدعاء لواجهة API.

<Steps>
  <Step title="تعيين الترويسة">
    قمنا بتعيين رمز Header Authorization bearer (مفتاح API) ونوع المحتوى كـ
    json.
  </Step>

  <Step title="إنشاء كائن Body">
    بعد ذلك، أنشأنا كائن body:

    <ul className="custom-bullets">
      <li>Post يحتوي على النص "Today is a great day!".</li>

      <li>
        منصات شبكات التواصل الاجتماعي هي Facebook وInstagram وLinkedIn.
        يجب أن تُضمّن فقط المنصات التي ربطتها في صفحة Social Linkage.
      </li>

      <li>أضفنا صورة في mediaUrls.</li>
    </ul>
  </Step>

  <Step title="استدعاء نقطة نهاية /post">
    أرسلنا كل شيء كـ HTTP POST إلى نقطة نهاية /post.
  </Step>
</Steps>

## قبل أن تذهب، بعض أفضل الممارسات

### اقرأ الوثائق

نحتفظ بوثائق شاملة ومحدّثة. بما أنك هنا بالفعل، خذ بعض الوقت للاطلاع على أقسام الوثائق في التنقل الأيسر.

### رموز الأخطاء مهمة

عليك التعامل معها حتى يحظى المستخدمون بتجربة رائعة.

<Card title="الأخطاء" icon="link" href="/errors/overview" horizontal />

### حافظ على أمان مفتاح API الخاص بك

نحن نأخذ الأمان على محمل الجد، وينبغي عليك ذلك أيضًا. لديك سيطرة كاملة على الاتصال بين Ayrshare وحسابات وسائل التواصل الاجتماعي الخاصة بك. بمجرد توصيل الحسابات، يصبح مفتاح Ayrshare API هو الطريقة التي تُصادق بها. يُرجى الحفاظ على هذا المفتاح سريًا وآمنًا.

### نشر منشورات اختبار

يمكنك نشر منشورات اختبار باقتباس أو صورة أو فيديو عشوائي باستخدام معاملات `randomPost` و`randomMediaUrl` و`isLandscapeVideo` أو `isPortraitVideo` في [نقطة نهاية /post](/apis/post/post). إذا استخدمت `randomPost`، فمعامل `post` غير مطلوب.

<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>
  هذه المنشورات مباشرة على صفحات وسائل التواصل الاجتماعي الخاصة بك، لذا إذا كان مناسبًا، احذفها بعد الاختبار.
</Warning>

#### اقتباس عشوائي

أرسل اقتباسًا عشوائيًا لاختبار نشر منشور بإضافة `randomPost: true`.

يُستخدم مع نقطة نهاية [/post](/apis/post/post).

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

#### صورة عشوائية

أرسل صورة عشوائية بإضافة `randomMediaUrl: true`.

يُستخدم مع نقطة نهاية [/post](/apis/post/post).

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

#### فيديو عشوائي

أرسل فيديو أفقيًا عشوائيًا بإضافة `isVideo: true` و`isLandscapeVideo: true`.
سيكون الفيديو بحجم أفقي قياسي.

يُستخدم مع نقطة نهاية [/post](/apis/post/post).

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

أرسل فيديو عموديًا عشوائيًا، المطلوب لـ TikTok أو Facebook/Instagram Reels، بإضافة `isVideo: true` و`isPortraitVideo: true`.

يُستخدم مع نقطة نهاية [/post](/apis/post/post).

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

#### تعليق عشوائي

أرسل تعليقًا عشوائيًا لاختبار نشر تعليق بإضافة `randomComment: true`.

يُستخدم مع نقطة نهاية [/comment](/apis/comments/post-comment).

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

#### مثال على استدعاء cURL

أرسل اقتباسًا عشوائيًا وفيديو عموديًا.

```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
```

### **استخدم Postman لاختبار استدعاءات API الخاصة بك**

[Postman](https://www.postman.com/) هو أداة مذهلة لاختبار استدعاءات API. يمكنك حتى توليد كود بأكثر من اثنتي عشرة لغة.

### كود العرض التوضيحي

إذا كنت تبحث عن مشروع عرض توضيحي عيّنة في React وNodeJS، يُرجى الاطلاع على مستودع GitHub هذا:

<Card title="Github Social Posting Demo App" icon="github" href="https://github.com/ayrshare/social-api-demo" horizontal />

### **استكشاف الأخطاء الشائعة وإصلاحها**

أحيانًا لا تسير الأمور على ما يرام، لذا إليك بعض المساعدة في مركز المساعدة الخاص بنا.

<Card title="Troubleshooting" icon="link" href="/help-center/overview" horizontal />

### **تواصل معنا للحصول على المساعدة**

نحن هنا للمساعدة، لذا يُرجى استخدام الدردشة في الزاوية اليمنى السفلى أو [مراسلتنا عبر البريد الإلكتروني](mailto:support@ayrshare.com).
