class Readiness::Zendesk::OrganizationMemberships
@since 1.0.0
@author Jason Colyer
Defines the class OrganizationMemberships within the module {Readiness::Zendesk}.
#
def self.create!(client, membership)
- See: https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#create-membership - Zendesk API > Organization Memberships > Create Membership
Returns:
-
(Object)
- An instance of {Readiness::Zendesk::OrganizationMemberships}
Parameters:
-
membership
(Object
) -- An instance of {Readiness::Zendesk::OrganizationMemberships} -
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.create!(client, membership) response = client.connection.post 'organization_memberships', to_clean_json_with_key(membership, 'organization_membership') handle_request_error(1, 'Zendesk', response.status, { action: 'Create organization membership', message: Oj.load(response.body)}) unless response.status == 201 OrganizationMemberships.new(Oj.load(response.body)['organization_membership']) end
def self.create_many!(client, memberships)
- See: https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#create-many-memberships - Zendesk API > Organization Memberships > Create Many Memberships
Returns:
-
(object)
- A {Readiness::Zendesk::JobStatuses} instance
Parameters:
-
memberships
(Array
) -- An array of {Readiness::Zendesk::OrganizationMemberships} instances -
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.create_many!(client, memberships) data = { organization_memberships: memberships.map { |t| to_hash(t).compact } }.to_json response = client.connection.post('organization_memberships/create_many', data) handle_request_error(1, 'Zendesk', response.status, { action: 'Create many organization memberships', message: Oj.load(response.body)}) unless response.status == 200 JobStatuses.new(Oj.load(response.body)['job_status']) end
def self.delete!(client, membership)
- See: hhttps://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#delete-membership - Zendesk API > Organization Memberships > Delete Membership
Returns:
-
(Boolean)
-
Parameters:
-
membership
(Object
) -- An instance of {Readiness::Zendesk::OrganizationMemberships} -
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.delete!(client, membership) response = client.connection.delete "organization_memberships/#{membership.id}" handle_request_error(1, 'Zendesk', response.status, { action: 'Delete organization membership', message: Oj.load(response.body)}) unless response.status == 204 true end
def self.delete_many!(client, mids)
- See: https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#bulk-delete-memberships - Zendesk API > Organization Memberships > Bulk Delete Memberships
Returns:
-
(object)
- A {Readiness::Zendesk::JobStatuses} instance
Parameters:
-
mids
(Array
) -- An array of organization memberships IDs -
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.delete_many!(client, mids) response = client.connection.delete("organization_memberships/destroy_many?ids=#{mids.join(',')}") handle_request_error(1, 'Zendesk', response.status, { action: 'Delete many organization memberships', message: Oj.load(response.body)}) unless response.status == 200 JobStatuses.new(Oj.load(response.body)['job_status']) end
def self.find(client, oid)
- See: https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#show-membership - Zendesk API > Organization Memberships > Show Membership
Returns:
-
(Hash)
-
Parameters:
-
oid
(Integer
) -- The organization membership ID to find -
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.find(client, oid) response = client.connection.get("organization_memberships/#{oid}") handle_request_error(0, 'Zendesk', response.status, { action: 'get', id: oid }) unless response.status == 200 return OrganizationMemberships.new(Oj.load(response.body)['organization_membership']) if response.status == 200 Oj.load(response.body) end
def self.find!(client, oid)
- See: https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#show-membership - Zendesk API > Organization Memberships > Show Membership
Returns:
-
(Hash)
-
Parameters:
-
oid
(Integer
) -- The organization membership ID to find -
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.find!(client, oid) response = client.connection.get("organization_memberships/#{oid}") handle_request_error(1, 'Zendesk', response.status, { action: 'Find organization membership', id: oid }) unless response.status == 200 OrganizationMemberships.new(Oj.load(response.body)['organization_membership']) end
def self.list(client)
- See: https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#list-memberships - Zendesk API > Organization Memberships > List Memberships
Returns:
-
(Array)
-
Parameters:
-
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.list(client) response = client.connection.get("organization_memberships?page[size]=100") handle_request_error(0, 'Zendesk', response.status) unless response.status == 200 Oj.load(response.body)['organization_memberships'].map { |m| OrganizationMemberships.new(m) } end
def self.list_many(client, limit = 0)
- See: https://developer.zendesk.com/api-reference/ticketing/organizations/organization_memberships/#list-memberships - Zendesk API > Organization Memberships > List Memberships
Returns:
-
(Array)
-
Parameters:
-
limit
(Integer
) -- The number of pages to stop at. Using 0 means to list all. -
client
(Object
) -- An instance of {Readiness::Zendesk::Client}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def self.list_many(client, limit = 0) array = [] opts = "page[size]=100" loop do response = client.connection.get("organization_memberships?#{opts}") handle_request_error(0, 'Zendesk', response.status) unless response.status == 200 body = Oj.load(response.body) array += body['organization_memberships'].map { |o| OrganizationMemberships.new(o) } break if limit != 0 && array.count >= (limit * 100) break unless body['meta']['has_more'] opts = body['links'] ['next'].split('?').last end array end
def initialize(object = {})
-
object
(Object
) -- An instance of {Readiness::Zendesk::OrganizationMemberships}
Other tags:
- Since: - 1.0.0
Other tags:
- Author: - Jason Colyer
def initialize(object = {}) @id = object['id'] @default = object['default'] @organization_id = object['organization_id'] @organization_name = object['organization_name'] @user_id = object['user_id'] @view_tickets = object['view_tickets'] end