Ejemplos


Ejemplos en C#

Enviar un GET

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.IO;
using Newtonsoft.Json;


namespace get_bsale_api
{
    class Program
    {
        static void Main(string[] args)
        {
            {
                Console.WriteLine("Haciendo una petición al servio de clientes....");

                //se define la url del método de la api.
                string url = "https://api.bsale.cl/v1/clients.json";
                string token = "tu token de acceso";

                //Se configura la petición.
                HttpWebRequest peticion;
                peticion = WebRequest.Create(url) as HttpWebRequest;
                peticion.Headers.Add("access_token", token);
                peticion.ContentType = "application/json; charset=utf-8";
                peticion.Method = "GET";

                // Respuesta
                try
                {
                    HttpWebResponse respuesta = peticion.GetResponse() as HttpWebResponse;
                    //Si la peticion fue correcta
                    if ((int)respuesta.StatusCode == 200)
                    {
                        var reader = new StreamReader(respuesta.GetResponseStream());
                        string s = reader.ReadToEnd();
                        var arr = JsonConvert.DeserializeObject(s);
                        Console.WriteLine(arr.ToString());
                        Console.ReadLine();
                    }
                    else
                    {
                        Console.WriteLine("error");
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }

            }
        }
    }
}

Enviar un POST

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.IO;
using System.Dynamic;
using Newtonsoft.Json;

namespace http_post_console_csharp
{
    class Program
    {
        static void Main(string[] args)
        {
            //Se define la estructura JSON de forma dinámica.
            dynamic documento = new ExpandoObject();
            documento.documentTypeId = 5;
            documento.emissionDate = "1431475200";
            documento.expirationDate = "1434153600";
            documento.declareSii = 0;

            dynamic cliente = new ExpandoObject();
            cliente.code = "1-9";
            cliente.city = "Puerto Varas";
            cliente.company = "Compañia chilena de software Imaginex";
            cliente.municipality = "Puerto Varas";
            cliente.activity = "Producción de software";
            cliente.address = "O'higgins 154";

            dynamic detalles = new List<dynamic>();
            detalles.Add(new ExpandoObject());
            detalles[0].comment = "Pantalon niño rojo";
            detalles[0].netUnitValue = 1000;
            detalles[0].quantity = 1;
            detalles[0].taxId = "[1]";
            detalles[0].discount = 0;

            documento.client = cliente;
            documento.details = detalles;

            //Se serializa el objeto a JSON
            string json_data = JsonConvert.SerializeObject(documento);
            Console.WriteLine(json_data);

            //Se define la url del método de la api.
            string url = "https://api.bsale.cl/v1/documents.json";
            string token = "tu token de acceso";
                       
            //Se configura la petición.
            HttpWebRequest peticion;
            peticion = WebRequest.Create(url) as HttpWebRequest;
            peticion.Headers.Add("access_token", token);
            peticion.ContentType = "application/json; charset=utf-8";
            peticion.Method = "POST";

            //Body de la petición
            using (var streamWriter = new StreamWriter(peticion.GetRequestStream()))
            {
                streamWriter.Write(json_data);
                streamWriter.Flush();
                streamWriter.Close();
            }

            try
            {
                // Respuesta
                HttpWebResponse respuesta = peticion.GetResponse() as HttpWebResponse;
                //Si la peticion fue correcta
                if ((int)respuesta.StatusCode == 201)
                {
                    var reader = new StreamReader(respuesta.GetResponseStream());
                    string s = reader.ReadToEnd();
                    var arr = JsonConvert.DeserializeObject(s);
                    Console.WriteLine(arr.ToString());
                    Console.ReadLine();
                }
                else
                {
                    Console.WriteLine("error");
                    Console.ReadLine();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
                Console.ReadLine();
            }
        }
    }
}

Ejemplos en Java

Enviar un GET

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;

public class Testbsale {
    public static void main(String[] args) {

        String error;
        try {
            // Url base de la API
            String url = "https://api.bsale.cl/v1/clients.json";

            // Inicia el cliente
            DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpGet request = new HttpGet(url);

            // Configura cabeceras
            request.setHeader("access_token", "tu token de acceso");
            request.setHeader("Accept-Type", "application/json");
            request.setHeader("Content-Type", "application/json");

            HttpResponse response = httpClient.execute(request);

            BufferedReader br = new BufferedReader(
                    new InputStreamReader((response.getEntity().getContent())));

            //Esto es sólo para poder visualizar lo que se está retornando
            String output;
            System.out.println("Respuesta de Bsale: \n");
            while ((output = br.readLine()) != null) {
                System.out.println(output);
            }

            httpClient.getConnectionManager().shutdown();

        } catch (MalformedURLException e) {

            e.printStackTrace();

        } catch (IOException e) {

            e.printStackTrace();
        }
    }

}

Enviar un POST

import org.json.simple.JSONObject;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;

public class Testbsale {
    public static void main(String[] args) {

        String error;
        try {
            // Url base de la API
            String url = "https://api.bsale.cl/v1/clients.json";

            JSONObject estructura_json = new JSONObject();

            estructura_json.put("firstName", "Carlos");
            estructura_json.put("lastName", "Rojas");
            estructura_json.put("code", "3-7");

            // Inicia el cliente
            DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpPost request = new HttpPost(url);

            // Configura cabeceras
            request.setHeader("access_token", "tu token de acceso");
            request.setHeader("Accept-Type", "application/json");
            request.setHeader("Content-Type", "application/json");

            StringEntity parametros = new StringEntity(estructura_json.toString());
            parametros.setContentType("application/json");

            request.setEntity(parametros);

            HttpResponse response = httpClient.execute(request);

            BufferedReader br = new BufferedReader(
                    new InputStreamReader((response.getEntity().getContent())));

            //Esto es sólo para poder visualizar lo que se está retornando
            String output;
            System.out.println("Respuesta de Bsale: \n");
            while ((output = br.readLine()) != null) {
                System.out.println(output);
            }

            httpClient.getConnectionManager().shutdown();

        } catch (MalformedURLException e) {

            e.printStackTrace();

        } catch (IOException e) {

            e.printStackTrace();

        }
    }
}

Ejemplos en PHP

Enviar un GET

<?php
    $url='https://api.bsale.cl/v1/clients.json';
    $access_token='tu token de acceso';

