Created
December 28, 2025 02:12
-
-
Save OzielAlexander/40c7d8f578d7b759165dca8b8598ae78 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| require 'net/http' | |
| require 'uri' | |
| require 'json' | |
| # Clase encargada de la conexión con la API de EasyBroker | |
| class EasyBrokerClient | |
| BASE_URL = 'https://api.stagingeb.com/v1/properties' | |
| API_KEY = '17u502p8v46ba3ppgvj5y2aad501b9' | |
| def fetch_all_properties | |
| uri = URI.parse(BASE_URL) | |
| request = Net::HTTP::Get.new(uri) | |
| request["X-Authorization"] = API_KEY | |
| request["accept"] = "application/json" | |
| response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http| | |
| http.request(request) | |
| end | |
| handle_response(response) | |
| rescue StandardError => e | |
| puts "Error de conexión: #{e.message}" | |
| [] | |
| end | |
| private | |
| def handle_response(response) | |
| if response.code == '200' | |
| JSON.parse(response.body)['content'] | |
| else | |
| puts "Error en la API: #{response.code} - #{response.message}" | |
| [] | |
| end | |
| end | |
| end | |
| # Clase para imprimir los resultados | |
| class PropertyPrinter | |
| def self.print_titles(properties) | |
| if properties.empty? | |
| puts "No se encontraron propiedades." | |
| else | |
| puts "Lista de Títulos de Propiedades:" | |
| puts "-" * 30 | |
| properties.each { |prop| puts "- #{prop['title']}" } | |
| end | |
| end | |
| end | |
| # Ejecución del Script (Prueba básica) | |
| client = EasyBrokerClient.new | |
| properties = client.fetch_all_properties | |
| PropertyPrinter.print_titles(properties) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment