102 lines
2.3 KiB
Markdown
102 lines
2.3 KiB
Markdown
|
|
# ✅ ИТОГОВОЕ РЕШЕНИЕ: Привязка документов
|
|||
|
|
|
|||
|
|
## 🎯 Прямой PHP эндпоинт (рекомендуется)
|
|||
|
|
|
|||
|
|
**URL для n8n:**
|
|||
|
|
```
|
|||
|
|
POST https://crm.clientright.ru/api_attach_documents.php
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Почему этот вариант:**
|
|||
|
|
- ✅ Нет лишних прокси-слоев
|
|||
|
|
- ✅ Не зависит от backend контейнера
|
|||
|
|
- ✅ Прямое взаимодействие с CRM
|
|||
|
|
- ✅ Проще в отладке
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📋 Формат запроса
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
[
|
|||
|
|
{
|
|||
|
|
"claim_id": "CLM-2025-11-02-WNRZZZ",
|
|||
|
|
"event_type": "delay_flight",
|
|||
|
|
"contact_id": "320096",
|
|||
|
|
"project_id": "396868",
|
|||
|
|
"ticket_id": "396936",
|
|||
|
|
"filename": "boarding_pass.pdf",
|
|||
|
|
"file_type": "flight_delay_boarding_or_ticket",
|
|||
|
|
"file": "/bucket/path/file.pdf"
|
|||
|
|
}
|
|||
|
|
]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**Обязательные поля:**
|
|||
|
|
- `contact_id` - ID контакта
|
|||
|
|
- `project_id` - ID проекта (полиса)
|
|||
|
|
- `filename` (или `file_name`) - имя файла
|
|||
|
|
- `file` (или `file_url`) - путь к файлу в S3
|
|||
|
|
|
|||
|
|
**Опциональные поля:**
|
|||
|
|
- `ticket_id` - ID заявки (**если указан → привязка к HelpDesk, иначе → к Project**)
|
|||
|
|
- `file_type` - описание типа документа
|
|||
|
|
- `claim_id`, `event_type` - для логирования
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 📊 Ответ
|
|||
|
|
|
|||
|
|
```json
|
|||
|
|
{
|
|||
|
|
"success": true,
|
|||
|
|
"total_processed": 1,
|
|||
|
|
"successful": 1,
|
|||
|
|
"failed": 0,
|
|||
|
|
"results": [
|
|||
|
|
{
|
|||
|
|
"document_id": "15x396941",
|
|||
|
|
"attached_to": "ticket",
|
|||
|
|
"attached_to_id": "396936",
|
|||
|
|
"file_name": "boarding_pass.pdf",
|
|||
|
|
"...": "..."
|
|||
|
|
}
|
|||
|
|
],
|
|||
|
|
"errors": null
|
|||
|
|
}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🔧 Интеграция в n8n
|
|||
|
|
|
|||
|
|
### HTTP Request Node:
|
|||
|
|
|
|||
|
|
**Method:** `POST`
|
|||
|
|
**URL:** `https://crm.clientright.ru/api_attach_documents.php`
|
|||
|
|
**Authentication:** None
|
|||
|
|
**Body Content Type:** JSON
|
|||
|
|
|
|||
|
|
**Body:**
|
|||
|
|
```
|
|||
|
|
{{ $json.documents }}
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Где `$json.documents` - массив из предыдущей ноды.
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 🔍 Логи
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
tail -f /var/www/fastuser/data/www/crm.clientright.ru/logs/api_attach_documents.log
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## ✅ Готово к использованию!
|
|||
|
|
|
|||
|
|
Эндпоинт протестирован и готов к production! 🚀
|
|||
|
|
|
|||
|
|
Полная документация: `/var/www/fastuser/data/www/crm.clientright.ru/API_ATTACH_DOCS_README.md`
|