Índice
- Índice
- Introducción
- Autenticación
- Anotaciones
- Articulos
- Generales
- [GET] /cargos
- [GET] /departamentos
- [GET] /filtros
- [GET] /empresas
- [GET] /estados
- [GET] /estados/facturas
- [GET] /estados/tareas
- [GET] /idiomas/descripciones
- [GET] /modalidades
- [GET] /monedas
- [GET] /paises
- [GET] /secciones
- [GET] /tasas
- [GET] /tipos/anotaciones
- [GET] /tipos/contactos
- [GET] /tipos/descripciones
- [GET] /tipos/domicilios
- [GET] /tipos/estados/factura
- [GET] /tipos/gastos
- Contactos
- Expedientes
- [GET] /expedientes/{id}
- [GET]/expedientes/{id}/actos
- [GET]/expedientes/{id}/actos/{idActo}
- [GET]/expedientes/{id}/anotaciones
- [GET]/expedientes/{id}/especificos
- [GET]/expedientes/{id}/graficos
- [GET]/expedientes/{id}/prioridades
- [GET]/expedientes/{id}/situaciones
- [GET]/expedientes/{id}/tareas
- [GET]/expedientes/{id}/tareas/{idTarea}
- [GET]/expedientes/{id}/tareas/{idTarea}/importes
- [GET] /expedientes/{id}/titulares
- [POST] /expedientes
- [POST] /expedientes/search
- [POST] /expedientes/actos/search
- [POST] /expedientes/tareas/search
- [POST] /expedientes/{id}/actos
- [POST] /expedientes/{id}/tareas
- [POST] /expedientes/{id}/tareas/{idTarea}/importes
- [POST] /expedientes/{id}/titulares
- [PUT] /expedientes/{id}
- [PUT] /expedientes/{id}/tareas/{idTarea}
- [PUT] /expedientes/{id}/tareas/{idTarea}/importes/{idImporte}
- Modificaciones
- Facturas Emitidas
- Facturas Recibidas
- [GET] /facturas/recibidas/{id}
- [GET] /facturas/recibidas/{id}/lineas
- [GET] /facturas/recibidas/{id}/lineas/{idLinea}/expedientes
- [POST] /facturas/recibidas
- [POST] /facturas/recibidas/{id}/lineas/{idLinea}/expedientes
- [PUT] /facturas/recibidas/{id}
- [DELETE] /facturas/recibidas/{id}/lineas/{idLinea}/gastosEmitidos
- [DELETE] /facturas/recibidas/{id}/lineas/{idLinea}
- Tareas
Introducción
En este documento se van a detallar cada una de las peticiones que, actualmente, se pueden realizar en la API para cada bloque de Apiges Pro (Expedientes, Contactos…). Para el correcto funcionamiento y la obtención de los resultados esperados, se va a especificar en cada petición qué parámetros son obligatorios, los tipos de respuesta y ejemplos de las peticiones para entender mejor el funcionamiento.
Para ello, vamos a hablar primero de los parámetros/headers que comparten todas las peticiones que podemos realizar en la API:
Estándar Request URL
http://<dominio>:<puerto>
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<dominio> |
Dominio API |
Sí |
192.168.293.365 |
<puerto> |
Puerto API |
Sí |
8080 |
Estándar cURL
curl --location --request GET 'http://<dominio>:<puerto>/estados' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Header |
Descripción |
Obligatorio | Ejemplo |
<idioma> |
Idioma para las descripciones |
No |
es |
<token> |
Token de acceso |
Sí |
|
Importante: El tipo de autenticación que se utiliza en la API es JWT, y su nomenclatura es: Bearer <token>
Opciones para el parámetro <idioma>:
- Español: es (valor por defecto)
- Francés: fr
- Portugués: pt
- Catalán: ca
- Alemán: de
- Inglés: en
- Italiano: it
Ejemplo cURL con Headers
curl --location --request GET 'http://<dominio>:<puerto>/estados' \ --header 'accept-language: de' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Estándar Response
Para garantizar la seguridad de la API, se realiza una comprobación a nivel global sobre cada petición para evaluar el token de acceso. Esta validación del token puede provocar dos tipos de respuesta en las peticiones (además de las particulares de cada una de ellas):
401 Usuario no autorizado
403 El usuario no tiene permisos para este ámbito
En caso de obtener alguna de estas dos respuestas, intenta autenticarte de nuevo y, si el error persiste, ponte por favor en contacto con Grupo10 a través del apartado Soporte
Autenticación
[GET] /login
Descripción
Método de autenticación a la API. Devuelve un token de acceso a utilizar en el resto de peticiones de la API.
Petición
GET /login
Request URL
http://<dominio>:<puerto>/login?username=<username>&password=<password>
cURL
curl --location --request GET 'http://<dominio>:<puerto>/login?username=<username>&password=<password>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<username> |
Nombre usuario |
Sí |
maria1294 |
<password> |
Contraseña usuario |
Sí |
admin |
Ejemplo de request URL
http://192.168.293.365:8071/login?username=maria1294&password=admin
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/login?username=maria1294&password=admin'
Para el método de login no hace falta incluir headers
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH" }
401 Usuario no autorizado
{ "statusCode": 401, "message": "Usuario no autorizado", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST]/anotaciones/search
Descripción
Búsqueda de anotaciones con filtros. Devuelve un listado con las anotaciones que cumplen los filtros de búsqueda.
Petición
POST /anotaciones/search
Petición con opciones de paginación
POST /anotaciones/search?PageSize=<size>&PageNumber=<number>
Request URL
http://<dominio>:<puerto>/anotaciones/search'
Request URL con opciones de paginación
http://<dominio>:<puerto>/anotaciones/search?PageSize=<size>&PageNumber=<number>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<size> |
Número de elementos por página |
No |
10 |
<number> |
Número de página |
No |
2 |
cURL
curl --location --request POST 'http://<dominio>:<puerto>/anotaciones/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación
curl --location --request POST 'http://<dominio>:<puerto>/anotaciones/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)
{ "generales": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
<campo> |
Campo por el que se va a aplicar el filtro dentro del bloque al que corresponde. En este caso, sobre contactos, domicilios o titulares |
Sí |
Cadena de caracteres |
<valores> |
Lista de valores |
Sí |
Lista de valores |
<filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/anotaciones/search'
Ejemplo de request URL con opciones de paginación
http://192.168.293.365:8071/anotaciones/search?PageSize=10&PageNumber=2'
Ejemplo de body
{ "generales": [ { "campo": "tipo", "valores": [ "EMAIL" ], "codigo": "EQ" }, { "campo": "idExpediente", "valores": [ "42" ], "codigo": "EQ" } ] }
Campo |
Descripción |
Obligatorio | Tipo parámetro |
“tipo” |
Filtro sobre el tipo de contacto |
No |
Cadena de caracteres |
“idExpediente” |
Filtro sobre el id del expediente asociado a la anotacion |
No |
Numeros enteros |
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/anotaciones/search' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "generales": [ { "campo": "tipo", "valores": [ "EMAIL" ], "codigo": "EQ" }, { "campo": "idExpediente", "valores": [ "424" ], "codigo": "EQ" } ] }'
Ejemplo de cURL con opciones de paginación
curl --location --request POST 'http://192.168.293.365:8071/anotaciones/search?PageSize=10&PageNumber=2' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "generales": [ { "campo": "tipo", "valores": [ "EMAIL" ], "codigo": "EQ" }, { "campo": "idExpediente", "valores": [ "424" ], "codigo": "EQ" } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘tipo’
{ "statusCode": 400, "message": "Filtro 'X' no contemplado. [GET] /filtros para más información", "data": null }
400 Valor no válido para el campo ‘idExpediente’
{ "statusCode": 400, "message": "Campo 'X' no contemplado", "data": null }
400 Lista de valores vacía
{ "statusCode": 400, "message": "Se deben informar valores para el tipo de filtro 'EQ'", "data": null }
400 Lista de ‘valores’ con valor vacío
{ "statusCode": 400, "message": "El valor no puede ser nulo", "data": null }
400 Filtro ‘Between’ con más de dos valores
{ "statusCode": 400, "message": "El filtro 'BT' tiene que tener únicamente dos valores", "data": null }
Headers responses
En esta petición, además de devolver un listado con los contactos que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination
con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
Parámetro |
Descripción |
<total> |
Número total de contactos encontrados en la búsqueda |
<size> |
Número de elementos por página |
<current_page> |
Página actual |
<total_pages> |
Número total de páginas |
<has_next_page> |
Indica si hay página siguiente |
<has_previous_page> |
Indica si hay página anterior |
<next_url> |
URL de la siguiente página |
<previous_url> |
URL de la página anterior |
Ejemplo headers responses
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244, "HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": { "id": 1, "codigo": "A10", "fechaAlta": "27/01/2014", "tipo": { "codigo": "Carta", "descripcion": "Carta al cliente" }, "usuario": { "codigo": "BB", "nombre": "Beatriz", "apellidos": "Blanco" }, "idExpediente":1234, "rutaFichero": "\\ruta\\docs\\", "texto":{ "codigo": "C3", "descripcion": "INCUMPLIMIENTO DE PAGO" } } }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Articulos
[GET] /articulos
Descripción
Devuelve un listado con los articulos disponibles.
Petición
GET /articulos
Request URL
http://<dominio>:<puerto>/articulos
cURL
curl --location --request GET 'http://<dominio>:<puerto>/articulos' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/articulos
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/articulos' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "EQ", "descripcion": "Igual que el/los valor(es)", "estado": { "codigo": "A", "descripcion": "Alta" }, "tipo": { "codigo": "E", "descripcion": "Factura Emitida" }, "centroCoste": { "codigo": "05", "descripcion": "GE - Tramitacion de Registro" } }, { "codigo": "4ANU", "descripcion": "Cuarta Anulacion", "estado": { "codigo": "A", "descripcion": "Alta" }, "tipo": { "codigo": "R", "descripcion": "Factura Recibida" }, "centroCoste": { "codigo": "05", "descripcion": "GE - Tramitacion de Registro" } } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Generales
[GET] /cargos
Descripción
Devuelve un listado con los cargos disponibles en las búsquedas.
Petición
GET /cargos
Request URL
http://<dominio>:<puerto>/cargos
cURL
curl --location --request GET 'http://<dominio>:<puerto>/cargos' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/cargos
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/cargos' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "1", "descripcion": "Ejecutivo" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /departamentos
Descripción
Devuelve un listado con los departamentos disponibles en las búsquedas.
Petición
GET /departamentos
Request URL
http://<dominio>:<puerto>/departamentos
cURL
curl --location --request GET 'http://<dominio>:<puerto>/departamentos' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/departamentos
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/departamentos' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "01", "descripcion": "Marca" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /filtros
Descripción
Devuelve un listado con los filtros disponibles en las búsquedas.
Petición
GET /filtros
Request URL
http://<dominio>:<puerto>/filtros
cURL
curl --location --request GET 'http://<dominio>:<puerto>/filtros' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/filtros
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/filtros' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "EQ", "descripcion": "Igual que el/los valor(es)" }, { "codigo": "BT", "descripcion": "Between - Resultados entre dos valores" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /empresas
Descripción
Devuelve un listado con las empresas disponibles.
Petición
GET /empresas
Request URL
http://<dominio>:<puerto>/empresas'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/empresas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/empresas'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/empresas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "E1", "descripcion": "Empresa 1", "pais": { "codigo": "ES", "descripcion": "España" }, "moneda": { "codigo": "EUR", "descripcion": "Moneda de los estados miembros de EMU" }, "CIF": "R2788776B" }, { "codigo": "E2", "descripcion": "Empresa 2", "pais": { "codigo": "ES", "descripcion": "España" }, "moneda": { "codigo": "EUR", "descripcion": "Moneda de los estados miembros de EMU" }, "CIF": "E0413308"" }, { "codigo": "E3", "descripcion": "Empresa 3", "pais": { "codigo": "ES", "descripcion": "España" }, "moneda": { "codigo": "EUR", "descripcion": "Moneda de los estados miembros de EMU" }, "CIF": "R2777776B" }, { "codigo": "E4", "descripcion": "Empresa 4", "pais": { "codigo": "ES", "descripcion": "España" }, "moneda": { "codigo": "EUR", "descripcion": "Moneda de los estados miembros de EMU" }, "CIF": "V04182408" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /estados
Descripción
Devuelve un listado con los estados disponibles.
Petición
GET /estados
Request URL
http://<dominio>:<puerto>/estados
cURL
curl --location --request GET 'http://<dominio>:<puerto>/estados' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/estados
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/estados' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "A", "descripcion": "Alta" }, { "codigo": "B", "descripcion": "Baja" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /estados/facturas
Descripción
Devuelve un listado con los estados de facturas disponibles.
Petición
GET /estados/facturas
Request URL
http://<dominio>:<puerto>/estados/facturas
cURL
curl --location --request GET 'http://<dominio>:<puerto>/estados/facturas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/estados/facturas
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/estados/facturas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "tipo": { "codigo": "E", "descripcion": "Factura Emitida" }, "codigo": "0", "descripcion": "Factura Rechazada por el Corresponsal" }, { "tipo": { "codigo": "R", "descripcion": "Factura Recibida" }, "codigo": "8", "descripcion": "Clientes Morosos" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /estados/tareas
Descripción
Devuelve un listado con los estados de tareas.
Petición
GET /estados/tareas
Request URL
http://<dominio>:<puerto>/estados/tareas
cURL
curl --location --request GET 'http://<dominio>:<puerto>/estados/tareas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/estados/tareas
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/estados/tareas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "A", "descripcion": "Aplazado" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /idiomas/descripciones
Descripción
Devuelve un listado con los idiomas disponibles.
Petición
GET /idiomas/descripciones
Request URL
http://<dominio>:<puerto>/idiomas/descripciones'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/idiomas/descripciones' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/idiomas/descripciones'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/idiomas/descripciones' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "bg", "descripcion": "Búlgaro" }, { "codigo": "en", "descripcion": "Inglés" }, { "codigo": "es", "descripcion": "Español" }, { "codigo": "et", "descripcion": "Estonio" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /modalidades
Descripción
Devuelve un listado con las modalidades disponibles.
Petición
GET /modalidades
Request URL
http://<dominio>:<puerto>/modalidades'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/modalidades' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/modalidades'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/modalidades' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "A", "descripcion": "Marca de la Unión Europea" }, { "codigo": "H", "descripcion": "Marca Internacional" }, { "codigo": "P", "descripcion": "Patente" }, { "codigo": "U", "descripcion": "Modelo de Utilidad" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /monedas
Descripción
Devuelve un listado con las monedas disponibles.
Petición
GET /monedas
Request URL
http://<dominio>:<puerto>/monedas'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/monedas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/monedas'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/monedas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "EUR", "descripcion": "Moneda de los estados miembros de EMU" }, { "codigo": "GBP", "descripcion": "Libra Británica" }, { "codigo": "USD", "descripcion": "Dólar Americano" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /paises
Descripción
Devuelve un listado con los países disponibles.
Petición
GET /paises
Request URL
http://<dominio>:<puerto>/paises'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/paises' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/paises'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/paises' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "AL", "descripcion": "Albania" }, { "codigo": "AM", "descripcion": "Armenia" }, { "codigo": "AR", "descripcion": "Argentina" }, { "codigo": "AS", "descripcion": "Samoa Americana (American Samoa)" }, { "codigo": "AT", "descripcion": "Austria" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /secciones
Descripción
Devuelve un listado con las secciones disponibles.
Petición
GET /secciones
Request URL
http://<dominio>:<puerto>/secciones'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/secciones' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/secciones'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/secciones' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "00", "descripcion": "Otros" }, { "codigo": "01", "descripcion": "Tickets" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /tasas
Descripción
Devuelve un listado con las tasas disponibles.
Petición
GET /tasas
Request URL
http://<dominio>:<puerto>/tasas'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/tasas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tasas'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tasas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "DINAPI070", "descripcion": "Marcas - Publicacion", "moneda": { "codigo":"EUR", "descripcion":"Euro" }, "oficina": { "codigo":"EUR", "descripcion":"Euro" }, "importe":95.00 } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /tipos/anotaciones
Descripción
Devuelve un listado con los tipos disponibles para anotaciones.
Petición
GET /tipos/anotaciones
Request URL
http://<dominio>:<puerto>/tipos/anotaciones'
cURL
curl --location --request GET 'http://localhost:7143/tipos/anotaciones' \ --header 'accept: application/json' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tipos/anotaciones'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tipos/anotaciones' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "CARTA", "descripcion": "Carta al cliente" }, { "codigo": "1AVISO", "descripcion": "Primer aviso renovacion" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /tipos/contactos
Descripción
Devuelve un listado con los tipos disponibles para contactos.
Petición
GET /tipos/contactos
Request URL
http://<dominio>:<puerto>/tipos/contactos'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/tipos/contactos' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tipos/contactos'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tipos/contactos' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "A", "descripcion": "Agente" }, { "codigo": "B", "descripcion": "Abogado" }, { "codigo": "C", "descripcion": "Cliente" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /tipos/descripciones
Descripción
Devuelve un listado con los tipos disponibles para tipos de descripciones.
Petición
GET /tipos/descripciones
Request URL
http://<dominio>:<puerto>/tipos/descripciones'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/tipos/descripciones' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tipos/descripciones'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tipos/descripciones' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "DT", "descripcion": "Denominación" }, { "codigo": "DE", "descripcion": "Descripción" }, { "codigo": "IN", "descripcion": "Indicación" }, { "codigo": "RE", "descripcion": "Renuncia" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /tipos/domicilios
Descripción
Devuelve un listado con los tipos disponibles para tipos de domicilios.
Petición
GET /tipos/domicilios
Request URL
http://<dominio>:<puerto>/tipos/domicilios'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/tipos/domicilios' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tipos/domicilios'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tipos/domicilios' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "A", "descripcion": "Etiqueta Alternativa" }, { "codigo": "C", "descripcion": "Solo Correspondencia" }, { "codigo": "F", "descripcion": "Solo Facturación" }, { "codigo": "G", "descripcion": "Genérico" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /tipos/estados/facturas
Descripción
Devuelve un listado con los tipos disponibles para los gastos.
Petición
GET /tipos/estados/facturas
Request URL
http://<dominio>:<puerto>/tipos/estados/facturas'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/tipos/estados/facturas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tipos/estados/facturas'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tipos/estados/facturas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "E", "descripcion": "Facturas Emitidas" }, { "codigo": "P", "descripcion": "Pago de Tasa" }, { "codigo": "R", "descripcion": "Facturas Recibidas" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /tipos/gastos
Descripción
Devuelve un listado con los tipos disponibles para los gastos.
Petición
GET /tipos/gastos
Request URL
http://<dominio>:<puerto>/tipos/gastos'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/tipos/gastos' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tipos/gastos'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tipos/gastos' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "00", "descripcion": "Traspasos" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Contactos
[GET] /contactos/{id}
Descripción
Obtiene la información de un contacto, a partir de su identificador.
Petición
GET /contactos/<id>
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del contacto |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/contactos/<id>'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/contactos/<id>' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/contactos/3992'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/contactos/3992' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": { "id": 1, "codigo": "4879", "tipo": { "codigo": "C", "descripcion": "Cliente" }, "referencia": "RF39438948", "estado": { "codigo": "A", "descripcion": "Alta" } } }
404 No se ha encontrado el contacto
{ "statusCode": 404, "message": "No se ha encontrado el contacto", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /contactos
Descripción
Creación de un nuevo contacto. Devuelve el identificador del contacto creado o existente
Petición
POST /contactos
Request URL
http://<dominio>:<puerto>/contactos'
cURL
curl --location --request POST 'http://<dominio>:<puerto>/contactos' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información del contacto que queremos crear |
Sí |
Body (request)
{ "codigo": <codigo>, "tipo": <tipo>, "estado": <estado> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<codigo> |
Código del contacto |
Sí |
Cadena de caracteres |
10 caracteres |
58634 |
<tipo> |
Tipo del contacto. Consultar petición [GET] /tipos/contactos para más información |
Sí |
Cadena de caracteres |
Único carácter |
C |
<estado> |
Estado del contacto. Consultar petición [GET] /estados para más información |
No |
Cadena de caracteres |
Único carácter |
B |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/contactos'
Ejemplo de body
{ "codigo": "58634", "tipo": "C", "estado": "B" }
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/contactos' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "codigo": "58634", "tipo": "C", "estado": "B" }'
Responses validaciones de campos
400 Valor no válido para el campo ‘tipo’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'tipo'. [GET] /tipos/contactos para más información", "data": null }
400 Valor no válido para el campo ‘estado’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'estado'. [GET] /estados para más información", "data": null }
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": 3992 }
409 Ya existe el contacto que está intentando crear
{ "statusCode": 409, "message": "Ya existe el contacto que está intentando crear", "data": 3992 }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /contactos/search
Descripción
Búsqueda de contactos con filtros. Devuelve un listado con los contactos que cumplen los filtros de búsqueda.
Petición
POST /contactos/search
Petición con opciones de paginación
POST /contactos/search?PageSize=<size>&PageNumber=<number>
Request URL
http://<dominio>:<puerto>/contactos/search'
Request URL con opciones de paginación
http://<dominio>:<puerto>/contactos/search?PageSize=<size>&PageNumber=<number>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<size> |
Número de elementos por página |
No |
10 |
<number> |
Número de página |
No |
2 |
cURL
curl --location --request POST 'http://<dominio>:<puerto>/contactos/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación
curl --location --request POST 'http://<dominio>:<puerto>/contactos/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)
{ "domicilios": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ], "titulares": [ { "campo": <campo>,, "valores": <valores>, "codigo": <filtro> } ], "generales": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
<campo> |
Campo por el que se va a aplicar el filtro dentro del bloque al que corresponde. En este caso, sobre contactos, domicilios o titulares |
Sí |
Cadena de caracteres |
<valores> |
Lista de valores |
Sí |
Lista de valores |
<filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/contactos/search'
Ejemplo de request URL con opciones de paginación
http://192.168.293.365:8071/contactos/search?PageSize=10&PageNumber=2'
Ejemplo de body
{ "domicilios": [ { "campo": "apellidos", "valores": [ "García" ], "codigo": "EQ" } ], "titulares": [ { "campo": "apellidos", "valores": [ "S.A." ], "codigo": "EQ" } ], "generales": [ { "campo": "codigo", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "tipo", "valores": [ "C", "A" ], "codigo": "EQ" }, { "campo": "referencia", "valores": [ "RF239348" ], "codigo": "EQ" } ] }
Campo |
Descripción |
Obligatorio | Tipo parámetro |
“apellidos” |
Filtro sobre el campo apellidos de titulares o domicilios (dependiendo del bloque en el que se encuentre) |
No |
Cadena de caracteres |
“codigo” |
Filtro sobre el código de contacto |
No |
Cadena de caracteres |
“tipo” |
Filtro sobre el tipo de contacto |
No |
Cadena de caracteres |
“referencia” |
Filtro sobre la referencia del contacto |
No |
Cadena de caracteres |
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/contactos/search' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "domicilios": [ { "campo": "apellidos", "valores": [ "García" ], "codigo": "EQ" } ], "titulares": [ { "campo": "apellidos", "valores": [ "S.A." ], "codigo": "EQ" } ], "generales": [ { "campo": "codigo", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "tipo", "valores": [ "C", "A" ], "codigo": "EQ" }, { "campo": "referencia", "valores": [ "RF239348" ], "codigo": "EQ" } ] }'
Ejemplo de cURL con opciones de paginación
curl --location --request POST 'http://192.168.293.365:8071/contactos/search?PageSize=10&PageNumber=2' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "domicilios": [ { "campo": "apellidos", "valores": [ "García" ], "codigo": "EQ" } ], "titulares": [ { "campo": "apellidos", "valores": [ "S.A." ], "codigo": "EQ" } ], "generales": [ { "campo": "codigo", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "tipo", "valores": [ "C", "A" ], "codigo": "EQ" }, { "campo": "referencia", "valores": [ "RF239348" ], "codigo": "EQ" } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘codigo’
{ "statusCode": 400, "message": "Filtro 'X' no contemplado. [GET] /filtros para más información", "data": null }
400 Valor no válido para el campo ‘campo’
{ "statusCode": 400, "message": "Campo 'X' no contemplado", "data": null }
400 Lista de valores vacía
{ "statusCode": 400, "message": "Se deben informar valores para el tipo de filtro 'EQ'", "data": null }
400 Lista de ‘valores’ con valor vacío
{ "statusCode": 400, "message": "El valor no puede ser nulo", "data": null }
400 Filtro ‘Between’ con más de dos valores
{ "statusCode": 400, "message": "El filtro 'BT' tiene que tener únicamente dos valores", "data": null }
Headers responses
En esta petición, además de devolver un listado con los contactos que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination
con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
Parámetro |
Descripción |
<total> |
Número total de contactos encontrados en la búsqueda |
<size> |
Número de elementos por página |
<current_page> |
Página actual |
<total_pages> |
Número total de páginas |
<has_next_page> |
Indica si hay página siguiente |
<has_previous_page> |
Indica si hay página anterior |
<next_url> |
URL de la siguiente página |
<previous_url> |
URL de la página anterior |
Ejemplo headers responses
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244, "HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 1, "codigo": "4879", "tipo": { "codigo": "C", "descripcion": "Cliente" }, "referencia": "RF39438948", "estado": { "codigo": "B", "descripcion": "Baja" }, "domicilios": [ { "id": 4, "nombre": "María", "apellidos": "García", "domicilio": "Calle Los Arenales", "poblacion": "Valencia", "tipo": { "codigo": "G", "descripcion": "Genérico" } } ], "titulares": [ { "id": 1, "nombre": null, "apellidos": "Empresa S.A." }, { "id": 2, "nombre": "Juan", "apellidos": "Gómez" } ] }, { "id": 2, "codigo": "68798", "tipo": { "codigo": "A", "descripcion": "Agente" }, "referencia": "DG29849348", "estado": { "codigo": "A", "descripcion": "Alta" }, "domicilios": [], "titulares": [] } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /contactos/{id}/domicilios
Descripción
Obtiene los domicilios de un contacto.
Petición
GET /contactos/<id>/domicilios
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del contacto |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/contactos/<id>/domicilios'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/contactos/<id>/domicilios' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/contactos/3992/domicilios'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/contactos/3992/domicilios' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 1, "nombre": "Natalia", "apellidos": "García", "domicilio": "Wayna Aero", "poblacion": "Valencia", "tipo": { "codigo": "A", "descripcion": "Etiqueta Alternativa" } }, { "id": 2, "nombre": "María", "apellidos": "Fernandez", "domicilio": "Yedra Centro", "poblacion": "Madrid", "tipo": { "codigo": "G", "descripcion": "Genérico" } } ] }
404 No se ha encontrado el contacto
{ "statusCode": 404, "message": "No se ha encontrado el contacto", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /contactos/{id}/domicilios
Descripción
Creación de un nuevo domicilio asociado a un contacto. Devuelve el identificador del domicilio creado o existente.
Petición
POST /contactos/<id>/domicilios
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del contacto |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/contactos/<id>/domicilios'
cURL
curl --location --request POST 'http://<dominio>:<puerto>/contactos/<id>/domicilios' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información del domicilio que queremos crear |
Sí |
Body (request)
{ "apellidos": <apellidos>, "tipo": <tipo> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<apellidos> |
Apellidos |
Sí |
Cadena de caracteres |
100 caracteres |
García Fernández |
<tipo> |
Tipo del domicilio. Consultar petición [GET] /tipos/domicilios para más información |
Sí |
Cadena de caracteres |
Único carácter |
A |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/contactos/<id>/domicilios'
Ejemplo de body
{ "apellidos": "García Fernández", "tipo": "A" }
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/contactos/6450/domicilios' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "apellidos": "García Fernández", "tipo": "A" }'
Responses validaciones de campos
400 Valor no válido para el campo ‘tipo’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'tipo'. [GET] /tipos/domicilios para más información", "data": null }
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": 3992 }
404 No se ha encontrado el contacto
{ "statusCode": 404, "message": "No se ha encontrado el contacto", "data": null }
409 Ya existe el domicilio que está intentando crear
{ "statusCode": 409, "message": "Ya existe el domicilio que está intentando crear", "data": 3992 }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[PUT] /contactos/{id}/domicilios/{idDomicilio}
Descripción
Modificación de un domicilio asociado a un contacto.
Petición
PUT /contactos/<id>/domicilios/<idDomicilio>
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del contacto |
Sí |
6450 |
<idDomicilio> |
Identificador del domicilio a modificar |
Sí |
450 |
Request URL
http://<dominio>:<puerto>/contactos/<id>/domicilios/<idDomicilio>'
cURL
curl --location --request PUT 'http://<dominio>:<puerto>/contactos/<id>/domicilios/<idDomicilio>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información del domicilio que queremos actualizar |
Sí |
Body (request)
{ "apellidos": <apellidos> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<apellidos> |
Apellidos |
Sí |
Cadena de caracteres |
100 caracteres |
García Fernández |
¡Importante!
Al ser una petición PUT, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/contactos/<id>/domicilios/<idDomicilio>'
Ejemplo de body
{ "apellidos": "García Fernández" }
Ejemplo de cURL
curl --location --request PUT 'http://192.168.293.365:8071/contactos/6450/domicilios/450' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "apellidos": "García Fernández" }'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": null }
404 No se ha encontrado el contacto
{ "statusCode": 404, "message": "No se ha encontrado el contacto", "data": null }
404 No se ha encontrado el domicilio
{ "statusCode": 404, "message": "No se ha encontrado el domicilio", "data": null }
409 El domicilio existe pero no pertenece a ese contacto
{ "statusCode": 409, "message": "El domicilio existe pero no pertenece a ese contacto", "data": null }
409 Ya existe un domicilio con esas características para ese contacto
{ "statusCode": 409, "message": "Ya existe un domicilio con esas características para ese contacto", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /contactos/{id}/titulares
Descripción
Obtiene los titulares de un cliente.
Petición
GET /contactos/<id>/titulares
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del contacto de tipo cliente |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/contactos/<id>/titulares'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/contactos/<id>/titulares' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/contactos/3992/titulares'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/contactos/3992/titulares' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 1, "nombre": "Natalia", "apellidos": "García" }, { "id": 2, "nombre": null, "apellidos": "LU S.A." } ] }
404 No se ha encontrado el contacto
{ "statusCode": 404, "message": "No se ha encontrado el contacto", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /contactos/{id}/titulares
Descripción
Creación de un titular a un cliente en concreto. Devuelve el identificador del titular creado o existente.
Petición
POST /contactos/<id>/titulares
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del contacto de tipo cliente |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/contactos/<id>/titulares'
cURL
curl --location --request POST 'http://<dominio>:<puerto>/contactos/<id>/titulares' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información del titular que queremos crear |
Sí |
Body (request)
{ "nombre": <nombre>, "apellidos": <apellidos> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<nombre> |
Nombre del titular |
No |
Cadena de caracteres |
50 caracteres |
Juan |
<apellidos> |
Apellidos del titular |
Sí |
Cadena de caracteres |
250 caracteres |
García Fernández |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/contactos/<id>/titulares'
Ejemplo de body
{ "nombre": "Juan", "apellidos": "García Fernández" }
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/contactos/6450/titulares' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "nombre": "Juan", "apellidos": "García Fernández" }'
Responses validaciones de campos
400 El contacto no es un cliente
{ "statusCode": 400, "message": "El contacto 'X' no es un cliente", "data": null }
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": 3992 }
404 No se ha encontrado el contacto
{ "statusCode": 404, "message": "No se ha encontrado el contacto", "data": null }
409 Ya existe la relación que está intentando crear
{ "statusCode": 409, "message": "Ya existe el titular para el contacto 'X'", "data": 3992 }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Expedientes
[GET] /expedientes/{id}
Descripción
Obtiene la información de un expediente a partir de su identificador.
Petición
GET /expedientes/<id>
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del expediente |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/expedientes/<id>'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/expedientes/<id>' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/3992'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/expedientes/3992' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": { "id": 1, "estado": { "codigo": "B", "descripcion": "Baja" }, "modalidad": { "codigo": "M", "descripcion": "Marca Nacional" }, "numero": "4123111", "pais": { "codigo": "ES", "descripcion": "España" }, "bis": "4", "fechaVencimiento": "20/06/2025", "referencia": null, "descripciones": [ { "id": 27297, "tipo": { "codigo": "DT", "descripcion": "Denominación" }, "descripcion": "Culture", "idioma": { "codigo": "es", "descripcion": "Español" } } ] } }
404 No se ha encontrado el expediente
{ "statusCode": 404, "message": "No se ha encontrado el expediente", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /expedientes/{id}/actos
Descripción
Obtiene los actos de un expediente.
Petición
GET /expedientes/<id>/actos
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del expediente |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/expedientes/<id>/actos'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/expedientes/<id>/actos' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/3992/actos'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/expedientes/3992/actos' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 1, "fechaOrdenContacto": "01/01/2020", "fechaComunicadoContacto": "12/12/2021", "fechaEnvioDocumentacionOrganismo": "05/11/2022", "fechaRecepcionDocumentacionOrganismo": "31/12/2019", "fechaComunicadoContacto2": "03/03/2021", "idContacto": 1234, "personaAnterior": "Persona contacto", "personaSiguiente": "Persona contacto", "fechaAnulacion": "02/12/2023", "idExpediente": 6420, "idBoletin": 435, "acto": { "codigo": "520", "descripcion": "Anotación" }, "fechaAlta": "03/04/2021", "fechaActo": "01/12/2021", "fechaPublicacion": "14/12/2021", "referencia": "Referencia acto", "referencia2": null, "numeroActo": "N2345", "numeroPublicacion": "NP23433434", "observaciones": "Observaciones del acto" }, { "id": 2, "fechaOrdenContacto": "01/01/2020", "fechaComunicadoContacto": "12/12/2021", "fechaEnvioDocumentacionOrganismo": "05/11/2022", "fechaRecepcionDocumentacionOrganismo": "31/12/2019", "fechaComunicadoContacto2": "03/03/2021", "idContacto": 45343, "personaAnterior": "Persona contacto", "personaSiguiente": "Persona contacto", "fechaAnulacion": "02/12/2023", "idExpediente": 5487, "idBoletin": 987, "acto": { "codigo": "050", "descripcion": "Solicitud de registro" }, "fechaAlta": "14/05/2021", "fechaActo": "10/12/2021", "fechaPublicacion": "10/12/2021", "referencia": "Referencia 1", "referencia2": "Referencia 2", "numeroActo": "RF34343", "numeroPublicacion": "N234453", "observaciones": "Observaciones del acto" } ] }
404 No se ha encontrado el expediente
{ "statusCode": 404, "message": "No se ha encontrado el expediente", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /expedientes/{id}/titulares
Descripción
Obtiene los titulares de un expediente.
Petición
GET /expedientes/<id>/titulares
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del expediente |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/expedientes/<id>/titulares'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/expedientes/<id>/titulares' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/3992/titulares'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/expedientes/3992/titulares' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
404 No se ha encontrado el expediente
{ "statusCode": 404, "message": "No se ha encontrado el expediente", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[PUT] /expedientes/{id}
Descripción
Modificación de un expediente.
Petición
PUT /expedientes/<id>
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del expediente |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/expedientes/<id>'
cURL
curl --location --request PUT 'http://<dominio>:<puerto>/expedientes/<id>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información del expediente que queremos modificar |
Sí |
Body (request)
{ "estado": <estado>, "descripciones": [ { "tipo": <tipo_descripcion>, "descripcion": <descripcion>, "idioma": <idioma_descripcion> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<estado> |
Estado del expediente. Consultar petición [GET] /estados para más información |
No |
Cadena de caracteres |
Único carácter |
B |
“descripciones” |
Bloque opcional para las denominaciones |
No |
|||
<tipo_descripcion> |
Tipo de descripción. Consultar petición [GET] /tipos/descripciones para más información |
Sí |
Cadena de caracteres |
2 caracteres |
DE |
<descripcion> |
Descripción |
No |
Cadena de caracteres. Si se informa a vacío (““), se eliminará la descripción. |
Culture |
|
<idioma_descripcion> |
Idioma de la descripción. Consultar petición [GET] /idiomas/descripciones para más información |
Sí |
Cadena de caracteres |
2 caracteres |
es |
¡Importante!
Si se hace referencia a un descripción existente con valor ““ en el campo <descripcion> se realizará un borrado de dicha descripción. En caso contrario, se actualizará.
Si no existe, se creará como nueva descripción
¡Importante!
Al ser una petición PUT, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/6450'
Ejemplo de body
{ "estado": "B", "descripciones": [ { "tipo": "DE", "descripcion": "Culture", "idioma": "es" } ] }
Ejemplo de cURL
curl --location --request PUT 'http://192.168.293.365:8071/expedientes/6450' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "estado": "B", "descripciones": [ { "tipo": "DE", "descripcion": "Culture", "idioma": "es" } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘estado’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'estado'. [GET] /estados para más información", "data": null }
Responses control descripciones
400 Valor no válido para el campo ‘idioma’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'idioma'. [GET] /idiomas/descripciones para más información", "data": null }
400 Valor no válido para el campo ‘tipo’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'tipo'. [GET] /tipos/descripciones para más información", "data": null }
400 Claves duplicadas en la lista de descripciones
{ "statusCode": 400, "message": "Descripciones duplicadas. Clave duplicada { Elemento = { Tipo = DE, Idioma = es }, Ocurrencias = 2 }", "data": null }
400 Incluir varias denominaciones para modalidades distintas de patentes
{ "statusCode": 400, "message": "Este tipo de modalidad no permite guardar varias denominaciones", "data": null }
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": null }
404 No se ha encontrado el expediente
{ "statusCode": 404, "message": "No se ha encontrado el expediente", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /expedientes
Descripción
Creación de un nuevo expediente. Devuelve el identificador del expediente creado o existente.
Petición
POST /expedientes
Request URL
http://<dominio>:<puerto>/expedientes'
cURL
curl --location --request POST 'http://<dominio>:<puerto>/expedientes' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información del expediente que queremos crear |
Sí |
Body (request)
{ "idContacto": <idContacto>, "estado": <estado>, "modalidad": <modalidad>, "numero": <numero>, "pais": <pais>, "bis": <bis>, "referencia": <referencia>, "descripciones": [ { "tipo": <tipo_descripcion>, "descripcion": <descripcion>, "idioma": <idioma_descripcion> } ], "titulares": [ { "id": <titular> } ] ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<idContacto> |
Identificador del contacto al que pertenece el expediente |
Sí |
Numérico |
6450 |
|
<estado> |
Estado del expediente. Consultar petición [GET] /estados para más información |
No |
Cadena de caracteres |
Único carácter |
B |
<modalidad> |
Modalidad del expediente. Consultar petición [GET] /modalidades para más información |
No |
Cadena de caracteres |
10 caracteres |
M |
<numero> |
Número del expediente |
Sí |
Cadena de caracteres |
30 caracteres |
578549 |
<pais> |
País del expediente. Consultar petición [GET] /países para más información |
No |
Cadena de caracteres |
2 caracteres |
ES |
<bis> |
Bis del expediente |
No |
Cadena de caracteres |
3 caracteres |
4 |
<referencia> |
Referencia del expediente |
No |
Cadena de caracteres |
100 caracteres |
RF938439845 |
“descripciones” |
Bloque opcional para las denominaciones |
No |
|||
<tipo_descripcion> |
Tipo de descripción. Consultar petición [GET] /tipos/descripciones para más información |
Sí |
Cadena de caracteres |
2 caracteres |
DE |
<descripcion> |
Descripción |
No |
Cadena de caracteres |
Culture |
|
<idioma_descripcion> |
Idioma de la descripción. Consultar petición [GET] /idiomas/descripciones para más información |
Sí |
Cadena de caracteres |
2 caracteres |
es |
“titulares” |
Bloque opcional para introducir un listado de los titulares del expediente |
No |
|||
<titular> |
Identificador del titular |
No |
Numérico |
735 |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/expedientes'
Ejemplo de body
{ "idContacto": 735, "numero": "578549", "modalidad": "M", "pais": "ES", "bis": "4", "referencia": "RF938439845", "estado": "B", "descripciones": [ { "tipo": "DE", "descripcion": "Culture", "idioma": "es" } ], "titulares": [ { "id": 735 }, { "id": 789 }, { "id": 898 } ] }
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/expedientes' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "idContacto": 735, "numero": "578549", "modalidad": "M", "pais": "ES", "bis": "4", "referencia": "RF938439845", "estado": "B", "descripciones": [ { "tipo": "DE", "descripcion": "Culture", "idioma": "es" } ], "titulares": [ { "id": 735 }, { "id": 789 }, { "id": 898 } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘modalidad’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'modalidad'. [GET] /modalidades para más información", "data": null }
400 Valor no válido para el campo ‘pais’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'pais'. [GET] /paises para más información", "data": null }
400 Valor no válido para el campo ‘estado’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'estado'. [GET] /estados para más información", "data": null }
Responses control descripciones
400 Valor no válido para el campo ‘idioma’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'idioma'. [GET] /idiomas/descripciones para más información", "data": null }
400 Valor no válido para el campo ‘tipo’
{ "statusCode": 400, "message": "Valor 'X' no válido para el campo 'tipo'. [GET] /tipos/descripciones para más información", "data": null }
400 Claves duplicadas en la lista de descripciones
{ "statusCode": 400, "message": "Descripciones duplicadas. Clave duplicada { Elemento = { Tipo = DE, Idioma = es }, Ocurrencias = 2 }", "data": null }
400 Incluir varias denominaciones para modalidades distintas de patentes
{ "statusCode": 400, "message": "Este tipo de modalidad no permite guardar varias denominaciones", "data": null }
Responses control titulares
400 Titular no existente
{ "statusCode": 400, "message": "No existe el titular 'X'", "data": null }
400 Asociar un titular de un cliente diferente al del expediente
{ "statusCode": 400, "message": "No se puede asociar un titular de un cliente diferente al del expediente", "data": null }
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": 3992 }
404 No se ha encontrado el contacto
{ "statusCode": 404, "message": "No se ha encontrado el contacto", "data": null }
409 Ya existe el expediente que está intentando crear
{ "statusCode": 409, "message": "Ya existe el expediente que está intentando crear", "data": 3992 }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /expedientes/search
Descripción
Búsqueda de expedientes con filtros. Devuelve un listado con los expedientes que cumplen los filtros de búsqueda.
Petición
POST /expedientes/search
Petición con opciones de paginación
POST /expedientes/search?PageSize=<size>&PageNumber=<number>
Request URL
http://<dominio>:<puerto>/expedientes/search'
Request URL con opciones de paginación
http://<dominio>:<puerto>/expedientes/search?PageSize=<size>&PageNumber=<number>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<size> |
Número de elementos por página |
No |
10 |
<number> |
Número de página |
No |
2 |
cURL
curl --location --request POST 'http://<dominio>:<puerto>/expedientes/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación
curl --location --request POST 'http://<dominio>:<puerto>/expedientes/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)
{ "titulares": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ], "generales": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
<campo> |
Campo por el que se va a aplicar el filtro, dentro del bloque al que corresponde. En este caso, sobre expedientes o titulares de los expedientes |
Sí |
Cadena de caracteres |
<valores> |
Lista de valores |
Sí |
Lista de valores |
<filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/search'
Ejemplo de request URL con opciones de paginación
http://192.168.293.365:8071/expedientes/search?PageSize=10&PageNumber=2'
Ejemplo de body
{ "titulares": [ { "campo": "apellidos", "valores": [ "S.A." ], "codigo": "EQ" } ], "generales": [ { "campo": "modalidad", "valores": [ "M", "P" ], "codigo": "EQ" }, { "campo": "numero", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "bis", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "referencia", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "pais", "valores": [ "CL", "BR", "DO" ], "codigo": "EQ" } ] }
Campo |
Descripción |
Obligatorio | Tipo parámetro |
“modalidad” |
Filtro sobre la modalidad del expediente |
No |
Cadena de caracteres |
“numero” |
Filtro sobre el número del expediente |
No |
Cadena de caracteres |
“bis” |
Filtro sobre bis del expediente |
No |
Cadena de caracteres |
“referencia” |
Filtro sobre la referencia del expediente |
No |
Cadena de caracteres |
“pais” |
Filtro sobre el país del expediente |
No |
Cadena de caracteres |
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/expedientes/search' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "titulares": [ { "campo": "apellidos", "valores": [ "S.A." ], "codigo": "EQ" } ], "generales": [ { "campo": "modalidad", "valores": [ "M", "P" ], "codigo": "EQ" }, { "campo": "numero", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "bis", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "referencia", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "pais", "valores": [ "CL", "BR", "DO" ], "codigo": "EQ" } ] }'
Ejemplo de cURL con opciones de paginación
curl --location --request POST 'http://192.168.293.365:8071/expedientes/search?PageSize=10&PageNumber=2' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "titulares": [ { "campo": "apellidos", "valores": [ "S.A." ], "codigo": "EQ" } ], "generales": [ { "campo": "modalidad", "valores": [ "M", "P" ], "codigo": "EQ" }, { "campo": "numero", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "bis", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "referencia", "valores": [ "12345" ], "codigo": "EQ" }, { "campo": "pais", "valores": [ "CL", "BR", "DO" ], "codigo": "EQ" } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘codigo’
{ "statusCode": 400, "message": "Filtro 'X' no contemplado. [GET] /filtros para más información", "data": null }
400 Valor no válido para el campo ‘campo’
{ "statusCode": 400, "message": "Campo 'X' no contemplado", "data": null }
400 Lista de valores vacía
{ "statusCode": 400, "message": "Se deben informar valores para el tipo de filtro 'EQ'", "data": null }
400 Lista de ‘valores’ con valor vacío
{ "statusCode": 400, "message": "El valor no puede ser nulo", "data": null }
400 Filtro ‘Between’ con más de dos valores
{ "statusCode": 400, "message": "El filtro 'BT' tiene que tener únicamente dos valores", "data": null }
Headers responses
En esta petición, además de devolver un listado con los contactos que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination
con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
Parámetro |
Descripción |
<total> |
Número total de expedientes encontrados en la búsqueda |
<size> |
Número de elementos por página |
<current_page> |
Página actual |
<total_pages> |
Número total de páginas |
<has_next_page> |
Indica si hay página siguiente |
<has_previous_page> |
Indica si hay página anterior |
<next_url> |
URL de la siguiente página |
<previous_url> |
URL de la página anterior |
Ejemplo headers responses
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244, "HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 1, "estado": { "codigo": "A", "descripcion": "Alta" }, "modalidad": { "codigo": "M", "descripcion": "Marca Nacional" }, "numero": "4123111", "pais": { "codigo": "ES", "descripcion": "España" }, "bis": null, "fechaVencimiento": "20/06/2025", "referencia": null, "descripciones": [ { "id": 1, "tipo": { "codigo": "DT", "descripcion": "Denominación" }, "descripcion": "Culture", "idioma": { "codigo": "es", "descripcion": "Español" } } ], "titulares": [ { "id": 1, "nombre": null, "apellidos": "Empresa S.A." }, { "id": 2, "nombre": "Juan", "apellidos": "Gómez" } ] }, { "id": 2, "estado": { "codigo": "B", "descripcion": "Baja" }, "modalidad": { "codigo": "H", "descripcion": "Marca Internacional" }, "numero": "345645", "pais": { "codigo": "CL", "descripcion": "Chile" }, "bis": null, "fechaVencimiento": "24/12/2024", "referencia": "TM870EU01", "descripciones": [ { "id": 1, "tipo": { "codigo": "DE", "descripcion": "Descripción" }, "descripcion": "Culture", "idioma": { "codigo": "es", "descripcion": "Español" } } ], "titulares": [] } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /expedientes/{id}/titulares
Descripción
Asignación de un titular a un expediente.
Petición
POST /expedientes/<id>/titulares
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del expediente |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/expedientes/<id>/titulares'
cURL
curl --location --request POST 'http://<dominio>:<puerto>/expedientes/<id>/titulares' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información del titular que queremos asignar |
Sí |
Body (request)
{ "id": <titular> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<titular> |
Identificador del titular |
Sí |
Numérico |
735 |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/<id>/titulares'
Ejemplo de body
{ "id": 735 }
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/expedientes/6450/titulares' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "id": 735 }'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": null }
404 No se ha encontrado el titular
{ "statusCode": 404, "message": "No se ha encontrado el titular", "data": null }
404 No se ha encontrado el expediente
{ "statusCode": 404, "message": "No se ha encontrado el expediente", "data": null }
409 El titular existe pero no pertenece al cliente del expediente
{ "statusCode": 409, "message": "El titular existe pero no pertenece al cliente del expediente", "data": null }
409 Ya existe la relación que está intentando crear
{ "statusCode": 409, "message": "Ya existe el titular para el expediente 'X'", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /expedientes/actos/search
Descripción
Búsqueda de actos con filtros. Devuelve un listado con los actos que cumplen los filtros de búsqueda.
Petición
POST /expedientes/actos/search
Petición con opciones de paginación
POST /expedientes/actos/search?PageSize=<size>&PageNumber=<number>
Request URL
http://<dominio>:<puerto>/expedientes/actos/search'
Request URL con opciones de paginación
http://<dominio>:<puerto>/expedientes/actos/search?PageSize=<size>&PageNumber=<number>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<size> |
Número de elementos por página |
No |
10 |
<number> |
Número de página |
No |
2 |
cURL
curl --location --request POST 'http://<dominio>:<puerto>/expedientes/actos/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación
curl --location --request POST 'http://<dominio>:<puerto>/expedientes/actos/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)
{ "generales": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
<campo> |
Campo por el que se va a aplicar el filtro dentro del bloque al que corresponde. En este caso, sobre actos |
Sí |
Cadena de caracteres |
<valores> |
Lista de valores |
Sí |
Lista de valores |
<filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/actos/search'
Ejemplo de request URL con opciones de paginación
http://192.168.293.365:8071/expedientes/actos/search?PageSize=10&PageNumber=2'
Ejemplo de body
{ "generales": [ { "campo": "fechaActo", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaActo", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "fechaPublicacion", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaPublicacion", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "fechaAlta", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaAlta", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "idBoletin", "valores": [ "345" ], "codigo": "EQ" } ] }
Campo |
Descripción |
Obligatorio | Tipo parámetro |
“fechaActo” |
Filtro sobre la fecha del acto |
No |
Cadena de caracteres. Formato: día/mes/año |
“fechaPublicacion” |
Filtro sobre la fecha de publicación del acto |
No |
Cadena de caracteres. Formato: día/mes/año |
“fechaAlta” |
Filtro sobre la fecha de alta del boletín |
No |
Cadena de caracteres. Formato: día/mes/año |
“idBoletin” |
Filtro sobre el identificador del boletín |
No |
Cadena de caracteres |
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/expedientes/actos/search' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "generales": [ { "campo": "fechaActo", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaActo", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "fechaPublicacion", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaPublicacion", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "fechaAlta", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaAlta", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "idBoletin", "valores": [ "345" ], "codigo": "EQ" } ] }'
Ejemplo de cURL con opciones de paginación
curl --location --request POST 'http://192.168.293.365:8071/expedientes/actos/search?PageSize=10&PageNumber=2' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "generales": [ { "campo": "fechaActo", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaActo", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "fechaPublicacion", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaPublicacion", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "fechaAlta", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "fechaAlta", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "idBoletin", "valores": [ "345" ], "codigo": "EQ" } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘codigo’
{ "statusCode": 400, "message": "Filtro 'X' no contemplado. [GET] /filtros para más información", "data": null }
400 Valor no válido para el campo ‘campo’
{ "statusCode": 400, "message": "Campo 'X' no contemplado", "data": null }
400 Lista de valores vacía
{ "statusCode": 400, "message": "Se deben informar valores para el tipo de filtro 'EQ'", "data": null }
400 Lista de ‘valores’ con valor vacío
{ "statusCode": 400, "message": "El valor no puede ser nulo", "data": null }
400 Filtro ‘Between’ con más de dos valores
{ "statusCode": 400, "message": "El filtro 'BT' tiene que tener únicamente dos valores", "data": null }
Headers responses
En esta petición, además de devolver un listado con los contactos que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination
con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
Parámetro |
Descripción |
<total> |
Número total de actos encontrados en la búsqueda |
<size> |
Número de elementos por página |
<current_page> |
Página actual |
<total_pages> |
Número total de páginas |
<has_next_page> |
Indica si hay página siguiente |
<has_previous_page> |
Indica si hay página anterior |
<next_url> |
URL de la siguiente página |
<previous_url> |
URL de la página anterior |
Ejemplo headers responses
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244, "HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 1, "idExpediente": 6420, "acto": { "codigo": "520", "descripcion": "Anotación" }, "fechaActo": "01/12/2021", "fechaPublicacion": null, "referencia": null, "numero_acto": null, "fechaAnulacion": null }, { "id": 2, "idExpediente": 5487, "acto": { "codigo": "050", "descripcion": "Solicitud de registro" }, "idBoletin": 345, "fechaAlta": "03/04/2020", "fechaActo": "10/12/2021", "fechaPublicacion": null, "referencia": null, "numero_acto": null, "fechaAnulacion": null } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /expedientes/tareas/search
Descripción
Búsqueda de tareas sobre los expedientes con filtros. Devuelve un listado con las tareas que cumplan los filtros de búsqueda.
Petición
POST /expedientes/tareas/search
Petición con opciones de paginación
POST /expedientes/tareas/search?PageSize=<size>&PageNumber=<number>
Request URL
http://<dominio>:<puerto>/expedientes/tareas/search'
Request URL con opciones de paginación
http://<dominio>:<puerto>/expedientes/tareas/search?PageSize=<size>&PageNumber=<number>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<size> |
Número de elementos por página |
No |
10 |
<number> |
Número de página |
No |
2 |
cURL
curl --location --request POST 'http://<dominio>:<puerto>/expedientes/tareas/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación
curl --location --request POST 'http://<dominio>:<puerto>/expedientes/tareas/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)
{ "generales": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
<campo> |
Campo por el que se va a aplicar el filtro dentro del bloque al que corresponde. En este caso, sobre tareas de los expedientes |
Sí |
Cadena de caracteres |
<valores> |
Lista de valores |
Sí |
Lista de valores |
<filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/expedientes/tareas/search'
Ejemplo de request URL con opciones de paginación
http://192.168.293.365:8071/expedientes/tareas/search?PageSize=10&PageNumber=2'
Ejemplo de body
{ "generales": [ { "campo": "codigo", "valores": [ "VENCF1" ], "codigo": "EQ" }, { "campo": "fechaVencimiento", "valores": [ "01/01/2022", "31/01/2022" ], "codigo": "BT" }, { "campo": "estado", "valores": [ "P" ], "codigo": "EQ" } ] }
Campo |
Descripción |
Obligatorio | Tipo parámetro |
“fechaVencimiento” |
Filtro sobre la fecha de vencimiento de la tarea |
No |
Cadena de caracteres. Formato: día/mes/año |
“estado” |
Filtro sobre el estado de la tarea |
No |
Un carácter |
“codigo” |
Filtro sobre el código de la tarea |
No |
Cadena de caracteres |
Ejemplo de cURL
Ejemplo de cURL con opciones de paginación
Responses validaciones de campos
400 Valor no válido para el campo ‘codigo’
{ "statusCode": 400, "message": "Filtro 'X' no contemplado. [GET] /filtros para más información", "data": null }
400 Valor no válido para el campo ‘campo’
{ "statusCode": 400, "message": "Campo 'X' no contemplado", "data": null }
400 Lista de valores vacía
{ "statusCode": 400, "message": "Se deben informar valores para el tipo de filtro 'EQ'", "data": null }
400 Lista de ‘valores’ con valor vacío
{ "statusCode": 400, "message": "El valor no puede ser nulo", "data": null }
400 Filtro ‘Between’ con más de dos valores
{ "statusCode": 400, "message": "El filtro 'BT' tiene que tener únicamente dos valores", "data": null }
Headers responses
En esta petición, además de devolver un listado con los contactos que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination
con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
Parámetro |
Descripción |
<total> |
Número total de actos encontrados en la búsqueda |
<size> |
Número de elementos por página |
<current_page> |
Página actual |
<total_pages> |
Número total de páginas |
<has_next_page> |
Indica si hay página siguiente |
<has_previous_page> |
Indica si hay página anterior |
<next_url> |
URL de la siguiente página |
<previous_url> |
URL de la página anterior |
Ejemplo headers responses
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244, "HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses
200 Ha ido correctamente
{
"statusCode": 200,
"message": "Petición finalizada correctamente",
"data": [
{
"id": 1,
"idExpediente": 5487,
"tarea": {
"codigo": "BREXIT",
"descripcion": "Brexit"
},
"estado": {
"codigo": "A",
"descripcion": "Aplazada"
},
"fechaVencimiento": "15/04/2021",
"fechaInicio": "04/03/2021",
"fechaFin": null,
"descripcionAlternativa": "Descripcion",
"observaciones": "Observaciones de la tarea",
"supervisor": {
"codigo": "ANI",
"nombre": "Ana",
"apellidos": "Lopez"
},
"responsable": {
"codigo": "LAU",
"nombre": "Laura",
"apellidos": "Rodriguez"
},
"responsableFin": null
},
{
"id": 2,
"idExpediente": 6420,
"tarea": {
"codigo": "ARMEDIM",
"descripcion": "Mediación - M"
},
"estado": {
"codigo": "C",
"descripcion": "Completada"
},
"fechaVencimiento": "03/04/2021",
"fechaInicio": "01/12/2021",
"fechaFin": "31/12/2021",
"descripcionAlternativa": null,
"observaciones": null,
"supervisor": null,
"responsable": null,
"responsableFin": {
"codigo": "ANI",
"nombre": "Ana",
"apellidos": "Lopez"
}
}
]
}
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Modificaciones
[POST] /modificaciones/search
Descripción
Búsqueda de modificaciones con filtros. Devuelve un listado con las modificaciones de facturas que cumplen los filtros de búsqueda.
Petición
POST /modficaciones/search
Petición con opciones de paginación
POST /modficaciones/search?PageSize=<size>&PageNumber=<number>
Request URL
http://<dominio>:<puerto>/modificaciones/search'
Request URL con opciones de paginación
http://<dominio>:<puerto>/modificaciones/search?PageSize=<size>&PageNumber=<number>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<size> |
Número de elementos por página |
No |
10 |
<number> |
Número de página |
No |
2 |
cURL
curl --location --request POST 'http://<dominio>:<puerto>/modificaciones/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación
curl --location --request POST 'http://<dominio>:<puerto>/modificaciones/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)
{ "generales": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
<campo> |
Campo por el que se va a aplicar el filtro dentro del bloque al que corresponde. En este caso, sobre actos |
Sí |
Cadena de caracteres |
<valores> |
Lista de valores |
Sí |
Lista de valores |
<filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/modificaciones/search'
Ejemplo de request URL con opciones de paginación
http://192.168.293.365:8071/modificaciones/search?PageSize=10&PageNumber=2'
Ejemplo de body
{ "generales": [ { "campo": "fecha", "valores": [ "11/02/2023" ], "codigo": "EQ" }, { "campo": "codigoUsuario", "valores": [ "Admin" ], "codigo": "EQ" }, { "campo": "tipoModificacion", "valores": [ "1" ], "codigo": "EQ" }, { "campo": "empresa", "valores": [ "E1" ], "codigo": "EQ" }, { "campo": "numeroPresupuesto", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroOdc", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroFactura", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroOrden", "valores": [ "C", "A" ], "codigo": "EQ" } ] }
Campo |
Descripción |
Obligatorio | Tipo parámetro |
“fecha” |
Filtro sobre el la fecha de la modificacion |
No |
Cadena de caracteres. |
“codigoUsuario” |
Filtro sobre el codigo de usuario |
No |
Cadena de caracteres. |
“tipoModificacion” |
Filtro sobre el tipo de modificacion |
No |
Cadena de caracteres. |
“empresa” |
Filtro sobre el codigo de empresa |
No |
Cadena de caracteres. |
“numeroPresupuesto” |
Filtro sobre el numero de presupuesto |
No |
Cadena de caracteres. |
“numeroOdc” |
Filtro sobre el numero de Odc |
No |
Cadena de caracteres. |
“numeroFactura” |
Filtro sobre el numero de la factura |
No |
Cadena de caracteres. |
“numeroOrden” |
Filtro sobre el numero de el orden |
No |
Cadena de caracteres. |
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/modificaciones/search' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ { "generales": [ "campo": "fecha", "valores": [ "11/02/2023" ], "codigo": "EQ" }, { "campo": "codigoUsuario", "valores": [ "Admin" ], "codigo": "EQ" }, { "campo": "tipoModificacion", "valores": [ "1" ], "codigo": "EQ" }, { "campo": "empresa", "valores": [ "E1" ], "codigo": "EQ" }, { "campo": "numeroPresupuesto", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroOdc", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroFactura", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroOrden", "valores": [ "C", "A" ], "codigo": "EQ" } ] }'
Ejemplo de cURL con opciones de paginación
curl --location --request POST 'http://192.168.293.365:8071/modificaciones/search?PageSize=10&PageNumber=2' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "generales": [ { "campo": "fecha", "valores": [ "11/02/2023" ], "codigo": "EQ" }, { "campo": "codigoUsuario", "valores": [ "Admin" ], "codigo": "EQ" }, { "campo": "tipoModificacion", "valores": [ "1" ], "codigo": "EQ" }, { "campo": "empresa", "valores": [ "E1" ], "codigo": "EQ" }, { "campo": "numeroPresupuesto", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroOdc", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroFactura", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "numeroOrden", "valores": [ "C", "A" ], "codigo": "EQ" } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘codigo’
{ "statusCode": 400, "message": "Filtro 'X' no contemplado. [GET] /filtros para más información", "data": null }
400 Valor no válido para el campo ‘campo’
{ "statusCode": 400, "message": "Campo 'X' no contemplado", "data": null }
400 Lista de valores vacía
{ "statusCode": 400, "message": "Se deben informar valores para el tipo de filtro 'EQ'", "data": null }
400 Lista de ‘valores’ con valor vacío
{ "statusCode": 400, "message": "El valor no puede ser nulo", "data": null }
400 Filtro ‘Between’ con más de dos valores
{ "statusCode": 400, "message": "El filtro 'BT' tiene que tener únicamente dos valores", "data": null }
Headers responses
En esta petición, además de devolver un listado con las facturas emitidas que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination
con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
Parámetro |
Descripción |
<total> |
Número total de facturas emitidas encontradas en la búsqueda |
<size> |
Número de elementos por página |
<current_page> |
Página actual |
<total_pages> |
Número total de páginas |
<has_next_page> |
Indica si hay página siguiente |
<has_previous_page> |
Indica si hay página anterior |
<next_url> |
URL de la siguiente página |
<previous_url> |
URL de la página anterior |
Ejemplo headers responses
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244, "HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codUsuario": "Admin", "tipoModificacion": { "codigo": "1", "descripcion": "Alta" }, "fecha": "25/01/2024 0:00:00", "empresa": { "codigo": "E1", "descripcion": "Empresa 1" }, "numeroPresupuesto": "00065", "numeroOdc": "00045", "numeroFactura": "014/24", "numeroOrden": "00005", "observacion": "Observaciones" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Facturas Emitidas
[POST] /facturas/emitidas/search
Descripción
Búsqueda de facturas emitidas con filtros. Devuelve un listado con las facturas emitidas que cumplen los filtros de búsqueda.
Petición
POST /facturas/emitidas/search
Petición con opciones de paginación
POST /facturas/emitidas/search?PageSize=<size>&PageNumber=<number>
Request URL
http://<dominio>:<puerto>/facturas/emitidas/search'
Request URL con opciones de paginación
http://<dominio>:<puerto>/facturas/emitidas/search?PageSize=<size>&PageNumber=<number>'
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<size> |
Número de elementos por página |
No |
10 |
<number> |
Número de página |
No |
2 |
cURL
curl --location --request POST 'http://<dominio>:<puerto>/facturas/emitidas/search' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
cURL con opciones de paginación
curl --location --request POST 'http://<dominio>:<puerto>/facturas/emitidas/search?PageSize=<size>&PageNumber=<number>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Conjunto de filtros a aplicar sobre la búsqueda |
No |
Body (request)
{ "generales": [ { "campo": <campo>, "valores": <valores>, "codigo": <filtro> } ] }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro |
<campo> |
Campo por el que se va a aplicar el filtro dentro del bloque al que corresponde. En este caso, sobre actos |
Sí |
Cadena de caracteres |
<valores> |
Lista de valores |
Sí |
Lista de valores |
<filtro> |
Tipo de filtro a aplicar. Consultar petición [GET] /filtros para más información |
Sí |
Cadena de caracteres |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/facturas/emitidas/search'
Ejemplo de request URL con opciones de paginación
http://192.168.293.365:8071/facturas/emitidas/search?PageSize=10&PageNumber=2'
Ejemplo de body
{ "generales": [ { "campo": "numeroFactura", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "fechaFactura", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "empresa", "valores": [ "E1" ], "codigo": "EQ" } ] }
Campo |
Descripción |
Obligatorio | Tipo parámetro |
“numeroFactura” |
Filtro sobre el numero de factura |
No |
Cadena de caracteres. |
“fechaFactura” |
Filtro sobre la fecha de la factura |
No |
Cadena de caracteres. Formato: día/mes/año |
“empresa” |
Filtro sobre la empresa de la factura emitida |
No |
Cadena de caracteres. |
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/facturas/emitidas/search' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "generales": [ { "campo": "numeroFactura", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "fechaFactura", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "empresa", "valores": [ "E1" ], "codigo": "EQ" } ] }'
Ejemplo de cURL con opciones de paginación
curl --location --request POST 'http://192.168.293.365:8071/facturas/emitidas/search?PageSize=10&PageNumber=2' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "generales": [ { "campo": "numeroFactura", "valores": [ "424" ], "codigo": "EQ" }, { "campo": "fechaFactura", "valores": [ "01/01/2022" ], "codigo": "EQ" }, { "campo": "empresa", "valores": [ "E1" ], "codigo": "EQ" } ] }'
Responses validaciones de campos
400 Valor no válido para el campo ‘codigo’
{ "statusCode": 400, "message": "Filtro 'X' no contemplado. [GET] /filtros para más información", "data": null }
400 Valor no válido para el campo ‘campo’
{ "statusCode": 400, "message": "Campo 'X' no contemplado", "data": null }
400 Lista de valores vacía
{ "statusCode": 400, "message": "Se deben informar valores para el tipo de filtro 'EQ'", "data": null }
400 Lista de ‘valores’ con valor vacío
{ "statusCode": 400, "message": "El valor no puede ser nulo", "data": null }
400 Filtro ‘Between’ con más de dos valores
{ "statusCode": 400, "message": "El filtro 'BT' tiene que tener únicamente dos valores", "data": null }
Headers responses
En esta petición, además de devolver un listado con las facturas emitidas que cumplen los filtros de búsqueda, en la cabecera de la respuesta se devuelve el parámetro X-Pagination
con la siguiente información:
{"TotalCount":<total>,"PageSize":<size>,"CurrentPage":<current_page>,"TotalPages":<total_pages>,"HasNextPage":<has_next_page>,"HasPreviousPage":<has_previous_page>,"NextPageUrl":<next_url>,"PreviousPageUrl":<previous_url>}
Parámetro |
Descripción |
<total> |
Número total de facturas emitidas encontradas en la búsqueda |
<size> |
Número de elementos por página |
<current_page> |
Página actual |
<total_pages> |
Número total de páginas |
<has_next_page> |
Indica si hay página siguiente |
<has_previous_page> |
Indica si hay página anterior |
<next_url> |
URL de la siguiente página |
<previous_url> |
URL de la página anterior |
Ejemplo headers responses
{"TotalCount":2432,"PageSize":10,"CurrentPage":1,"TotalPages":244, "HasNextPage":true,"HasPreviousPage":false,"NextPageUrl":"","PreviousPageUrl":""}
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 1, "numeroFactura": 424, "fechaEstadoFactura": "01/12/2021", "fechaVencimiento": "20/11/2021", "fechaRecepcion": "09/12/2021", "fechaFactura": "08/12/2021", "fechaContabilizacion": "01/06/2021", "idContacto": 1, "baseImponible": 0, "importeTasas": 490, "totalFactura": 2340, "iva": 0, "totalIva": 0, "irpf": 0, "totalIrpf": 0, "observaciones": null, "emrpesa": { "codigo": "E1", "descripcion": "null" }, "estadoFactura": null, "seccion": null, "pais": { "codigo": "US", "descripcion": "Estados unidos de America" }, "moneda": { "codigo": "EUR", "descripcion": "Moneda de los estados miembros de EMU" } } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Facturas Recibidas
[DELETE] /facturas/recibidas/{id}/lineas/{idLinea}/gastosEstimados
Descripción
Desasocia la factura recibida a la factura estimados
Petición
DELETE /facturas/recibidas/<id>/lineas/<idLinea>/gastosEstimados
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador de la factura |
Sí |
1007 |
<idLinea> |
Identificador de la linea |
Sí |
5 |
Request URL
http://<dominio>:<puerto>/facturas/recibidas/<id>/lineas/<idLinea>/gastosEstimados'
cURL
curl --location --request DELETE'http://<dominio>:<puerto> /facturas/recibidas/id/lineas/idLinea/gastosEstimados' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
¡Importante!
Al ser una petición DELETE, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5/gastosEstimados'
Ejemplo de cURL
curl --location --request DELETE'http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5/gastosEstimados' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": null }
404 No se ha encontrado la factura recibida
{ "statusCode": 404, "message": "No se ha encontrado la factura recibida", "data": null }
404 No se ha encontrado la linea
{ "statusCode": 404, "message": "No se ha encontrado la linea", "data": null }
409 Confilcto, la linea no pertenece a la factura recibida
{ "statusCode": 409, "message": "La linea no pertenece a esa factura recibida", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /facturas/recibidas/{id}
Descripción
Obtiene una factura recibida por el id.
Petición
GET /facturas/recibidas/<id>
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador de la linea |
Sí |
1007 |
Request URL
http://<dominio>:<puerto>/facturas/recibidas/<id>'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/facturas/recibidas/<id>' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas/1007'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/facturas/recibidas/1007' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 5, "numeroFactura": "4123111", "numeroCargo": "F123", "fechaEstadoFactura": "20/06/2025", "fechaVencimiento": "01/01/2027", "fechaRecepcion": "10/07/2023", "fechaPago": "12/12/2022", "fechaFactura": "12/03/2024", "fechaContabilizacion": "20/06/2025", "idContacto": 1234, "baseImponible": 100, "importeTasas": 150, "totalFactura": 250, "iva": 21, "totalIva": 345, "ivaRet": 0, "totalIvaRet": 345, "Irpf": 0, "totalIrpf": 345, "baseImponible": 100, "observaciones": "Factura de ejemplo", "empresa": { "codigo": "EM1", "descripcion": "Empresas" }, "estadoFactura": { "codigo": "0", "descripcion": "Clientes Morosos" }, "seccion": { "codigo": "40", "descripcion": "Nota factura" }, "pais": { "codigo": "ES", "descripcion": "España" }, "moneda": { "codigo": "EUR", "descripcion": "Euro" } } ] }
404 No se ha encontrado la factura recibida por id
{ "statusCode": 404, "message": "No se ha encontrado la factura recibida", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /facturas/recibidas
Creación de una nueva factura recibida. Devuelve el identificador de la factura creada.
Petición
POST /facturas/recibidas
Request URL
http://<dominio>:<puerto>/facturas/recibidas'
cURL
curl --location --request POST 'http://<dominio>:<puerto>/facturas/recibidas' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información de la factura recibida que queremos crear |
Sí |
Body (request)
{ "empresa": <empresa>, "numeroFactura": <numeroFactura>, "numeroCargo": <numeroCargo>, "idContacto": <idContacto>, "estadoFactura": <estadoFactura>, "fechaEstadoFactura": <fechaEstadoFactura>, "fechaVencimiento": <fechaVencimiento>, "fechaRecepcion": <fechaRecepcion>, "fechaPago": <fechaPago>, "fechaFactura": <fechaFactura>, "fechaContabilizacion": <fechaContabilizacion>, "pais": <pais>, "moneda": <moneda>, "importeHonorarios": <importeHonorarios>, "importeTasas": <importeTasas> "observaciones": <observaciones> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo |
<empresa> |
Empresa asociada a la factura. Consultar petición [GET] /empresas para más información |
Sí |
Cadena de caracteres |
10 caracteres |
22D |
<numeroFactura> |
Número de la factura |
No |
Cadena de caracteres |
30 caracteres |
578549 |
<numeroCargo> |
Número de la cargo |
No |
Cadena de caracteres |
30 caracteres |
F232 |
<idContacto> |
Identificador del contacto al que pertenece la factura |
Sí |
Numérico |
– |
6450 |
<estadoFactura> |
Estado de la factura |
No |
Cadena de caracteres. | 16 | |
<FechaEstadoFactura> |
Fecha del estado de la factura |
No |
Cadena de caracteres. |
– |
12/04/2023 |
<fechaVencimiento> |
Fecha de vencimiento de la factura |
No |
Formato: Fecha con/sin hora |
– |
20/06/2022 |
<fechaRecepcion> |
Fecha de recepcion de la factura |
No |
Formato: Fecha con/sin hora |
– |
30/04/2022 |
<fechaPago> |
Fecha de pago de la factura |
No |
Formato: Fecha con/sin hora |
– |
26/10/2022 |
<fechaFactura> |
Fecha de la factura |
No |
Formato: Fecha con/sin hora |
– |
30/04/2022 |
<fechaContabilizacion> |
Fecha de contabilización de la factura |
No |
Formato: Fecha con/sin hora |
– |
31/12/2022 |
<pais> |
País de la factura. Consultar petición [GET] /países para más información |
Sí |
Cadena de caracteres |
2 caracteres |
ES |
<moneda> |
Moneda de la factura. Consultar petición [GET] /monedas para más información |
Sí |
Cadena de caracteres |
3 caracteres |
EUR |
<importeHonorarios> |
Importe de los honorarios |
No |
Numérico con decimales |
Máximo 4 decimales |
100.50 |
<importeTasas> |
Importe de las tasas |
No |
Numérico con decimales |
Máximo 4 decimales |
504.22 |
<observaciones> |
Observaciones de la factura |
No |
Cadena de caracteres |
– |
Factura de ejemplo |
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas'
Ejemplo de body
{ "empresa": "E1", "numeroFactura": "12345", "numeroCargo": "F232", "idContacto": 17, "estadoFactura": "16", "fechaEstadosFactura": "03/02/2023 0:00:00", "fechaVencimiento": "20/12/2023 0:00:00", "fechaRecepcion": "10/04/2023 0:00:00", "fechaPago": "22/01/2023 0:00:00", "fechaFactura": "03/02/2023 0:00:00", "fechaContabilizacion": "03/02/2023 18:30:00", "pais": "ES", "moneda": "EUR", "importeHonorarios": 100.10, "importeTasas": 150.40, "observaciones": "Factura de ejemplo" }
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/facturas/recibidas' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "empresa": "E1", "numeroFactura": "12345", "numeroCargo": "F232", "idContacto": 17, "estadoFactura": "16", "fechaEstadosFactura": "03/02/2023 0:00:00", "fechaVencimiento": "20/12/2023 0:00:00", "fechaRecepcion": "10/04/2023 0:00:00", "fechaPago": "22/01/2023 0:00:00", "fechaFactura": "03/02/2023 0:00:00", "fechaContabilizacion": "03/02/2023 18:30:00", "pais": "ES", "moneda": "EUR", "importeHonorarios": 100.10, "importeTasas": 150.40, "observaciones": "Factura de ejemplo" }'
Responses validaciones de campos
404 Valor no válido para el campo ‘empresa’
{ "statusCode": 404, "message": "Valor 'X' no encontrado para el campo 'empresa'. [GET] /empresas para más información", "data": null }
404 Valor no válido para el campo ‘pais’
{ "statusCode": 404, "message": "Valor 'X' no encontrado para el campo 'pais'. [GET] /paises para más información", "data": null }
404 Valor no válido para el campo ‘moneda’
{ "statusCode": 404, "message": "Valor 'X' no encontrado para el campo 'moneda'. [GET] /monedas para más información", "data": null }
404 Valor no válido para el campo ‘idContacto’
{ "statusCode": 404, "message": "Valor 'X' no encontrado para el campo 'IdContacto'. [GET] /contactos/search para más información", "data": null }
400 Valor fecha no válido
{ "statusCode": 400, "message": "Valor '30/23/2022' no tiene un formato de fecha válido para el campo 'FechaFactura'", "data": null }
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": 3992 }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[PUT] /facturas/recibidas/{id}
Descripción
Modificación de una factura recibida.
Petición
PUT /facturas/recibidas/<id>
Parámetro |
Descripción |
Obligatorio |
Ejemplo |
<id> |
Identificador de la factura
|
Sí
|
6450
|
Request URL
http://<dominio>:<puerto>/facturas/recibidas/<id>'
cURL
curl --location --request PUT 'http://<dominio>:<puerto>/facturas/recibidas/<id>' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
Header |
Descripción |
Obligatorio |
<body> |
Información de la factura que queremos modificar |
Sí |
Body (request)
{ "empresa": <empresa>, "numeroFactura": <numeroFactura>, "numeroCargo": <numeroCargo>, "idContacto": <idContacto>, "estadoFactura": <estadoFactura>, "fechaEstadoFactura": <fechaEstadoFactura>, "fechaVencimiento": <fechaVencimiento>, "fechaRecepcion": <fechaRecepcion>, "fechaPago": <fechaPago>, "fechaFactura": <fechaFactura>, "fechaContabilizacion": <fechaContabilizacion>, "pais": <pais>, "moneda": <moneda>, "importeHonorarios": <importeHonorarios>, "importeTasas": <importeTasas> , "observaciones": <observaciones> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo | ||
<empresa> |
Codigo de la empresa |
No |
Cadena de caracteres |
10 caracteres |
Empresa1 |
||
<numeroFactura> |
Numero de la factura |
No |
Numeros enteros |
10 enteros |
2345 | ||
<numeroCargo> | Numero del cargo | No |
Cadena de caracteres |
10 caracteres |
F234 |
||
<idContacto> |
Id del contacto asociado a la factura recibida |
No |
Numeros enteros |
10 caracteres |
12 |
||
<estadoFactura> |
Codigo del estado de la factura |
No |
Cadena de caracteres |
10 caracteres |
16 |
||
<fechaEstadoFactura> |
Fecha del estado de la factura |
No |
Fecha sin hora |
|
16/01/2024 |
||
<fechaVencimiento> |
Fecha de vencimiento de la factura |
No |
Fecha sin hora |
|
11/08/2023 |
||
<fechaRecepcion> |
Fecha de recepcion de la factura |
No |
Fecha sin hora |
|
26/07/2023 |
||
<fechaPago> |
Fecha de pago de la factura |
No |
Fecha sin hora |
|
14/03/2023 |
||
<fechaFactura> |
Fecha de la factura recibida |
No |
Fecha sin hora |
|
11/05/2023 |
||
<fechaContabilizacion> |
Fecha de contabilizacion |
No |
Fecha sin hora |
|
04/04/2023 |
||
<pais> |
Codigo del pais |
No |
Cadena de caracteres |
2 caracteres |
ES |
||
<moneda> |
Codigo de la moneda |
No |
Cadena de caracteres |
10 caracteres |
EUR |
||
<importeHonorarios> |
Cantidad del importe de los honorarios |
No |
Numeros enteros |
10 caracteres |
100 |
||
<importeTasas> |
Cantidad del importe de las tasas |
No |
Numeros enteros |
10 caracteres |
150 |
||
<observaciones> |
Observacion de la factura recibida |
No |
Cadena de caracteres |
50 caracteres |
Factura de ejemplo |
¡Importante!
Al ser una petición PUT, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
.
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas/6450'
Ejemplo de body
{ "empresa": "E1", "numeroFactura": "1234", "numeroCargo": "F234", "idContacto": 17, "estadoFactura": "16", "fechaEstadoFactura": "12/10/2023", "fechaVencimiento": "22/11/2023", "fechaRecepcion": "10/07/2023", "fechaPago": "18/12/2023", "fechaFactura": "02/01/2023", "fechaContabilizacion": "16/09/2023", "pais": "ES", "moneda": "EUR", "importeHonorarios": 100, "importeTasas": 150, "observaciones": "Factura de ejemplo" }
Ejemplo de cURL
curl --location --request PUT 'http://192.168.293.365:8071/facturas/6450' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH' \ --header 'Content-Type: application/json' \ --data-raw '{ "empresa": "E1", "numeroFactura": "1234", "numeroCargo": "F234", "idContacto": 17, "estadoFactura": "16", "fechaEstadoFactura": "12/10/2023", "fechaVencimiento": "22/11/2023", "fechaRecepcion": "10/07/2023", "fechaPago": "18/12/2023", "fechaFactura": "02/01/2023", "fechaContabilizacion": "16/09/2023", "pais": "ES", "moneda": "EUR", "importeHonorarios": 100, "importeTasas": 150, "observaciones": "Factura de ejemplo" }'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": null }
404 No se ha encontrado el expediente
{ "statusCode": 404, "message": "No se ha encontrado el expediente", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /facturas/recibidas/{id}/lineas
Descripción
Obtiene las líneas asociadas a una factura.
Petición
GET /facturas/recibidas/<id>/lineas
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador de la linea |
Sí |
1007 |
Request URL
http://<dominio>:<puerto>/facturas/recibidas/<id>/lineas'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/facturas/recibidas/<id>/lineas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas/1007/lineas'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/facturas/recibidas/1007/lineas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 5, "descripcion": "Esto es una nueva linea", "cantidad": "2.0", "importe": "4756.23", "tasa": "2345", "otrosNoImponible": "2345.34", "facturarConIva": true, "observaciones": "Observaciones de la linea", "departamento": { "codigo": "SIGNO", "descripcion": "Signos distintivos" }, "gastos": { "codigo": "TASAS", "descripcion": "Tasas" }, "departamento": { "codigo": "PATENTES", "descripcion": "Patentes" }, "articulo": { "codigo": "PATENTES", "descripcion": "Patentes" }, } ] }
404 No se ha encontrado la linea asociada a la factura recibida
{ "statusCode": 404, "message": "No se ha encontrado la linea asociada a la factura", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[DELETE] /facturas/recibidas/{id}/lineas/{idLinea}
Descripción
Elimina la linea asociada a una factura
Petición
DELETE /facturas/recibidas/<id>/lineas/<idLinea>
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador de la factura |
Sí |
1007 |
<idLinea> |
Identificador de la linea |
Sí |
5 |
Request URL
http://<dominio>:<puerto>/facturas/recibidas/<id>/lineas/<idLinea>'
cURL
curl --location --request DELETE'http://<dominio>:<puerto> /facturas/recibidas/id/lineas/idLinea' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
¡Importante!
Al ser una petición DELETE, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5'
Ejemplo de cURL
curl --location --request DELETE'http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": null }
404 No se ha encontrado la factura recibida
{ "statusCode": 404, "message": "No se ha encontrado la factura recibida", "data": null }
404 No se ha encontrado la linea
{ "statusCode": 404, "message": "No se ha encontrado la linea", "data": null }
409 Confilcto, la linea no pertenece a la factura recibida
{ "statusCode": 409, "message": "La linea no pertenece a esa factura recibida", "data": null }
409 Conflicto, la linea esta asociada a un gasto de una factura emitida
{ "statusCode": 409, "message": "No se puede eliminar la linea de la factura porque esta asociada a un gasto de una factura emitida", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[GET] /facturas/recibidas/{id}/lineas/{idLinea}/expedientes
Descripción
Obtiene los expedientes asociadas a una linea de una factura, si desea obtener mas información del expediente utilice el método [GET] /expedientes/{id} .
Petición
GET /facturas/recibidas/<id>/lineas/<idLinea>/expedientes
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador de la factura |
Sí |
1007 |
<idLinea> |
Identificador de la linea |
Sí |
5 |
Request URL
http://<dominio>:<puerto>/facturas/recibidas/<id>/lineas/<idLinea>/expedientes'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/facturas/recibidas/<id>/lineas/<idLinea>/expedientes' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5/expedientes'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5/expedientes' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "id": 5 } ] }
404 No se ha encontrado la factura recibida
{ "statusCode": 404, "message": "No se ha encontrado la factura recibida", "data": null }
404 No se ha encontrado la linea
{ "statusCode": 404, "message": "No se ha encontrado la linea", "data": null }
409 No se ha encontrado la linea asociada a la factura recibida
{ "statusCode": 409, "message": "La linea no pertenece a esa factura recibida", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
[POST] /facturas/recibidas/{id}/lineas/{idLinea}/expedientes
Descripción
Asocia un expediente a un artículo asociado a una factura. Para ver los expedientes asociados a un articulo utilice el método [GET] /expedientes/{id} .
Petición
POST /facturas/recibidas/<id>/lineas/<idLinea>/expedientes
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador de la factura |
Sí |
1007 |
<idLinea> |
Identificador de la linea |
Sí |
5 |
Request URL
http://<dominio>:<puerto>/facturas/recibidas/<id>/lineas/<idLinea>/expedientes'
cURL
curl --location --request POST 'http://<dominio>:<puerto> /facturas/recibidas/id/lineas/idLinea/expedientes' \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data-raw '<body>'
¡Importante!
Al ser una petición POST, tenemos que incluir un header adicional (Content-Type)
para indicar el formato del body. Para esta petición es application/json
No olvidar el token
Ejemplo de request URL
http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5/expedientes'
Ejemplo de cURL
curl --location --request POST 'http://192.168.293.365:8071/facturas/recibidas/1007/lineas/5/expedientes' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": null }
404 No se ha encontrado la factura recibida
{ "statusCode": 404, "message": "No se ha encontrado la factura recibida", "data": null }
404 No se ha encontrado la linea
{ "statusCode": 404, "message": "No se ha encontrado la linea", "data": null }
409 No se ha encontrado la linea asociada a la factura recibida
{ "statusCode": 409, "message": "La linea no pertenece a esa factura recibida", "data": null }
409 No se ha encontrado la linea asociada a la factura recibida
{ "statusCode": 409, "message": "No se ha encontrado el expediente", "data": null }
409 No se ha encontrado la linea asociada a la factura recibida
{ "statusCode": 409, "message": "Ya está asociado el expediente a la línea", "data": null }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }
Tareas
[GET] /tareas
Descripción
Devuelve un listado con las tareas disponibles.
Petición
GET /tareas
Request URL
http://<dominio>:<puerto>/tasas'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/tasas' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/tareas'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/tareas' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "codigo": "VENC PS4", "descripcion": "Vencimiento Ley PS4 - P" }, { "codigo": "WOPRSOH", "descripcion": "Presentación de solicitud - H" } ] }
500 Ha ocurrido un error
{ "statusCode": 500, "message": <mensaje_error>, "data": null }