4.- Servicios de TTO




A continuación se describen todos los servicios REST de TTO, junto con los parámetros de invocación, resultado y ejemplo de integración de cada servicio.

ÍNDICE DE SERVICIOS

1. Servicios IRequestService


Permiten recuperar solicitudes realizadas por los usuarios.

1.1 - Servicio get

http://{entorno}/tto_core/rest/tramite/get

Obtiene los datos de un solo  trámite  en formato JSON.

 Más información

URL de invocación

La URL de invocación del servicio REST es la siguiente:

http://{entorno}/tto_core/rest/tramite/get

Para invocar a este servicio se debe utilizar el método GET de HTTP.


Parámetros de entrada

Parámetros

Tipo

Descripción

applicationId

String

ID de la aplicación que invoca el servicio

Obligatorio

requestCode1

String

Identificador que se le asigna al trámite

csvRequest1

String

CSV de la solicitud

csvRegisterReceipt1

String

CSV de registro

registerId1

String

ID de registro

docsInProcessBooleanParámetro opcional que indica si se retornan los tramites no terminados, por defecto será no.

1 Es obligatorio especificar uno y sólo uno de estos parámetros en una misma petición.


Parámetros de respuesta

Tipo

Descripción

Tramite

JSON con los datos del trámite consultado, en codificación UTF-8.


Códigos de respuesta

El resultado de la operación viene reflejado en el estado de la respuesta HTTP.

Código

Nombre

Descripción

202

Accepted

El trámite se ha recuperado correctamente.

400

Bad request

Consulta especificada erróneamente.

404

Not found

No se ha encontrado el trámite solicitado.

500

Internal Server Error

Error interno del servidor.

Ejemplos de invocación

http://preaplicaciones.aragon.es/tto_core/rest/tramite/get?applicationId=TTO&requestCode=XXXXXXXXXXXX

http://preaplicaciones.aragon.es/tto_core/rest/tramite/get?applicationId=TTO&csvRequest=CSVXXXXXXXXXXXXX

Ejemplo de integración

Utilizando Java 8, GSON y la librería de cliente.

// Id de la aplicación que está accediendo a TTO
String APPLICATION_ID = "XXX";

// Número del trámite del usuario.
// P.E.: el obtenido desde SGA en el evento que se emite cuando un
// usuario finaliza un trámite
String requestCode = ...;


// Paso 1. Conectar
URL url = new URL("http://preaplicaciones.aragon.es/tto_core/rest/tramite/get?" +
        "applicationId=" + APPLICATION_ID +
        "&requestCode=" + requestCode);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept", "application/json");

// Paso 2. Comprobar respuesta correcta
if (connection.getResponseCode() != 202) {
  // Gestionar respuesta incorrecta
}

// Paso 3. Recuperamos la respuesta del servicio en formato String
StringBuilder responseStrBuilder = new StringBuilder();
BufferedReader streamReader = new BufferedReader(
        new InputStreamReader(connection.getInputStream(), "UTF-8"));
String inputStr;
while ((inputStr = streamReader.readLine()) != null) {
  responseStrBuilder.append(inputStr);
}

// Paso 4. Configurar GSON para recuperar las fechas con tiempo UNIX
GsonBuilder builder = new GsonBuilder();
builder.registerTypeAdapter(Date.class, (JsonDeserializer<Date>) (json, typeOfT, context) ->
            new Date(json.getAsJsonPrimitive().getAsLong()));
Gson gson = builder.create();

// Paso 5. Convertir la respuesta al objeto del trámite
ResultTramiteBean tramite = gson.fromJson(responseStrBuilder.toString(),
        ResultTramiteBean.class);

// Paso 6. Desconectar
connection.disconnect();


1.2 - Servicio getXml

http://{entorno}/tto_core/rest/tramite/getXml

Obtiene los datos de un trámite en formato XML.

 Más información

URL de invocación

La URL de invocación del servicio REST es la siguiente:

http://{entorno}/tto_core/rest/tramite/getXml

Para invocar a este servicio se debe utilizar el método GET de HTTP.


Parámetros de entrada

Parámetros

Tipo

Descripción

applicationId

String

ID de la aplicación que invoca el servicio

Obligatorio

requestCode1

String

Identificador que se le asigna al trámite

csvRequest1

String

CSV de la solicitud

csvRegisterReceipt1

String

CSV de registro

registerId1

String

ID de registro

docsInProcessBooleanParámetro opcional que indica si se retornan los tramites no terminados, por defecto será no.

1 Es obligatorio especificar uno y sólo uno de estos parámetros en una misma petición.


Parámetros de respuesta

Tipo

Descripción

Trámite en XML

XML con los datos del trámite consultado, en codificación UTF-8.


Códigos de respuesta

El resultado de la operación viene reflejado en el estado de la respuesta HTTP.

Código

Nombre

Descripción

202

Accepted

El trámite se ha recuperado correctamente.

400

Bad request

Consulta especificada erróneamente.

404

Not found

No se ha encontrado el trámite solicitado.

500

Internal Server Error

Error interno del servidor.

Ejemplos de invocación

Ejemplo de integración

Utilizando Java 8 y la librería de cliente.

// Id de la aplicación que está accediendo a TTO
String APPLICATION_ID = "XXX";

// Número del trámite del usuario.
// P.E.: el obtenido desde SGA en el evento que se emite cuando un
// usuario finaliza un trámite
String requestCode = ...;


// Paso 1. Conectar
URL url = new URL("http://preaplicaciones.aragon.es/tto_core/rest/tramite/getXml?" +
        "applicationId=" + APPLICATION_ID +
        "&requestCode=" + requestCode);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept", "application/json");

// Paso 2. Comprobar respuesta correcta
if (connection.getResponseCode() != 202) {
  // Gestionar respuesta incorrecta
}

// Paso 3. Convertir la respuesta al objeto del trámite
TransformXMLToObject transformer = new TransformXMLToObject();
ResultTramiteBean tramite = transformer.parseTramiteBeanFromFile(
            connection.getInputStream());
            
// Paso 4. Desconectar
connection.disconnect();


1.3 - Servicio list

http://{entorno}/tto_core/rest/tramite/list

Método que obtiene un listado de tramites en formato JSON filtrado por parámetros

 Más información

URL de invocación

La URL de invocación del servicio REST es la siguiente:

http://{entorno}/tto_core/rest/tramite/list

Para invocar a este servicio se debe utilizar el método GET de HTTP.


Parámetros de entrada

Parámetros

Tipo

Descripción

applicationId

String

ID de la aplicación que invoca el servicio.

Obligatorio

signature

Array de integer

Lista con las signatura de cada procedimiento a consultar.

Obligatorio utilizar como mínimo una

requestSignatureIntegerEn los casos en los que un tramite pueda ser multiprocedimiento, signatura del procedimiento efectivo del tramite a efectos de metadatado y registro.

user.nif

String

Identificador (NIF) de la persona que ha creado el trámite.

summaryInfo

boolean

Parámetro para el filtrado de la respuesta.

  • true: sólo es enviará la información resumida del trámite (applicant, beneficiary, requestInformation)

  • false: se envía toda la información del tramite

Por defecto será true.

originEnum

Origen del trámite. Los posibles valores son: APORTACION, RECURSO, SOLICITUD, SUBSANACION y TODOS.

Si no se indica se devuelven sólo los trámites con origen SOLICITUD.

creationStartDate1

Date

Fecha de creación del tramite. 

Formato dd/MM/yyyy

creationEndDate2

Date

Fecha fin para incluir rango de la fecha de creación.

Para utilizarlo es obligatorio especificar el parámetro creationStartDate

Formato dd/MM/yyyy

updateStartDate1

Date

Fecha de la ultima modificación del trámite. Si no se indica ninguna fecha, se tomará por defecto esta fecha como la actual. 

Formato dd/MM/yyyy

updateEndDate2

Date

Fecha fin para incluir rango de la fecha de modificación. 

Para utilizarlo es obligatorio especificar el parámetro updateStartDate

Formato dd/MM/yyyy

registered

boolean

Permite filtrar los trámites según su estado de registro.

  • true: filtra por trámites que estén registrados

  • false: filtra por tramites que no estén registrados

Si no se indica, se devuelven todos.

registerStartDate1

Date

Fecha en la que se registraron los trámites. 

Formato dd/MM/yyyy

registerEndDate2

Date

Fecha fin para incluir rango de la fecha de registro. 

Para utilizarlo es obligatorio especificar el parámetro registerStartDate.

Formato dd/MM/yyyy

receiverOrgCode

String

Código de Organismo SIU que corresponde al organismo de BENT al que se envía la solicitud.

registerOrgCodeStringCódigo de Organismo SIU que corresponde al organismo en el que se registra la solicitud.

beneficiary.nif

String

Identificador (NIF) de la persona beneficiaria el trámite. Solo para tramites con representación.

contributorIdStringIdentificador del agente aportador.
interestedIdStringIdentificador del agente interesado.
representativeIdStringIdentificador del agente representante.

representation

Boolean

Permite filtrar los trámites por representación.

  • true: solo trámites donde se ejerza una representación.

  • false:  solo trámites donde no se ejerza una representación.

Si no se indica, se devuelven todos.

excludedCodesArray de StringsLista de requestCode referentes a tramites que se quieren excluir del resultado final.
docsInProcessBooleanParámetro opcional que indica si se retornan los tramites no terminados, por defecto será no.

1 En caso de que no se incluya ninguna fecha inicial (creationStartDate, registerStartDate, updateStartDate), se devolverán únicamente los trámites que se hayan actualizado el mismo día en el que se hace la invocación. Si se incluyen varias, se tomará la más posterior.

2 En caso de que no se incluya ninguna fecha final (creationEndDate, registerEndDate, updateEndDate), se devolverán todos los trámites que se hayan actualizado hasta el mismo día en el que se hace la invocación. Si se incluyen varias, se tomará la más anterior.


Parámetros de respuesta

Tipo

Descripción

Array de Tramite

Lista con los datos de los trámites consultados, en codificación UTF-8.

En caso de que el formulario de los trámites consultados tenga un valor nulo, no se devolverá en la respuesta.

Códigos de respuesta

El resultado de la operación viene reflejado en el estado de la respuesta HTTP.

Código

Nombre

Descripción

202

Accepted

La lista de trámites se ha recuperado correctamente. Si no se ha encontrado ninguno, devuelve una lista vacía.

400

Bad request

Consulta especificada erróneamente.

500

Internal Server Error

Error interno del servidor.

Ejemplos de invocación

Ejemplo de integración

Utilizando Java 8, GSON y la librería de cliente.

// Id de la aplicación que está accediendo a TTO
String APPLICATION_ID = "XXX";

// Signaturas de los procedimientos a consultar
int signature1 = ...;
int signature2 = ...;
int signature3 = ...;


// Paso 1. Preparar la conexión
URL url = new URL("http://preaplicaciones.aragon.es/tto_core/rest/tramite/list?" +
        "applicationId=" + APPLICATION_ID +
        "&signature=" + signature1 + "," + signature2 + "," + signature3 +
        "&registered=false" +
        "&summaryInfo=false");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept", "application/json");

