Skip to content
No description, website, or topics provided.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md

README.md

#D42-Ruby-Samples

Example script for running Rubyl scripts against the Device42 API's

##Sample GET call using Ruby

# GET example - get all devices

require 'httparty'
USERNAME = 'admin'
PASSWORD = 'adm!nd42'

base_url = "https://device42_server/"
path = "api/1.0/devices/"

auth = {:username => USERNAME, :password => PASSWORD}
url = "#{base_url}#{path}"

response = HTTParty.get(url ,
	{
		:headers => {'Content-Type' => 'application/x-www-form-urlencoded'},
		:basic_auth => auth,
		:verify => false,
	}
)

data = response.parsed_response
puts "\nRESPONSE: ",data

##Sample POST call using Ruby

# POST example - add new device

require 'httparty'
USERNAME = 'admin'
PASSWORD = 'adm!nd42'

base_url = "https://device42_server/"
path = "api/1.0/devices/"
name = "device42"
payload = {:name => name}
auth = {:username => USERNAME, :password => PASSWORD}
url = "#{base_url}#{path}"

response = HTTParty.post(url ,
	{
		:headers => {'Content-Type' => 'application/x-www-form-urlencoded'},
		:basic_auth => auth,
		:verify => false,
		:body => payload
	}
)

data = response.parsed_response
puts "\nRESPONSE: ",data

##Sample DELETE call using Ruby

# DELETE example - delete device

require 'httparty'
USERNAME = 'admin'
PASSWORD = 'adm!nd42'

base_url = "https://device42_server/"
device_id = id_of_device_to_delete
api_endpoint = "api/1.0/devices/"
path = "#{api_endpoint}#{device_id}/"

auth = {:username => USERNAME, :password => PASSWORD}
url = "#{base_url}#{path}"

response = HTTParty.delete(url,
	{
		:headers => {'Content-Type' => 'application/x-www-form-urlencoded'},
		:basic_auth => auth,
		:verify => false
	}
)

data = response.parsed_response
puts "\nRESPONSE: ",data

##Sample PUT call using Ruby

# PUT example - create a custom field

require 'httparty'
USERNAME = 'admin'
PASSWORD = 'adm!nd42'

base_url = "https://device42_server/"
path = "api/1.0/device/custom_field/"

auth = {:username => USERNAME, :password => PASSWORD}
url = "#{base_url}#{path}"

name = "device42"
key  = "test_key"
value = "test_value"

@payload = {
	:name => name,
	:key => key,
	:value => value
	}


payload = {:name => name}
response = HTTParty.put(url,
	{
		:headers => {'Content-Type' => 'application/x-www-form-urlencoded'},
		:basic_auth => auth,
		:verify => false,
		:body => @payload
	}
)

data = response.parsed_response
puts "\nRESPONSE: ",data
You can’t perform that action at this time.