amocrm/internal/models/createDeal.go

69 lines
4.1 KiB
Go
Raw Normal View History

2024-05-04 18:38:36 +00:00
package models
type DealReq struct {
2024-05-04 18:41:04 +00:00
Name string `json:"name"` // название сделки
Price int `json:"price"` // бюджет сделки
StatusID int32 `json:"status_id"` // id статуса (шага в нашем случае) в который добавляется сделка
PipelineID int32 `json:"pipeline_id"` // ID воронки, в которую добавляется сделка
CreatedBy int32 `json:"created_by"` // id пользователя amoid который создает сделку (тот кто подключил интеграцию)
UpdatedBy int `json:"updated_by"` // ID пользователя, изменяющий сделку. При передаче значения 0, сделка будет считаться измененной роботом
ClosedAt int64 `json:"closed_at"` // Дата закрытия сделки, передается в Unix Timestamp
CreatedAt int64 `json:"created_at"` // Дата создания сделки, передается в Unix Timestamp
UpdatedAt int64 `json:"updated_at"` // Дата изменения сделки, передается в Unix Timestamp
LossReasonID *int `json:"loss_reason_id,omitempty"` // ID причины отказа
ResponsibleUserID int32 `json:"responsible_user_id"` // ID пользователя, ответственного за сделку, в нашем случае PerformerID
CustomFieldsValues []FieldsValues `json:"custom_fields_values"` // Массив полей которые заполняются значениями
TagsToAdd []Tag `json:"tags_to_add"` // Массив тегов для добавления
2024-05-04 18:38:36 +00:00
Embed Embedd `json:"_embedded"`
}
type FieldsValues struct {
FieldID int `json:"field_id"`
Values []Values `json:"values"`
}
type Values struct {
Value string `json:"value"` // пока так пока не понятно
}
type Embedd struct {
Tags []Tag `json:"tags"` // Данные тегов, добавляемых к сделке
Contact []Contact `json:"contacts"` // Данные контактов, которые будет прикреплены к сделке
Company []Company `json:"companies"` // Данные компании, которая будет прикреплена к сделке
Source Source `json:"source"`
}
type Contact struct {
2024-05-04 21:06:17 +00:00
//ID int32 `json:"id"` // ID контакта
//IsMain bool `json:"is_main"` // Флаг, показывающий, является контакт главным или нет
Name string `json:"first_name"`
CreatedAT int64 `json:"created_at"`
UpdatedBy int `json:"updated_by"`
ResponsibleUserID int32 `json:"responsible_user_id"` // ID пользователя, ответственного за сделку, в нашем случае PerformerID
CustomFieldsValues []FieldsValues `json:"custom_fields_values"` // Массив полей которые заполняются значениями
2024-05-04 18:38:36 +00:00
}
type Company struct {
ID int `json:"id"` // ID компании
}
type Source struct {
ExternalID int `json:"external_id"` // Внешний ID источника
Type string `json:"type"` // Тип источника. Для сделок, добавляемых интеграциями, поддерживается только widget
}
type DealResp struct {
Link struct {
SelfLink `json:"self"`
} `json:"_links"`
Embed struct {
Leads []struct {
ID int `json:"id"`
RequestID string `json:"request_id"`
Links struct {
SelfLink `json:"self"`
} `json:"_links"`
}
} `json:"_embedded"`
}