pachca-messages
npx skills add https://github.com/pachca/openapi --skill pachca-messages
Agent 安装分布
Skill 文档
pachca-messages
Base URL: https://api.pachca.com/api/shared/v1
ÐвÑоÑизаÑиÑ: Authorization: Bearer <ACCESS_TOKEN>
Токен: Ð±Ð¾Ñ (ÐвÑомаÑизаÑии â ÐнÑегÑаÑии â API) или полÑзоваÑÐµÐ»Ñ (ÐвÑомаÑизаÑии â API).
ÐÑли Ñокен неизвеÑÑен â ÑпÑоÑи Ñ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ð¿ÐµÑед вÑполнением запÑоÑов.
Ðогда иÑполÑзоваÑÑ
- оÑпÑавиÑÑ ÑообÑение
- оÑвеÑиÑÑ Ð² ÑÑед
- пÑикÑепиÑÑ Ñайл
- загÑÑзиÑÑ Ñайл
- Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ÑообÑениÑ
- добавиÑÑ ÑеакÑиÑ
- иÑÑоÑÐ¸Ñ ÑообÑений
- закÑепиÑÑ ÑообÑение
- ÑедакÑиÑоваÑÑ ÑообÑение
- ÑдалиÑÑ ÑообÑение
- подпиÑаÑÑÑÑ Ð½Ð° ÑÑед
- ÑазоÑлаÑÑ Ñведомление
- ÑпомÑнÑÑÑ Ð¿Ð¾Ð»ÑзоваÑелÑ
- кнопки
- пÑоÑÑениÑ
- лиÑное ÑообÑение
Ðогда ÐРиÑполÑзоваÑÑ
- полÑÑиÑÑ Ð¿ÑоÑилÑ, мой пÑоÑилÑ, ÑÑÑановиÑÑ ÑÑаÑÑÑ â pachca-profile
- найÑи ÑоÑÑÑдника, ÑоздаÑÑ Ð¿Ð¾Ð»ÑзоваÑелÑ, ÑпиÑок ÑоÑÑÑдников â pachca-users
- ÑоздаÑÑ ÐºÐ°Ð½Ð°Ð», ÑоздаÑÑ Ð±ÐµÑедÑ, ÑоздаÑÑ ÑÐ°Ñ â pachca-chats
- наÑÑÑоиÑÑ Ð±Ð¾Ñа, Ð²ÐµÐ±Ñ Ñк, webhook â pachca-bots
- показаÑÑ ÑоÑмÑ, инÑеÑакÑÐ¸Ð²Ð½Ð°Ñ ÑоÑма, модалÑное окно â pachca-forms
- ÑоздаÑÑ Ð·Ð°Ð´Ð°ÑÑ, ÑпиÑок задаÑ, напоминание â pachca-tasks
- поиÑк ÑообÑений, найÑи ÑообÑение, полноÑекÑÑовÑй поиÑк â pachca-search
- аÑдиÑ, жÑÑнал ÑобÑÑий, безопаÑноÑÑÑ â pachca-security
ÐоÑаговÑе ÑÑенаÑии
ÐайÑи ÑÐ°Ñ Ð¿Ð¾ имени и оÑпÑавиÑÑ ÑообÑение
- GET /chats â пеÑебеÑи ÑезÑлÑÑаÑÑ, найди нÑжнÑй по полÑ
name - ÐÑпÑÐ°Ð²Ñ POST /messages Ñ
"entity_id": chat.id
curl "https://api.pachca.com/api/shared/v1/messages" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"entity_id":12345,"content":"ТекÑÑ ÑообÑениÑ"}}'
entity_typeпо ÑмолÑаниÑ"discussion", можно не ÑказÑваÑÑ. GET /chats не поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ Ð¿Ð¾Ð¸Ñк по имени â пеÑебиÑай ÑÑÑаниÑÑ.
ÐÑпÑавиÑÑ ÑообÑение в канал или беÑÐµÐ´Ñ (еÑли chat_id извеÑÑен)
- ÐÑпÑÐ°Ð²Ñ POST /messages Ñ
"entity_id": chat_id
"entity_type": "discussion"иÑполÑзÑеÑÑÑ Ð¿Ð¾ ÑмолÑаниÑ, можно не ÑказÑваÑÑ
ÐÑпÑавиÑÑ Ð»Ð¸Ñное ÑообÑение полÑзоваÑелÑ
- ÐпÑедели
user_idполÑÑаÑÐµÐ»Ñ (GET /users или из конÑекÑÑа) - ÐÑпÑÐ°Ð²Ñ POST /messages Ñ
"entity_type": "user","entity_id": user_id
curl "https://api.pachca.com/api/shared/v1/messages" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"entity_type":"user","entity_id":186,"content":"ÐÑивеÑ!"}}'
СоздаваÑÑ ÑÐ°Ñ Ð½Ðµ ÑÑебÑеÑÑÑ â он ÑоздаÑÑÑÑ Ð°Ð²ÑомаÑиÑеÑки
ÐÑвеÑиÑÑ Ð² ÑÑед (комменÑаÑий к ÑообÑениÑ)
- ÐолÑÑи или Ñоздай ÑÑед: POST /messages/{id}/thread (
idâ id ÑодиÑелÑÑкого ÑообÑениÑ) - Ðз оÑвеÑа возÑми id ÑÑеда (
thread.id) - ÐÑпÑÐ°Ð²Ñ POST /messages Ñ
"entity_type": "thread","entity_id": thread.id
curl "https://api.pachca.com/api/shared/v1/messages/154332686/thread" \
-H "Authorization: Bearer $TOKEN"
# ÐÑвеÑ: {"data":{"id":265142,"chat_id":2637266155,"message_id":154332686,...}}
curl "https://api.pachca.com/api/shared/v1/messages" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"entity_type":"thread","entity_id":265142,"content":"ÐÑÐ²ÐµÑ Ð² ÑÑед"}}'
ÐÑли ÑÑед Ñже ÑÑÑеÑÑвÑеÑ, POST /messages/{id}/thread веÑнÑÑ ÑÑÑеÑÑвÑÑÑий. ÐлÑÑеÑнаÑивно можно иÑполÑзоваÑÑ
"entity_type": "discussion"+"entity_id": thread.chat_id.skip_invite_mentions: trueâ не добавлÑÑÑ ÑпомÑнÑÑÑÑ Ð¿Ð¾Ð»ÑзоваÑелей в ÑÑед авÑомаÑиÑеÑки.
ÐÑвеÑиÑÑ Ð¿Ð¾Ð»ÑзоваÑелÑ, коÑоÑÑй напиÑал боÑÑ
- ÐебÑ
Ñк ÑодеÑжиÑ
entity_typeâ он однознаÑно опÑеделÑÐµÑ ÐºÐ¾Ð½ÑекÑÑ:"user"â лиÑное ÑообÑение боÑÑ,"thread"â ÑообÑение в ÑÑеде,"discussion"â ÑообÑение в канале или беÑеде - DM (
entity_type: "user"): оÑвеÑÑ POST /messages Ñ"entity_type": "user","entity_id":user_idиз Ð²ÐµÐ±Ñ Ñка - ТÑед (
entity_type: "thread"): вложеннÑÑ ÑÑедов Ð½ÐµÑ â оÑвеÑÑ Ð² ÑÐ¾Ñ Ð¶Ðµ ÑÑед: POST /messages Ñ"entity_type": "thread","entity_id":entity_idиз Ð²ÐµÐ±Ñ Ñка,"parent_message_id":idÑообÑÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ð¸Ð· Ð²ÐµÐ±Ñ Ñка - ÐеÑеда/канал (
entity_type: "discussion"): вÑбеÑи ÑÑÑаÑÐµÐ³Ð¸Ñ â inline-оÑÐ²ÐµÑ (POST /messages c"parent_message_id":idÑообÑениÑ) или ÑÑед (POST /messages/{id}/thread â оÑÐ²ÐµÑ Ð² ÑÑед)
parent_message_idвизÑалÑно пÑивÑзÑÐ²Ð°ÐµÑ Ð¾ÑÐ²ÐµÑ Ðº конкÑеÑÐ½Ð¾Ð¼Ñ ÑообÑÐµÐ½Ð¸Ñ (показÑваеÑÑÑ ÐºÐ°Ðº «в оÑÐ²ÐµÑ Ð½Ð°â¦Â»). Ð ÑÑеде обÑзаÑелен Ð´Ð»Ñ ÑепоÑки диалога. РобÑÑном ÑаÑе â алÑÑеÑнаÑива ÑÑедÑ. ÐÑли боÑа вÑзвали в ÑÑеде и дÑÑÐ³Ð¸Ñ ÑообÑений в ÑÑеде Ð½ÐµÑ â оÑновной конÑекÑÑ Ð² ÑодиÑелÑÑком ÑообÑении ÑÑеда. Ð Ð²ÐµÐ±Ñ Ñке Ñже еÑÑÑthread.message_idâ полÑÑи ÑодиÑелÑÑкое ÑообÑение: GET /messages/{id}.
ÐÑпÑавиÑÑ ÑообÑение Ñ Ñайлами
- ÐÐ»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ Ñайла: POST /uploads â полÑÑи
key(Ñ${filename}),direct_url,policy, подпиÑÑ - ÐÐ»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ Ñайла: подÑÑÐ°Ð²Ñ Ð¸Ð¼Ñ Ñайла вмеÑÑо
${filename}вkey, заÑем загÑÑзи Ñайл POST наdirect_url(multipart/form-data, без авÑоÑизаÑии) - СобеÑи маÑÑив
filesиз вÑÐµÑ Ð·Ð°Ð³ÑÑженнÑÑ Ñайлов (key,name,file_type,size) - ÐÑпÑÐ°Ð²Ñ POST /messages Ñ Ð¼Ð°ÑÑивом
filesâ одно ÑообÑение Ñо вÑеми Ñайлами
curl "https://api.pachca.com/api/shared/v1/uploads" \
-H "Authorization: Bearer $TOKEN"
# ÐÑвеÑ: {"key":".../${filename}","direct_url":"https://...","policy":"...","x-amz-signature":"...",...}
curl -X POST <direct_url> \
-F "Content-Disposition=attachment" -F "acl=private" \
-F "policy=<policy>" -F "x-amz-credential=<credential>" \
-F "x-amz-algorithm=<algorithm>" -F "x-amz-date=<date>" \
-F "x-amz-signature=<signature>" \
-F "key=<key_Ñ_подÑÑавленнÑм_именем>" -F "file=@report.pdf"
curl "https://api.pachca.com/api/shared/v1/messages" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"entity_id":12345,"content":"СмоÑÑи Ñайл","files":[{"key":"uploads/.../report.pdf","name":"report.pdf","file_type":"file","size":12345}]}}'
Ð¤Ð°Ð¹Ð»Ñ Ð½Ðµ пеÑедаÑÑÑÑ inline. ÐагÑÑзка двÑÑ ÑаговаÑ: ÑнаÑала POST /uploads (паÑамеÑÑÑ), заÑем POST на
direct_url(Ñам Ñайл на S3). Шаги 1-2 повÑоÑÑÑÑÑÑ Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ Ñайла оÑделÑно, а ÑообÑение оÑпÑавлÑеÑÑÑ Ð¾Ð´Ð¸Ð½ Ñаз Ñо вÑеми Ñайлами.
ÐÑпÑавиÑÑ ÑообÑение Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°Ð¼Ð¸
- СÑоÑмиÑÑй маÑÑив
buttonsâ маÑÑив ÑÑÑок, ÐºÐ°Ð¶Ð´Ð°Ñ ÑÑÑока â маÑÑив кнопок:[[{кнопка1, кнопка2}, ...], ...] - ÐÐ°Ð¶Ð´Ð°Ñ ÐºÐ½Ð¾Ð¿ÐºÐ°:
{"text": "ТекÑÑ"}+ либоurl(ÑÑÑлка), либоdata(callback Ð´Ð»Ñ Ð²ÐµÐ±Ñ Ñка) - ÐÑпÑÐ°Ð²Ñ POST /messages Ñ Ð¿Ð¾Ð»ÐµÐ¼
buttons - ÐажаÑÐ¸Ñ ÐºÐ½Ð¾Ð¿Ð¾Ðº пÑÐ¸Ñ Ð¾Ð´ÑÑ Ð² иÑÑ Ð¾Ð´ÑÑий Ð²ÐµÐ±Ñ Ñк (ÑобÑÑие “ÐажаÑие кнопок”)
curl "https://api.pachca.com/api/shared/v1/messages" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"entity_id":12345,"content":"ÐÑбеÑи дейÑÑвие","buttons":[[{"text":"ÐодÑобнее","url":"https://example.com"},{"text":"ÐÑлиÑно!","data":"awesome"}]]}}'
buttonsâ маÑÑив маÑÑивов (ÑÑÑоки à кнопки). ÐакÑимÑм 100 кнопок, до 8 в ÑÑÑоке. Ðнопка ÑurlоÑкÑÑÐ²Ð°ÐµÑ ÑÑÑлкÑ, Ñdataâ оÑпÑавлÑÐµÑ ÑобÑÑие на Ð²ÐµÐ±Ñ Ñк.
ÐолÑÑиÑÑ Ð¸ÑÑоÑÐ¸Ñ ÑообÑений ÑаÑа
- GET /messages?chat_id={id}
- ÐагинаÑиÑ:
limit(1-50, по ÑмолÑÐ°Ð½Ð¸Ñ 50) иcursor(изmeta.paginate.next_page) - СоÑÑиÑовка:
sort[id]=ascилиsort[id]=desc(по ÑмолÑаниÑ"desc")
curl "https://api.pachca.com/api/shared/v1/messages?chat_id=12345&limit=50&sort[id]=asc" \
-H "Authorization: Bearer $TOKEN"
ÐÐ»Ñ ÑообÑений ÑÑеда иÑполÑзÑй
chat_idÑÑеда (thread.chat_id). ÐагинаÑÐ¸Ñ cursor-based, не page-based.
ÐолÑÑиÑÑ Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸Ð· ÑообÑениÑ
- GET /messages/{id} â в поле
files[]каждÑй обÑÐµÐºÑ ÑодеÑжиÑurl(пÑÑÐ¼Ð°Ñ ÑÑÑлка),name,file_type,size - СкаÑай нÑжнÑе ÑÐ°Ð¹Ð»Ñ Ð¿Ð¾
files[].urlâ ÑÑÑлка пÑÑмаÑ, авÑоÑизаÑÐ¸Ñ Ð½Ðµ ÑÑебÑеÑÑÑ
curl "https://api.pachca.com/api/shared/v1/messages/154332686" \
-H "Authorization: Bearer $TOKEN"
# ÐÑвеÑ: {"data":{"id":154332686,"content":"СмоÑÑи Ñайл","files":[{"url":"https://...","name":"report.pdf","file_type":"file","size":12345}],...}}
ÐÐµÐ±Ñ Ñк о новом ÑообÑении ÐÐ ÑодеÑÐ¶Ð¸Ñ Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ð¹ â поле
filesоÑÑÑÑÑÑвÑÐµÑ Ð´Ð°Ð¶Ðµ еÑли ÑÐ°Ð¹Ð»Ñ ÐµÑÑÑ. ÐÑи анализе лÑбого ÑообÑÐµÐ½Ð¸Ñ (из Ð²ÐµÐ±Ñ Ñка, из иÑÑоÑии ÑаÑа) вÑегда пÑовеÑÑй Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ÑеÑез GET /messages/{id} â еÑлиfilesнепÑÑÑой, в ÑообÑении еÑÑÑ ÑайлÑ, коÑоÑÑе могÑÑ Ð±ÑÑÑ Ð²Ð°Ð¶Ð½Ñ Ð´Ð»Ñ ÐºÐ¾Ð½ÑекÑÑа.
ÐакÑепиÑÑ/оÑкÑепиÑÑ ÑообÑение
- ÐакÑепиÑÑ: POST /messages/{id}/pin
- ÐÑкÑепиÑÑ: DELETE /messages/{id}/pin
Ð ÑаÑе Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð½ÐµÑколÑко закÑеплÑннÑÑ ÑообÑений.
ÐодпиÑаÑÑÑÑ Ð½Ð° ÑÑед ÑообÑениÑ
- POST /messages/{id}/thread â еÑли ÑÑеда неÑ, он бÑÐ´ÐµÑ Ñоздан; еÑли еÑÑÑ â веÑнÑÑÑÑ ÑÑÑеÑÑвÑÑÑий
- Ðз оÑвеÑа возÑми
chat_idÑÑеда (data.chat_id) - ÐÐ¾Ð±Ð°Ð²Ñ Ð±Ð¾Ñа (или полÑзоваÑелÑ) в ÑÑаÑÑники ÑаÑа ÑÑеда: POST /chats/{id}/members Ñ
member_ids - ТепеÑÑ Ð±Ð¾Ñ Ð±ÑÐ´ÐµÑ Ð¿Ð¾Ð»ÑÑаÑÑ Ð²ÐµÐ±Ñ Ñк-ÑобÑÑÐ¸Ñ Ð¾ новÑÑ ÑообÑениÑÑ Ð² ÑÑом ÑÑеде
POST /messages/{id}/thread идемпоÑенÑен â безопаÑно вÑзÑваÑÑ Ð¿Ð¾Ð²ÑоÑно. ÐоÑле Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð² ÑÑаÑÑники Ð±Ð¾Ñ Ð¿Ð¾Ð»ÑÑÐ°ÐµÑ ÑобÑÑÐ¸Ñ ÑÑеда ÑеÑез иÑÑ Ð¾Ð´ÑÑий Ð²ÐµÐ±Ñ Ñк.
УпомÑнÑÑÑ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ Ð¿Ð¾ имени
- ÐпÑедели поиÑковÑй запÑÐ¾Ñ â иÑполÑзÑй ÑамилиÑ, она ÑникалÑнее. Ðмена не ÑклонÑÑÑÑÑ Ð² API, пÑиводи к имениÑелÑÐ½Ð¾Ð¼Ñ Ð¿Ð°Ð´ÐµÐ¶Ñ: «ÑпомÑни ÐаÑÑ» â иÑи
ÐаÑаилиÐавел, «Ñегни ÐолÑбева» â иÑиÐолÑбев - ÐÑи ÑнаÑала ÑÑеди ÑÑаÑÑников Ñелевого ÑаÑа: GET /chats/{id}/members (Ð´Ð»Ñ ÑÑеда Ñоже ÑабоÑаеÑ, Ñ Ð½ÐµÐ³Ð¾ Ñвои ÑÑаÑÑники) â ÑилÑÑÑÑй по имени на клиенÑе
- ÐÑли пиÑеÑÑ Ð² ÑÑед: Ñакже пÑовеÑÑ ÑÑаÑÑников ÑодиÑелÑÑкого ÑаÑа (GET /chats/{id}/members Ñ
id=message_chat_id) - Ðе наÑÑл â иÑи по вÑей компании: GET /users?query={запÑоÑ}
- Ðдин подÑ
одÑÑий ÑезÑлÑÑÐ°Ñ â иÑполÑзÑй
nickname. ÐеÑколÑко â ÑÑоÑни Ñ Ð¿Ð¾Ð»ÑзоваÑÐµÐ»Ñ (Ð¸Ð¼Ñ + ÑамилиÑ). ÐиÑего â попÑобÑй дÑÑгÑÑ ÑоÑÐ¼Ñ Ð¸Ð¼ÐµÐ½Ð¸ (ÑменÑÑиÑелÑное â полное) - ÐÑÑавÑ
@nicknameв ÑекÑÑ ÑообÑениÑ
curl "https://api.pachca.com/api/shared/v1/chats/12345/members" \
-H "Authorization: Bearer $TOKEN"
# ÐÑвеÑ: [{"id":42,"first_name":"Ðавел","last_name":"ÐолÑбев","nickname":"golubevpn",...}]
curl "https://api.pachca.com/api/shared/v1/messages" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"entity_id":12345,"content":"@golubevpn, миÑинг пеÑенеÑÑн"}}'
ÐоиÑк ÑÑеди ÑÑаÑÑников ÑаÑа ÑоÑнее â полÑзоваÑÐµÐ»Ñ Ñвно ÑвÑзан Ñ ÐºÐ¾Ð½ÑекÑÑом, менÑÑе веÑоÑÑноÑÑÑ ÑпÑÑаÑÑ Ð¾Ð´Ð½Ð¾ÑамилÑÑев. GET /users?query â поÑледний fallback Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка по вÑей компании.
ÐÑÑедакÑиÑоваÑÑ ÑообÑение
- PUT /messages/{id} Ñ Ð¿Ð¾Ð»ÐµÐ¼
content(и/илиbuttons,files)
curl -X PUT "https://api.pachca.com/api/shared/v1/messages/154332686" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"content":"ÐбновлÑннÑй ÑекÑÑ"}}'
РедакÑиÑоваÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ ÑолÑко Ñвои ÑообÑÐµÐ½Ð¸Ñ (или Ð¾Ñ Ð¸Ð¼ÐµÐ½Ð¸ боÑа).
ÐзмениÑÑ Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ ÑообÑениÑ
- GET /messages/{id} â полÑÑи ÑекÑÑие Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸Ð· полÑ
files[], ÑÐ¾Ñ Ñани нÑжнÑе обÑекÑÑ (key,name,file_type,size) - ÐÑли нÑжно добавиÑÑ Ð½Ð¾Ð²Ñй Ñайл: POST /uploads â загÑÑзи Ñайл â Ð´Ð¾Ð±Ð°Ð²Ñ Ð¾Ð±ÑÐµÐºÑ Ð² ÑпиÑок
- PUT /messages/{id} Ñ Ð¼Ð°ÑÑивом
filesâ ÑолÑко Ñе ÑайлÑ, коÑоÑÑе Ð´Ð¾Ð»Ð¶Ð½Ñ Ð¾ÑÑаÑÑÑÑ (+ новÑе пÑи Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи)
curl "https://api.pachca.com/api/shared/v1/messages/154332686" \
-H "Authorization: Bearer $TOKEN"
# ÐÑвеÑ: {"data":{"files":[{"key":"uploads/.../a.pdf","name":"a.pdf","file_type":"file","size":1000},{"key":"uploads/.../b.pdf","name":"b.pdf","file_type":"file","size":2000}],...}}
curl -X PUT "https://api.pachca.com/api/shared/v1/messages/154332686" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"message":{"files":[{"key":"uploads/.../a.pdf","name":"a.pdf","file_type":"file","size":1000}]}}'
filesпÑи ÑедакÑиÑовании ÑабоÑÐ°ÐµÑ Ð¿Ð¾ пÑинÑÐ¸Ð¿Ñ replace-all: пÑиÑÑлаемÑй маÑÑив полноÑÑÑÑ Ð·Ð°Ð¼ÐµÐ½ÑÐµÑ ÑекÑÑие вложениÑ, оÑÑÑÑÑÑвÑÑÑие ÑÐ°Ð¹Ð»Ñ ÑдалÑÑÑÑÑ.files: []ÑдалÑÐµÑ Ð²Ñе вложениÑ. ÐÑли полеfilesне пеÑедаваÑÑ â Ð²Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð½Ðµ менÑÑÑÑÑ.
УдалиÑÑ ÑообÑение
- DELETE /messages/{id}
curl -X DELETE "https://api.pachca.com/api/shared/v1/messages/154332686" \
-H "Authorization: Bearer $TOKEN"
ÐобавиÑÑ ÑеакÑÐ¸Ñ Ð½Ð° ÑообÑение
- POST /messages/{id}/reactions Ñ Ð¿Ð¾Ð»ÐµÐ¼
code(emoji) - УбÑаÑÑ ÑеакÑиÑ: DELETE /messages/{id}/reactions Ñ Ð¿Ð¾Ð»ÐµÐ¼
code
curl "https://api.pachca.com/api/shared/v1/messages/154332686/reactions" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"code":"ð"}'
codeâ emoji-Ñимвол, не его ÑекÑÑовое название.
ÐÑовеÑиÑÑ, кÑо пÑоÑиÑал ÑообÑение
- GET /messages/{id}/read_member_ids â возвÑаÑÐ°ÐµÑ Ð¼Ð°ÑÑив
user_idпÑоÑиÑавÑÐ¸Ñ - ÐÑи Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ÑÑи ÑопоÑÑÐ°Ð²Ñ Ñ GET /users Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð¸Ð¼Ñн
curl "https://api.pachca.com/api/shared/v1/messages/154332686/read_member_ids" \
-H "Authorization: Bearer $TOKEN"
РазоÑлаÑÑ Ñведомление неÑколÑким полÑзоваÑелÑм
- ÐпÑедели ÑпиÑок
user_idполÑÑаÑелей (GET /users или из конÑекÑÑа) - ÐÐ»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾: POST /messages Ñ
"entity_type": "user","entity_id": user_id
СоблÑдай rate limit: ~4 req/sec Ð´Ð»Ñ ÑообÑений. ÐобавлÑй паÑÐ·Ñ Ð¿Ñи болÑÑом ÑпиÑке.
ÐбÑабоÑка оÑибок
| Ðод | ÐÑиÑина | ЧÑо делаÑÑ |
|---|---|---|
| 422 | ÐевеÑнÑе паÑамеÑÑÑ | ÐÑовеÑÑ Ð¾Ð±ÑзаÑелÑнÑе полÑ, ÑÐ¸Ð¿Ñ Ð´Ð°Ð½Ð½ÑÑ , допÑÑÑимÑе знаÑÐµÐ½Ð¸Ñ enum |
| 429 | Rate limit | Ðодожди и повÑоÑи. ÐимиÑ: ~50 req/sec, ÑообÑÐµÐ½Ð¸Ñ ~4 req/sec |
| 403 | ÐÐµÑ Ð´Ð¾ÑÑÑпа | ÐедоÑÑаÑоÑно ÑкоÑпов (insufficient_scope), Ð±Ð¾Ñ Ð½Ðµ в ÑаÑе, или endpoint ÑолÑко Ð´Ð»Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¾Ð²/владелÑÑев |
| 404 | Ðе найдено | ÐевеÑнÑй id. ÐÑовеÑÑ ÑÑо ÑÑÑноÑÑÑ ÑÑÑеÑÑвÑÐµÑ |
| 401 | Ðе авÑоÑизован | ÐÑовеÑÑ Ñокен в заголовке Authorization |
ÐоÑÑÑпнÑе опеÑаÑии
ÐагÑÑзка Ñайла
POST /direct_url
Ðовое ÑообÑение
POST /messages
ÑкоÑп:
messages:create
{
"message": {
"entity_id": 198,
"content": "ÐÑеÑа Ð¼Ñ Ð¿Ñодали 756 ÑÑÑболок (ÑÑо на 10% болÑÑе, Ñем в пÑоÑлое воÑкÑеÑенÑе)"
}
}
СпиÑок ÑообÑений ÑаÑа
GET /messages
ÑкоÑп:
messages:read
ÐнÑоÑмаÑÐ¸Ñ Ð¾ ÑообÑении
GET /messages/{id}
ÑкоÑп:
messages:read
РедакÑиÑование ÑообÑениÑ
PUT /messages/{id}
ÑкоÑп:
messages:update
{
"message": {}
}
Удаление ÑообÑениÑ
DELETE /messages/{id}
ÑкоÑп:
messages:delete
ÐакÑепление ÑообÑениÑ
POST /messages/{id}/pin
ÑкоÑп:
pins:write
ÐÑкÑепление ÑообÑениÑ
DELETE /messages/{id}/pin
ÑкоÑп:
pins:write
Ðобавление ÑеакÑии
POST /messages/{id}/reactions
ÑкоÑп:
reactions:write
{
"code": "ð"
}
Удаление ÑеакÑии
DELETE /messages/{id}/reactions
ÑкоÑп:
reactions:write
СпиÑок ÑеакÑий
GET /messages/{id}/reactions
ÑкоÑп:
reactions:read
СпиÑок пÑоÑиÑавÑÐ¸Ñ ÑообÑение
GET /messages/{id}/read_member_ids
ÑкоÑп:
messages:read
ÐовÑй ÑÑед
POST /messages/{id}/thread
ÑкоÑп:
threads:create
ÐнÑоÑмаÑÐ¸Ñ Ð¾ ÑÑеде
GET /threads/{id}
ÑкоÑп:
threads:read
ÐолÑÑение подпиÑи, клÑÑа и дÑÑÐ³Ð¸Ñ Ð¿Ð°ÑамеÑÑов
POST /uploads
ÑкоÑп:
uploads:write
ÐгÑаниÑÐµÐ½Ð¸Ñ Ð¸ gotchas
message.entity_type: допÑÑÑимÑе знаÑÐµÐ½Ð¸Ñ âdiscussion(ÐеÑеда или канал),thread(ТÑед),user(ÐолÑзоваÑелÑ)message.display_avatar_url: макÑимÑм 255 Ñимволовmessage.display_name: макÑимÑм 255 Ñимволовlimit: макÑимÑм â 50 (GET /messages), 50 (GET /messages/{id}/reactions), 300 (GET /messages/{id}/read_member_ids)- ÐагинаÑиÑ: cursor-based (limit + cursor), ÐÐ page-based
ÐодÑобнее
Ñм. references/endpoints.md