Developer API - Parâmetros

  1. Atributos de um parâmetro
  2. Listagem de todos parâmetros
  3. Busca de um parâmetro específico
  4. Criação de um novo parâmetro
  5. Atualização de um parâmetro
  6. Exclusão de um parâmetro

Atributos de um parâmetro

Um parâmetro pode ser referente a um número lógico ou a um grupo. O que irá determinar que tipo de parâmetro está sendo tratado é a definição do number (refere-se a um número lógico) ou do name (refere-se a um grupo).

Os seguintes atributos compõe um parâmetro:

Nome Tipo Descrição
id Integer ID do registro
key String Chave do parâmetro
value String Valor do parâmetro
description String Descrição do parâmetro
group_id Integer ID do grupo, se o parâmetro pertencer a um grupo
logical_number_id Integer ID do número lógico, se o parâmetro pertencer a um número lógico
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 parâmetros

Retorna um array com todos os parâmetros de um grupo ou de um número lógico.

Método e formato da URL

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

Exemplo de utilização

Grupo

$ curl -X GET "https://api.cloudwalk.io/v1/parameters?access_token=$TOKEN" \
-d '{"name":"Dev"}'

Número lógico

$ curl -X GET "https://api.cloudwalk.io/v1/parameters?access_token=$TOKEN" \
-d '{"number":"778899"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  # "name" => "Dev" # Grupo
  "number" => "778899" # Número lógico
}

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

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

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

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
   },
   "parameters":[
      {
         "logical_number_parameter":{
            "id":2,
            "key":"host_ip",
            "value":"10.0.0.1",
            "description":"Host IP",
            "group_id":null,
            "logical_number_id":4,
            "updated_at":"2015-03-02T22:51:40Z",
            "created_at":"2015-03-02T22:51:40Z",
            "created_by":1,
            "created_via":"api"
         }
      },
      {
         "logical_number_parameter":{
            "id":3,
            "key":"retry",
            "value":"2",
            "description":"Retry attempts",
            "group_id":null,
            "logical_number_id":4,
            "updated_at":"2015-03-02T11:26:30Z",
            "created_at":"2015-03-02T11:26:30Z",
            "created_by":1,
            "created_via":"interface"
         }
      }
   ]
}

Busca de um parâmetro específico

Retorna os detalhes de um parâmetro específico.

Método e formato da URL

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

Exemplo de utilização

Grupo

$ curl -X GET "https://api.cloudwalk.io/v1/parameters/1?access_token=$TOKEN" \
-d '{"name":"Dev"}'

Número lógico

$ curl -X GET "https://api.cloudwalk.io/v1/parameters/3?access_token=$TOKEN" \
-d '{"number":"778899"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  # "name" => "Dev" # Grupo
  "number" => "778899" # Número lógico
}

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

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

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

res = http.request(request)

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

Exemplo de resposta

{
  "logical_number_parameter":{
    "id":3,
    "key":"retry",
    "value":"2",
    "description":"Retry attempts",
    "group_id":null,
    "logical_number_id":4,
    "updated_at":"2015-03-02T11:26:30Z",
    "created_at":"2015-03-02T11:26:30Z",
    "created_by":1,
    "created_via":"interface"
  }
}

Criação de um novo parâmetro

Cria um novo parâmetro.

Método e formato da URL

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

Exemplo de utilização

Grupo

$ curl -X POST "https://api.cloudwalk.io/v1/parameters?access_token=$TOKEN" \
-d '{"name":"Dev","key":"max_parcels","value":"6","description":"Max parcels allowed"}'

Número lógico

$ curl -X POST "https://api.cloudwalk.io/v1/parameters?access_token=$TOKEN" \
-d '{"number":"778899","key":"min_value","value":"1.50","description":"Min value allowed"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  # "name" => "Dev", # Grupo
  "number" => "778899", # Número lógico
  "key" => "min_value",
  "value" => "1.50",
  "description" => "Min value allowed"
}

uri = URI("https://api.cloudwalk.io/v1/parameters?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

{
  "logical_number_parameter":{
    "id":5,
    "key":"min_value",
    "value":"1.50",
    "description":"Min value allowed",
    "group_id":null,
    "logical_number_id":4,
    "updated_at":"2015-03-02T11:58:53Z",
    "created_at":"2015-03-02T11:58:53Z",
    "created_by":1,
    "created_via":"api"
  }
}

Atualização de um parâmetro

Modifica um parâmetro já existente.

Método e formato da URL

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

Exemplo de utilização

Grupo

$ curl -X PUT "https://api.cloudwalk.io/v1/parameters/1?access_token=$TOKEN" \
-d '{"name":"Dev","key":"host_port","value":"8088","description":"Host port"}'

Número lógico

$ curl -X PUT "https://api.cloudwalk.io/v1/parameters/3?access_token=$TOKEN" \
-d '{"number":"778899","key":"retry","value":"3","description":"Retry attempts"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  # "name" => "Dev", # Grupo
  "key" => "retry",
  "number" => "778899",
  "value" => "3",
  "description" => "Retry attempts"
}

uri = URI("https://api.cloudwalk.io/v1/parameters/3?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

{
  "logical_number_parameter":{
    "id":3,
    "key":"retry",
    "value":"3"
    "description":"Retry attempts",
    "group_id":null,
    "logical_number_id":4,
    "updated_at":"2015-03-02T12:36:39Z"
    "created_at":"2015-03-02T11:26:30Z",
    "created_by":1,
    "created_via":"interface"
  }
}

Exclusão de um parâmetro

Exclui um parâmetro.

Método e formato da URL

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

Exemplo de utilização

Grupo

$ curl -X DELETE "https://api.cloudwalk.io/v1/parameters/1?access_token=$TOKEN" \
-d '{"name":"Dev"}'

Número lógico

$ curl -X DELETE "https://api.cloudwalk.io/v1/parameters/3?access_token=$TOKEN" \
-d '{"number":"778899"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  # "name" => "Dev" # Grupo
  "number" => "778899" # Número lógico
}

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

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

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

res = http.request(request)

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

Exemplo de resposta

{}