    // Inicia cURL
    $session = curl_init($url);


    // Indica a cURL que retorne data
    curl_setopt($session, CURLOPT_RETURNTRANSFER, true);

    // Configura cabeceras
    $headers = array(
        'access_token: ' . $access_token,
        'Accept: application/json',
        'Content-Type: application/json'
    );
    curl_setopt($session, CURLOPT_HTTPHEADER, $headers);

    // Ejecuta cURL
    $response = curl_exec($session);
    $code = curl_getinfo($session, CURLINFO_HTTP_CODE);

    // Cierra la sesión cURL
    curl_close($session);

    //Esto es sólo para poder visualizar lo que se está retornando
    print_r($response);
?>

Enviar un POST

<?php
    $url='https://api.bsale.cl/v1/clients.json';
    $access_token='tu token de acceso';

    $estructura_json = array(
        'firstName' => 'Carlos',
        'lastName' => 'Rojas',
        'code' =>  '1-9'
    );

    // Parsea a JSON
    $data =  json_encode( $estructura_json );

    // Inicia cURL
    $session = curl_init($url);


    // Indica a cURL que retorne data
    curl_setopt($session, CURLOPT_RETURNTRANSFER, true);

    // Activa SSL
    curl_setopt($handle, CURLOPT_SSL_VERIFYHOST, true);

    // Configura cabeceras
    $headers = array(
        'access_token: ' . $access_token,
        'Accept: application/json',
        'Content-Type: application/json'
    );
    curl_setopt($session, CURLOPT_HTTPHEADER, $headers);

    // Indica que se va ser una petición POST
    curl_setopt($session, CURLOPT_POST, true);

    // Agrega parámetros
    curl_setopt($session, CURLOPT_POSTFIELDS, $data);

    // Ejecuta cURL
    $response = curl_exec($session);
    $code = curl_getinfo($session, CURLINFO_HTTP_CODE);

    // Cierra la sesión cURL
    curl_close($session);

    //Esto es sólo para poder visualizar lo que se está retornando
    print_r($response);
?>

Ejemplos en Ruby

Enviar un GET

require 'net/http'
require 'openssl'
require 'json'

url = 'https://api.bsale.cl/v1/clients.json'
uri = URI.parse(url)
http = Net::HTTP.new(uri.host, uri.port)

# Activa SSL
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

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

# Configura cabeceras
request['Content-Type'] = 'application/json'
request['access_token'] = 'tu token de acceso'
response = http.request(request)
respuesta = JSON.parse(response.body)

#Esto es sólo para poder visualizar lo que se está retornando
puts respuesta

Enviar un POST

require 'net/http'
require 'openssl'
require 'json'

url = 'https://api.bsale.cl/v1/clients.json'

estructura_json = {
    :firstName => 'Carlos',
    :lastName => 'Rojas',
    :code =>  '1-9'
}

uri = URI.parse(url)
http = Net::HTTP.new(uri.host, uri.port)

# Activa SSL
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

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

# Configura cabeceras
request['Content-Type'] = 'application/json'
request['access_token'] = 'tu token de acceso'

#Parametros
request.body = estructura_json.to_json

response = http.request(request)
respuesta = JSON.parse(response.body)

#Esto es sólo para poder visualizar lo que se está retornando
puts respuesta

Ejemplo en Visual Basic

Enviar un GET

Imports System
Imports System.IO
Imports System.Net
Imports System.Text
Imports Newtonsoft.Json

Module Module1

    Sub Main()
        Console.WriteLine("Haciendo una peticion al servio de clientes....")

        'se define la url del método de la api.
        Dim url As String = "https://api.bsale.cl/v1/clients.json"
        Dim token As String = "tu token de acceso"

        'Se configura la peticion.
        Dim peticion As HttpWebRequest = WebRequest.Create(url)
        peticion.Headers.Add("access_token", token)
        peticion.ContentType = "application/json; charset=utf-8"
        peticion.Method = "GET"

        'Respuesta
        Try
            Dim respuesta As HttpWebResponse = peticion.GetResponse
            'Si la peticion fue correcta
            If CInt(respuesta.StatusCode) = 200 Then
                'Procesamos la respuesta del servicio
                Dim dataStream As Stream = respuesta.GetResponseStream()
                Dim reader As New StreamReader(dataStream)
                Dim s As String = reader.ReadToEnd()
                Dim arr = JsonConvert.DeserializeObject(s)
                Console.WriteLine(arr.ToString())
                Console.ReadLine()
            Else
                Console.WriteLine("error")
            End If
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
    End Sub
End Module