Skip to content

Instantly share code, notes, and snippets.

@johnnyasantoss
Last active March 6, 2017 21:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save johnnyasantoss/3a5e807cca3d5816a38868f2f978acbb to your computer and use it in GitHub Desktop.
Save johnnyasantoss/3a5e807cca3d5816a38868f2f978acbb to your computer and use it in GitHub Desktop.
Um exemplo de uma chamada na API do PagueVeloz
using Newtonsoft.Json;
using System;
using System.Net.Http;
using System.Text;
namespace Teste.PV
{
public class Teste
{
public static void Main(string[] args)
{
//informações de autenticacao
var meuEmail = "teste@teste.com.br";
var meuToken = "0000-1234-4312-5678-9876";
//gera as credenciais de acesso
var bytesAuth = Encoding.ASCII.GetBytes(meuEmail + ":" + meuToken);
var tokenAutenticacao = Convert.ToBase64String(bytesAuth);
//cria o objeto do boleto
var boleto = new BoletoDto
{
Cedente = "Meu cedente",
CPFCNPJCedente = "000.000.000-00",
CPFCNPJSacado = "111.111.111-11",
Linha1 = "Linha 1",
Sacado = "Sacado",
Valor = 10.5M,
SeuNumero = "31",
Vencimento = DateTime.Today.AddDays(15),
};
//cria a requisição
var requisicao = new HttpRequestMessage
{
RequestUri = new Uri("https://sandbox.pagueveloz.com.br/api/v4/Boleto"),
Method = HttpMethod.Post
};
//adiciona os headers padrões
requisicao.Headers.Add("Accept", "application/json");
requisicao.Headers.Add("Content-Type", "application/json");
requisicao.Headers.Add("Authorization", "Basic " + tokenAutenticacao);
//adiciona o json ao corpo da requisicao
requisicao.Content = new StringContent(ConverterEmJson(boleto), Encoding.UTF8);
using (var clienteHttp = new HttpClient())
{
var resposta = clienteHttp.SendAsync(requisicao).Result;
// 200: Se tudo der certo
// 400: Se alguma coisa na sua requisição não estiver certa
// 403: Se você não tiver autenticado
// 500: Se acontecer um erro interno :(
Console.WriteLine(resposta.StatusCode);
var conteudoResposta = resposta.Content.ReadAsStringAsync().Result;
// { Id: string, Url: string }
Console.WriteLine(conteudoResposta);
}
}
private static string ConverterEmJson(object @object)
{
return JsonConvert.SerializeObject(@object, Formatting.None);
}
}
public class BoletoDto
{
public string Cedente { get; set; }
public string CPFCNPJCedente { get; set; }
public string CPFCNPJSacado { get; set; }
public string Linha1 { get; set; }
public string Sacado { get; set; }
public string SeuNumero { get; set; }
public decimal Valor { get; set; }
public DateTime Vencimento { get; set; }
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment