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

# وب‌هوک‌های فعالیت

> مرجع ساختار داده و شرایط ارسال وب‌هوک‌های ایجاد و ویرایش فعالیت در دیدار

# وب‌هوک‌های فعالیت

وب‌هوک‌های فعالیت اطلاعات یک فعالیت را پس از ایجاد یا ویرایش آن به آدرس مقصد ارسال می‌کنند. ساختار کلی Payload در هر دو رویداد یکسان است و Object `data` آخرین وضعیت فعالیت را در زمان ارسال نشان می‌دهد.

تفاوت اصلی دو رویداد در `changes` است؛ در وب‌هوک ایجاد این Array خالی است و در وب‌هوک ویرایش، فیلدهای تغییرکرده همراه با مقدار قبلی و مقدار جدید در آن قرار می‌گیرند.

## ساختار داده ارسالی

<ParamField path="data" type="object">
  اطلاعات کامل فعالیتی که وب‌هوک برای آن ارسال شده است. در وب‌هوک ایجاد، این Object وضعیت فعالیت تازه ایجادشده را نشان می‌دهد و در وب‌هوک ویرایش، آخرین وضعیت همان فعالیت را پس از اعمال تغییرات در اختیار شما قرار می‌دهد.

  <Expandable title="property">
    <ParamField path="data.Id" type="string">
      شناسه فعالیتی که این وب‌هوک برای آن ارسال شده است. اگر رویداد از نوع ایجاد باشد، این مقدار شناسه فعالیتی است که تازه در دیدار ایجاد شده و اگر رویداد از نوع ویرایش باشد، شناسه همان فعالیتی است که ویرایش شده است.
    </ParamField>

    <ParamField path="data.Title" type="string">
      عنوان فعالیتی که ایجاد یا ویرایش شده است. این همان متنی است که کاربران دیدار برای تشخیص فعالیت در فهرست فعالیت‌ها و صفحه جزئیات رکوردهای مرتبط مشاهده می‌کنند؛ برای مثال «تماس با مشتری» یا «ارسال پیش‌فاکتور».
    </ParamField>

    <ParamField path="data.Note" type="string">
      توضیحاتی که برای فعالیت ثبت شده است و مشخص می‌کند این فعالیت با چه هدفی ایجاد شده یا مسئول فعالیت هنگام انجام آن باید چه موضوعی را پیگیری کند. خالی بودن این مقدار یعنی توضیحی برای فعالیت ثبت نشده است.
    </ParamField>

    <ParamField path="data.ResultNote" type="string">
      نتیجه‌ای که پس از انجام فعالیت برای آن ثبت شده است. این مقدار معمولاً توضیح می‌دهد فعالیت چگونه انجام شده یا خروجی آن چه بوده است؛ برای مثال نتیجه یک تماس با مشتری. تا زمانی که نتیجه‌ای ثبت نشده باشد، این فیلد می‌تواند خالی باشد.
    </ParamField>

    <ParamField path="data.ActivityTypeId" type="string">
      شناسه نوع فعالیتی که ایجاد یا ویرایش شده است. این مقدار مشخص می‌کند فعالیت در دیدار از چه نوعی است؛ برای مثال تماس، جلسه یا وظیفه. عنوان دقیق نوع فعالیت به تنظیمات همان بیزدامنه وابسته است و از روی این شناسه به‌تنهایی قابل تشخیص نیست.
    </ParamField>

    <ParamField path="data.IsPrivate" type="boolean">
      مشخص می‌کند فعالیت به‌صورت خصوصی ثبت شده است یا خیر. مقدار `true` یعنی فعالیت خصوصی است و نمایش آن می‌تواند به کاربران مجاز محدود باشد؛ مقدار `false` یعنی فعالیت به‌عنوان فعالیت خصوصی ثبت نشده است.
    </ParamField>

    <ParamField path="data.IsDone" type="boolean">
      وضعیت انجام فعالیت را نشان می‌دهد. مقدار `true` یعنی فعالیت انجام شده و به‌عنوان تکمیل‌شده ثبت شده است؛ مقدار `false` یعنی فعالیت هنوز انجام نشده یا همچنان در انتظار انجام است.
    </ParamField>

    <ParamField path="data.IsPinned" type="boolean">
      مشخص می‌کند فعالیت در دیدار پین شده است یا خیر. مقدار `true` یعنی فعالیت برای دسترسی یا مشاهده سریع‌تر پین شده و مقدار `false` یعنی پین نشده است.
    </ParamField>

    <ParamField path="data.IsDeleted" type="boolean">
      مشخص می‌کند فعالیت حذف شده است یا همچنان در دیدار وجود دارد. مقدار `true` یعنی فعالیت حذف شده و مقدار `false` یعنی فعالیت حذف نشده است.
    </ParamField>

    <ParamField path="data.DueDateType" type="number">
      کد عددی مربوط به نوع زمان‌بندی فعالیت است و نحوه تفسیر زمان‌های ثبت‌شده برای فعالیت را مشخص می‌کند. معنی دقیق هر کد در اطلاعات ورودی مشخص نشده است و باید توسط تیم فنی دیدار تأیید شود.
    </ParamField>

    <ParamField path="data.DueDate" type="string">
      زمان برنامه‌ریزی‌شده برای شروع یا سررسید فعالیت است. این مقدار نشان می‌دهد فعالیت از چه زمانی باید انجام یا پیگیری شود؛ کاربرد دقیق آن با توجه به `data.DueDateType` تعیین می‌شود.
    </ParamField>

    <ParamField path="data.FinishDate" type="string">
      زمان پایان برنامه‌ریزی‌شده فعالیت است. در فعالیت‌هایی که بازه زمانی دارند، این مقدار انتهای بازه‌ای را نشان می‌دهد که فعالیت برای آن برنامه‌ریزی شده است.
    </ParamField>

    <ParamField path="data.OriginalDueDate" type="string">
      زمان اولیه‌ای است که هنگام برنامه‌ریزی فعالیت به‌عنوان سررسید یا زمان شروع آن ثبت شده بود. این مقدار کمک می‌کند زمان اصلی فعالیت را حتی پس از تغییر زمان‌بندی آن تشخیص دهید.
    </ParamField>

    <ParamField path="data.DoneDate" type="string">
      زمانی را نشان می‌دهد که فعالیت در دیدار به‌عنوان انجام‌شده ثبت شده است. این فیلد زمان تکمیل واقعی فعالیت را گزارش می‌کند، نه زمان برنامه‌ریزی‌شده برای انجام آن.
    </ParamField>

    <ParamField path="data.RegisterDate" type="string">
      زمانی که این فعالیت برای اولین بار در دیدار ایجاد و ثبت شده است. این مقدار زمان ایجاد رکورد فعالیت را نشان می‌دهد و با زمان برنامه‌ریزی‌شده یا زمان انجام فعالیت متفاوت است.
    </ParamField>

    <ParamField path="data.LastUpdateTime" type="string">
      زمان آخرین ویرایش ثبت‌شده روی این فعالیت است. این مقدار نشان می‌دهد آخرین تغییر اطلاعات فعالیت چه زمانی در دیدار ذخیره شده است.
    </ParamField>

    <ParamField path="data.LastPokeDate" type="string">
      آخرین زمان ثبت‌شده برای عملیات داخلی `Poke` روی این فعالیت است. کاربرد دقیق `Poke` و اثری که روی فعالیت دارد در اطلاعات ورودی مشخص نشده است و باید توسط تیم فنی دیدار تأیید شود.
    </ParamField>

    <ParamField path="data.Duration" type="number">
      مدت زمانی است که برای انجام این فعالیت ثبت شده است. این مقدار طول فعالیت را نشان می‌دهد، واحد این فیلد برحسب دقیقه استو مقداری که وارد میکنید مدت زمان مورد نیاز برای انجام فعالیت را برحسب دقیقه وارد میکند. مثلا اگر مقدار 60 را قرار دهید یعنی انجام این فعالیت 60 دقیقه زمان نیاز دارد.
    </ParamField>

    <ParamField path="data.DealId" type="string">
      شناسه معامله‌ای که این فعالیت به آن متصل شده است. با استفاده از این مقدار می‌توانید تشخیص دهید فعالیت برای پیگیری کدام معامله ثبت شده است. مقدار `00000000-0000-0000-0000-000000000000` یعنی فعالیت به معامله‌ای متصل نیست.
    </ParamField>

    <ParamField path="data.CaseId" type="string">
      شناسه کارتی که این فعالیت به آن متصل شده است. این مقدار مشخص می‌کند فعالیت در ارتباط با کدام کارت ثبت شده است. مقدار `00000000-0000-0000-0000-000000000000` یعنی فعالیت به کارتی متصل نیست.
    </ParamField>

    <ParamField path="data.CreatorId" type="string">
      شناسه کاربری که این فعالیت را برای اولین بار در دیدار ایجاد کرده است. این مقدار ایجادکننده اصلی فعالیت را نشان می‌دهد و لزوماً با مسئول فعلی یا آخرین ویرایش‌کننده فعالیت یکسان نیست.
    </ParamField>

    <ParamField path="data.OwnerId" type="string">
      شناسه کاربری که مسئول انجام یا پیگیری این فعالیت است. این همان کاربری است که فعالیت در دیدار به او واگذار شده و انتظار می‌رود آن را انجام دهد.
    </ParamField>

    <ParamField path="data.UpdaterId" type="string">
      شناسه کاربری که آخرین تغییر ثبت‌شده روی این فعالیت را انجام داده است. در وب‌هوک ویرایش، این مقدار معمولاً مشخص می‌کند آخرین ویرایش فعالیت توسط کدام کاربر انجام شده است.
    </ParamField>

    <ParamField path="data.ActivityGroupId" type="string">
      شناسه گروهی است که این فعالیت در آن قرار دارد. این مقدار برای مرتبط‌کردن فعالیت‌هایی استفاده می‌شود که به یک مجموعه یا الگوی تکرار مشترک تعلق دارند. مقدار `00000000-0000-0000-0000-000000000000` یعنی گروهی برای فعالیت ثبت نشده است.
    </ParamField>

    <ParamField path="data.RecurrenceType" type="number">
      کد عددی نوع تکرار فعالیت است و مشخص می‌کند فعالیت با چه الگویی تکرار می‌شود.
    </ParamField>

    <ParamField path="data.RecurrenceData" type="number">
      فاصله تکرار را همراه RecurrenceType مشخص می‌کند؛ مثلا RecurrenceType=Daily و مقدار 10 یعنی تکرار هر ۱۰ روز.
    </ParamField>

    <ParamField path="data.RecurrenceEndDate" type="string">
      زمانی را نشان می‌دهد که تکرار این فعالیت باید در آن پایان پیدا کند. این مقدار برای فعالیت‌های تکرارشونده مشخص می‌کند ایجاد رخدادهای بعدی تا چه زمانی ادامه دارد.
    </ParamField>

    <ParamField path="data.FeedbackType" type="number">
      کد عددی نوع بازخورد ثبت‌شده برای این فعالیت است.
    </ParamField>

    <ParamField path="data.NextOccurrence" type="string">
      زمان رخداد بعدی این فعالیت در یک برنامه تکرارشونده است. این مقدار نشان می‌دهد نمونه بعدی فعالیت چه زمانی باید ایجاد یا اجرا شود. مقدار تاریخ حداقلی مانند `0001-01-01T00:00:00` می‌تواند نشان‌دهنده نبود رخداد بعدی باشد.
    </ParamField>

    <ParamField path="data.CanPoke" type="boolean">
      مشخص می‌کند عملیات داخلی `Poke` برای این فعالیت قابل انجام است یا خیر. مقدار `true` یعنی این عملیات برای فعالیت مجاز است و مقدار `false` یعنی قابل انجام نیست. `Poke`
    </ParamField>

    <ParamField path="data.IsAttended" type="boolean">
      مشخص می‌کند حضور در این فعالیت ثبت شده است یا خیر. `true` یعنی حضور برای فعالیت ثبت شده و مقدار `false` یعنی حضور
    </ParamField>

    <ParamField path="data.IsTicket" type="boolean">
      مشخص می‌کند این فعالیت در دیدار به‌عنوان تیکت شناخته می‌شود یا خیر. مقدار `true` یعنی فعالیت تیکت است و مقدار `false` یعنی به‌عنوان تیکت ثبت نشده است.
    </ParamField>

    <ParamField path="data.ActivityGroupType" type="number">
      کد عددی نوع گروهی است که فعالیت به آن تعلق دارد. این مقدار درباره ساختار یا کاربرد گروه فعالیت اطلاعات می‌دهد.
    </ParamField>

    <ParamField path="data.ContactIds" type="array">
      فهرست شناسه اشخاصی است که این فعالیت به آن‌ها مرتبط شده است. هر عضو Array شناسه یک شخص در دیدار است و نشان می‌دهد فعالیت برای پیگیری یا ثبت تعامل با چه افرادی ایجاد شده است.

      <Expandable title="property">
        <ParamField path="data.ContactIds[]" type="string">
          شناسه یکی از اشخاص مرتبط با این فعالیت است. این شخص می‌تواند یکی از مخاطبانی باشد که فعالیت برای پیگیری ارتباط با او ثبت شده است.
        </ParamField>
      </Expandable>
    </ParamField>

    <ParamField path="data.CompanyIds" type="array">
      فهرست شناسه شرکت‌هایی است که این فعالیت به آن‌ها مرتبط شده است. هر مقدار در این Array یک شرکت در دیدار را مشخص می‌کند و نشان می‌دهد فعالیت در ارتباط با کدام شرکت یا شرکت‌ها ثبت شده است.
    </ParamField>

    <ParamField path="data.UserIds" type="array">
      فهرست شناسه کاربرانی است که علاوه بر مسئول فعالیت، به این فعالیت مرتبط شده‌اند. هر مقدار در این Array به یکی از کاربران دیدار اشاره می‌کند.
    </ParamField>

    <ParamField path="data.Attachments" type="array">
      فهرست فایل‌هایی است که به این فعالیت پیوست شده‌اند. هر عضو آرایه باید نماینده یکی از فایل‌های متصل به فعالیت باشد.
    </ParamField>

    <ParamField path="data.Tags" type="array">
      فهرست تگ‌هایی است که برای دسته‌بندی یا پیدا کردن این فعالیت به آن متصل شده‌اند. هر عضو Array باید نماینده یکی از تگ‌های فعالیت باشد.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField path="changes" type="array">
  تغییراتی که باعث ارسال وب‌هوک ویرایش فعالیت شده‌اند در این Array قرار می‌گیرند. در وب‌هوک ایجاد، `changes` خالی است؛ چون فعالیت تازه ساخته شده و نسخه قبلی‌ای وجود ندارد که با آن مقایسه شود. در وب‌هوک ویرایش، هر عضو این Array مشخص می‌کند کدام فیلد فعالیت تغییر کرده، مقدار آن قبل از ویرایش چه بوده و پس از ویرایش به چه مقداری تبدیل شده است. Object `data` وضعیت نهایی فعالیت را نشان می‌دهد و `changes` فقط تغییرات همان عملیات ویرایش را گزارش می‌کند.

  <Expandable title="property">
    <ParamField path="changes[].propertyName" type="string">
      نام فیلدی از فعالیت که در این عملیات ویرایش تغییر کرده است. برای مثال مقدار `IsDone` یعنی وضعیت انجام فعالیت تغییر کرده و مقدار `DoneDate` یعنی زمان ثبت انجام فعالیت ویرایش شده است.
    </ParamField>

    <ParamField path="changes[].before" type="string | boolean">
      مقدار فیلد پیش از انجام این ویرایش است. با مقایسه این مقدار با `changes[].after` می‌توانید بفهمید اطلاعات فعالیت از چه مقداری به چه مقدار دیگری تغییر کرده است. نوع این مقدار به فیلد تغییرکرده بستگی دارد و می‌تواند رشته، عدد، Boolean یا `null` باشد.
    </ParamField>

    <ParamField path="changes[].after" type="string | boolean">
      مقدار فیلد پس از انجام و ذخیره ویرایش است. این مقدار نتیجه نهایی همان تغییر را نشان می‌دهد و باید با مقدار متناظر آن در Object `data` هم‌خوان باشد.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField path="meta" type="object">
  اطلاعات فنی مربوط به خود رویداد وب‌هوک است، نه اطلاعات فعالیت. این Object مشخص می‌کند چه عملیاتی انجام شده، رویداد متعلق به کدام بیزدامنه و فعالیت است، چه کاربری آن را ایجاد کرده، تغییر از چه منبعی آمده و Payload توسط کدام تنظیم وب‌هوک و در چندمین تلاش ارسال شده است.

  <Expandable title="property">
    <ParamField path="meta.actionType" type="number">
      کد عددی نوع عملیاتی است که باعث ارسال این وب‌هوک شده است. براساس نمونه‌های ارائه‌شده، مقدار `1` یعنی فعالیت ایجاد شده و مقدار `2` یعنی فعالیت ویرایش شده است.
    </ParamField>

    <ParamField path="meta.actionTypeTitle" type="string">
      عنوان متنی همان عملیاتی است که در `meta.actionType` به‌صورت عددی مشخص شده است. در نمونه ایجاد مقدار `Add` و در نمونه ویرایش مقدار `Change` ارسال شده است.
    </ParamField>

    <ParamField path="meta.bizDomainId" type="string">
      شناسه بیزدامنه‌ای است که فعالیت در آن ایجاد یا ویرایش شده است. این مقدار مشخص می‌کند رویداد وب‌هوک متعلق به کدام حساب یا فضای کاری دیدار است.
    </ParamField>

    <ParamField path="meta.entityId" type="string">
      شناسه فعالیتی است که رویداد وب‌هوک برای آن ثبت شده است. در این صفحه، این مقدار باید به همان فعالیتی اشاره کند که اطلاعات کامل آن داخل `data` قرار گرفته و معمولاً با `data.Id` یکسان است.
    </ParamField>

    <ParamField path="meta.entity" type="number">
      کد عددی داخلی نوع موجودیتی است که رویداد برای آن ثبت شده است payload موجودیت فعالیت است.
    </ParamField>

    <ParamField path="meta.entityTitle" type="string">
      عنوان فنی موجودیتی است که این وب‌هوک به آن مربوط می‌شود. در وب‌هوک‌های این صفحه مقدار `Activity` ارسال می‌شود و نشان می‌دهد رکورد موجود در `data` یک فعالیت است.
    </ParamField>

    <ParamField path="meta.id" type="number">
      شناسه رویدادی است که پس از ایجاد یا ویرایش فعالیت در سیستم ثبت شده و این Payload براساس آن ساخته شده است. این شناسه مربوط به خود رویداد وب‌هوک است، نه شناسه فعالیت.
    </ParamField>

    <ParamField path="meta.isBulkEdit" type="boolean">
      مشخص می‌کند تغییر فعالیت در قالب یک عملیات گروهی انجام شده است یا خیر. مقدار `true` یعنی این رویداد نتیجه ویرایش گروهی بوده و مقدار `false` یعنی فعالیت به‌صورت تکی ایجاد یا ویرایش شده است.
    </ParamField>

    <ParamField path="meta.timeStamp" type="string">
      زمانی است که رویداد ایجاد یا ویرایش فعالیت در دیدار ثبت شده و Payload وب‌هوک براساس آن تولید شده است. این زمان لزوماً با زمان‌های داخل خود فعالیت، مانند `DoneDate` یا `DueDate`، یکسان نیست.
    </ParamField>

    <ParamField path="meta.userId" type="string">
      شناسه کاربری است که عملیات منجر به ارسال این وب‌هوک را انجام داده است. در رویداد ایجاد، این مقدار به کاربری اشاره می‌کند که فعالیت را ایجاد کرده و در رویداد ویرایش، کاربری را مشخص می‌کند که تغییر را انجام داده است.
    </ParamField>

    <ParamField path="meta.webhookId" type="number">
      شناسه تنظیم وب‌هوکی است که این Payload را به آدرس مقصد ارسال کرده است. این مقدار برای تشخیص این است که رویداد توسط کدام وب‌هوک تعریف‌شده در دیدار ارسال شده است.
    </ParamField>

    <ParamField path="meta.changeSource" type="number">
      کد عددی منبعی است که عملیات ایجاد یا ویرایش فعالیت از طریق آن انجام شده است. نگاشت کامل کدها در اطلاعات ورودی مشخص نشده است؛ در نمونه ارائه‌شده، عنوان متناظر آن در `meta.changeSourceTitle` مقدار `Api` است.
    </ParamField>

    <ParamField path="meta.changeSourceTitle" type="string">
      عنوان متنی منبعی است که فعالیت از طریق آن ایجاد یا ویرایش شده است. برای مثال مقدار `Api` یعنی عملیات از طریق API انجام شده است.
    </ParamField>

    <ParamField path="meta.attempt" type="number">
      شماره تلاش برای ارسال همین رویداد وب‌هوک به آدرس مقصد است. مقدار `1` یعنی این Payload در اولین تلاش ارسال شده است؛
    </ParamField>
  </Expandable>
