lib/losant_rest/devices.rb in losant_rest-1.16.3 vs lib/losant_rest/devices.rb in losant_rest-1.16.5

- old
+ new

@@ -248,10 +248,12 @@ # * {hash} deviceClass - Filter the devices by the given device class or classes (https://api.losant.com/#/definitions/deviceClassFilter) # * {hash} tagFilter - Array of tag pairs to filter by (https://api.losant.com/#/definitions/deviceTagFilter) # * {string} excludeConnectionInfo - If set, do not return connection info # * {string} parentId - Filter devices as children of a given system id # * {hash} query - Device filter JSON object which overrides the filterField, filter, deviceClass, tagFilter, and parentId parameters. (https://api.losant.com/#/definitions/advancedDeviceQuery) + # * {string} tagsAsObject - Return tags as an object map instead of an array. + # * {string} attributesAsObject - Return attributes as an object map instead of an array. # * {string} losantdomain - Domain scope of request (rarely needed) # * {boolean} _actions - Return resource actions in response # * {boolean} _links - Return resource link in response # * {boolean} _embedded - Return embedded resources in response # @@ -279,10 +281,12 @@ query_params[:tagFilter] = params[:tagFilter] if params.has_key?(:tagFilter) query_params[:excludeConnectionInfo] = params[:excludeConnectionInfo] if params.has_key?(:excludeConnectionInfo) query_params[:parentId] = params[:parentId] if params.has_key?(:parentId) query_params[:query] = params[:query] if params.has_key?(:query) query_params[:query] = JSON.dump(query_params[:query]) if query_params.has_key?(:query) + query_params[:tagsAsObject] = params[:tagsAsObject] if params.has_key?(:tagsAsObject) + query_params[:attributesAsObject] = params[:attributesAsObject] if params.has_key?(:attributesAsObject) headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain) query_params[:_actions] = params[:_actions] if params.has_key?(:_actions) query_params[:_links] = params[:_links] if params.has_key?(:_links) query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded) @@ -399,10 +403,12 @@ # all.Application, all.Organization, all.User, devices.*, or devices.post. # # Parameters: # * {string} applicationId - ID associated with the application # * {hash} device - New device information (https://api.losant.com/#/definitions/devicePost) + # * {string} tagsAsObject - Return tags as an object map instead of an array. + # * {string} attributesAsObject - Return attributes as an object map instead of an array. # * {string} losantdomain - Domain scope of request (rarely needed) # * {boolean} _actions - Return resource actions in response # * {boolean} _links - Return resource link in response # * {boolean} _embedded - Return embedded resources in response # @@ -420,9 +426,11 @@ raise ArgumentError.new("applicationId is required") unless params.has_key?(:applicationId) raise ArgumentError.new("device is required") unless params.has_key?(:device) body = params[:device] if params.has_key?(:device) + query_params[:tagsAsObject] = params[:tagsAsObject] if params.has_key?(:tagsAsObject) + query_params[:attributesAsObject] = params[:attributesAsObject] if params.has_key?(:attributesAsObject) headers[:losantdomain] = params[:losantdomain] if params.has_key?(:losantdomain) query_params[:_actions] = params[:_actions] if params.has_key?(:_actions) query_params[:_links] = params[:_links] if params.has_key?(:_links) query_params[:_embedded] = params[:_embedded] if params.has_key?(:_embedded)