CRM
get/api/v1/contactscrm:read
فهرست مخاطبان با میزان تعامل
پارامترهاq | query · string | Name, e-mail or phone |
companyId | query · string | Only this company |
limit | query · integer | Page size (1–100, default 50) |
cursor | query · string | `nextCursor` from the previous page |
پاسخ 200ContactList
فیلدهای پاسخitemsrequired | Contact & object[] | |
nextCursorrequired | string | null | Pass as `cursor` to get the next page; null on the last page |
curl -sS "https://pooshe.cloud/api/v1/contacts" \
-H "Authorization: Bearer $POOSHE_API_KEY"
post/api/v1/contactscrm:write
ساخت مخاطب
پارامترهاIdempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)namerequired | string | length 1–120 |
email | string | null | |
phone | string | null | |
jobTitle | string | null | |
note | string | length 0–2000 |
companyId | string | null | |
companyName | string | null | |
ownerId | string | length 0–40 |
پاسخ 201Contact
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
namerequired | string | |
emailrequired | string | null | |
phonerequired | string | null | |
jobTitlerequired | string | null | |
noterequired | string | |
companyIdrequired | string | null | |
ownerIdrequired | string | Opaque id (cuid2, ≤ 40 chars) |
createdAtrequired | string (date-time) | |
updatedAtrequired | string (date-time) | |
curl -sS -X POST "https://pooshe.cloud/api/v1/contacts" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"name":"رضا احمدی","email":"reza@example.com","companyName":"شرکت نمونه"}'
get/api/v1/contacts/{id}crm:read
یک مخاطب با لینکها، رویدادها و پاسخها
پارامترهاidrequired | path · string | |
پاسخ 200ContactDetail
فیلدهای پاسخcontactrequired | Contact | |
ownerrequired | object | null | |
linksrequired | any[] | |
timelinerequired | any[] | |
responsesrequired | any[] | |
canEditrequired | boolean | |
curl -sS "https://pooshe.cloud/api/v1/contacts/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY"
patch/api/v1/contacts/{id}crm:write
ویرایش مخاطب
پارامترهاidrequired | path · string | |
Idempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)name | string | length 1–120 |
email | string | null | |
phone | string | null | |
jobTitle | string | null | |
note | string | length 0–2000 |
companyId | string | null | |
companyName | string | null | |
ownerId | string | length 0–40 |
پاسخ 200Contact
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
namerequired | string | |
emailrequired | string | null | |
phonerequired | string | null | |
jobTitlerequired | string | null | |
noterequired | string | |
companyIdrequired | string | null | |
ownerIdrequired | string | Opaque id (cuid2, ≤ 40 chars) |
createdAtrequired | string (date-time) | |
updatedAtrequired | string (date-time) | |
curl -sS -X PATCH "https://pooshe.cloud/api/v1/contacts/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{}'
delete/api/v1/contacts/{id}crm:write
حذف مخاطب
پارامترهاidrequired | path · string | |
پاسخ 200Ok
فیلدهای پاسخokrequired | true | |
curl -sS -X DELETE "https://pooshe.cloud/api/v1/contacts/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY"
get/api/v1/companiescrm:read
فهرست شرکتها
پارامترهاq | query · string | Name or domain |
پاسخ 200CompanyList
فیلدهای پاسخitemsrequired | Company[] | |
curl -sS "https://pooshe.cloud/api/v1/companies" \
-H "Authorization: Bearer $POOSHE_API_KEY"
post/api/v1/companiescrm:write
ساخت شرکت
پارامترهاIdempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)namerequired | string | length 1–120 |
domain | string | null | |
note | string | length 0–2000 |
پاسخ 201Company
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
namerequired | string | |
domainrequired | string | null | |
noterequired | string | |
createdAtrequired | string (date-time) | |
updatedAtrequired | string (date-time) | |
curl -sS -X POST "https://pooshe.cloud/api/v1/companies" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"name":"…"}'
get/api/v1/companies/{id}crm:read
یک شرکت با مخاطبانش
پارامترهاidrequired | path · string | |
پاسخ 200CompanyDetail
فیلدهای پاسخcompanyrequired | Company | |
curl -sS "https://pooshe.cloud/api/v1/companies/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY"
patch/api/v1/companies/{id}crm:write
ویرایش شرکت
پارامترهاidrequired | path · string | |
Idempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)name | string | length 1–120 |
domain | string | null | |
note | string | length 0–2000 |
پاسخ 200Company
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
namerequired | string | |
domainrequired | string | null | |
noterequired | string | |
createdAtrequired | string (date-time) | |
updatedAtrequired | string (date-time) | |
curl -sS -X PATCH "https://pooshe.cloud/api/v1/companies/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{}'
delete/api/v1/companies/{id}crm:write
حذف شرکت (مخاطبانش میمانند)
پارامترهاidrequired | path · string | |
پاسخ 200Ok
فیلدهای پاسخokrequired | true | |
curl -sS -X DELETE "https://pooshe.cloud/api/v1/companies/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY"
get/api/v1/leadscrm:read
سرنخهای داغ بر اساس تعامل اخیر
پارامترهاscope | query · "team" | `team` for every member’s contacts (needs the permission) |
پاسخ 200LeadList
فیلدهای پاسخitemsrequired | object[] | |
curl -sS "https://pooshe.cloud/api/v1/leads" \
-H "Authorization: Bearer $POOSHE_API_KEY"
get/api/v1/followupscrm:read
یادآوریهای پیگیری
پارامترهاcontactId | query · string | Only this contact |
پاسخ 200FollowUpList
فیلدهای پاسخitemsrequired | FollowUp[] | |
curl -sS "https://pooshe.cloud/api/v1/followups" \
-H "Authorization: Bearer $POOSHE_API_KEY"
post/api/v1/followupscrm:write
ساخت یادآوری پیگیری
پارامترهاIdempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)contactIdrequired | string | length 0–40 |
dueInDays | integer | 0…365 |
dueAt | string (date-time) | |
note | string | length 0–1000 |
پاسخ 201FollowUp
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
contactIdrequired | string | Opaque id (cuid2, ≤ 40 chars) |
ownerIdrequired | string | Opaque id (cuid2, ≤ 40 chars) |
kindrequired | string | |
statusrequired | "open" | "done" | "dismissed" | |
dueAtrequired | string (date-time) | |
noterequired | string | |
doneAtrequired | string (date-time) | null | |
createdAtrequired | string (date-time) | |
curl -sS -X POST "https://pooshe.cloud/api/v1/followups" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"contactId":"…"}'
patch/api/v1/followups/{id}crm:write
انجامشده یا کنار گذاشتن پیگیری
پارامترهاidrequired | path · string | |
Idempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)statusrequired | "done" | "dismissed" | |
پاسخ 200Ok
فیلدهای پاسخokrequired | true | |
curl -sS -X PATCH "https://pooshe.cloud/api/v1/followups/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"status":"done"}'
get/api/v1/notescrm:read
یادداشتهای مخاطب، شرکت یا فرصت
پارامترهاcontactId | query · string | Contact |
companyId | query · string | Company |
opportunityId | query · string | Opportunity |
پاسخ 200NoteList
فیلدهای پاسخnotesrequired | Note[] | |
curl -sS "https://pooshe.cloud/api/v1/notes" \
-H "Authorization: Bearer $POOSHE_API_KEY"
post/api/v1/notescrm:write
افزودن یادداشت
پارامترهاIdempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)bodyrequired | string | length 1–4000 |
contactId | string | length 0–40 |
companyId | string | length 0–40 |
opportunityId | string | length 0–40 |
پاسخ 201Note
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
bodyrequired | string | |
authorIdrequired | string | Opaque id (cuid2, ≤ 40 chars) |
contactIdrequired | string | null | |
companyIdrequired | string | null | |
opportunityIdrequired | string | null | |
createdAtrequired | string (date-time) | |
curl -sS -X POST "https://pooshe.cloud/api/v1/notes" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"body":"…"}'
get/api/v1/opportunitiescrm:read
فرصتهای فروش و جمع هر مرحله
پارامترهاcontactId | query · string | Contact |
companyId | query · string | Company |
پاسخ 200OpportunityList
فیلدهای پاسخopportunitiesrequired | Opportunity[] | |
byStagerequired | object | |
curl -sS "https://pooshe.cloud/api/v1/opportunities" \
-H "Authorization: Bearer $POOSHE_API_KEY"
post/api/v1/opportunitiescrm:write
ساخت فرصت فروش
پارامترهاIdempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)titlerequired | string | length 1–160 |
contactId | string | null | |
companyId | string | null | |
stage | "lead" | "qualified" | "proposal" | "negotiation" | "won" | "lost" | |
valueRial | string | number | null | |
expectedCloseAt | string (date-time) | null | |
lostReason | string | null | |
ownerId | string | length 0–40 |
پاسخ 201Opportunity
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
titlerequired | string | |
stagerequired | string | |
valueRialrequired | string | null | |
contactIdrequired | string | null | |
companyIdrequired | string | null | |
ownerIdrequired | string | Opaque id (cuid2, ≤ 40 chars) |
expectedCloseAtrequired | string (date-time) | null | |
closedAtrequired | string (date-time) | null | |
lostReasonrequired | string | null | |
createdAtrequired | string (date-time) | |
updatedAtrequired | string (date-time) | |
curl -sS -X POST "https://pooshe.cloud/api/v1/opportunities" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{"title":"قرارداد سالانه","valueRial":"1000000000","stage":"proposal"}'
get/api/v1/opportunities/{id}crm:read
یک فرصت فروش
پارامترهاidrequired | path · string | |
پاسخ 200OpportunityDetail
فیلدهای پاسخopportunity | Opportunity | |
curl -sS "https://pooshe.cloud/api/v1/opportunities/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY"
patch/api/v1/opportunities/{id}crm:write
ویرایش فرصت (مرحله، مبلغ، تاریخ…)
پارامترهاidrequired | path · string | |
Idempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
بدنه درخواست (JSON)title | string | length 1–160 |
contactId | string | null | |
companyId | string | null | |
stage | "lead" | "qualified" | "proposal" | "negotiation" | "won" | "lost" | |
valueRial | string | number | null | |
expectedCloseAt | string (date-time) | null | |
lostReason | string | null | |
ownerId | string | length 0–40 |
پاسخ 200Opportunity
فیلدهای پاسخidrequired | string | Opaque id (cuid2, ≤ 40 chars) |
titlerequired | string | |
stagerequired | string | |
valueRialrequired | string | null | |
contactIdrequired | string | null | |
companyIdrequired | string | null | |
ownerIdrequired | string | Opaque id (cuid2, ≤ 40 chars) |
expectedCloseAtrequired | string (date-time) | null | |
closedAtrequired | string (date-time) | null | |
lostReasonrequired | string | null | |
createdAtrequired | string (date-time) | |
updatedAtrequired | string (date-time) | |
curl -sS -X PATCH "https://pooshe.cloud/api/v1/opportunities/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{}'
patch/api/v1/responses/{id}crm:write
رسیدگیشده کردن پاسخ بیننده
پارامترهاidrequired | path · string | |
Idempotency-Key | header · string | Any unique string (≤ 200 printable ASCII; a UUID is ideal). Retrying with the same key and body returns the first response (Idempotent-Replayed: true) instead of acting twice. Kept 24 h. Same key, different body → 422 idempotency_key_reused; while the first is still running → 409 idempotency_in_progress. |
پاسخ 200Ok
فیلدهای پاسخokrequired | true | |
curl -sS -X PATCH "https://pooshe.cloud/api/v1/responses/ID" \
-H "Authorization: Bearer $POOSHE_API_KEY" \
-H "Idempotency-Key: $(uuidgen)"