Recepción de Eventos de Entrada y Salida de Vehículos
Envío de datos de un vehículo
Recepción de Eventos de Entrada y Salida de Vehículos
Solicitud
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.time.Duration;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.ArrayList;
// Deben cambiar los datos de "params" por los que correspondan.
// Esta request de ejemplo incluye todos posibles valores para
// llamar al metodo CargaDatosVehiculo, puede que algun valor sea opcional.
Map<String, Object> data = new LinkedHashMap<>();
data.put("environment", "prod");
data.put("method", "CargaDatosVehiculo");
data.put("wsid", "wEnysa");
Map<String, Object> params = new LinkedHashMap<>();
data.put("params", params);
Map<String, Object> autenticacion = new LinkedHashMap<>();
params.put("autenticacion", autenticacion);
autenticacion.put("tipoAgente", "string");
autenticacion.put("usuRol", "string");
autenticacion.put("usuAduana", "string");
autenticacion.put("lugOper", "string");
autenticacion.put("token", "string");
autenticacion.put("firma", "string");
Map<String, Object> datosVehiculo = new LinkedHashMap<>();
params.put("datosVehiculo", datosVehiculo);
datosVehiculo.put("anioFabricacion", "string");
datosVehiculo.put("color", "string");
datosVehiculo.put("aduanaFormulario", "string");
datosVehiculo.put("anioFormulario", "string");
datosVehiculo.put("apellidoMaterno", "string");
datosVehiculo.put("apellidoPaterno", "string");
datosVehiculo.put("arrastreSiNo", "string");
datosVehiculo.put("codigoAduanaMovimiento", "string");
datosVehiculo.put("codigoPais", "string");
datosVehiculo.put("codigoPaisVehiculo", "string");
datosVehiculo.put("codigoResguardo", "string");
datosVehiculo.put("direccion", "string");
datosVehiculo.put("fechaDocumentoAut", "string");
datosVehiculo.put("fechaMovimiento", "string");
datosVehiculo.put("fechaOrigenDocumento", "string");
datosVehiculo.put("fechaVencimiento", "string");
datosVehiculo.put("marca", "string");
datosVehiculo.put("marcaModelo", "string");
datosVehiculo.put("modelo", "string");
datosVehiculo.put("nacionalidad", "string");
datosVehiculo.put("nombres", "string");
datosVehiculo.put("numeroChasis", "string");
datosVehiculo.put("numeroDocumento", "string");
datosVehiculo.put("numeroFormulario", "string");
datosVehiculo.put("numeroMotor", "string");
datosVehiculo.put("observaciones", "string");
datosVehiculo.put("pasajeros", 1);
datosVehiculo.put("patente", "string");
datosVehiculo.put("propietario", "string");
datosVehiculo.put("tipoDocumento", "string");
datosVehiculo.put("tipoDocumentoAut", "string");
datosVehiculo.put("tipoVehiculo", "string");
Map<String, Object> datosAlquiler = new LinkedHashMap<>();
datosVehiculo.put("datosAlquiler", datosAlquiler);
datosAlquiler.put("tipoContrato", "string");
datosAlquiler.put("numeroDocumentoEmpresa", "string");
datosAlquiler.put("razonSocialEmpresa", "string");
datosAlquiler.put("domicilioEmpresa", "string");
datosAlquiler.put("tipoDocumentoEmpresa", "string");
datosAlquiler.put("numeroContrato", "string");
datosAlquiler.put("fechaVencimientoContrato", "string");
Map<String, Object> DatosConductores = new LinkedHashMap<>();
datosAlquiler.put("DatosConductores", DatosConductores);
List<Object> DatosConductor = new ArrayList<Object>();
DatosConductores.put("DatosConductor", DatosConductor);
Map<String, Object> DatosConductor0 = new LinkedHashMap<>();
DatosConductor.add(DatosConductor0);
DatosConductor0.put("tipoDocumentoConductor", "string");
DatosConductor0.put("numeroDocumentoConductor", "string");
DatosConductor0.put("nacionalidad", "string");
DatosConductor0.put("numeroLicenciaConducir", "string");
DatosConductor0.put("apellidoMaternoConductor", "string");
DatosConductor0.put("apellidoPaternoConductor", "string");
DatosConductor0.put("nombreConductor", "string");
DatosConductor0.put("titular", "string");
Map<String, Object> Seguros = new LinkedHashMap<>();
datosAlquiler.put("Seguros", Seguros);
List<Object> Seguro = new ArrayList<Object>();
Seguros.put("Seguro", Seguro);
Map<String, Object> Seguro0 = new LinkedHashMap<>();
Seguro.add(Seguro0);
Seguro0.put("numeroSeguro", "string");
Seguro0.put("fechaInicio", "string");
Seguro0.put("fechaFin", "string");
Seguro0.put("razonSocialAseguradora", "string");
// Creamos un cliente HTTP para llamar a la API
HttpClient client = HttpClient.newBuilder()
.connectTimeout(Duration.ofSeconds(20))
.build();
// Realizamos la llamada a la API
Gson gson = new GsonBuilder().setPrettyPrinting().create();
String dataJSON = gson.toJson(data);
HttpRequest.Builder request = HttpRequest.newBuilder()
.uri(new URI("https://app.afipsdk.com/api/v1/afip/requests"))
.header("Content-Type", "application/json")
.POST(HttpRequest.BodyPublishers.ofString(dataJSON));
// Reemplazar con tu access_token obtenido de https://app.afipsdk.com
String accessToken = "TU_TOKEN_AQUI";
request.header("Authorization", "Bearer "+ accessToken);
HttpResponse<String> requestResponse = client.send(request.build(), HttpResponse.BodyHandlers.ofString());
// En caso de error lo mostramos por consola
if (requestResponse.statusCode() >= 400) {
JsonElement errorResponse = gson.fromJson(requestResponse.body(), JsonElement.class);
System.out.println("Error en la request: " + gson.toJson(errorResponse));
return;
}
// Convertimos la respuesta en un objeto
JsonObject jsonObject = gson.fromJson(requestResponse.body(), JsonElement.class).getAsJsonObject();
// Mostramos la respuesta por consola
System.out.println(gson.toJson(jsonObject));Respuesta
{
"CargaDatosVehiculoResult": {
"codigoError": "integer",
"descripcion": "string",
"descripcionAdicional": "string"
}
}