Documentation ¶
Index ¶
- Constants
- type AccountRequestParams
- type AccountResponse
- type AccountWithType
- type AddContactRequest
- type AddLeadRequest
- type AddNoteRequest
- type AddTaskRequest
- type AmoError
- type AuthAccount
- type AuthResponse
- type AuthUser
- type Client
- func (c *Client) AddContact(ctx context.Context, contact *ContactAdd) (int, error)
- func (c *Client) AddLead(ctx context.Context, lead *LeadAdd) (int, error)
- func (c *Client) AddNote(ctx context.Context, note *NoteAdd) (int, error)
- func (c *Client) AddTask(ctx context.Context, task *TaskAdd) (int, error)
- func (c *Client) Authorize(ctx context.Context) error
- func (c *Client) DownloadAttachment(ctx context.Context, attachment string) ([]byte, error)
- func (c *Client) GetAccount(ctx context.Context, reqParams *AccountRequestParams) (*AccountResponse, error)
- func (c *Client) GetContacts(ctx context.Context, reqParams *ContactRequestParams) ([]*Contact, error)
- func (c *Client) GetLeads(ctx context.Context, reqParams *LeadRequestParams) ([]*Lead, error)
- func (c *Client) GetNotes(ctx context.Context, reqParams *NoteRequestParams) ([]*Note, error)
- func (c *Client) GetPipelines(ctx context.Context, reqParams *PipelineRequestParams) (map[string]*Pipeline, error)
- func (c *Client) GetTasks(ctx context.Context, reqParams *TaskRequestParams) ([]*Task, error)
- func (c *Client) UpdateContact(ctx context.Context, contact *ContactUpdate) (int, error)
- func (c *Client) UpdateLead(ctx context.Context, lead *LeadUpdate) (int, error)
- func (c *Client) UpdateTask(ctx context.Context, task *TaskUpdate) (int, error)
- type ClientOption
- type Contact
- type ContactAdd
- type ContactRequestParams
- type ContactUpdate
- type CustomField
- type CustomFieldInfo
- type CustomFieldType
- type CustomValue
- type Error
- type GetContactResponse
- type GetLeadResponse
- type GetNoteResponse
- type GetPipelineResponse
- type GetTaskResponse
- type Group
- type Lead
- type LeadAdd
- type LeadRequestActiveFilter
- type LeadRequestFilter
- type LeadRequestParams
- type LeadRequestTasksFilter
- type LeadUpdate
- type Links
- type Note
- type NoteAdd
- type NoteParameters
- type NotePostParameters
- type NoteRequestParams
- type NoteRequestType
- type NoteTask
- type NoteType
- type Pipeline
- type PipelineRequestParams
- type PipelineStatus
- type PostResponse
- type Tag
- type Task
- type TaskAdd
- type TaskElementType
- type TaskRequestFilter
- type TaskRequestParams
- type TaskRequestStatusFilter
- type TaskRequestType
- type TaskType
- type TaskUpdate
- type Unlink
- type UpdateContactRequest
- type UpdateCustomField
- type UpdateCustomValue
- type UpdateLeadRequest
- type UpdateTaskRequest
- type User
Constants ¶
View Source
const ( AccountNotFoundCode = 101 BodyMustBeJSONCode = 102 InvalidRequestParametersCode = 103 InvalidRequestMethodCode = 104 InvalidCredentialsCode = 110 CaptchaInputRequiredCode = 111 DisabledAccountCode = 112 ContactAddEmptyArrayCode = 201 ContactAddInsufficientAccessRightsCode = 202 ContactAddCustomFieldsInternalErrorCode = 203 ContactAddCustomFieldNotFoundCode = 204 ContactAddNotProcessedCode = 205 ContactsEmptyRequestCode = 206 ContactsInvalidRequestMethodCode = 207 ContactUpdateEmptyArrayCode = 208 ContactUpdatedRequiredParametersMissingCode = 209 ContactUpdateCustomFieldsInternalErrorCode = 210 ContactUpdateCustomFieldNotFoundCode = 211 ContactUpdateNotProcessedCode = 212 LeadAddEmptyArrayCode = 213 LeadEmptyRequestCode = 214 LeadInvalidRequestMethodCode = 215 LeadUpdateEmptyArrayCode = 216 LeadUpdateRequiredParametersMissingCode = 217 ContactGetSearchErrorCode = 219 LeadCustomFieldInvalidIDCode = 240 TooManyLinkedEntitiesCode = 330 InvalidRequestCode = 400 AccountNotFoundOnServerCode = 401 SubscriptionExpireCode = 402 AccountBlockedCode = 403 RateLimitExceededCode = 429 NoContentCode = 2002 AccountNotFound = "account_not_found" BodyMustBeJSON = "body_must_be_json" InvalidRequestParameters = "invalid_request_params" InvalidRequestMethod = "invalid_request_method" InvalidCredentials = "invalid_credentials" CaptchaInputRequired = "captcha_input_required" DisabledAccount = "disabled_account" ContactAddEmptyArray = "contact_add_empty_array" ContactAddInsufficientAccessRights = "contact_add_insufficient_access_rights" ContactAddCustomFieldsInternalError = "contact_add_custom_fields_internal_error" ContactAddCustomFieldNotFound = "contact_add_custom_field_not_found" ContactAddNotProcessed = "contact_add_not_processed" ContactsEmptyRequest = "contacts_empty_request" ContactsInvalidRequestMethod = "contacts_invalid_request_method" ContactUpdateEmptyArray = "contact_update_empty_array" ContactUpdatedRequiredParametersMissing = "contact_update_required_params_missing" ContactUpdateCustomFieldsInternalError = "contact_update_custom_fields_internal_error" ContactUpdateCustomFieldNotFound = "contact_update_custom_field_not_found" ContactUpdateNotProcessed = "contact_update_not_processed" LeadAddEmptyArray = "lead_add_empty_array" LeadEmptyRequest = "leads_empty_request" LeadInvalidRequestMethod = "leads_invalid_request_method" LeadUpdateEmptyArray = "lead_update_empty_array" LeadUpdateRequiredParametersMissing = "lead_update_required_params_missing" ContactGetSearchError = "contact_get_search_error" LeadCustomFieldInvalidID = "leads_custom_field_invalid_id" TooManyLinkedEntities = "too_many_linked_entities" InvalidRequest = "invalid_request" AccountNotFoundOnServer = "account_not_found_on_server" SubscriptionExpire = "subscription_expired" AccountBlocked = "account_blocked" RateLimitExceeded = "rate_limit_exceeded" NoContent = "no_content" )
View Source
const ( NoTasksLeadFilter LeadRequestTasksFilter = 1 InProgressTasksLeadFilter LeadRequestTasksFilter = 2 ActiveLeadsLeadFilter LeadRequestActiveFilter = 1 )
View Source
const ( ContactTaskElementType TaskElementType = 1 LeadTaskElementType TaskElementType = 2 CompanyTaskElementType TaskElementType = 3 CustomerTaskElementType TaskElementType = 12 ContactTaskType TaskRequestType = "contact" LeadTaskType TaskRequestType = "lead" CompanyTaskType TaskRequestType = "company" CustomerTaskType TaskRequestType = "customer" CompletedStatusTaskFilter TaskRequestStatusFilter = 1 InProgressStatusTaskFilter TaskRequestStatusFilter = 0 )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AccountRequestParams ¶
type AccountRequestParams struct {
With []AccountWithType `validate:"omitempty,dive,oneof=custom_fields users messenger notifications pipelines groups note_types task_types"`
}
type AccountResponse ¶
type AccountResponse struct { ID int `json:"id,omitempty" validate:"required,omitempty"` Name string `json:"name" validate:"required"` Subdomain string `json:"subdomain" validate:"required"` Currency string `json:"currency" validate:"required"` Timezone string `json:"timezone" validate:"required"` TimezoneOffset string `json:"timezone_offset" validate:"required"` Language string `json:"language" validate:"required"` DatePattern struct { Date string `json:"date" validate:"required"` Time string `json:"time" validate:"required"` DateTime string `json:"date_time" validate:"required"` TimeFull string `json:"time_full" validate:"required"` } `json:"date_pattern" validate:"required"` CurrentUser int `json:"current_user" validate:"required"` Embedded struct { Users map[string]*User `json:"users" validate:"omitempty,dive,required"` CustomFields struct { Contacts map[string]*CustomFieldInfo `json:"contacts" validate:"omitempty,dive,required"` Leads map[string]*CustomFieldInfo `json:"leads,omitempty" validate:"omitempty,dive,required"` Companies map[string]*CustomFieldInfo `json:"companies,omitempty" validate:"omitempty,dive,required"` Customers []interface{} `json:"customers,omitempty" validate:"omitempty,dive,required"` } `json:"custom_fields" validate:"omitempty"` NoteTypes map[string]*NoteType `json:"note_types" validate:"omitempty,dive,required"` Groups map[string]*Group `json:"groups" validate:"omitempty,dive,required"` TaskTypes map[string]*TaskType `json:"task_types" validate:"omitempty,dive,required"` Pipelines map[string]*Pipeline `json:"pipelines" validate:"omitempty,dive,required"` } `json:"_embedded" validate:"omitempty"` }
type AccountWithType ¶
type AccountWithType string
const ( AccountWithCustomFields AccountWithType = "custom_fields" AccountWithUsers AccountWithType = "users" AccountWithMessenger AccountWithType = "messenger" AccountWithNotifications AccountWithType = "notifications" AccountWithPipelines AccountWithType = "pipelines" AccountWithGroups AccountWithType = "groups" AccountWithNoteTypes AccountWithType = "note_types" AccountWithTaskTypes AccountWithType = "task_types" )
type AddContactRequest ¶
type AddContactRequest struct {
Add []*ContactAdd `json:"add" validate:"required,dive,required"`
}
type AddLeadRequest ¶
type AddLeadRequest struct {
Add []*LeadAdd `json:"add" validate:"required,dive,required"`
}
type AddNoteRequest ¶
type AddNoteRequest struct {
Add []*NoteAdd `json:"add" validate:"required"`
}
type AddTaskRequest ¶
type AddTaskRequest struct {
Add []*TaskAdd `json:"add" validate:"required,dive,required"`
}
type AmoError ¶
type AuthAccount ¶
type AuthResponse ¶
type AuthResponse struct { Response struct { Auth bool `json:"auth" validate:"required"` Accounts []*AuthAccount `json:"accounts" validate:"omitempty,dive,required"` User *AuthUser `json:"user" validate:"required"` ServerTime int `json:"server_time" validate:"required"` Error string `json:"error" validate:"omitempty"` } `json:"response" validate:"required"` }
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) AddContact ¶
func (*Client) DownloadAttachment ¶
func (*Client) GetAccount ¶
func (c *Client) GetAccount(ctx context.Context, reqParams *AccountRequestParams) (*AccountResponse, error)
func (*Client) GetContacts ¶
func (*Client) GetPipelines ¶
func (*Client) UpdateContact ¶
func (*Client) UpdateLead ¶
func (*Client) UpdateTask ¶
type ClientOption ¶
type ClientOption func(c *Client)
func WithHTTPTimeout ¶
func WithHTTPTimeout(d time.Duration) ClientOption
type Contact ¶
type Contact struct { ID int `json:"id" validate:"required"` Name string `json:"name" validate:"required"` ResponsibleUserID int `json:"responsible_user_id" validate:"required"` CreatedBy int `json:"created_by" validate:"required"` CreatedAt int `json:"created_at" validate:"required"` UpdatedAt int `json:"updated_at" validate:"required"` AccountID int `json:"account_id" validate:"required"` UpdatedBy int `json:"updated_by" validate:"required"` GroupID int `json:"group_id,omitempty" validate:"omitempty"` Company struct { ID int `json:"id" validate:"omitempty"` Name string `json:"name" validate:"omitempty"` Links *Links `json:"_links" validate:"omitempty"` } `json:"company,omitempty" validate:"omitempty"` Leads struct { ID []int `json:"id" validate:"omitempty,dive,required"` Links *Links `json:"_links" validate:"omitempty"` } `json:"leads,omitempty" validate:"omitempty"` ClosestTaskAt int `json:"closest_task_at,omitempty" validate:"omitempty"` Tags []*Tag `json:"tags,omitempty" validate:"omitempty,dive,required"` CustomFields []*CustomField `json:"custom_fields,omitempty" validate:"omitempty,dive,required"` Customers struct { } `json:"customers,omitempty" validate:"omitempty"` Links *Links `json:"_links" validate:"required"` }
type ContactAdd ¶
type ContactAdd struct { Name string `json:"name" validate:"required"` CreatedAt int `json:"created_at,string,omitempty" validate:"omitempty"` UpdatedAt int `json:"updated_at,string,omitempty" validate:"omitempty"` ResponsibleUserID int `json:"responsible_user_id,string,omitempty" validate:"omitempty"` CreatedBy int `json:"created_by,string,omitempty" validate:"omitempty"` CompanyName string `json:"company_name,omitempty" validate:"omitempty"` Tags string `json:"tags,omitempty" validate:"omitempty"` LeadsID []string `json:"leads_id,omitempty" validate:"omitempty,gt=0,dive,required"` CustomersID int `json:"customers_id,string,omitempty" validate:"omitempty"` CompanyID int `json:"company_id,string,omitempty" validate:"omitempty"` CustomFields []*UpdateCustomField `json:"custom_fields,omitempty" validate:"omitempty,gt=0,required"` }
type ContactRequestParams ¶
type ContactUpdate ¶
type ContactUpdate struct { ID int `json:"id,string" validate:"required"` Name string `json:"name,omitempty" validate:"omitempty"` CreatedAt int `json:"created_at,string,omitempty" validate:"omitempty"` UpdatedAt int `json:"updated_at,string" validate:"required"` ResponsibleUserID int `json:"responsible_user_id,string,omitempty" validate:"omitempty"` CreatedBy int `json:"created_by,string,omitempty" validate:"omitempty"` CompanyName string `json:"company_name,omitempty" validate:"omitempty"` Tags string `json:"tags,omitempty" validate:"omitempty"` LeadsID []string `json:"leads_id,omitempty" validate:"omitempty,gt=0,required"` CustomersID int `json:"customers_id,string,omitempty" validate:"omitempty"` CompanyID int `json:"company_id,string,omitempty" validate:"omitempty"` CustomFields []*UpdateCustomField `json:"custom_fields,omitempty" validate:"omitempty,gt=0,required"` Unlink *Unlink `json:"unlink,omitempty" validate:"omitempty"` }
type CustomField ¶
type CustomField struct { ID int `json:"id" validate:"required"` Name string `json:"name" validate:"required"` Values []*CustomValue `json:"values" validate:"required,dive,required"` IsSystem bool `json:"is_system" validate:"omitempty"` }
type CustomFieldInfo ¶
type CustomFieldInfo struct { ID int `json:"id" validate:"required"` Name string `json:"name" validate:"required"` FieldType CustomFieldType `json:"field_type" validate:"required"` Sort int `json:"sort" validate:"required"` Code string `json:"code" validate:"omitempty"` IsMultiple bool `json:"is_multiple" validate:"omitempty"` IsSystem bool `json:"is_system" validate:"omitempty"` IsEditable bool `json:"is_editable" validate:"omitempty"` IsRequired bool `json:"is_required" validate:"omitempty"` IsDeletable bool `json:"is_deletable" validate:"omitempty"` IsVisible bool `json:"is_visible" validate:"omitempty"` Params struct { } `json:"params" validate:"omitempty"` Enums map[string]string `json:"enums" validate:"omitempty,dive,required"` }
type CustomFieldType ¶
type CustomFieldType int
const ( TextCustomFieldType CustomFieldType = iota + 1 NumericCustomFieldType CheckboxCustomFieldType SelectCustomFieldType MultiSelectCustomFieldType DateCustomFieldType URLCustomFieldType MultiTextCustomFieldType TextAreaCustomFieldType RadioButtonCustomFieldType StreetAddressCustomFieldType SmartAddressCustomFieldType BirthDayCustomFieldType LegalEntityCustomFieldType ItemsCustomFieldType OrgLegalNameCustomFieldType )
type CustomValue ¶
type GetContactResponse ¶
type GetLeadResponse ¶
type GetNoteResponse ¶
type GetPipelineResponse ¶
type GetTaskResponse ¶
type Lead ¶
type Lead struct { ID int `json:"id" validate:"required"` Name string `json:"name" validate:"required"` ResponsibleUserID int `json:"responsible_user_id" validate:"required"` CreatedBy int `json:"created_by" validate:"required"` CreatedAt int `json:"created_at" validate:"required"` UpdatedAt int `json:"updated_at" validate:"required"` AccountID int `json:"account_id" validate:"required"` IsDeleted bool `json:"is_deleted" validate:"omitempty"` MainContact struct { ID int `json:"id" validate:"omitempty"` Links *Links `json:"_links" validate:"omitempty"` } `json:"main_contact,omitempty" validate:"omitempty"` GroupID int `json:"group_id,omitempty" validate:"omitempty"` ClosedAt int `json:"closed_at,omitempty" validate:"omitempty"` ClosestTaskAt int `json:"closest_task_at,omitempty" validate:"omitempty"` Tags []*Tag `json:"tags,omitempty" validate:"omitempty,dive,required"` CustomFields []*CustomField `json:"custom_fields,omitempty" validate:"omitempty"` Contact struct { ID []int `json:"id" validate:"omitempty,dive,required"` Links *Links `json:"_links" validate:"omitempty"` } `json:"contacts,omitempty" validate:"omitempty"` StatusID int `json:"status_id" validate:"required"` Sale int `json:"sale,omitempty" validate:"omitempty"` Pipeline struct { ID int `json:"id" validate:"required"` Links *Links `json:"_links" validate:"required"` } `json:"pipeline" validate:"required"` Links *Links `json:"_links" validate:"required"` }
type LeadAdd ¶
type LeadAdd struct { Name string `json:"name" validate:"required"` CreatedAt int `json:"created_at,string,omitempty" validate:"omitempty"` UpdatedAt int `json:"updated_at,string,omitempty" validate:"omitempty"` StatusID int `json:"status_id,string" validate:"required"` PipelineID int `json:"pipeline_id,string,omitempty" validate:"omitempty"` ResponsibleUserID int `json:"responsible_user_id,string,omitempty" validate:"omitempty"` Sale int `json:"sale,string,omitempty" validate:"omitempty"` Tags string `json:"tags,omitempty" validate:"omitempty"` CustomFields []*UpdateCustomField `json:"custom_fields,omitempty" validate:"omitempty,gt=0,dive,required"` ContactsID []string `json:"contacts_id,omitempty" validate:"omitempty,gt=0,dive,required"` CompanyID int `json:"company_id,string,omitempty" validate:"omitempty"` RequestID int `json:"request_id,string,omitempty" validate:"omitempty"` }
type LeadRequestActiveFilter ¶
type LeadRequestActiveFilter int
type LeadRequestFilter ¶
type LeadRequestFilter struct { Tasks LeadRequestTasksFilter `validate:"omitempty,oneof=1 2"` Active LeadRequestActiveFilter `validate:"omitempty,eq=1"` }
type LeadRequestParams ¶
type LeadRequestParams struct { ID []int `validate:"omitempty,gt=0,dive,required"` LimitRows int `validate:"required_with=LimitOffset,lte=500"` LimitOffset int `validate:"omitempty"` ResponsibleUserID int `validate:"omitempty"` Query string `validate:"omitempty"` Status []int `validate:"omitempty,gt=0,dive,required"` Filter *LeadRequestFilter `validate:"omitempty"` }
type LeadRequestTasksFilter ¶
type LeadRequestTasksFilter int
type LeadUpdate ¶
type LeadUpdate struct { ID int `json:"id,string" validate:"required"` Name string `json:"name,omitempty" validate:"omitempty"` CreatedAt int `json:"created_at,string,omitempty" validate:"omitempty"` UpdatedAt int `json:"updated_at,string" validate:"required"` StatusID int `json:"status_id,string,omitempty" validate:"omitempty"` PipelineID int `json:"pipeline_id,string,omitempty" validate:"omitempty"` ResponsibleUserID int `json:"responsible_user_id,string,omitempty" validate:"omitempty"` Sale int `json:"sale,string,omitempty" validate:"omitempty"` Tags string `json:"tags,omitempty" validate:"omitempty"` CustomFields []*UpdateCustomField `json:"custom_fields,omitempty" validate:"omitempty,gt=0,dive,required"` ContactsID []string `json:"contacts_id,omitempty" validate:"omitempty,gt=0,dive,required"` CompanyID int `json:"company_id,string,omitempty" validate:"omitempty"` RequestID int `json:"request_id,string,omitempty" validate:"omitempty"` Unlink *Unlink `json:"unlink,omitempty" validate:"omitempty"` }
type Note ¶
type Note struct { ID int `json:"id" validate:"required"` CreatedBy int `json:"created_by" validate:"required"` AccountID int `json:"account_id" validate:"required"` GroupID int `json:"group_id" validate:"omitempty"` IsEditable bool `json:"is_editable" validate:"omitempty"` ElementID int `json:"element_id" validate:"required"` ElementType int `json:"element_type" validate:"oneof=1 2 3 4 12"` Text string `json:"text" validate:"required"` NoteType int `json:"note_type" validate:"required"` CreatedAt int `json:"created_at" validate:"required"` UpdatedAt int `json:"updated_at" validate:"required"` ResponsibleUserID int `json:"responsible_user_id" validate:"required"` Attachment string `json:"attachment" validate:"omitempty"` Parameters *NoteParameters `json:"params,omitempty" validate:"omitempty"` Links *Links `json:"_links" validate:"required"` }
type NoteAdd ¶
type NoteAdd struct { ElementID int `json:"element_id" validate:"required"` ElementType int `json:"element_type" validate:"oneof=1 2 3 4 12"` Text string `json:"text,omitempty" validate:"omitempty"` NoteType int `json:"note_type" validate:"omitempty"` CreatedAt string `json:"created_at,omitempty" validate:"omitempty"` UpdatedAt int `json:"updated_at,omitempty" validate:"omitempty"` ResponsibleUserID int `json:"responsible_user_id,omitempty" validate:"omitempty"` CreatedBy int `json:"created_by,omitempty" validate:"omitempty"` Params *NotePostParameters `json:"params,omitempty" validate:"omitempty"` }
type NoteParameters ¶
type NotePostParameters ¶
type NotePostParameters struct { UNIQ string `json:"UNIQ" validate:"required"` LINK string `json:"LINK" validate:"required"` PHONE string `json:"PHONE" validate:"required"` DURATION int `json:"DURATION" validate:"required"` SRC string `json:"SRC" validate:"required"` FROM string `json:"FROM,omitempty" validate:"omitempty"` CallStatus int `json:"call_status" validate:"required"` CallResult string `json:"call_result,omitempty" validate:"omitempty"` Text string `json:"text,omitempty" validate:"omitempty"` }
type NoteRequestParams ¶
type NoteRequestParams struct { Type NoteRequestType `validate:"required,oneof=lead contact company task"` ID []int `validate:"omitempty,gt=0,dive,required"` LimitRows int `validate:"required_with=LimitOffset,lte=500"` LimitOffset int `validate:"omitempty"` ElementID []int `validate:"omitempty,gt=0,dive,required"` NoteType []int `validate:"omitempty,gt=0,dive,required"` }
type NoteRequestType ¶
type NoteRequestType string
const ( ContactNoteType NoteRequestType = "contact" LeadNoteType NoteRequestType = "lead" CompanyNoteType NoteRequestType = "company" TaskNoteType NoteRequestType = "task" )
type Pipeline ¶
type Pipeline struct { ID int `json:"id" validate:"required"` Name string `json:"name" validate:"required"` Sort int `json:"sort" validate:"required"` IsMain bool `json:"is_main" validate:"omitempty"` Statuses map[string]*PipelineStatus `json:"statuses" validate:"required,dive,required"` Links *Links `json:"_links" validate:"required"` }
type PipelineRequestParams ¶
type PipelineRequestParams struct {
ID int `validate:"omitempty"`
}
type PipelineStatus ¶
type PostResponse ¶
type PostResponse struct { ID int `json:"id" validate:"omitempty"` RequestID int `json:"request_id" validate:"omitempty"` Embedded struct { Items []struct { ID int `json:"id" validate:"omitempty"` } `json:"items" validate:"required,dive,required"` } `json:"_embedded" validate:"omitempty"` Response *AmoError `json:"response" validate:"omitempty"` }
type Task ¶
type Task struct { ID int `json:"id" validate:"required"` ElementID int `json:"element_id" validate:"required"` ElementType TaskElementType `json:"element_type" validate:"oneof=1 2 3 12"` CompleteTillAt int `json:"complete_till_at" validate:"required"` TaskType int `json:"task_type" validate:"required"` Text string `json:"text" validate:"omitempty"` CreatedAt int `json:"created_at" validate:"required"` UpdatedAt int `json:"updated_at" validate:"required"` ResponsibleUserID int `json:"responsible_user_id" validate:"required"` IsCompleted bool `json:"is_completed" validate:"omitempty"` CreatedBy int `json:"created_by" validate:"required"` AccountID int `json:"account_id" validate:"required"` GroupID int `json:"group_id" validate:"omitempty"` Result *NoteTask `json:"result" validate:"omitempty"` Links *Links `json:"_links" validate:"required"` }
type TaskAdd ¶
type TaskAdd struct { ElementID int `json:"element_id,string" validate:"required"` ElementType TaskElementType `json:"element_type,string" validate:"oneof=1 2 3 12"` CompleteTill int `json:"complete_till,omitempty" validate:"omitempty"` TaskType int `json:"task_type,string" validate:"required"` Text string `json:"text,omitempty" validate:"omitempty"` CreatedAt int `json:"created_at,string,omitempty" validate:"omitempty"` UpdatedAt int `json:"updated_at,string,omitempty" validate:"omitempty"` ResponsibleUserID int `json:"responsible_user_id,string,omitempty" validate:"omitempty"` IsCompleted bool `json:"is_completed,omitempty" validate:"omitempty"` CreatedBy int `json:"created_by,string,omitempty" validate:"omitempty"` RequestID int `json:"request_id,string,omitempty" validate:"omitempty"` }
type TaskElementType ¶
type TaskElementType int
type TaskRequestFilter ¶
type TaskRequestFilter struct { Status TaskRequestStatusFilter `validate:"omitempty,oneof=1 0"` TaskType []int `validate:"omitempty,gt=0,dive,required"` }
type TaskRequestParams ¶
type TaskRequestParams struct { ID []int `validate:"omitempty,gt=0,dive,required"` LimitRows int `validate:"required_with=LimitOffset,lte=500"` LimitOffset int `validate:"omitempty"` ElementID []int `validate:"omitempty,gt=0,dive,required"` ResponsibleUserID int `validate:"omitempty"` Type TaskRequestType `validate:"omitempty,oneof=lead contact company customer"` Filter *TaskRequestFilter `validate:"omitempty"` }
type TaskRequestStatusFilter ¶
type TaskRequestStatusFilter int
type TaskRequestType ¶
type TaskRequestType string
type TaskUpdate ¶
type TaskUpdate struct { ID int `json:"id,string" validate:"required"` ElementID int `json:"element_id,string,omitempty" validate:"omitempty"` ElementType TaskElementType `json:"element_type,string,omitempty" validate:"omitempty,oneof=1 2 3 12"` CompleteTill int `json:"complete_till,omitempty" validate:"omitempty"` TaskType int `json:"task_type,string,omitempty" validate:"omitempty"` Text string `json:"text" validate:"omitempty"` CreatedAt int `json:"created_at,string,omitempty" validate:"omitempty"` UpdatedAt int `json:"updated_at,string" validate:"required"` ResponsibleUserID int `json:"responsible_user_id,string,omitempty" validate:"omitempty"` IsCompleted bool `json:"is_completed,omitempty" validate:"omitempty"` CreatedBy int `json:"created_by,string,omitempty" validate:"omitempty"` RequestID int `json:"request_id,string,omitempty" validate:"omitempty"` }
type UpdateContactRequest ¶
type UpdateContactRequest struct {
Update []*ContactUpdate `json:"update" validate:"required,dive,required"`
}
type UpdateCustomField ¶
type UpdateCustomField struct { ID int `json:"id" validate:"required"` Values []interface{} `json:"values" validate:"required,dive,required"` }
type UpdateCustomValue ¶
type UpdateLeadRequest ¶
type UpdateLeadRequest struct {
Update []*LeadUpdate `json:"update" validate:"required,dive,required"`
}
type UpdateTaskRequest ¶
type UpdateTaskRequest struct {
Update []*TaskUpdate `json:"update" validate:"required,dive,required"`
}
type User ¶
type User struct { ID int `json:"id" validate:"required"` Name string `json:"name" validate:"required"` LastName string `json:"last_name,omitempty" validate:"omitempty"` Login string `json:"login" validate:"required"` Language string `json:"language" validate:"required"` GroupID int `json:"group_id" validate:"omitempty"` IsActive bool `json:"is_active" validate:"omitempty"` IsFree bool `json:"is_free" validate:"omitempty"` IsAdmin bool `json:"is_admin" validate:"omitempty"` PhoneNumber string `json:"phone_number" validate:"omitempty"` Rights struct { Mail string `json:"mail" validate:"required"` IncomingLeads string `json:"incoming_leads" validate:"required"` Catalogs string `json:"catalogs" validate:"required"` LeadAdd string `json:"lead_add" validate:"required"` LeadView string `json:"lead_view" validate:"required"` LeadEdit string `json:"lead_edit" validate:"required"` LeadDelete string `json:"lead_delete" validate:"required"` LeadExport string `json:"lead_export" validate:"required"` ContactAdd string `json:"contact_add" validate:"required"` ContactView string `json:"contact_view" validate:"required"` ContactEdit string `json:"contact_edit" validate:"required"` ContactDelete string `json:"contact_delete" validate:"required"` ContactExport string `json:"contact_export" validate:"required"` CompanyAdd string `json:"company_add" validate:"required"` CompanyView string `json:"company_view" validate:"required"` CompanyEdit string `json:"company_edit" validate:"required"` CompanyDelete string `json:"company_delete" validate:"required"` CompanyExport string `json:"company_export" validate:"required"` TaskEdit string `json:"task_edit" validate:"required"` TaskDelete string `json:"task_delete" validate:"required"` } `json:"rights" validate:"required"` }
Click to show internal directories.
Click to hide internal directories.