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

# الحصول على ملفات تعريف المستخدمين

> احصل على جميع الملفات الشخصية المرتبطة بالملف الأساسي.

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={["business"]} maxPackRequired={false} />

احصل على جميع الملفات الشخصية المرتبطة بالملف الأساسي. لا يتم إرجاع الملف الأساسي في النتائج.

للأمان، لا يتم إرجاع Profile Keys عبر استدعاء GET هذا. يُرجى الاطلاع [هنا](/apis/profiles/create-profile) لمزيد من المعلومات.

## معلمات الرأس

<HeaderAPI noProfileKey />

## معلمات الاستعلام

<ParamField query="title" type="string">
  أعِد فقط الملف الشخصي المرتبط بالعنوان المشفَّر بصيغة URL.
</ParamField>

<ParamField query="refId" type="string">
  أعِد فقط الملف الشخصي المرتبط بـ `refId` المحدّد. تم إرجاع refId أثناء إنشاء
  الملف الشخصي أو من نقطة النهاية /user.
</ParamField>

<ParamField query="hasActiveSocialAccounts" type="boolean" default={false}>
  إذا كانت القيمة `true` فأعد فقط الملفات الشخصية التي تحتوي على حساب اجتماعي واحد متّصل على الأقل
  (طول `activeSocialAccounts` أكبر من صفر). إذا كانت `false` فأعد فقط الملفات الشخصية التي تحتوي على صفر
  من الحسابات الاجتماعية المتّصلة (طول `activeSocialAccounts` هو صفر).
</ParamField>

<ParamField query="includesActiveSocialAccounts" type="array">
  تصفية الملفات الشخصية لتضمين تلك التي تحتوي `activeSocialAccounts` الخاصّة بها على جميع منصّات وسائل التواصل الاجتماعي المحدّدة في قائمة `includesActiveSocialAccounts`. يمكن أن تحتوي الملفات الشخصية على منصّات إضافية في `activeSocialAccounts` بخلاف تلك المدرَجة في `includesActiveSocialAccounts` وأن تبقى مضمّنة في النتائج المفلترة.

  القيم: `bluesky` و`facebook` و`gmb` و`instagram` و`linkedin` و`pinterest` و`reddit` و`snapchat` و`telegram` و`threads` و`tiktok` و`twitter` و`youtube`.
</ParamField>

<ParamField query="isByokLinked" type="boolean">
  تصفية الملفات الشخصية حسب حالة ترحيل BYOK (Bring Your Own Key). إذا كانت `true`، فأعد فقط الملفات الشخصية التي أكملت ترحيل BYOK. إذا كانت `false`، فأعد فقط الملفات الشخصية التي تحتوي على منصّة مؤهّلة لـ BYOK متّصلة ولكن لم يتم ترحيلها بعد. يتم استبعاد الملفات الشخصية التي لا تحتوي على منصّة مؤهّلة لـ BYOK عند تعيين هذا المرشّح. عند حذفه، تتم إعادة جميع الملفات الشخصية بغضّ النظر عن حالة BYOK. ينطبق حاليًا على [X/Twitter BYOK](/dashboard/connect-social-accounts/x-twitter-byo-keys).
</ParamField>

<ParamField query="actionLog" type="boolean" default={false}>
  إعادة سجل إجراءات إنشاء وحذف ملف تعريف المستخدم لآخر 60 يومًا وعدد المستخدمين النشطين المستخدم للفوترة لآخر 60 يومًا. ملاحظة:

  <ul className="custom-bullets">
    <li>
      Action Log: لن يتم إرجاع العنوان والوسوم لسجل الإجراءات قبل مارس 2025.
    </li>

    <li>
      User Profile Report: قد لا تتوافق الفترة الزمنية مع فترة الفوترة الخاصة بك. على سبيل المثال، قد تبدأ فترة الفوترة الخاصة بك وتنتهي في العاشر من الشهر.
      يُرجى الاطلاع على فواتيرك للاطلاع على فترة الفوترة والتفاصيل الأخرى.
    </li>
  </ul>

  يمكنك تحديد فترة زمنية مختلفة بتعيين actionLog إلى عدد من الأيام. على سبيل المثال،
  ستُرجع معلمة الاستعلام `actionLog=10` سجل الإجراءات لآخر 10 أيام وعدد المستخدمين النشطين المُبلَّغ عنه
  لآخر 10 أيام. الفترة الزمنية المسموح بها من 1 يوم إلى 365 يومًا.
