Developer API - Dispositivos

  1. Atributos de um dispositivo
  2. Listagem de todos dispositivos
  3. Busca de um dispositivo específico
  4. Liberação de um novo dispositivo
  5. Atualização de um dispositivo
  6. Exclusão de um dispositivo

Atributos de um dispositivo

Os seguintes atributos compõe um dispositivo:

Nome Tipo Descrição
id Integer ID do registro
serial_number String Número de série do equipamento
enabled Boolean Determina se o equipamento pode ou não acessar o CloudWalk (default true)
logical_number_id Integer ID do número lógico associado com o dispositivo
meta JSON Informações adicionais como marca, modelo, etc
updated_at String Timestamp da atualização do registro (ISO 8601)
created_at String Timestamp da criação do registro (ISO 8601)
created_by Integer ID do usuário que criou o registro
created_via String Canal utilizado para criar o registro (Interface ou API)

Listagem de todos dispositivos

Retorna um array com todos os dispositivos.

Método e formato da URL

GET https://api.cloudwalk.io/{versão}/devices?access_token={token}

Exemplo de utilização

$ curl -X GET "https://api.cloudwalk.io/v1/devices?access_token=$TOKEN"
require 'net/http'

token = 'API_TOKEN'

uri = URI("https://api.cloudwalk.io/v1/devices?access_token=#{token}")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Get.new(uri.request_uri)

res = http.request(request)

puts "Response #{res.code} #{res.message}: #{res.body}"

Exemplo de resposta

{
   "pagination":{
      "page":1,
      "total_pages":1,
      "entries":2,
      "total_entries":2
   },
   "devices":[
      {
         "device":{
            "id":1,
            "serial_number":"123-456-789",
            "enabled":true,
            "updated_at":"2015-01-30T17:42:41Z",
            "created_at":"2015-01-30T17:42:41Z",
            "created_by":1,
            "created_via":"interface"
         }
      },
      {
         "device":{
            "id":2,
            "serial_number":"111-222-333",
            "enabled":true,
            "updated_at":"2015-01-30T17:47:40Z",
            "created_at":"2015-01-30T17:47:40Z",
            "created_by":1,
            "created_via":"interface"
         }
      }
   ]
}

Busca de um dispositivo específico

Retorna os detalhes de um dispositivo específico.

Método e formato da URL

GET https://api.cloudwalk.io/{versão}/devices/{device_id}?access_token={token}

Exemplo de utilização

$ curl -X GET "https://api.cloudwalk.io/v1/devices/2?access_token=$TOKEN"
require 'net/http'

token = 'API_TOKEN'

uri = URI("https://api.cloudwalk.io/v1/devices/2?access_token=#{token}")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Get.new(uri.request_uri)

res = http.request(request)

puts "Response #{res.code} #{res.message}: #{res.body}"

Exemplo de resposta

{
  "device":{
    "id":2,
    "serial_number":"111-222-333",
    "enabled":true,
    "updated_at":"2015-01-30T17:47:40Z",
    "created_at":"2015-01-30T17:47:40Z",
    "created_by":1,
    "created_via":"interface"
  }
}

Liberação de um novo dispositivo

Libera o acesso de um dispositivo ao CloudWalk.

Método e formato da URL

POST https://api.cloudwalk.io/{versão}/devices?access_token={token}

Exemplo de utilização

$ curl -X POST "https://api.cloudwalk.io/v1/devices?access_token=$TOKEN" \
-d '{"serial_number":"444-555-666"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  "serial_number" => "444-555-666"
}

uri = URI("https://api.cloudwalk.io/v1/devices?access_token=#{token}")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Post.new(uri.request_uri)
request.body = payload.to_json

res = http.request(request)

puts "Response #{res.code} #{res.message}: #{res.body}"

Exemplo de resposta

{
  "device":{
    "id":3,
    "serial_number":"444-555-666",
    "enabled":true,
    "updated_at":"2015-01-30T17:55:19Z",
    "created_at":"2015-01-30T17:55:19Z",
    "created_by":1,
    "created_via":"api"
  }
}

Atualização de um dispositivo

Modifica um dispositivo já existente.

Método e formato da URL

PUT https://api.cloudwalk.io/{versão}/devices/{serial_number}?access_token={token}

Exemplo de utilização

$ curl -X PUT "https://api.cloudwalk.io/v1/devices/444-555-666?access_token=$TOKEN" \
-d '{"enabled":"false"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  "enabled" => "false"
}

uri = URI("https://api.cloudwalk.io/v1/devices/444-555-666?access_token=#{token}")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Put.new(uri.request_uri)
request.body = payload.to_json

res = http.request(request)

puts "Response #{res.code} #{res.message}: #{res.body}"

Exemplo de resposta

{
  "device":{
    "id":3,
    "serial_number":"444-555-666",
    "enabled":false,
    "updated_at":"2015-01-30T17:58:59Z",
    "created_at":"2015-01-30T17:55:19Z",
    "created_by":1,
    "created_via":"api"
  }
}

Exclusão de um dispositivo

Exclui um dispositivo. O equipamento com o número de série excluído não terá mais acesso ao CloudWalk.

Método e formato da URL

DELETE https://api.cloudwalk.io/{versão}/devices/{serial_number}?access_token={token}

Exemplo de utilização

$ curl -X DELETE "https://api.cloudwalk.io/v1/devices/444-555-666?access_token=$TOKEN"
require 'net/http'

token = 'API_TOKEN'

uri = URI("https://api.cloudwalk.io/v1/devices/444-555-666?access_token=#{token}")

http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Delete.new(uri.request_uri)

res = http.request(request)

puts "Response #{res.code} #{res.message}: #{res.body}"

Exemplo de resposta

{}