</ParamField>

## وب‌هوک ایجاد فعالیت چه زمانی ارسال می‌شود؟

وب‌هوک ایجاد فعالیت زمانی ارسال می‌شود که یک فعالیت جدید با موفقیت در دیدار ثبت شود. Object `data` شامل اطلاعات فعالیت تازه ایجادشده است. Array `changes` در این رویداد خالی ارسال می‌شود؛ زیرا رکورد برای اولین بار ساخته شده و نسخه قبلی برای مقایسه وجود ندارد.

## وب‌هوک ویرایش فعالیت چه زمانی ارسال می‌شود؟

وب‌هوک ویرایش فعالیت زمانی ارسال می‌شود که حداقل یکی از فیلدهای موجود در Object `data` تغییر کند. فیلدهای قابل گزارش در این Payload عبارت‌اند از:

**اطلاعات اصلی**

* `data.Id` — تغییر شناسه رکورد
* `data.Title` — تغییر عنوان
* `data.Note` — تغییر متن توضیح اولیه
* `data.ResultNote` — تغییر نتیجه ثبت‌شده
* `data.ActivityTypeId` — تغییر نوع فعالیت
* `data.Duration` — تغییر مدت

**وضعیت و تنظیمات**

* `data.IsPrivate` — تغییر وضعیت خصوصی‌بودن
* `data.IsDone` — تغییر وضعیت انجام‌شدن
* `data.IsPinned` — تغییر وضعیت پین‌شدن
* `data.IsDeleted` — تغییر وضعیت حذف
* `data.DueDateType` — تغییر نوع زمان‌بندی
* `data.RecurrenceType` — تغییر نوع تکرار
* `data.RecurrenceData` — تغییر تنظیم تکرار
* `data.FeedbackType` — تغییر نوع بازخورد
* `data.CanPoke` — تغییر امکان Poke
* `data.IsAttended` — تغییر وضعیت حضور
* `data.IsTicket` — تغییر وضعیت تیکت‌بودن
* `data.ActivityGroupType` — تغییر نوع گروه فعالیت

