تگها (Tags)
تگها (Tags) برچسبهایی برای دستهبندی دقیقتر و فیلتر کردن پستها درون هر بخش (Board) هستند. هر تگ به یک بخش خاص تعلق دارد و برخلاف دستهبندیها، هر پست میتواند چندین تگ داشته باشد.
تگها در سطح هر بخش تعریف میشوند و بین بخشها مشترک نیستند. هر پست میتواند چندین تگ داشته باشد.
نوعهای مشترک (Common Types)
| نام | توضیح |
|---|---|
Tag | شیء اصلی تگ |
PostTag | شیء رابطه پست و تگ |
User | شیء ایجاد کننده تگ |
فیلدهای Tag:
| فیلد | نوع | توضیح |
|---|---|---|
id | number | شناسه یکتای تگ |
created_at | string | تاریخ و زمان ایجاد (فرمت ISO 8601) |
board_id | number | شناسه بخش مربوطه |
workspace_id | number | شناسه فضای کاری مربوطه |
name | string | نام تگ |
posts_count | number | تعداد کل پستهای ثبت شده با این تگ |
author | User | اطلاعات کاربر سازنده |
فیلدهای PostTag:
| فیلد | نوع | توضیح |
|---|---|---|
id | number | شناسه یکتا |
created_at | string | تاریخ و زمان ایجاد (فرمت ISO 8601) |
post_id | number | شناسه پست |
workspace_id | number | شناسه محیطکاری |
tag | Tag | اطلاعات تگ |
author | User | اطلاعات ایجادکننده |
فیلدهای User:
| فیلد | نوع | توضیح |
|---|---|---|
id | string | شناسه یکتای کاربر (UUID) |
created_at | string | تاریخ و زمان ایجاد (فرمت ISO 8601) |
email | string | ایمیل |
full_name | string | نام کامل |
avatar_url | string | null | آدرس آواتار |
مدیریت تگها (Tags)
دریافت لیست تگهای یک بخش
GET https://api.fidegah.ir/v1/boards/:boardId/tags
curl -X GET https://api.fidegah.ir/v1/boards/{boardId}/tags \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"پارامترهای Query (Query Parameters):
| پارامتر | نوع | توضیح |
|---|---|---|
search | string | جستجو براساس نام |
sortBy | string | فیلد مرتبسازی (پیشفرض created_at) |
sortOrder | 'asc' | 'desc' | جهت مرتبسازی (پیشفرض desc) |
خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
data | []Tag | آرایه شامل لیست تگها |
pagination | Pagination | اطلاعات صفحهبندی (مشاهده جزئیات) |
دریافت تگ با شناسه
GET https://api.fidegah.ir/v1/boards/:boardId/tags/:tagId
curl -X GET https://api.fidegah.ir/v1/boards/{boardId}/tags/{tagId} \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"پارامترهای مسیر (Path Parameters):
| پارامتر | نوع | توضیح |
|---|---|---|
boardId | number | شناسه بخش مربوطه |
tagId | number | شناسه تگ مورد نظر |
خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
data | Tag | شیء تگ درخواستی |
ایجاد تگ جدید
POST https://api.fidegah.ir/v1/boards/:boardId/tags
curl -X POST https://api.fidegah.ir/v1/boards/{boardId}/tags \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "تگ من"
}'بدنه درخواست (Request Body):
| پارامتر | نوع | ضرورت | توضیح |
|---|---|---|---|
name | string | الزامی | نام تگ (حداقل ۳، حداکثر ۱۰ کاراکتر) |
خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
data | Tag | شیء تگ ایجاد شده |
ویرایش تگ
PATCH https://api.fidegah.ir/v1/boards/:boardId/tags/:tagId
curl -X PATCH https://api.fidegah.ir/v1/boards/{boardId}/tags/{tagId} \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "نام جدید"
}'پارامترهای مسیر (Path Parameters):
| پارامتر | نوع | توضیح |
|---|---|---|
boardId | number | شناسه بخش مربوطه |
tagId | number | شناسه تگ مورد نظر |
بدنه درخواست (Request Body - همگی اختیاری):
| پارامتر | نوع | توضیح |
|---|---|---|
name | string | نام جدید تگ |
خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
data | Tag | شیء تگ پس از ویرایش |
حذف تگ
DELETE https://api.fidegah.ir/v1/boards/:boardId/tags/:tagId
curl -X DELETE https://api.fidegah.ir/v1/boards/{boardId}/tags/{tagId} \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"پارامترهای مسیر (Path Parameters):
| پارامتر | نوع | توضیح |
|---|---|---|
boardId | number | شناسه بخش مربوطه |
tagId | number | شناسه تگ مورد نظر |
خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
message | string | پیام نتیجه حذف |
تگگذاری پستها (Post Tags)
دریافت لیست تگهای یک پست
GET https://api.fidegah.ir/v1/posts/:postId/tags
curl -X GET https://api.fidegah.ir/v1/posts/{postId}/tags \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"پارامترهای Query (Query Parameters):
| پارامتر | نوع | توضیح |
|---|---|---|
search | string | جستجو براساس نام تگ |
sortBy | string | فیلد مرتبسازی (پیشفرض created_at) |
sortOrder | 'asc' | 'desc' | جهت مرتبسازی (پیشفرض desc) |
خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
data | []PostTag | آرایه شامل لیست تگها |
pagination | Pagination | اطلاعات صفحهبندی (مشاهده جزئیات) |
اضافه کردن تگ به یک پست
POST https://api.fidegah.ir/v1/posts/:postId/tags/:tagId
curl -X POST https://api.fidegah.ir/v1/posts/{postId}/tags/{tagId} \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
data | PostTag | شیء تگ اضافه شده |
حذف تگ از یک پست
DELETE https://api.fidegah.ir/v1/posts/:postId/tags/:tagId
curl -X DELETE https://api.fidegah.ir/v1/posts/{postId}/tags/{tagId} \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json"پارامترهای مسیر (Path Parameters):
| پارامتر | نوع | توضیح |
|---|---|---|
postId | number | شناسه پست مربوطه |
tagId | number | شناسه تگ مورد نظر |
خروجی درخواست:
| فیلد | نوع | توضیح |
|---|---|---|
success | boolean | وضعیت موفقیتآمیز بودن درخواست |
message | string | پیام نتیجه حذف |
دستهبندیها (Categories)
دستهبندیها (Categories) روشی برای گروهبندی و فیلتر کردن پستها درون هر بخش (Board) هستند. هر دستهبندی به یک بخش خاص تعلق دارد و میتواند شامل چندین پست باشد.
پستها (Posts)
پستها (Posts) واحد اصلی ثبت بازخورد، پیشنهاد یا گزارش باگ در هر بخش هستند. هر پست میتواند دارای دستهبندی، وضعیت و تگهای مختلف باشد.
