class Io::Flow::V0::Clients::Organizations
Public Class Methods
# File lib/flow_commerce/flow_api_v0_client.rb, line 2677 def initialize(client) @client = HttpClient::Preconditions.assert_class('client', client, ::Io::Flow::V0::Client) end
Public Instance Methods
Delete the organization with this id
# File lib/flow_commerce/flow_api_v0_client.rb, line 2775 def delete_by_organization_id(organization_id) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) r = @client.request("/organizations/#{CGI.escape(organization_id)}").delete nil end
Removes the setting for this region for a specific organization
# File lib/flow_commerce/flow_api_v0_client.rb, line 2813 def delete_settings_and_regions_by_organization_id_and_region(organization_id, region) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) HttpClient::Preconditions.assert_class('region', region, String) r = @client.request("/organizations/#{CGI.escape(organization_id)}/settings/regions/#{CGI.escape(region)}").delete nil end
Search organizations. Always paginated.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2721 def get(incoming={}) opts = HttpClient::Helper.symbolize_keys(incoming) query = { :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }), :channel_id => (x = opts.delete(:channel_id); x.nil? ? nil : HttpClient::Preconditions.assert_class('channel_id', x, String)), :name => (x = opts.delete(:name); x.nil? ? nil : HttpClient::Preconditions.assert_class('name', x, String)), :environment => (x = opts.delete(:environment); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::Environment) ? x : ::Io::Flow::V0::Models::Environment.apply(x)).value), :parent => (x = opts.delete(:parent); x.nil? ? nil : HttpClient::Preconditions.assert_class('parent', x, String)), :in_channel => (x = opts.delete(:in_channel); x.nil? ? nil : HttpClient::Preconditions.assert_boolean('in_channel', x)), :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer), :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer), :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "name" : x), String) }.delete_if { |k, v| v.nil? } r = @client.request("/organizations").with_query(query).get r.map { |x| ::Io::Flow::V0::Models::Organization.new(x) } end
Returns
information about a specific organization.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2760 def get_by_organization_id(organization_id) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) r = @client.request("/organizations/#{CGI.escape(organization_id)}").get ::Io::Flow::V0::Models::Organization.new(r) end
List of all destination countries available for this organization, including countries within a world experience.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2699 def get_countries_and_destinations_by_organization(organization) HttpClient::Preconditions.assert_class('organization', organization, String) r = @client.request("/#{CGI.escape(organization)}/countries/destinations").get r.map { |x| ::Io::Flow::V0::Models::Country.new(x) } end
Status of all countries
# File lib/flow_commerce/flow_api_v0_client.rb, line 2706 def get_countries_and_statuses_by_organization(organization) HttpClient::Preconditions.assert_class('organization', organization, String) r = @client.request("/#{CGI.escape(organization)}/countries/statuses").get r.map { |x| ::Io::Flow::V0::Models::CountryStatus.new(x) } end
The countries resources provides a unique list of all of the countries for which an experience exists. We generate this list of countries by iterating through all of the experience regions, and collecting all of the countries.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2684 def get_countries_by_organization(organization, incoming={}) HttpClient::Preconditions.assert_class('organization', organization, String) opts = HttpClient::Helper.symbolize_keys(incoming) query = { :ip => (x = opts.delete(:ip); x.nil? ? nil : HttpClient::Preconditions.assert_class('ip', x, String)), :country => (x = opts.delete(:country); x.nil? ? nil : HttpClient::Preconditions.assert_class('country', x, String)), :status => HttpClient::Preconditions.assert_class('status', (x = opts.delete(:status); x.nil? ? [] : x), Array).map { |v| (x = v; x.is_a?(::Io::Flow::V0::Models::ExperienceStatus) ? x : ::Io::Flow::V0::Models::ExperienceStatus.apply(x)).value }, :context => (x = opts.delete(:context); x.nil? ? nil : HttpClient::Preconditions.assert_class('context', x, String)) }.delete_if { |k, v| v.nil? } r = @client.request("/#{CGI.escape(organization)}/countries").with_query(query).get r.map { |x| ::Io::Flow::V0::Models::Country.new(x) } end
Returns
currencies for a specific organization.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2782 def get_settings_and_currencies_by_organization_id(organization_id) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) r = @client.request("/organizations/#{CGI.escape(organization_id)}/settings/currencies").get r.map { |x| ::Io::Flow::V0::Models::Currency.new(x) } end
Returns
the list of enabled countries based on the region settings for a specific organization
# File lib/flow_commerce/flow_api_v0_client.rb, line 2797 def get_settings_and_regions_and_countries_and_available_by_organization_id(organization_id) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) r = @client.request("/organizations/#{CGI.escape(organization_id)}/settings/regions/countries/available").get r.map { |x| ::Io::Flow::V0::Models::Country.new(x) } end
Returns
the region settings associated to a specific organization.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2789 def get_settings_and_regions_by_organization_id(organization_id) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) r = @client.request("/organizations/#{CGI.escape(organization_id)}/settings/regions").get r.map { |x| ::Io::Flow::V0::Models::RegionSetting.new(x) } end
Provides visibility into recent changes of each object, including deletion
# File lib/flow_commerce/flow_api_v0_client.rb, line 2746 def get_versions(incoming={}) opts = HttpClient::Helper.symbolize_keys(incoming) query = { :id => (x = opts.delete(:id); x.nil? ? nil : HttpClient::Preconditions.assert_class('id', x, Array).map { |v| HttpClient::Preconditions.assert_class('id', v, String) }), :organization => (x = opts.delete(:organization); x.nil? ? nil : HttpClient::Preconditions.assert_class('organization', x, Array).map { |v| HttpClient::Preconditions.assert_class('organization', v, String) }), :limit => HttpClient::Preconditions.assert_class('limit', (x = opts.delete(:limit); x.nil? ? 25 : x), Integer), :offset => HttpClient::Preconditions.assert_class('offset', (x = opts.delete(:offset); x.nil? ? 0 : x), Integer), :sort => HttpClient::Preconditions.assert_class('sort', (x = opts.delete(:sort); x.nil? ? "journal_timestamp" : x), String) }.delete_if { |k, v| v.nil? } r = @client.request("/organizations/versions").with_query(query).get r.map { |x| ::Io::Flow::V0::Models::OrganizationVersion.new(x) } end
Create a new organization.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2739 def post(organization_form) (x = organization_form; x.is_a?(::Io::Flow::V0::Models::OrganizationForm) ? x : ::Io::Flow::V0::Models::OrganizationForm.new(x)) r = @client.request("/organizations").with_json(organization_form.to_json).post ::Io::Flow::V0::Models::Organization.new(r) end
Update or create an organization with the specified id.
# File lib/flow_commerce/flow_api_v0_client.rb, line 2767 def put_by_organization_id(organization_id, organization_put_form) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) (x = organization_put_form; x.is_a?(::Io::Flow::V0::Models::OrganizationPutForm) ? x : ::Io::Flow::V0::Models::OrganizationPutForm.new(x)) r = @client.request("/organizations/#{CGI.escape(organization_id)}").with_json(organization_put_form.to_json).put ::Io::Flow::V0::Models::Organization.new(r) end
# File lib/flow_commerce/flow_api_v0_client.rb, line 2712 def put_countries_and_statuses_by_organization_and_country(organization, country, country_status_form) HttpClient::Preconditions.assert_class('organization', organization, String) HttpClient::Preconditions.assert_class('country', country, String) (x = country_status_form; x.is_a?(::Io::Flow::V0::Models::CountryStatusForm) ? x : ::Io::Flow::V0::Models::CountryStatusForm.new(x)) r = @client.request("/#{CGI.escape(organization)}/countries/statuses/#{CGI.escape(country)}").with_json(country_status_form.to_json).put ::Io::Flow::V0::Models::CountryStatus.new(r) end
Updates or creates a region setting for a specific organization
# File lib/flow_commerce/flow_api_v0_client.rb, line 2804 def put_settings_and_regions_by_organization_id_and_region(organization_id, region, region_setting_form) HttpClient::Preconditions.assert_class('organization_id', organization_id, String) HttpClient::Preconditions.assert_class('region', region, String) (x = region_setting_form; x.is_a?(::Io::Flow::V0::Models::RegionSettingForm) ? x : ::Io::Flow::V0::Models::RegionSettingForm.new(x)) r = @client.request("/organizations/#{CGI.escape(organization_id)}/settings/regions/#{CGI.escape(region)}").with_json(region_setting_form.to_json).put ::Io::Flow::V0::Models::RegionSetting.new(r) end