// Paso 2. Comprobar respuesta correcta
if (connection.getResponseCode() != 202) {
  // Gestionar respuesta incorrecta
}  
  
// Paso 3. Recuperamos la respuesta del servicio en formato String
StringBuilder responseStrBuilder = new StringBuilder();
BufferedReader streamReader = new BufferedReader(
        new InputStreamReader(connection.getInputStream(), "UTF-8"));
String inputStr;
while ((inputStr = streamReader.readLine()) != null) {
  responseStrBuilder.append(inputStr);
}

// Paso 4. Configurar GSON para recuperar las fechas desde formato UNIX
GsonBuilder builder = new GsonBuilder();
builder.registerTypeAdapter(Date.class, (JsonDeserializer<Date>) (json, typeOfT, context) ->
        new Date(json.getAsJsonPrimitive().getAsLong()));
Gson gson = builder.create();

// Paso 5. Convertir la respuesta al objeto del trámite
JsonArray json = gson.fromJson(responseStrBuilder.toString(), JsonArray.class);
ResultTramiteBean tramite = gson.fromJson(responseStrBuilder.toString(),
        ResultTramiteBean.class);
ResultTramiteBean tramiteList[] = gson.fromJson(json, ResultTramiteBean[].class);

// Paso 6. Desconectar
connection.disconnect();


1.4 - Servicio listExcel

http://{entorno}/tto_core/rest/tramite/listExcel

Recupera un listado de tramites y los representa en un fichero excel.

 Más información

URL de invocación

La URL de invocación del servicio REST es la siguiente:

http://{entorno}/tto_core/rest/tramite/listExcel

Para invocar a este servicio se debe utilizar el método GET de HTTP.


Parámetros de entrada

Parámetros

Tipo

Descripción

applicationId

String

ID de la aplicación que invoca el servicio

Obligatorio

signature

Array de integer

Lista con las signatura de cada procedimiento a consultar

Obligatorio utilizar como mínimo una

requestSignatureIntegerEn los casos en los que un tramite pueda ser multiprocedimiento, signatura del procedimiento efectivo del tramite a efectos de metadatado y registro.

user.nif

String

Identificador (NIF) de la persona que ha creado el trámite.

summaryInfo

boolean

Parámetro para el filtrado de la respuesta.

  • true: sólo se exportará la información resumida de cada trámite (hoja "resumen").

  • false: se exportarán, además del resumen, los datos de los formularios y los documentos de cada trámite. Se deberá indicar una única signatura.

Por defecto será true.

originEnum

Origen del trámite. Los posibles valores son: APORTACION, RECURSO, SOLICITUD, SUBSANACION y TODOS.

Si no se indica se devuelven sólo los trámites con origen SOLICITUD.

Si se busca por origin=TODOS, sólo se exportará la información resumida de cada trámite independientemente del parámetro summaryInfo por posible incompatibilidad de formularios y documentos.

creationStartDate1

Date

Fecha de creación del tramite. 

Formato dd/MM/yyyy

creationEndDate2

Date

Fecha fin para incluir rango de la fecha de creación.

Para utilizarlo es obligatorio especificar el parámetro creationStartDate

Formato dd/MM/yyyy

updateStartDate1

Date

Fecha de la ultima modificación del trámite. Si no se indica ninguna fecha, se tomará por defecto esta fecha como la actual. 

Formato dd/MM/yyyy

updateEndDate2

Date

Fecha fin para incluir rango de la fecha de modificación. 

Para utilizarlo es obligatorio especificar el parámetro updateStartDate

Formato dd/MM/yyyy

registered

boolean

Permite filtrar los trámites según su estado de registro.

  • true: filtra por trámites que estén registrados

  • false: filtra por tramites que no estén registrados

Si no se indica, se devuelven todos.

registerStartDate1

Date

Fecha en la que se registraron los trámites. 

Formato dd/MM/yyyy

registerEndDate2

Date

Fecha fin para incluir rango de la fecha de registro. 

Para utilizarlo es obligatorio especificar el parámetro registerStartDate.

Formato dd/MM/yyyy

receiverOrgCode

String

Código de Organismo SIU que corresponde al organismo de BENT al que se envía la solicitud.

registerOrgCodeStringCódigo de Organismo SIU que corresponde al organismo en el que se registra la solicitud.

beneficiary.nif

String

Identificador (NIF) de la persona beneficiaria el trámite. Solo para tramites con representación.

contributorIdStringIdentificador del agente aportador.
interestedIdStringIdentificador del agente interesado.
representativeIdStringIdentificador del agente representante.

representation

Boolean

Permite filtrar los trámites por representación.

  • true: solo trámites donde se ejerza una representación.

  • false:  solo trámites donde no se ejerza una representación.

Si no se indica, se devuelven todos.

excludedCodesArray de StringsLista de requestCode referentes a tramites que se quieren excluir del resultado final
docsInProcessBooleanParámetro opcional que indica si se retornan los tramites no terminados, por defecto será no.

1 En caso de que no se incluya ninguna fecha inicial (creationStartDate, registerStartDate, updateStartDate), se devolverán únicamente los trámites que se hayan actualizado el mismo día en el que se hace la invocación. Si se incluyen varias, se tomará la más posterior.

2 En caso de que no se incluya ninguna fecha final (creationEndDate, registerEndDate, updateEndDate), se devolverán todos los trámites que se hayan actualizado hasta el mismo día en el que se hace la invocación. Si se incluyen varias, se tomará la más anterior.


Parámetros de respuesta

Tipo

Descripción

