Documentation
¶
Index ¶
- func CheckResponse(r *http.Response) error
- type ActivityResponse
- type ActivityService
- type AgentsActivity
- type Article
- type ArticleCollectionResponse
- type ArticleLabel
- type ArticleResponse
- type ArticleService
- type Category
- type CategoryService
- type Client
- type Comment
- type CustomField
- type ErrorResponse
- type Group
- type LabelCollectionResponse
- type LabelResponse
- type LabelService
- type Organization
- type OrganizationCollectionResponse
- type OrganizationResponse
- type OrganizationSearchResponse
- type OrganizationService
- type Photo
- type Response
- type SatisfactionRating
- type SearchService
- type Section
- type SectionService
- type Thumbnail
- type Ticket
- type TicketCollectionResponse
- type TicketResponse
- type TicketService
- func (s *TicketService) Create(ticket *Ticket) (*Ticket, *Response, error)
- func (s *TicketService) Get(id string) (*Ticket, *Response, error)
- func (s *TicketService) GetProblemIncidents(id string) ([]Ticket, error)
- func (s *TicketService) GetProblemIncidentsCount(id string) (int, error)
- func (s *TicketService) List() ([]Ticket, error)
- func (s *TicketService) ListByView(id string) ([]Ticket, error)
- func (s *TicketService) ListByViewUG(id string) ([]Ticket, []User, []Group, error)
- func (s *TicketService) Update(ticket *Ticket) (*Ticket, *Response, error)
- type TicketUserGroupResponse
- type Translation
- type TranslationResponse
- type User
- type UserResponse
- type UserService
- type Via
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckResponse ¶
CheckResponse checks if a response is valid
Types ¶
type ActivityResponse ¶
type ActivityResponse struct {
Activities []AgentsActivity `json:"users,omitempty"`
Next *string `json:"next_page,omitempty"`
Previous *string `json:"previous_page,omitempty"`
Count *int `json:"count,omitempty"`
}
type ActivityService ¶
type ActivityService struct {
// contains filtered or unexported fields
}
func (*ActivityService) List ¶
func (s *ActivityService) List() ([]AgentsActivity, error)
type AgentsActivity ¶
type AgentsActivity struct {
AgentID *float64 `json:"agent_id,omitempty"`
Status *string `json:"status,omitempty"`
AvailableTime *int `json:"available_time,omitempty"`
CallsAccepted *int `json:"calls_accepted,omitempty"`
CallsDenied *int `json:"calls_denied,omitempty"`
CallsMissed *int `json:"calls_missed,omitempty"`
AverageTalkTime *int `json:"average_talk_time,omitempty"`
}
type Article ¶
type Article struct {
ID *float64 `json:"id,omitempty"`
URL *string `json:"url,omitempty"`
HtmlURL *string `json:"html_url,omitempty"`
Title *string `json:"title,omitempty"`
Name *string `json:"name,omitempty"`
Body *string `json:"body,omitempty"`
Locale *string `json:"locale,omitempty"`
SourceLocale *string `json:"source_locale,omitempty"`
AuthorID *float64 `json:"author_id,omitempty"`
CommentsDisabled *bool `json:"comments_disabled,omitempty"`
Outdated *bool `json:"outdated,omitempty"`
Labels []string `json:"label_names,omitempty"`
Draft *bool `json:"draft,omitempty"`
Promoted *bool `json:"promoted,omitempty"`
Position *int64 `json:"position,omitempty"`
VoteSum *int64 `json:"vote_sum,omitempty"`
VoteCount *int64 `json:"vote_count,omitempty"`
SectionID *float64 `json:"section_id,omitempty"`
TranslationIds []int64 `json:"translation_ids,omitempty"`
CreatedAt *string `json:"created_at,omitempty"`
UpdatedAt *string `json:"updated_at,omitempty"`
}
Article struct
type ArticleCollectionResponse ¶
type ArticleCollectionResponse struct {
Results []Article `json:"articles,omitempty"`
Count *int64 `json:"count,omitempty"`
Next *string `json:"next_page,omitempty"`
Page *int64 `json:"page,omitempty"`
PageCount *int64 `json:"page_count,omitempty"`
PerPage *int64 `json:"per_page,omitempty"`
Previous *string `json:"previous_page,omitempty"`
}
ArticleCollectionResponse struct
type ArticleLabel ¶
type ArticleLabel struct {
ID *float64 `json:"id,omitempty"`
URL *string `json:"url,omitempty"`
Name *string `json:"name,omitempty"`
CreatedAt *string `json:"created_at,omitempty"`
UpdatedAt *string `json:"updated_at,omitempty"`
}
ArticleLabel struct
type ArticleResponse ¶
type ArticleResponse struct {
Article *Article `json:"article"`
}
ArticleResponse struct
type ArticleService ¶
type ArticleService struct {
// contains filtered or unexported fields
}
ArticleService struct
func (*ArticleService) Create ¶
func (s *ArticleService) Create(a *Article) (*Article, error)
Create func creates a single new article
func (*ArticleService) Delete ¶
func (s *ArticleService) Delete(id *int64) error
Delete func deletes a single article
func (*ArticleService) Update ¶
func (s *ArticleService) Update(a *Article) error
Update func updates a single article
type Category ¶
type Category struct {
ID float64 `json:"id,omitempty"`
Name string `json:"name,omitempty"`
Description string `json:"description,omitempty"`
Locale string `json:"locale,omitempty"`
SourceLocale string `json:"source_locale,omitempty"`
URL string `json:"url,omitempty"`
HtmlURL string `json:"html_url,omitempty"`
Outdated bool `json:"outdated,omitempty"`
Position float64 `json:"position,omitempty"`
TranslationIDs []interface{} `json:"translation_ids,omitempty"`
CreatedAt string `json:"created_at,omitempty"`
UpdatedAt string `json:"updated_at,omitempty"`
}
Category struct
type CategoryService ¶
type CategoryService struct {
// contains filtered or unexported fields
}
CategoryService struct
type Client ¶
type Client struct {
UserAgent string
Tickets *TicketService
Users *UserService
Articles *ArticleService
Labels *LabelService
Organizations *OrganizationService
Search *SearchService
// contains filtered or unexported fields
}
Client which talks to the Vend API
type Comment ¶
type Comment struct {
Body *string `json:"body,omitempty"`
Public *bool `json:"public,omitempty"`
AuthorID *int `json:"author_id,omitemtpy"`
}
Comment on ticket
type CustomField ¶
type CustomField struct {
ID *float64 `json:"id,omitempty"`
Value interface{} `json:"value,omitempty"`
}
CustomField struct
type ErrorResponse ¶
type ErrorResponse struct {
Response *http.Response
Message string `json:"error,omitempty"`
Description *string `json:"description,omitempty"`
Details interface{} `json:"details,omitempty"`
}
ErrorResponse wraps an error response
func (*ErrorResponse) Error ¶
func (r *ErrorResponse) Error() string
type Group ¶
type Group struct {
URL *string `json:"url,omitempty"`
ID *float64 `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Deleted *bool `json:"deleted,omitempty"`
CreatedAt *string `json:"created_at,omitempty"`
UpdatedAt *string `json:"updated_at,omitempty"`
}
Group struct
type LabelCollectionResponse ¶
type LabelCollectionResponse struct {
Results []ArticleLabel `json:"labels,omitempty"`
Count *int64 `json:"count,omitempty"`
Next *string `json:"next_page,omitempty"`
Page *int64 `json:"page,omitempty"`
PageCount *int64 `json:"page_count,omitempty"`
PerPage *int64 `json:"per_page,omitempty"`
Previous *string `json:"previous_page,omitempty"`
}
LabelCollectionResponse struct
type LabelResponse ¶
type LabelResponse struct {
Label *ArticleLabel `json:"label,omitempty"`
}
LabelResponse struct
type LabelService ¶
type LabelService struct {
// contains filtered or unexported fields
}
LabelService struct
func (*LabelService) Create ¶
func (s *LabelService) Create(id *int64, l *ArticleLabel) (*ArticleLabel, error)
Create func creates a single new article
func (*LabelService) Delete ¶
func (s *LabelService) Delete(articleID, id *int64) error
Delete func deletes a single article
func (*LabelService) Get ¶
func (s *LabelService) Get(id *int64) ([]ArticleLabel, error)
Get function lists lablels used in an article with a given id
func (*LabelService) List ¶
func (s *LabelService) List() ([]ArticleLabel, error)
List function lists labels used in all articles
type Organization ¶
type Organization struct {
URL *string `json:"url,omitempty"`
ID *int `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
ExternalID *string `json:"external_id,omitempty"`
CreatedAt *string `json:"created_at,omitempty"`
UpdatedAt *string `json:"updated_at,omitempty"`
DomainNames []string `json:"domain_names,omitempty"`
Details *string `json:"details,omitempty"`
Notes *string `json:"notes,omitempty"`
GroupID *int `json:"group_id,omitempty"`
Tags []string `json:"tags,omitempty"`
OrganizationFields map[string]string `json:"organization_fields,omitempty"`
}
Organization struct
type OrganizationCollectionResponse ¶
type OrganizationCollectionResponse struct {
Organizations []Organization `json:"organizations,omitempty"`
NextPage *string `json:"next_page,omitempty"`
PreviousPage *string `json:"previous_page,omitempty"`
Count *int `json:"count,omitempty"`
}
OrganizationCollectionResponse struct
type OrganizationResponse ¶
type OrganizationResponse struct {
Organization *Organization `json:"organization"`
}
OrganizationResponse struct
type OrganizationSearchResponse ¶
type OrganizationSearchResponse struct {
Organizations []Organization `json:"results,omitempty"`
NextPage *string `json:"next_page,omitempty"`
PreviousPage *string `json:"previous_page,omitempty"`
Count *int `json:"count,omitempty"`
}
OrganizationSearchResponse struct
type OrganizationService ¶
type OrganizationService struct {
// contains filtered or unexported fields
}
OrganizationService struct
func (*OrganizationService) Create ¶
func (s *OrganizationService) Create(org *Organization) (*Organization, error)
Create creates a new organization
func (*OrganizationService) Get ¶
func (s *OrganizationService) Get(organizationID string) (*Organization, *Response, error)
Get finds an organization in Zendesk by ID
func (*OrganizationService) Update ¶
func (s *OrganizationService) Update(org *Organization) (*Organization, error)
Update updates and organization by id
type Photo ¶
type Photo struct {
URL *string `json:"url,omitempty"`
ID *int `json:"id,omitempty"`
FileName *string `json:"file_name,omitempty"`
ContentURL *string `json:"content_url,omitempty"`
MappedContentURL *string `json:"mapped_content_url,omitempty"`
ContentType *string `json:"content_type,omitempty"`
Size *int `json:"size,omitempty"`
Inline *bool `json:"inline,omitempty"`
Thumbnails []Thumbnail `json:"thumbnails,omitempty"`
}
type SatisfactionRating ¶
type SatisfactionRating struct {
ID *float64 `json:"id,omitempty"`
Score *string `json:"score,omitempty"`
Comment *string `json:"comment,omitempty"`
}
SatisfactionRating struct
type SearchService ¶
type SearchService struct {
// contains filtered or unexported fields
}
SearchService struct
func (*SearchService) OrganizationByName ¶
func (s *SearchService) OrganizationByName(name string) (*OrganizationSearchResponse, error)
OrganizationByName searches the organization by name
type Section ¶
type Section struct {
ID *float64 `json:"id,omitempty"`
Name *string `json:"name,omitempty"`
Description *string `json:"description,omitempty"`
Locale *string `json:"locale,omitempty"`
SourceLocale *string `json:"source_locale,omitempty"`
URL *string `json:"url,omitempty"`
HtmlURL *string `json:"html_url,omitempty"`
CategoryID *float64 `json:"category_id,omitempty"`
Visibility *string `json:"visibility,omitempty"`
Outdated *bool `json:"outdated,omitempty"`
RestrictToManager *bool `json:"restrict_to_manager,omitempty"`
InternalRestrictionTags []string `json:"internal_restriction_tags,omitempty"`
RestrictedRestrictionTags []string `json:"restricted_restriction_tags,omitempty"`
RestrictionGroupIds []string `json:"restriction_group_ids,omitempty"`
RestrictionOrganizationIds []string `json:"restriction_organization_ids,omitempty"`
Position *float64 `json:"position,omitempty"`
Sorting *string `json:"sorting,omitempty"`
TranslationIds []string `json:"translation_ids,omitempty"`
CreatedAt *string `json:"created_at,omitempty"`
UpdatedAt *string `json:"updated_at,omitempty"`
}
Section struct
type SectionService ¶
type SectionService struct {
// contains filtered or unexported fields
}
SectionService struct
type Thumbnail ¶
type Thumbnail struct {
URL *string `json:"url,omitempty"`
ID *int `json:"id,omitempty"`
FileName *string `json:"file_name,omitempty"`
ContentURL *string `json:"content_url,omitempty"`
MappedContentURL *string `json:"mapped_content_url,omitempty"`
ContentType *string `json:"content_type,omitempty"`
Size *int `json:"size,omitempty"`
Inline *bool `json:"inline,omitempty"`
}
type Ticket ¶
type Ticket struct {
ID *float64 `json:"id,omitempty"`
URL *string `json:"url,omitempty"`
ExternalID *string `json:"external_id,omitempty"`
Type *string `json:"type,omitempty"`
Subject *string `json:"subject,omitempty"`
Description *string `json:"description,omitempty"`
Priority *string `json:"priority,omitempty"`
Status *string `json:"status,omitempty"`
Recipient *string `json:"recipient,omitempty"`
RequesterID *float64 `json:"requester_id,omitempty"`
Requester *User `json:"requester,omitempty"`
SubmitterID *float64 `json:"submitter_id,omitempty"`
AssigneeID *float64 `json:"assignee_id,omitempty"`
OrganizationID *float64 `json:"organization_id,omitempty"`
GroupID *float64 `json:"group_id,omitempty"`
CollaboratorIDs []float64 `json:"collaborator_ids,omitempty"`
ForumTopicID *float64 `json:"forum_topic_id,omitempty"`
ProblemID *float64 `json:"problem_id,omitempty"`
HasIncidents *bool `json:"has_incidents,omitempty"`
DueAt *string `json:"due_at,omitempty"`
Tags []string `json:"tags,omitempty"`
Via *Via `json:"via,omitempty"`
CustomFields []CustomField `json:"custom_fields,omitempty"`
SatisfactionRating *SatisfactionRating `json:"satisfaction_rating,omitempty"`
SharingAgreementIds []float64 `json:"sharing_agreement_ids,omitempty"`
FollowupIds []float64 `json:"followup_ids,omitempty"`
TicketFormID *float64 `json:"ticket_form_id,omitempty"`
BrandID *float64 `json:"brand_id,omitempty"`
CreatedAt *string `json:"created_at,omitempty"`
UpdatedAt *string `json:"updated_at,omitempty"`
Comment *Comment `json:"comment,omitempty"`
}
Ticket struct
type TicketCollectionResponse ¶
type TicketCollectionResponse struct {
Results []Ticket `json:"tickets"`
Next *string `json:"next_page,omitempty"`
Previous *string `json:"previous_page,omitempty"`
Count *int `json:"count,omitempty"`
}
TicketCollectionResponse struct
type TicketResponse ¶
type TicketResponse struct {
Ticket Ticket `json:"ticket"`
}
TicketResponse struct
type TicketService ¶
type TicketService struct {
// contains filtered or unexported fields
}
TicketService struct
func (*TicketService) Create ¶
func (s *TicketService) Create(ticket *Ticket) (*Ticket, *Response, error)
Create a new Zendesk Ticket
func (*TicketService) Get ¶
func (s *TicketService) Get(id string) (*Ticket, *Response, error)
Get method
func (*TicketService) GetProblemIncidents ¶
func (s *TicketService) GetProblemIncidents(id string) ([]Ticket, error)
GetProblemIncidents gets all problem tickets
func (*TicketService) GetProblemIncidentsCount ¶
func (s *TicketService) GetProblemIncidentsCount(id string) (int, error)
GetProblemIncidentsCount gets only the first page of tickets which includes the count field
func (*TicketService) List ¶
func (s *TicketService) List() ([]Ticket, error)
List returns a slice of all products
func (*TicketService) ListByView ¶
func (s *TicketService) ListByView(id string) ([]Ticket, error)
ListByView function
func (*TicketService) ListByViewUG ¶
ListByViewUG function
type TicketUserGroupResponse ¶
type TicketUserGroupResponse struct {
Tickets []Ticket `json:"tickets,omitempty"`
Users []User `json:"users,omitempty"`
Groups []Group `json:"groups,omitempty"`
Next *string `json:"next_page,omitempty"`
Previous *string `json:"previous_page,omitempty"`
Count *int `json:"count,omitempty"`
}
TicketUserGroupResponse struct
type Translation ¶
type Translation struct {
ID *int `json:"id"`
URL *string `json:"url"`
HTMLURL *string `json:"html_url"`
SourceID *int `json:"source_id"`
SourceType *string `json:"source_type"`
Locale *string `json:"locale"`
Title *string `json:"title"`
Body *string `json:"body"`
Outdated *bool `json:"outdated"`
Draft *bool `json:"draft"`
Hidden *bool `json:"hidden"`
CreatedAt *time.Time `json:"created_at,omitempty"`
UpdatedAt *time.Time `json:"updated_at,omitempty"`
UpdatedByID *int `json:"updated_by_id"`
CreatedByID *int `json:"created_by_id"`
}
Translation struct
type TranslationResponse ¶
type TranslationResponse struct {
Translation *Translation `json:"translation"`
}
TranslationResponse struct
type User ¶
type User struct {
ID *int `json:"id,omitempty"`
URL *string `json:"url,omitempty"`
Name *string `json:"name,omitempty"`
Email *string `json:"email,omitempty"`
CreatedAt *time.Time `json:"created_at,omitempty"`
UpdatedAt *time.Time `json:"updated_at,omitempty"`
TimeZone *string `json:"time_zone,omitempty"`
Phone *string `json:"phone,omitempty"`
Photo *Photo `json:"photo,omitempty"`
LocaleID *int `json:"locale_id,omitempty"`
Locale *string `json:"locale,omitempty"`
OrganizationID *int `json:"organization_id,omitempty"`
Role *string `json:"role,omitempty"`
Verified *bool `json:"verified,omitempty"`
ExternalID *string `json:"external_id,omitempty"`
Tags []string `json:"tags,omitempty"`
Alias *string `json:"alias,omitempty"`
Active *bool `json:"active,omitempty"`
LastLoginAt *time.Time `json:"last_login_at,omitempty"`
TwoFactorAuthEnabled *bool `json:"two_factor_auth_enabled,omitempty"`
Signature *string `json:"signature,omitempty"`
Details *string `json:"details,omitempty"`
Notes *string `json:"notes,omitempty"`
CustomRoleID *int `json:"custom_role_id,omitempty"`
Moderator *bool `json:"moderator,omitempty"`
TicketRestriction *string `json:"ticket_restriction,omitempty"`
OnlyPrivateComments *bool `json:"only_private_comments,omitempty"`
RestrictedAgent *bool `json:"restricted_agent,omitempty"`
Suspended *bool `json:"suspended,omitempty"`
ChatOnly *bool `json:"chat_only,omitempty"`
UserFields map[string]interface{} `json:"user_fields,omitempty"`
}
type UserResponse ¶
type UserService ¶
type UserService struct {
// contains filtered or unexported fields
}
func (*UserService) List ¶
func (s *UserService) List() ([]User, error)