**ارتباطات و کاربران**

* `data.DealId` — تغییر معامله مرتبط
* `data.CaseId` — تغییر کارت مرتبط
* `data.CreatorId` — تغییر ایجادکننده رکورد
* `data.OwnerId` — تغییر مسئول رکورد
* `data.UpdaterId` — تغییر آخرین ویرایش‌کننده
* `data.ActivityGroupId` — تغییر گروه فعالیت
* `data.ContactIds` — تغییر اشخاص مرتبط
* `data.ContactIds[]` — تغییر اشخاص مرتبط
* `data.CompanyIds` — تغییر شرکت‌های مرتبط
* `data.UserIds` — تغییر کاربران مرتبط
* `data.Attachments` — تغییر پیوست‌ها
* `data.Tags` — تغییر تگ‌ها

**زمان‌ها**

* `data.DueDate` — تغییر زمان سررسید
* `data.FinishDate` — تغییر زمان پایان برنامه‌ریزی‌شده
* `data.OriginalDueDate` — تغییر زمان سررسید اولیه
* `data.DoneDate` — تغییر زمان انجام
* `data.RegisterDate` — تغییر زمان ایجاد
* `data.LastUpdateTime` — تغییر زمان آخرین ویرایش
* `data.LastPokeDate` — تغییر زمان آخرین Poke
* `data.RecurrenceEndDate` — تغییر زمان پایان تکرار
* `data.NextOccurrence` — تغییر زمان رخداد بعدی