Fichero binario

Lista con los datos de los trámites consultados exportados en un fichero excel.



Códigos de respuesta

El resultado de la operación viene reflejado en el estado de la respuesta HTTP.

Código

Nombre

Descripción

202

Accepted

La lista de trámites se ha recuperado correctamente. Si no se ha encontrado ninguno, devuelve una lista vacía.

400

Bad request

Consulta especificada erróneamente.

500

Internal Server Error

Error interno del servidor.

Ejemplo de integración

Utilizando Java 8, GSON y la librería de cliente.

// Id de la aplicación que está accediendo a TTO
String APPLICATION_ID = "XXX";

// Signaturas de los procedimientos a consultar
int signature1 = ...;
int signature2 = ...;
int signature3 = ...;


// Paso 1. Preparar la conexión
URL url = new URL("http://preaplicaciones.aragon.es/tto_core/rest/tramite/listExcel?" +
        "applicationId=" + APPLICATION_ID +
        "&signature=" + signature1 + "," + signature2 + "," + signature3 +
        "&registered=false" +
        "&summaryInfo=false");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("GET");
conn.setRequestProperty("Accept", "application/octet-stream");

// Paso 2. Comprobar respuesta correcta
if (conn.getResponseCode() != 200) {
  // Gestionar respuesta incorrecta
}

// Paso 3. Obtener el nombre del archivo (opcional)
String name = "Solicitudes.xls";
String contentHeader = conn.getHeaderField("Content-Disposition");
final String fileNameHeader = "filename=\"";
if (contentHeader.contains(fileNameHeader)) {
  int start = contentHeader.lastIndexOf(fileNameHeader) + fileNameHeader.length();
  int end = contentHeader.length() - 2;
  name = contentHeader.substring(start, end);
}

// Paso 4. Recuperar el fichero
InputStream is = conn.getInputStream();
byte[] buffer = new byte[is.available()];
is.read(buffer);
OutputStream outStream = new FileOutputStream(name);
outStream.write(buffer);

// Paso 5. Desconectar
conn.disconnect();

2. Servicios obsoletos



Los nuevos servicios de IRequestService cubren las mismas funcionalidades que los mencionados a continuación, por lo que se recomienda su uso en caso de una nueva integración. Los servicios obsoletos se mantienen operativos para garantizar el funcionamiento de las integraciones existentes.

2.1 - Servicio getTramite

http://{entorno}/tto_core/rest/getTramite

Obtiene los datos de un trámite dado su identificador o su signatura, entidad y clave del usuario.

 Más información

URL de invocación

La URL de invocación del servicio REST es la siguiente:

http://{entorno}/tto_core/rest/getTramite

Para invocar a este servicio se debe utilizar el método GET de HTTP.


Parámetros de entrada

Parámetros

Tipo

Descripción

applicationId

String

ID de la aplicación que invoca el servicio

Obligatorio

number

Integer

Numero de la solicitud

Obligatorio si no se especifican signature, entity y requestCode

signature

Integer

Signatura del procedimiento

Obligatorio si no se especifica number

entity

Integer

Entidad del procedimiento

Obligatorio si no se especifica number

requestCode

String

Clave del usuario

Obligatorio si no se especifica number


Parámetros de respuesta

Tipo

Descripción

Tramite

XML con los datos del trámite consultado,  en codificación UTF-8


2.2 - Servicio getTramiteList

http://{entorno}/tto_core/rest/getTramiteList

Obtiene los datos de un listado de trámites según los parámetros de entrada que se especifiquen.

 Más información

URL de invocación

La URL de invocación del servicio REST es la siguiente:

http://{entorno}/tto_core/rest/getTramiteList


Para invocar a este servicio se debe utilizar el método GET de HTTP.


Parámetros de entrada

Parámetros

Tipo

Descripción

applicationId

String

ID de la aplicación que invoca el servicio

Obligatorio

signature

integer

Lista con las signatura de cada procedimiento a consultar

Obligatorio utilizar como mínimo una

user.nif

String

Identificador (NIF) de la persona que ha creado el trámite.

date

Date

Fecha desde la que se quieren buscar trámites. Se devolverán todas las solicitudes creadas en los 30 días previos a la fecha especificada.

Si no se proporciona una fecha, se tomará la del día actual.

Formato dd/MM/yyyy


Parámetros de respuesta

Tipo

Descripción

Array de Tramite

Objeto que devuelve los datos de los trámites consultados,  en codificación UTF-8.

Ejemplos de invocación



3. Anexos


3.1 - Objetos comunes

Objetos que conforman los datos utilizados por TTO.

3.1.1 - Tramite

Contiene la información de una solicitud.

Atributos

Atributo

Tipo

Descripción

progreso

Integer

Porcentaje de completado del trámite.

requestInformation

RequestInformation

Contiene la información específica de una solicitud.

applicant

Applicant

Datos del usuario que solicita el trámite. Este usuario puede ser persona física o jurídica.

documents

Array de Document

Listado de documentos que el usuario debe aportar al trámite.

otherDocuments

Array de Document

Listado de documentos que el usuario aporta voluntariamente.

authorizations

Autorizacion

Listado de autorizaciones del trámite.

form1

List<Map<String, Object>>

Formulario del trámite. Cada elemento de la lista se corresponde con una sección del procedimiento al que pertenece la solicitud. Está compuesto por un único atributo, que lleva como nombre el título de dicha sección y como valor los campos de la sección.

beneficiary

Beneficiary

Datos del beneficiario del trámite. Este campo solo aparece cuando el usuario que solicita el trámite (applicant) ejerce como representante.

agentsAgentsDatos de los agentes que actúan sobre el trámite.
notificationNotificationBloque con los de contacto que se utilizarán a efectos de notificación.
queryParamsMapa String-String

Parámetros de la URL con los que el usuario ha accedido al trámite.

Pueden especificarse desde las aplicaciones integradoras si estas desean asociar atributos personalizados a los trámites.

Nota

Si se accede especificando un parámetro con nombre numExpediente, se reflejará el valor indicado en el título durante su tramitación con el siguiente formato:

[Nombre del trámite] del expediente [valor de numExpediente]

Por ejemplo, con nombre del trámite "Subsanaciones" y valor de numExpediente "2123":

Subsanaciones del expediente 2123

Nota

El formulario se muestra sólo si no está vacío y si el parámetro de llamada summaryInfo aparece especificado como false.

Ejemplos JSONEjemplos XML
 Mostrar
{
  "progreso": 100,
  "requestInformation": ...,
  "applicant": ...,
  "documents": [
    ...
  ],
  "otherDocuments": [
    ...
  ],
  "authorizations": [
    ...
  ],
  "form": [
    ...
  ],
  "beneficiary": ...,
  "agents": ...,
  "queryParams": {
    "numExpediente": "2123",
    "atributo1": "ejemplo",
	...
  }
}
 Mostrar
<resultTramiteBean>
  <progreso>100</progreso>
  <requestInformation>
    ...
  </requestInformation>
  <applicant>
    ...
  </applicant>
  <documents>
    <document>
      ...
    </document>
    ....
  </documents>
  <authorizations>
    <authorization>
      ...
    </authorization>
    ...
  </authorizations>
  <form>
    <categories>
      <category>
        ...
      </category>
      ...
    </categories>
  </form>
  <agents>
	...
  </agents>
  <queryParams>
    <entry>
      <key>numExpediente</key>
      <value>2123</value>
    </entry>
    <entry>
      <key>atributo1</key>
      <value>ejemplo</value>
    </entry>
    ...
  </queryParams>
</resultTramiteBean>

3.1.2 - RequestInformation

Contiene la información específica de una solicitud.

Atributos

Atributo

Tipo

Descripción

number

Integer

Identificador del trámite.

csvRequest

String

CSV del trámite. Aparecerá sólo en el caso de que el trámite se haya firmado.

signature

Integer

Código del procedimiento al que pertenece el trámite.

requestSignatureInteger
En los casos en los que un tramite pueda ser multiprocedimiento, este campo determinará el procedimiento efectivo del tramite a efectos de metadatado y registro.

entity

Integer

Entidad a la que pertenece el procedimiento al que pertenece el trámite.

denomination

String

Nombre del procedimiento al que pertenece el trámite.

receiverOrgCode

String

Código de Organismo SIU que corresponde al organismo de BENT al que se envía la solicitud.

registerOrgCode

String

Código de Organismo SIU que corresponde al organismo en el que se registra la solicitud.

requestCode

String

Identificador que se le asigna al trámite. La manera de generar este código dependerá del procedimiento al que pertenezca, p.ej. Número de trámite + código aleatorio de 8 letras.

requestCodeAssociatedStringIdentificador del trámite asociado. Es el identificador del trámite sobre el que se actúa en caso de subsanaciones, aportaciones y recursos.

creationDate

Long

Fecha en la que el usuario ha accedido para crear el trámite (representación en tiempo UNIX).

sendEventSGA

Boolean

OBSOLETO Indica si se deberá realizar evento a SGA.

eventSGA

String

OBSOLETO Evento de SGA a enviar.

version

Integer

Indica la versión del xml del trámite.

onlineOnly

Boolean

Indica si el tramite solo puede rellenarse digitalmente.

updateDate

Long

Fecha de última actualización del trámite (representación en tiempo UNIX).

originEnumOrigen del trámite.
registerInfoObjectAlberga la información de registro

RegisterInfo

AtributoTipoDescripcion

registerId

StringIdentificador del registro. Aparecerá sólo en el caso de que el trámite se haya enviado a registro.
csvRegisterReceiptStringCSV del justificante de registro. Aparecerá sólo en el caso de que el trámite se haya enviado a registro.
registerDateLongFecha en la que se ha realizado el registro del trámite. Aparecerá sólo en el caso de que el trámite se haya enviado a registro (representación en tiempo UNIX).
bentId1LongIdentificador del envío a BENT. 
legalEntityCertBooleanIndica cuando el trámite se realiza con un certificado de persona jurídica.

1 Se puede dar el caso en el que se haya completado el trámite pero no se haya especificado el identificador de BENT. Las causas pueden ser las siguientes:

Caída de BENT.

Reinicio de BENT en el servidor.

Un error ajeno a las aplicaciones como, por ejemplo, un problema en la conexión en la red.

Para solucionar este contratiempo y recuperar dicho identificador, TTO tiene programada una llamada diaria al servicio de BENT en horario nocturno. Una vez obtenido el identificador de BENT, estará disponible como valor de este mismo atributo.

Ejemplos JSONEjemplos XML
 Mostrar
{
  "number": 11889,
  "csvRequest": "CSVBA83A3O46R1X01TTO",
  "signature": 1862,
  "requestSignature": 1996,
  "entity": 0,
  "denomination": "Solicitud General",
  "receiverOrgCode": "ORG11214",
  "registerOrgCode": "ORG11197",
  "requestCode": "11889GRZWV8V5",
  "requestCodeAssociated": "20303R2LMD0S69V",
  "creationDate": 1571666310573,
  "sendEventSGA": false,
  "eventSGA": "",
  "version": 4,
  "onlineOnly": false,
  "updateDate": null,
  "origin": "SOLICITUD",
  "registerInfo: {
	  "registerId": "RT_000005695/2019",
	  "csvRegisterReceipt": "CSVTA77QJP15D1P00SRT",
	  "registerDate": 1571666477478,
	  "bentId": 515,
      "legalEntityCert": true
  }
}
 Mostrar
