Version 1 (modified by aaraujo, 9 years ago) (diff) |
---|
¿Cómo usar el API de Murachi?
Detalles de seguridad
Todos los recursos del API requieren autenticación básica HTTP (Basic Authentication). Por esta razón, en todas las solicitudes debe estar presente el encabezado Authorization lleno con los valores app_id y app_key que se generará para su consumo. Por ejemplo si las credenciales de su aplicación son las siguientes:
- app_id: murachi.test
- app_key: 12345678
necesitará codificarlas con el algoritmo Base64: Base64(app_id:app_key). El resultado debería ser como el siguiente encabezado HTTP: Authorization: Basic aG9sYTptdW5kbw==.
Puede convertir credenciales a Base64 con la siguiente línea de comando:
echo -n APP_ID:APP_KEY | base64
reemplazando APP_ID y APP_KEY con sus respectivas credenciales.
NOTA: inicialmente para propósitos de prueba se estarán utilizando las credenciales
- app_id: admin
- app_key: admin
Esto da como resultado: YWRtaW46YWRtaW4=. Entonces mientras se habilita el proceso de generación de API_KEY para clientes del API se utilizará lo siguiente:
Authorization: Basic YWRtaW46YWRtaW4=
al momento de consumir un recurso de Murachi.
Documentación del API
Para consumir o hacer llamadas a los recursos del servicio Murachi puede revisar el siguiente enlace: https://murachi.cenditel.gob.ve/apidoc/. Allí encontrará todos los recursos disponibles hasta el momento con sus parámetros, respuestas, errores y ejemplos de uso.
Prueba básica con Ruby
- Crear el archivo multipart.rb con el siguiente contenido:
require 'net/https' require 'net/http/post/multipart' require "openssl" # Solicitud POST #uri = URI.parse('https://murachi.cenditel.gob.ve/Murachi/0.1/archivos/bdocs/cargas') uri = URI.parse('https://192.168.12.125:8443/Murachi/0.1/archivos/bdocs/cargas') req = Net::HTTP::Post::Multipart.new uri.path, "data" => UploadIO.new(StringIO.new("cadena de prueba"), "text/plain", "file.txt") # "data" => StringIO.new("cadena de prueba") # "data" => UploadIO.new(File.new("./file.txt"), "text/plain", "file.txt") # Solicitud GET #uri = URI.parse('https://murachi.cenditel.gob.ve/Murachi/0.1/archivos/version') #uri = URI.parse('https://192.168.12.125:8443/Murachi/0.1/archivos/version') #req = Net::HTTP::Get.new uri.path http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE # RESPUESTA --->> res = http.request(req) # Headers puts res['Set-Cookie'] # => String puts res.get_fields('set-cookie') # => Array puts res.to_hash['set-cookie'] # => Array puts "Headers: #{res.to_hash.inspect}" # Status puts 'code',res.code # => '200' puts 'message',res.message # => 'OK' puts 'class.name',res.class.name # => 'HTTPOK' # Body puts res.body # "data" => StringIO.new("cadena de prueba")
- Ejecutar: ruby multipart.rb
Attachments (7)
-
documentacion.png
(22.0 KB) -
added by aaraujo 9 years ago.
icono de documentación
- security.jpg (47.4 KB) - added by aaraujo 9 years ago.
- ruby.jpg (20.3 KB) - added by aaraujo 9 years ago.
- python.png (81.6 KB) - added by aaraujo 8 years ago.
- pruebaMurachiCarga.png (141.5 KB) - added by aaraujo 8 years ago.
- pruebaMurachiEstadisticas.png (35.7 KB) - added by aaraujo 8 years ago.
- pruebaMurachiVersion.png (25.4 KB) - added by aaraujo 8 years ago.
Download all attachments as: .zip