def save(callBackURL = nil)
			if @request == nil
				  raise GrabzItException.new("No parameters have been set.", GrabzItException::PARAMETER_MISSING_PARAMETERS)
			end
			
			sig = encode(@request.options()._getSignatureString(GrabzIt::Utility.nil_check(@applicationSecret), callBackURL, @request.getTargetUrl()))
			
			data = take(sig, callBackURL)
			
			if data == nil || data == ""
				data = take(sig, callBackURL)
			end

			if data == nil || data == ""
				raise GrabzItException.new("An unknown network error occurred, please try calling this method again.", GrabzItException::NETWORK_GENERAL_ERROR)
			end

			return get_result_value(data, "ID")
		end
def save(callBackURL = nil)
			if @request == nil
				  raise GrabzItException.new("No parameters have been set.", GrabzItException::PARAMETER_MISSING_PARAMETERS)
			end
			
			sig = encode(@request.options()._getSignatureString(GrabzIt::Utility.nil_check(@applicationSecret), callBackURL, @request.getTargetUrl()))
			
			data = take(sig, callBackURL)
			
			if data == nil || data == ""
				data = take(sig, callBackURL)
			end

			if data == nil || data == ""
				raise GrabzItException.new("An unknown network error occurred, please try calling this method again.", GrabzItException::NETWORK_GENERAL_ERROR)
			end

			return get_result_value(data, "ID")
		end
Calls the GrabzIt web service to take the screenshot

 The handler will be passed a URL with the following query string parameters:
 - message (is any error message associated with the screenshot)
 - customId (is a custom id you may have specified in the [AnimationOptions], [ImageOptions], [PDFOptions] or [TableOptions] classes)
 - id (is the unique id of the screenshot which can be used to retrieve the screenshot with the {#get_result} method)
 - filename (is the filename of the screenshot)
 - format (is the format of the screenshot)
 @note This is the recommended method of saving a screenshot
 @param callBackURL [String, nil] the handler the GrabzIt web service should call after it has completed its work
 @return [String] the unique identifier of the screenshot. This can be used to get the screenshot with the {#get_result} method
 @raise [RuntimeError] if the GrabzIt service reports an error with the request it will be raised as a RuntimeError