<requestInformation>
  <number>11797</number>
  <csvRequest>CSVD17WTR616U1D01TTO</csvRequest>
  <signature>2005</signature>
  <requestSignature>1996</requestSignature>
  <entity>0</entity>
  <denomination>procedimiento prueba</denomination>
  <receiverOrgCode>ORG11214</receiverOrgCode>
  <registerOrgCode>ORG11197</registerOrgCode>
  <requestCode>00000000TOXPURE</requestCode>
  <requestCodeAssociated>20303R2LMD0S69V</requestCodeAssociated>
  <creationDate>2019-10-15T14:10:40.463+02:00</creationDate>
  <sendEventSGA>false</sendEventSGA>
  <version>2</version>
  <onlineOnly>false</onlineOnly>
  <origin>SOLICITUD</origin>
  <registerInfo>
    <registerId>RT_000005611/2019</registerId>
    <csvRegisterReceipt>CSVFI2DH6B36S1500SRT</csvRegisterReceipt>
    <registerDate>2019-10-15T16:11:28.595+02:00</registerDate>
	<legalEntityCert>true</legalEntityCert>
  </registerInfo>
</requestInformation>

3.1.3 - Beneficiary

Contiene la información de un beneficiario.

Atributos

Atributo

Tipo

Descripción

nif

String

Identificación.

name

String

Nombre.

surname

String

Primer apellido.

surname2StringSegundo apellido.

notificationMail

String

Correo electrónico que ha indicado el usuario como medio de contacto.

notificationPhone

String

Número de teléfono que ha indicado el usuario como medio de contacto.

address

String

Dirección a la que recibir la notificación postal.

postalCode

Long

Código postal de la dirección a la que recibir la notificación postal.

Aparecerá 0 en el caso de que no se haya rellenado.

city

String

Ciudad de la dirección a la que recibir la notificación postal.

province

String

Provincia de la dirección a la que recibir la notificación postal.

country

String

País de la dirección a la que recibir la notificación postal.

documentType

String

Tipo de documento de identificación.

naturalPerson

Boolean

Indica si el beneficiario es una persona física (true) o jurídica (false).

Ejemplos JSONEjemplos XML
 Mostrar
{
  "nif": "00000000T",
  "name": "JUAN",
  "surname": "ESPAÑOL",
  "surname2": "ESPAÑOL",
  "notificationMail": "correo@ejemplo.com",
  "notificationPhone": "974000000",
  "address": "C/Ejemplo nº1",
  "postalCode": 50005,
  "city": "Zaragoza",
  "province": "Zaragoza",
  "country": "España",
  "documentType": "NIF",
  "naturalPerson": true
}
 Mostrar
<beneficiary>
  <nif>00000000T</nif>
  <name>JUAN</name>
  <surname>ESPAÑOL</surname>
  <surname2>ESPAÑOL</surname2>
  <notificationMail>correo@ejemplo.com</notificationMail>
  <notificationPhone>974000000</notificationPhone>
  <address>Plaza de Antonio Beltrán Martínez, 10, entresuelo 3ª</address>
  <postalCode>50005</postalCode>
  <city>Zaragoza</city>
  <province>Zaragoza</province>
  <country>España</country>
</beneficiary>

3.1.4 - Applicant

Contiene la información de un solicitante.

Atributos

Este objeto cuenta también con los mismos atributos que Beneficiary, por lo que a continuación se explican únicamente los que sólo no figuran en este último.

Atributo

Tipo

Descripción

representativeIdentifier

String

Campo de identificación la entidad física, que actúa en nombre de la entidad jurídica.

representativeName

String

Nombre de la persona física, que actúa en nombre de una entidad jurídica.

representativeSurname

String

Primer apellido de la persona física, que actúa en nombre de la entidad jurídica.

representativeSurname2StringSegundo apellido de la persona física, que actúa en nombre de la entidad jurídica.

representation

Integer

Indica el tipo de representación. Los posibles valores son:

Tutor legal

Documento específico representación

Documento público REA

Ejemplos JSONEjemplos XML
 Mostrar
{
  "nif": "Q0100000I",
  "name": "FUFASA",
  "surname": "",
  "surname2": "",
  "notificationMail": "correo@ejemplo.com",
  "notificationPhone": "974000000",
  "address": "C/Ejemplo nº1",
  "postalCode": 0,
  "city": "Zaragoza",
  "province": "Zaragoza",
  "country": "España",
  "documentType": "NIF",
  "naturalPerson": true,
  "representativeIdentifier": "10000322Z",
  "representativeName": "MANUELA",
  "representativeSurname": "BLANCO",
  "representativeSurname2": "VIDAL",
  "representation": 0
}
 Mostrar
<applicant>
  <nif>Q0100000I</nif>
  <name>FUFASA</name>
  <surname/>
  <surname2/>
  <notificationMail>asdf@ho.es</notificationMail>
  <postalCode>0</postalCode>
  <representativeIdentifier>10000322Z</representativeIdentifier>
  <representativeName>MANUELA</representativeName>
  <representativeSurname>BLANCO</representativeSurname>
  <representativeSurname2>VIDAL</representativeSurname2>
  <representation>0</representation>
</applicant>

3.1.5 - Document

Contiene la información de un solicitante.

Atributos

Atributo

