Developer API - Versões de Aplicações

  1. Atributos de uma versão de uma aplicação
  2. Listagem de todas versões de uma aplicação
  3. Busca de uma versão específica
  4. Criação de uma nova versão de uma aplicação
  5. Modificação de versão de uma aplicação
  6. Exclusão de uma versão de uma aplicação

Atributos de uma versão de uma aplicação

Os seguintes atributos compõe uma versão de aplicação:

Nome Tipo Descrição
id Integer ID da versão
app_id Integer ID da aplicação
number String Número da versão
crc String CRC da versão
size Integer Tamanho da versão, em bytes
created_by Integer ID do usuário que criou o registro
displayable Boolean Determina se a aplicação deve ou não ser exibida no menu de aplicativos
authorizer_url String URL do autorizador que a aplicação irá se conectar
pos_display_label String Nome exibido no menu de aplicativos (se displayable for verdadeiro)
created_at String Timestamp da criação do registro (ISO 8601)
updated_at String Timestamp da atualização do registro (ISO 8601)
uuid String Identificador Único Universal
group_ids Array IDs dos grupos aos quais a versão está associada (retornado em uma busca específica)
module_ids Array IDs dos módulos que estão associados à versão (retornado em uma busca específica)
file_ids Array IDs dos arquivos que estão associados à versão (retornado em uma busca específica)

Listagem de todas versões de uma aplicação

Retorna um array com todas as versões da aplicação.

Método e formato da URL

GET https://api.cloudwalk.io/{versão}/apps/{tipo}/{id_app}/versions?access_token={token}

Exemplo de utilização

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

token = 'API_TOKEN'

uri = URI("https://api.cloudwalk.io/v1/apps/posxml/173/versions?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
   },
   "appversions":[
      {
         "app_version":{
            "id":102,
            "app_id":172,
            "number":"1.0.1",
            "crc":"48AF",
            "size":13183,
            "created_by":1111,
            "displayable":true,
            "uuid": "50f1887fce9c4e50a6a6269309d13b15",
            "authorizer_url": "http://myhost.com",
            "pos_display_label": "HELLO WORLD v2",
            "created_at": "2018-03-30T12:09:30-03:00",
            "updated_at": "2018-03-30T12:09:49-03:00"
         }
      },
      {
         "app_version":{
            "id":101,
            "app_id":172,
            "number":"1.0.0",
            "crc":"48AF",
            "size":13183,
            "created_by":1111,
            "displayable":true,
            "uuid": "50f1521fce9c4e50a6a6269309d13b15",
            "authorizer_url": "http://myhost.com",
            "pos_display_label": "HELLO WORLD",
            "created_at": "2018-01-30T12:09:30-03:00",
            "updated_at": "2018-01-30T12:09:49-03:00"
         }
      }
   ]
}

Busca de uma versão específica

Retorna os detalhes de uma versão específica.

Método e formato da URL

GET https://api.cloudwalk.io/{versão}/apps/{tipo}/{id_app}/versions/{id_version}?access_token={token}

Exemplo de utilização

$ curl -X GET "https://api.cloudwalk.io/v1/apps/posxml/172/versions/102?access_token=$TOKEN"
require 'net/http'

token = 'API_TOKEN'

uri = URI("https://api.cloudwalk.io/v1/apps/posxml/172/versions/102?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

{
  "app_version":{
    "id":102,
    "app_id":172,
    "number":"1.0.1",
    "crc":"48AF",
    "size":13183,
    "created_by":1111,
    "displayable":true,
    "bytecode":"PgoxCg0+CjIKDT4KMwoNPgo0Cg0+CjUKDT4KNgoNPgo3Cg0+CjgKDT4KOQoNPlBPU1QKM"
    "uuid": "50f1887fce9c4e50a6a6269309d13b15",
    "authorizer_url": "http://myhost.com",
    "pos_display_label": "HELLO WORLD v2",
    "created_at": "2018-03-30T12:09:30-03:00",
    "updated_at": "2018-03-30T12:09:49-03:00"
    "group_ids": [354],
    "module_ids": [12579],
    "file_ids": [951478]
  }
}

Criação de uma nova versão de uma aplicação

Cria uma nova versão de uma aplicação.

Método e formato da URL

POST https://api.cloudwalk.io/{versão}/apps/{tipo}/{id_app}/versions?access_token={token}

Exemplo de utilização

$ curl -X POST "https://api.cloudwalk.io/v1/apps/posxml/172/versions?access_token=$TOKEN" \
-d '{"number":"1.0.2","displayable":"true","authorizer_url":"http://myhost.com","pos_display_label":"HELLO WORLD v3"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  "number" => "1.0.2",
  "displayable" => true,
  "authorizer_url" => "http://myhost.com",
  "pos_display_label" => "HELLO WORLD v3"
}

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

{
  "app_version": {
    "id": 103,
    "app_id": 172,
    "number": "1.0.2",
    "crc": "1018",
    "size": 22,
    "created_by": 1111,
    "displayable": true,
    "bytecode": "ZDAKMAp6ZW52aWEucG9zeG1sCg11DQ==",
    "uuid": "398a30df90e1444912585660d3aa3b6b",
    "authorizer_url": "http://myhost.com",
    "pos_display_label": "HELLO WORLD v3",
    "created_at": "2018-07-10T17:15:56.025-03:00",
    "updated_at": "2018-07-10T17:15:56.025-03:00"
  }
}

Modificação de versão de uma aplicação

Modifica uma versão já existente.

Método e formato da URL

PUT https://api.cloudwalk.io/{versão}/apps/{tipo}/{id_app}/versions/{id_version}?access_token={token}

Exemplo de utilização

$ curl -X PUT "https://api.cloudwalk.io/v1/apps/posxml/172/versions/103?access_token=$TOKEN" \
-d '{"authorizer_url":"http://my-new-host.com"}'
require 'net/http'
require 'json'

token = 'API_TOKEN'

payload = {
  "authorizer_url" => "http://my-new-host.com"
}

uri = URI("https://api.cloudwalk.io/v1/apps/posxml/172/versions/103?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

{
  "app_version": {
    "id": 103,
    "app_id": 172,
    "number": "1.0.2",
    "crc": "1018",
    "size": 22,
    "created_by": 1111,
    "displayable": true,
    "bytecode": "ZDAKMAp6ZW52aWEucG9zeG1sCg11DQ==",
    "uuid": "398a30df90e1444912585660d3aa3b6b",
    "authorizer_url": "http://my-new-host.com",
    "pos_display_label": "HELLO WORLD v3",
    "created_at": "2018-07-10T17:15:56.025-03:00",
    "updated_at": "2018-07-10T17:15:56.025-03:00"
  }
}

Exclusão de uma versão de uma aplicação

Exclui uma versão de uma aplicação.

Método e formato da URL

DELETE https://api.cloudwalk.io/{versão}/apps/{tipo}/{id_app}/versions/{id_version}?access_token={token}

Exemplo de utilização

$ curl -X DELETE "https://api.cloudwalk.io/v1/apps/posxml/172/versions/103?access_token=$TOKEN"
require 'net/http'

token = 'API_TOKEN'

uri = URI("https://api.cloudwalk.io/v1/apps/posxml/172/versions/103?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

{}