اگر هیچ‌کدام از فیلدهای موجود در `data` تغییر نکنند، وب‌هوک ویرایش فعالیت ارسال نمی‌شود. Array `changes` عامل Trigger نیست؛ این Array فقط فیلدهای تغییرکرده را گزارش می‌کند و `data` وضعیت نهایی فعالیت را پس از ویرایش نشان می‌دهد.

## نمونه داده ارسالی

<CodeGroup>
  ```json وب‌هوک ایجاد فعالیت theme={null}
  {
    "data": {
      "Id": "826c9306-0a63-45db-82ca-d40f0dc84205",
      "Title": "وظیفه",
      "Note": "",
      "ResultNote": "",
      "ActivityTypeId": "9523b236-0657-4e62-9525-7d15fa799622",
      "IsPrivate": false,
      "IsDone": false,
      "IsPinned": false,
      "IsDeleted": false,
      "DueDateType": 2,
      "DueDate": "2026-08-02T16:30:00Z",
      "FinishDate": "2026-08-02T20:30:00Z",
      "OriginalDueDate": "2026-08-02T15:35:24.4230243+00:00",
      "DoneDate": "2026-08-02T15:35:02.526Z",
      "RegisterDate": "2026-08-02T15:35:24.4230243+00:00",
      "LastUpdateTime": "2026-08-02T15:35:24.4230243+00:00",
      "LastPokeDate": "2026-08-02T15:35:24.4230243+00:00",
      "Duration": 10,
      "DealId": "fb2fb2ad-34b1-458d-86a5-ddb68ec3176f",
      "CaseId": "00000000-0000-0000-0000-000000000000",
      "CreatorId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "OwnerId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "UpdaterId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "ActivityGroupId": "00000000-0000-0000-0000-000000000000",
      "RecurrenceType": 0,
      "RecurrenceData": 1,
      "RecurrenceEndDate": "2026-08-02T16:30:00Z",
      "FeedbackType": 0,
      "NextOccurrence": "0001-01-01T00:00:00",
      "CanPoke": false,
      "IsAttended": false,
      "IsTicket": false,
      "ActivityGroupType": 0,
      "ContactIds": [
        "a88c049a-159a-4ce3-8a24-a28f6bc8dacf"
      ],
      "CompanyIds": [],
      "UserIds": [],
      "Attachments": [],
      "Tags": []
    },
    "changes": [],
    "meta": {
      "actionType": 1,
      "actionTypeTitle": "Add",
      "bizDomainId": "b8233b92-7a57-42a3-8f3e-59fdbbb6c833",
      "entityId": "826c9306-0a63-45db-82ca-d40f0dc84205",
      "entity": 8787,
      "entityTitle": "Activity",
      "id": 639212817244871636,
      "isBulkEdit": false,
      "timeStamp": "2026-08-02T15:35:24.4871636Z",
      "userId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "webhookId": 32496,
      "changeSource": 1,
      "changeSourceTitle": "Api",
      "attempt": 1
    }
  }
  ```

  ```json وب‌هوک ویرایش فعالیت theme={null}
  {
    "data": {
      "Id": "826c9306-0a63-45db-82ca-d40f0dc84205",
      "Title": "وظیفه",
      "Note": "",
      "ResultNote": "\ndone\n\n",
      "ActivityTypeId": "9523b236-0657-4e62-9525-7d15fa799622",
      "IsPrivate": false,
      "IsDone": true,
      "IsPinned": false,
      "IsDeleted": false,
      "DueDateType": 2,
      "DueDate": "2026-08-02T16:30:00",
      "FinishDate": "2026-08-02T20:30:00",
      "OriginalDueDate": "2026-08-02T16:30:00",
      "DoneDate": "2026-08-02T15:36:30",
      "RegisterDate": "2026-08-02T15:35:24",
      "LastUpdateTime": "2026-08-02T15:35:24",
      "LastPokeDate": "2026-08-02T15:35:24",
      "Duration": 10,
      "DealId": "fb2fb2ad-34b1-458d-86a5-ddb68ec3176f",
      "CaseId": "00000000-0000-0000-0000-000000000000",
      "CreatorId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "OwnerId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "UpdaterId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "ActivityGroupId": "826c9306-0a63-45db-82ca-d40f0dc84205",
      "RecurrenceType": 0,
      "RecurrenceData": 1,
      "RecurrenceEndDate": "2026-08-02T16:30:00",
      "FeedbackType": 0,
      "NextOccurrence": "2026-08-02T16:30:00",
      "CanPoke": false,
      "IsAttended": false,
      "IsTicket": false,
      "ActivityGroupType": 0,
      "ContactIds": [
        "a88c049a-159a-4ce3-8a24-a28f6bc8dacf"
      ],
      "CompanyIds": [],
      "UserIds": [],
      "Attachments": [],
      "Tags": []
    },
    "changes": [
      {
        "propertyName": "DoneDate",
        "before": "2026-08-02T15:35:02",
        "after": "2026-08-02T15:36:30"
      },
      {
        "propertyName": "IsDone",
        "before": false,
        "after": true
      }
    ],
    "meta": {
      "actionType": 2,
      "actionTypeTitle": "Change",
      "bizDomainId": "b8233b92-7a57-42a3-8f3e-59fdbbb6c833",
      "entityId": "826c9306-0a63-45db-82ca-d40f0dc84205",
      "entity": 8787,
      "entityTitle": "Activity",
      "id": 639212817904755482,
      "isBulkEdit": false,
      "timeStamp": "2026-08-02T15:36:30.4755482Z",
      "userId": "58f610e7-061a-4efc-9a87-af7b31bde808",
      "webhookId": 32497,
      "changeSource": 1,
      "changeSourceTitle": "Api",
      "attempt": 1
    }
  }
  ```
</CodeGroup>