Tipo

Descripción

id

String

Identificador calculado del documento.

name

String

Nombre del fichero subido. Aparecerá sólo en el caso del que el documento se haya aportado.

document

String

CSV del documento. Aparecerá sólo en el caso de que el documento se haya aportado y no sea un documento múltiple.

documentList

Array de Document

Lista de ficheros aportados por el ciudadano (en caso de ser un documento múltiple).

description


OBSOLETO Descripción del documento.

sign


OBSOLETO Indica si el documento esta firmado.

isAuthorized


Indica si el usuario ha dado permiso para la consulta del documento.

Ejemplos JSONEjemplos XML
 Documento normal
{
  "id": "DOC_NORMAL",
  "name": "Instrucciones_Contratacion.pdf",
  "document": "CSVIP5HLKW65T1I01TTO",
  "documentList": null,
  "description": null,
  "sign": false,
  "authorized": false
}
 Documento no especificado
{
  "id": "DOC_NO_SPEC",
  "name": null,
  "document": null,
  "documentList": null,
  "description": null,
  "sign": false,
  "authorized": false
}
 Documento múltiple
{
  "id": "DOC_MULTIPLE",
  "name": null,
  "document": null,
  "documentList": [
    ...
  ],
  "description": null,
  "sign": false,
  "authorized": false
}
 Documento normal
<document>
  <id>DOC_NORMAL</id>
  <name>Instrucciones_Contratacion.pdf</name>
  <document>CSVIP5HLKW65T1I01TTO</document>
  <isAuthorized>false</isAuthorized>
  <sign>false</sign>
</document>
 Documento no especificado
<document>
  <id>DOC_NO_SPEC</id>
  <isAuthorized>false</isAuthorized>
  <sign>false</sign>
</document>
 Documento múltiple
<document>
  <id>DOC_MULTIPLE</id>
  <documentList>
    <document>
      <id>DOC_MULTIPLE_2</id>
      <name>Instrucciones_Contratacion.pdf</name>
      <document>CSVFB49BMI75A1U01TTO</document>
    </document>
    <document>
      <id>DOC_MULTIPLE_1</id>
      <name>Calendario Zaragoza 2015.pdf</name>
      <document>CSV3D2VPG855P1Y01TTO</document>
    </document>
  </documentList>
  <isAuthorized>false</isAuthorized>
  <sign>false</sign>
</document>

3.1.6 - Autorizacion

Contiene la información de un solicitante.

Atributos

Atributo

Tipo

Descripción

nombreServicio

String

Nombre del servicio que se puede autorizar a consultar.

En el XML se llama “serviceName”.

comentarios

String

Comentarios a la autorización.

En el XML se llama “comments”.

autorizado

Boolean

Indica si el usuario ha dado permiso para la consulta del servicio.

En el XML se llama “isAuthorized”.

Ejemplos JSONEjemplos XML
 Mostrar
{
  "nombreServicio": "Autorizacion2",
  "codigoCertificado": null,
  "comentarios": null,
  "autorizado": true
}
 Mostrar
<authorizations>
  <authorization>
    <serviceName>Datos de identidad del solicitante o representante</serviceName>
    <isAuthorized>true</isAuthorized>
  </authorization>
  <authorization>
    <serviceName>Consulta del Impuesto de Actividades Económicas de la AEAT</serviceName>
    <isAuthorized>true</isAuthorized>
  </authorization>
</authorizations>

3.1.7 - Category

Contiene la información de una sección del trámite.  

Atributos

Atributo

Tipo

Descripción

codeStringEl código de la categoría

“Título de la sección”

Conjunto de Data

Array de conjuntos de Data1

El nombre de este atributo se corresponde con el título de la sección que representa.

Su valor consiste en el conjunto de campos de la sección y el valor introducido en cada uno de ellos por el usuario.

Si la sección se ha definido como una tabla, este valor viene representado como un Array de estos conjuntos, en el que cada elemento se corresponde con los valores de una fila.

Todas las solicitudes que pertenezcan a un mismo procedimiento van a contar siempre con las mismas secciones, por lo que los títulos de las secciones y los identificadores van a ser comunes. Dicho de otro modo, las únicas diferencias serán los datos introducidos por los usuarios.

Algunas secciones no son obligatorias y pueden no haber sido completadas por los usuarios, en cuyo caso no figurarán en la solicitud.

Ejemplos JSONEjemplos XML
 Sección normal
{
  "Código de la categoría":"AAA1",
  "Categoría de familia monoparental": {
    "B_CATEGORIA_FAMI": "Familia monoparental general",
    "B_FEC_NAC": {
      "B_FEC_NACday": "02",
      "B_FEC_NACmonth": "03",
      "B_FEC_NACyear": "2018"
    }
  }
}
 Sección tabla
{
  "Miembros de la unidad familiar": [
    {
      "C_NOM_FIRST_NAME": "Hijo uno",
      "C_NOM_SURNAME_2": null,
      "C_ID": {},
      "C_FEC_NAC": {
        "C_FEC_NACday": "02",
        "C_FEC_NACmonth": "03",
        "C_FEC_NACyear": "2018"
      },
      "C_LOCALIDAD_NACIM": "Zaragoza",
      "C_GRADO_DISCAPACIDAD": ""
    },
    {
      "C_NOM_FIRST_NAME": "Hijo dos",
      ...
    }
  ]
}
 Sección normal
<category>
  <description>Datos del solicitante</description>
  <code>AAA1</code>
  <dataList>
    <data>
      ...
    </data>
    <data>
      ...
    </data>
    ...
  </dataList>
</category>
 Sección tabla
