/* - айдишник пользвателя, который подключал интеграцию*/
Amouseridint`json:"AmoUserID"`
/* - страна указанная в настройках амо*/
Countrystring`json:"Country"`
}
typeUserGroupsstruct{
IDint`json:"id" bson:"id"`
Namestring`json:"name" bson:"name"`
UUIDinterface{}`json:"uuid" bson:"uuid"`
}
typeTokenstruct{
AccountIDstring`json:"account_id"`// id в квизе
RefreshTokenstring`json:"refresh_token"`// 80 дней
AccessTokenstring`json:"access_token"`// 20 минут
AuthCodestring`json:"auth_code"`
Expirationint64`json:"expiration"`// таймшамп времени когда кончится AccessToken
CreatedAtint64`json:"created_at"`// таймшамп времени создания, нужен для отслеживания 80 дней
}
typePipelinestruct{
// айдишник в нашей системе Primary Key
IDint`json:"ID"`
/* - айдишник воронки в амо*/
Amoidint`json:"AmoID"`
/* - связь с аккаунтом в интеграции амо id аккаунта в амо*/
AccountIDint`json:"AccountID"`
/* - название воронки в амо*/
Namestring`json:"Name"`
/* - флаг архивной воронки в амо*/
Isarchivebool`json:"IsArchive"`
/* - флаг мягкого удаления*/
Deletedbool`json:"Deleted"`
/* - таймштамп создания воронки в нашей системе*/
Createdatint64`json:"CreatedAt"`
}
typeStepstruct{
/* - айдишник в нашей системе Primary Key*/
IDint`json:"ID"`
/* - айдишник шага воронки в амо*/
Amoidint`json:"AmoID"`
/* - айдишник воронки в амо*/
Pipelineidint`json:"PipelineID"`
/* - связь с аккаунтом в интеграции амо id в амо*/
Accountidint`json:"AccountID"`
/* - название воронки в амо*/
Namestring`json:"Name"`
/* - цвет шага в амо*/
Colorstring`json:"Color"`
/* - флаг мягкого удаления*/
Deletedbool`json:"Deleted"`
/* - таймштамп создания воронки в нашей системе*/
Createdatint64`json:"CreatedAt"`
}
typeTagstruct{
/* - айдишник в нашей системе Primary Key*/
IDint`json:"ID"`
/* - айдишник тега в амо*/
Amoidint`json:"AmoID"`
/* - связь с аккаунтом в интеграции амо id аккаунта в амо*/
Accountidint`json:"AccountID"`
/* - сущность, к которой принадлежит этот тег. Наверное, стоит сделать через enum в базе*/
EntityEntityType`json:"Entity"`
/* - название тега в амо*/
Namestring`json:"Name"`
/* - цвет тега в амо*/
Color*string`json:"Color"`
/* - флаг мягкого удаления*/
Deletedbool`json:"Deleted"`
/* - таймштамп создания тега в нашей системе*/
Createdatint64`json:"CreatedAt"`
}
typeFieldstruct{
/* - айдишник в нашей системе Primary Key*/
IDint`json:"ID"`
/* - айдишник кастомного поля в амо*/
Amoidint`json:"AmoID"`
/* - кодовое слово в амо*/
Codestring`json:"Code"`
/* - связь с аккаунтом в интеграции амо id аккаунта в амо*/
Accountidint`json:"AccountID"`
/* - название воронки в амо*/
Namestring`json:"Name"`
/* - тип сущности в амо, для которой это кастомное поле*/
EntityEntityType`json:"Entity"`
/* - тип поля https://www.amocrm.ru/developers/content/crm_platform/custom-fields#%D0%94%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%BD%D1%8B%D0%B5-%D1%82%D0%B8%D0%BF%D1%8B-%D0%BF%D0%BE%D0%BB%D0%B5%D0%B9*/
Typestring`json:"Type"`
/* - флаг мягкого удаления*/
Deletedbool`json:"Deleted"`
/* - таймштамп создания воронки в нашей системе*/
Createdatint64`json:"CreatedAt"`
}
typeEntityTypestring
const(
LeadsTagsEntityType="leads"
ContactsTagsEntityType="contacts"
CompaniesTagsEntityType="companies"
CustomersTagsEntityType="customers"
)
typeRulestruct{
/* - айдишник в нашей системе*/
IDint`json:"ID"`
/* - связь с аккаунтом в интеграции амо id в амо*/
/* - сопоставление айдишника вопроса полю, которое будет заполняться ответом. соответственно QuestionID это айдишник вопроса. это я так мэпу пытался записать*/
Questionidmap[int]int`json:"QuestionID"`// ключ id вопроса значение id астомного поля