Perfil del emisor GET
Lee y actualiza el perfil del emisor que usa el RIDE: nombre comercial,
direccion, contacto y logo. identificacion es el RUC habilitado en tu API Key.
GET /v1/contribuyentes/{identificacion}/perfil
PUT /v1/contribuyentes/{identificacion}/perfil
POST /v1/contribuyentes/{identificacion}/perfil/logo
Obtener#
curl -s "https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil" \
-H "X-Api-Key: $ECUAFACT_API_KEY"
using var http = new HttpClient();
http.DefaultRequestHeaders.Add("X-Api-Key", apiKey);
string json = await http.GetStringAsync(
"https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil");
import os, requests
r = requests.get(
"https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil",
headers={"X-Api-Key": os.environ["ECUAFACT_API_KEY"]},
timeout=30)
print(r.json())
const res = await fetch(
"https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil",
{ headers: { "X-Api-Key": process.env.ECUAFACT_API_KEY } });
console.log(await res.json());
<?php
$ch = curl_init("https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["X-Api-Key: " . getenv("ECUAFACT_API_KEY")],
]);
echo curl_exec($ch);
curl_close($ch);
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
HttpClient cliente = HttpClient.newHttpClient();
HttpRequest peticion = HttpRequest.newBuilder()
.uri(URI.create("https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil"))
.header("X-Api-Key", System.getenv("ECUAFACT_API_KEY"))
.GET()
.build();
HttpResponse<String> respuesta = cliente.send(peticion, HttpResponse.BodyHandlers.ofString());
System.out.println(respuesta.body());
using Ecuafact.Sdk.Contracts;
// client: cliente EcuafactClient - ver SDK .NET
PerfilEmisor perfil = await client.GetPerfilAsync(identificacion);
Console.WriteLine(perfil.NombreComercial);
# client: cliente EcuafactClient - ver SDK Python
perfil = client.get_perfil(identificacion)
print(perfil.nombre_comercial)
// client: cliente EcuafactClient - ver SDK Node.js
const perfil = await client.getPerfil(identificacion);
console.log(perfil.nombreComercial);
<?php
// $client: cliente EcuafactClient - ver SDK PHP
$perfil = $client->getPerfil($identificacion);
echo $perfil->nombreComercial;
import com.ecuafact.sdk.contracts.PerfilEmisor;
// client: cliente EcuafactClient - ver SDK Java
PerfilEmisor perfil = client.getPerfil(identificacion);
System.out.println(perfil.nombreComercial);
{
"datos": {
"identificacion": "0123456789001",
"razonSocial": "PRUEBA 2 ECUAFACT",
"nombreComercial": "Prueba",
"direccionMatriz": "Av. PRINCIPAL",
"correo": "contacto@empresa.com",
"telefono": "042345678",
"ciudad": "GUAYAQUIL",
"provincia": "GUAYAS",
"logo": "0123456789001_Logo.jpg"
}
}
Actualizar#
Solo se cambian los campos que envias. razonSocial no se edita por esta via.
curl -s -X PUT "https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil" \
-H "X-Api-Key: $ECUAFACT_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "nombreComercial": "Prueba", "correo": "contacto@empresa.com" }'
using Ecuafact.Sdk.Contracts;
PerfilEmisorUpdate cambios = new()
{
NombreComercial = "Prueba",
Correo = "contacto@empresa.com"
};
PerfilEmisor perfil = await client.ActualizarPerfilAsync(identificacion, cambios);
from ecuafact.models import PerfilEmisorUpdate
cambios = PerfilEmisorUpdate(nombreComercial="Prueba", correo="contacto@empresa.com")
perfil = client.actualizar_perfil(identificacion, cambios)
const perfil = await client.actualizarPerfil(identificacion, {
nombreComercial: "Prueba",
correo: "contacto@empresa.com",
});
<?php
use Ecuafact\Sdk\Contracts\PerfilEmisorUpdate;
$cambios = new PerfilEmisorUpdate();
$cambios->nombreComercial = "Prueba";
$cambios->correo = "contacto@empresa.com";
$perfil = $client->actualizarPerfil($identificacion, $cambios);
import com.ecuafact.sdk.contracts.PerfilEmisorUpdate;
PerfilEmisorUpdate cambios = new PerfilEmisorUpdate();
cambios.nombreComercial = "Prueba";
cambios.correo = "contacto@empresa.com";
client.actualizarPerfil(identificacion, cambios);
Logo#
POST /v1/contribuyentes/{identificacion}/perfil/logo con multipart/form-data.
Campo logo. PNG o JPEG, hasta 512 KB.
curl -s -X POST "https://staging-api.mynexusapi.com/v1/contribuyentes/0123456789001/perfil/logo" \
-H "X-Api-Key: $ECUAFACT_API_KEY" \
-F "logo=@logo.png;type=image/png"
byte[] png = await File.ReadAllBytesAsync("logo.png");
await client.ActualizarLogoAsync(identificacion, png, "image/png", "logo.png");
Estados de este endpoint#
| Estado | codigo |
Cuando |
|---|---|---|
| 200 | - | Perfil leido o actualizado |
| 400 | 301 | El logo esta vacio, excede 512 KB o no es PNG/JPEG |
| 401 | 101 | API Key invalida |
| 403 | 103 | El contribuyente no esta habilitado en tu API Key |
| 429 | 104 | Limite de solicitudes excedido |
| 502 | 003 | No se pudo completar la actualizacion |