<category>
  <description>Declaración de otros datos</description>
  <dataList>
    <dataList>
      <data>
        ...
      </data>
      <data>
        ...
      </data>
    </dataList>
    <dataList>
      <data>
        ...
      </data>
      <data>
        ...
      </data>
    </dataList>
  </dataList>
</category>

3.1.8 - Data

Contiene los datos introducidos por el usuario en un campo.

Atributos

Atributo

Tipo

Descripción

“ID del campo”


Contiene el valor introducido por el usuario en el campo.

El tipo de este dato dependerá de su definición en el procedimiento.

codeStringEl código del campo en valores seleccionables (radiobutton, checkbox, select)

Algunos campos no son obligatorios y pueden no haber sido completados por los usuarios, en cuyo caso vendrán con valor null o vacíos.

Ejemplos JSONEjemplos XML
 Dato simple
"C_LOCALIDAD_NACIM": "Zaragoza"
 Dato compuesto
"C_FEC_NAC": {
  "C_FEC_NACday": "02",
  "C_FEC_NACmonth": "03",
  "C_FEC_NACyear": "2018"
}
 Dato con code


"AAA":{
   "valorCampo":"NNNNNNNNNN",
   "code":"N0001"
}
 Dato simple
<data>
  <name>D1_TEXTO_5</name>
  <valueList>
    <value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">aaa@aaa.com</value>
  </valueList>
</data>
 Dato compuesto
<data>
  <name>D1_FECHA</name>
  <valueList>
    <value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="resultDataBean">
      <name>D1_FECHA_4day</name>
      <valueList>
        <value xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">12</value>
      </valueList>
    </value>
    <value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="resultDataBean">
      <name>D1_FECHA_4month</name>
      <valueList>
        <value xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">12</value>
      </valueList>
    </value>
    <value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="resultDataBean">
      <name>D1_FECHA_4year</name>
      <valueList>
        <value xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">2011</value>
      </valueList>
    </value>
  </valueList>
</data>
 Dato con code


<data>
	<name>AAA</name>
	<valueList>
		<value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="resultDataBean">
			<name>valorCampo</name>
			<valueList>
				<value xmlns:xs="http://www.w3.org/2001/XMLSchema" xsi:type="xs:string">NNNNNNNNNN</value>
			</valueList>
		</value>
		<value xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="resultDataBean">
			<code>N0001</code>
		</value>
	</valueList>
</data>

3.1.9 - Agents

Contiene los datos de los agentes que actúan sobre el trámite.

Atributos

Atributo

Tipo

Descripción

contributor

Person

Contiene los datos del aportador del trámite.

interestedPersonContiene los datos del interesado del trámite.
representativePersonContiene los datos del representate del trámite.

Algunos agentes no aparecen en todos los trámites, en cuyo caso vendrán con valor null o vacíos.

Ejemplos JSONEjemplos XML
 Mostrar
{"agents": {
		"contributor": {
			...
		},
		"interested": {
			...
		},
		"representative": {
			...
		}
	}
}
 Mostrar
<agents>
	<contributor>
		...		
	</contributor>
	<interested>
		...
	</interested>
	<representative>
		...
	</representative>
</agents>

3.1.10 - Person

Contiene los datos de los agentes que actúan sobre el trámite.

Atributos

Atributo

Tipo

Descripción

identifier

String

Campo de identificación de la persona física o jurídica  (NIF/NIE/CIF).

nameStringCampo con el nombre o razón social.
surnameStringCampo con el apellido de la persona física. No aparecerá informado en caso de persona jurídica.
mailStringCampo con la dirección de correo electrónico.
phoneStringCampo con el número de teléfono.
personTypeString

Campo con el tipo de persona. FISICA, JURIDICA y ENTIDAD.

.

documentTypeStringCampo con el tipo de documento. NIF/CIF/NIE. 

No todos los campos aparecen en todas las casuísticas, en cuyo caso vendrán con valor null o vacíos.

Ejemplos JSONEjemplos XML
 Mostrar
{
	"identifier": "10000322Z",
	"name": "MANUELA",
	"surname": "BLANCO VIDAL"
    "mail": "ejemplo@ejemplo.com",
    "phone": "974123456",
	"personType": "FISICA",
	"documentType": "NIF"
}
 Mostrar
<identifier>10000322Z</identifier>
<name>MANUELA</name>
<surname>BLANCO VIDAL</surname>
<mail>ejemplo@ejemplo.com</mail>
<phone>974123456</phone>
<personType>FISICA</personType>
<documentType>NIF</documentType>

3.1.11 - Notification

Contiene los datos de contacto a efectos de notificación.

Atributos

Atributo

Tipo

Descripción

addresses

Array de Address

Lista de direcciones postales

Ejemplos JSONEjemplos XML
 Mostrar
{
	"notification": {
		"addresses": [
			...
		]
	}
}
 Mostrar
<notification>
    <addresses>
		...
	</addresses>
</notification>

3.1.12 - Address

Contiene los datos de una dirección postal

Atributos

Atributo

Tipo

Descripción

country

String

Pais.

provinceStringProvincia.
cityStringCiudad.
addressStringDirección.
postalCodeStringCódigo postal.
Ejemplos JSONEjemplos XML
 Mostrar
{
	"address": "C/ Ejemplo nº1",
	"postalCode": 50005,
	"city": "Zaragoza",
	"province": "Zaragoza",
	"country": "España"
}
 Mostrar
<address>
	<address>C/ Ejemplo nº1</address>
    <postalCode>50005</postalCode>
    <city>Zaragoza</city>
    <province>Zaragoza</province>
    <country>España</country>
</address>