</ParamField>

<ParamField query="limit" type="number" default={5000}>
  حدّد عدد الملفات الشخصية المعادة. الافتراضي والحد الأقصى هو 5000.
</ParamField>

<ParamField query="cursor" type="string">
  إذا كان هناك ملفات شخصية إضافية للإرجاع وكان علم `hasMore` هو `true`، فسيتم إرجاع `nextCursor` في الاستجابة.
  مرّر هذا المؤشر إلى معلمة الاستعلام `cursor` لإرجاع المجموعة التالية من الملفات الشخصية.
</ParamField>

<ParamField query="include" type="string | array">
  إعادة بيانات ملف شخصي موسّعة لاستكشاف الأخطاء وإصلاحها. تتطلّب معلمة `refId` (بحث ملف شخصي واحد).

  القيم (سلسلة مفصولة بفواصل أو مصفوفة): `suspension` و`socialHealth` و`linkingErrors` و`activity` و`quota` و`unlinkHistory` و`actionLog`.

  <ul className="custom-bullets">
    <li>`suspension` - isSuspended, reason, suspendedAt, unsuspendAt, suspensionCount</li>
    <li>`socialHealth` - لكل منصّة: linked, linkedAt, relinkRecommended, messagingEnabled, tokenExpiresAt</li>
    <li>`linkingErrors` - لكل منصّة: code, message, details, createdAt</li>
    <li>`activity` - lastApiCall, lastPost timestamps</li>
    <li>`quota` - used, limit</li>
    <li>`unlinkHistory` - آخر إلغاء ربط: platform, source (user/system), details, createdAt</li>
    <li>`actionLog` - سجل إجراءات الملف الشخصي (create/update/delete)</li>
  </ul>
</ParamField>

<RequestExample>
  ```javascript cURL theme={"system"}
  curl \
  -H "Authorization: Bearer API_KEY" \
  -X GET https://api.ayrshare.com/api/profiles
  ```

  ```javascript cURL (with include) theme={"system"}
  curl \
  -H "Authorization: Bearer API_KEY" \
  -X GET "https://api.ayrshare.com/api/profiles?refId=160c8700bd6ade&include=suspension,socialHealth,activity,quota"
  ```

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

  fetch("https://api.ayrshare.com/api/profiles", {
        method: "GET",
        headers: {
          "Authorization": `Bearer ${API_KEY}`
        }
      })
        .then((res) => res.json())
        .then((json) => console.log(json))
        .catch(console.error);
  ```

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

  headers = {'Authorization': 'Bearer API_KEY'}

  r = requests.get('https://api.ayrshare.com/api/profiles', headers=headers)

  print(r.json())
  ```

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

  $url = 'https://api.ayrshare.com/api/profiles';
  $apiKey = 'API_KEY'; // Replace with your actual API key

  $curl = curl_init();

  curl_setopt_array($curl, [
      CURLOPT_URL => $url,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_HTTPGET => true,
      CURLOPT_HTTPHEADER => [
          'Content-Type: application/json',
          'Authorization: Bearer ' . $apiKey
      ],
  ]);

  $response = curl_exec($curl);

  if (curl_errno($curl)) {
      echo 'Error:' . curl_error($curl);
  } else {
      echo json_encode(json_decode($response), JSON_PRETTY_PRINT);
  }

  curl_close($curl);

  ```

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

  namespace ProfilesGETRequest_csharp
  {
  class Profiles
  {
      static async Task Main(string[] args)
      {
          string API_KEY = "API_KEY";
          string url = "https://api.ayrshare.com/api/profiles";

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

              try
              {
                  HttpResponseMessage response = await client.GetAsync(url);
                  response.EnsureSuccessStatusCode();
                  string responseBody = await response.Content.ReadAsStringAsync();
                  Console.WriteLine(responseBody);
              }
              catch (HttpRequestException e)
              {
                  Console.WriteLine($"Error: {e.Message}");
              }
          }
      }
  }
  }
  ```
</RequestExample>

<ResponseExample>
  ```javascript 200: Success theme={"system"}
  {
      "profiles": [
          {
              "status": "active",
              "title": "Digg It Title",
              "displayTitle": "Your title",
              "created": {
                  "_seconds": 1604094099,
                  "_nanoseconds": 530000000
              },
              "createdUTC": "2022-03-02T16:11:00.839Z",
              "refId": "160c8700bd6ade099b242d845e268fb986130c53",
              "activeSocialAccounts": [
                  "twitter",
                  "facebook",
                  "linkedin",
                  "instagram"
              ],
              "isByokLinked": true
          },
          {
              "status": "active",
              "title": "Super Profile",
              "created": {
                  "_seconds": 1604377627,
                  "_nanoseconds": 252000000
              },
              "createdUTC": "2022-03-02T16:11:00.839Z",
              "refId": "170a8700bd6ade099b242d845e268fb986130c53"
          },
          {
              "status": "suspended",
              "title": "Good Fun Title",
              "created": {
                  "_seconds": 1605107864,
                  "_nanoseconds": 96000000
              },
              "createdUTC": "2022-03-02T16:11:00.839Z",
              "refId": "180s8700bd6ade099b242d845e268fb986130c53",
              "activeSocialAccounts": [
                  "facebook",
                  "linkedin",
                  "youtube"
              ],
              "suspended": true
          }
      ],
      "count": 100,
      "lastUpdated": "2025-06-14T15:53:26.016Z",
      "nextUpdate": "2025-06-14T15:58:26.016Z",
      "pagination": {
          "hasMore": true,
          "nextCursor": "eyJjcmVhdGVkIjoiMjAyNS0wNi0xNFQwMjo1",
          "limit": 100
      }
  }
  ```

  ```json 200: Action Log theme={"system"}
  {
    "profiles": {
      "actionLog": [
          {
              "action": "create",
              "refId": "2d83hd839282ehd892d2999912d1dsdgldfkepw",
              "title": "Profile 1",
              "created": "2025-05-29T14:10:33.709Z"
          },
          {
              "action": "create",
              "refId": "fmm02nd9c3nm9djjffdfsfshfihvp848jcsf222s",
              "title": "Profile 2",
              "created": "2025-05-28T20:33:32.186Z"
          }
      ],
      "userProfilesReport": [
              {
                  "reported": "2025-03-31T08:00:22.651Z",
                  "userProfileCount": 135
              },
              {
                  "reported": "2025-04-01T08:00:16.632Z",
                  "userProfileCount": 135
              }
      ],
      "lastUpdated": "2025-06-14T15:56:02.260Z",
      "nextUpdate": "2025-06-14T16:01:02.260Z"
  }
  ```

  ```json 200: Include Extended Data theme={"system"}
  {
      "profiles": [
          {
              "title": "Brand Marketing",
              "refId": "160c8700bd6ade099b242d845e268fb986130c53",
              "status": "suspended",
              "activeSocialAccounts": ["twitter", "instagram"],
              "suspension": {
                  "isSuspended": true,
                  "reason": "Too many duplicate posts",
                  "suspendedAt": "2026-03-01T10:00:00.000Z",
                  "unsuspendAt": "2026-03-03T10:00:00.000Z",
                  "suspensionCount": 2
              },
              "socialHealth": {
                  "twitter": {
                      "linked": true,
                      "linkedAt": "2026-01-15T10:30:00.000Z",
                      "relinkRecommended": false,
                      "messagingEnabled": true,
                      "tokenExpiresAt": null
                  },
                  "instagram": {
                      "linked": true,
                      "linkedAt": "2026-02-01T08:00:00.000Z",
                      "relinkRecommended": true,
                      "messagingEnabled": false,
                      "tokenExpiresAt": "2026-04-01T08:00:00.000Z"
                  }
              },
              "activity": {
                  "lastApiCall": "2026-03-05T09:15:00.000Z",
                  "lastPost": "2026-03-04T14:30:00.000Z"
              },
              "quota": {
                  "used": 450,
                  "limit": 1000
              }
          }
      ],
      "count": 1,
      "pagination": {
          "hasMore": false,
          "nextCursor": null,
          "limit": 5000
      }
  }
  ```
</ResponseExample>
