Índice
- [GET] /contactos/{id}
- [GET] /contactos/{id}/acciones
- [GET] /contactos/{id}/domicilios
- [GET] /contactos/{id}/titulares
- [POST] /contactos
- [POST] /contactos/search
- [POST] /contactos/{id}/titulares
- [POST] /contactos/{id}/domicilios
- [PUT] /contactos/{id}/domicilios/{idDomicilio}
[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, "observacion": "observaciones", "empresa": { "codigo": "EM1", "descripcion": "Empresa" }, "tarifaFacturación": { "codigo": "TF1", "descripcion": "Tarifa facturación 1" }, "banco": { "domicilio": "Calle Madrid", "poblacion": "Madrid", "codPostal": "28080", "pais": { "codigo": "ES", "descripcion": "España" }, "sucursal": "1234", "digito": "2", "cuenta": "5678901234", "iban": "ES76 1234 5678 9012 3456 7890", "swift": "BSCHESMMXXX", "codigo": "BNC1", "descripcion": "Banco Santander" }, "descuento": "30", "pyme": "2", "cnae": "123245", "iva": "21", "numeroExpedientesAlta": 30, "codigo": "4879", "tipo": { "codigo": "C", "descripcion": "Cliente" }, "referencia": "RF39438948", "estado": { "codigo": "A", "descripcion": "Alta" }, "logo": null, "clave": "clave", "riesgo": { "codigo": "B", "descripcion": "Bueno" }, "grupo": { "codigo": "GR1", "descripcion": "Grupo 1" }, "delegacion": { "codigo": "DEL1", "descripcion": "Delegación" } } }
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> "serie": <serie>, "delegacion": <delegacion>, "riesgo": <riesgo>, "potencial": <potencial>, "descuento": <descuento>, "lineaTasasFacturar": <lineaTasasFacturar>, "facturarPorExpediente": <facturarPorExpediente>, "iva": <iva>, "facturacionMensual": <facturacionMensual>, "codEmpresa": <codEmpresa>, "codGrupo": <codGrupo>, "codCompania": <codCompania>, "codTarifa": <codTarifa>, "codResponsable": <codResponsable>, "pyme": <pyme> }
Parámetro |
Descripción |
Obligatorio | Tipo parámetro | Longitud máxima parámetro | Ejemplo | |
<codigo> |
Código del contacto |
No |
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 |
Sí |
Cadena de caracteres |
Único carácter |
B |
|
<serie> |
Serie del contacto |
No |
Números enteros |
|
|
|
<delegacion> |
Código de la delegación |
Sí |
Cadena de caracteres |
10 caracteres |
0 |
|
<riesgo> |
Nivel de riesgo |
Sí |
Cadena de caracteres |
Único carácter |
B |
|
<potencial> |
Nivel de potencial |
Sí |
Cadena de caracteres |
Único carácter |
R |
|
<descuento> |
Descuento aplicado |
Sí |
Decimal |
|
0.00 |
|
<lineaTasasFacturar> |
Línea de tasas a facturar |
Sí |
Booleano |
|
true |
|
<facturarPorExpediente> |
Facturar por expediente |
Sí |
Booleano |
|
false |
|
<iva> |
|
Sí |
Decimal |
|
0 |
|
<facturacionMensual> |
Indica si la facturación es mensual |
Sí |
Booleano |
|
true |
|
<codEmpresa> |
Código de empresa |
No |
Cadena de caracteres |
|
|
|
<codGrupo> |
Código de grupo |
No |
Cadena de caracteres |
|
|
|
<codCompania> |
Código de compañía |
No |
Cadena de caracteres |
|
|
|
<codTarifa> |
Código de tarifa |
No |
Cadena de caracteres |
|
|
|
<codResponsable> |
Código de responsable |
No |
Cadena de caracteres |
|
|
|
<pyme> |
Indicador de Pyme |
No |
Cadena de caracteres |
Único carácter |
|
|
¡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", "serie": null, "delegacion": "0", "riesgo": "B", "potencial": "R", "descuento": 0.00, "lineaTasasFacturar": true, "facturarPorExpediente": false, "iva": 0, "facturacionMensual": true, "codEmpresa": null, "codGrupo": null, "codCompania": null, "codTarifa": null, "codResponsable": null, "pyme": null }
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", "serie": null, "delegacion": "0", "riesgo": "B", "potencial": "R", "descuento": 0.00, "lineaTasasFacturar": true, "facturarPorExpediente": false, "iva": 0, "facturacionMensual": true, "codEmpresa": null, "codGrupo": null, "codCompania": null, "codTarifa": null, "codResponsable": null, "pyme": null }'
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}/acciones
Descripción
Obtiene las acciones comerciales de un contacto.
Petición
GET /contactos/<id>/acciones
Parámetro |
Descripción |
Obligatorio | Ejemplo |
<id> |
Identificador del contacto |
Sí |
6450 |
Request URL
http://<dominio>:<puerto>/contactos/<id>/acciones'
cURL
curl --location --request GET 'http://<dominio>:<puerto>/contactos/<id>/acciones' \ --header 'accept-language: <idioma>' \ --header 'Authorization: Bearer <token>'
Importante: no olvidar headers
Ejemplo de request URL
http://192.168.293.365:8071/contactos/3992/acciones'
Ejemplo de cURL
curl --location --request GET 'http://192.168.293.365:8071/contactos/3992/acciones' \ --header 'accept-language: es' \ --header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI5ZTI5ZDA1Yi0zMTNjLTQ2MjNzUyNzg2OHH'
Responses
200 Ha ido correctamente
{ "statusCode": 200, "message": "Petición finalizada correctamente", "data": [ { "accion": { "codigo": "CONSULTA", "descripcion": "Consulta cliente", }, "fecha": "09/10/2024", "resultado": { "codigo": "INFO", "descripcion": "Solicita más información/presupuesto" }, "responsable": { "codigo": "SGP", "descripcion": "Salvador González Pliego" } }, { "accion": { "codigo": "REMINDER", "descripcion": "Envío recordatorio", }, "fecha": "10/10/2024", "resultado": { "codigo": "ACEPTA", "descripcion": "Acepta la gestión presupuesto" }, "responsable": { "codigo": "RGP", "descripcion": "Ramón García Presto" } } ] }
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 }
[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>, "domicilio": <domicilio>, "personaContacto": <personaContacto>, "email": <email>, "nombre": <nombre>, "codIdioma": <codIdioma>, "codNacionalidad": <codNacionalidad>, "poblacion": <poblacion>, "codPostal": <codPostal>, "codPais": <codPais>, "telefonos": <telefonos>, "fax": <fax>, "codFormaPago": <codFormaPago>, "formaFiscal": <formaFiscal>, "noEnviarEmail": <noEnviarEmail>, "noEnviarCorrespondencia": <noEnviarCorrespondencia>, "precioEspecial": <precioEspecial>, "notificacion": <notificacion>, "dni": <dni>, "principal": <principal>, "codMoneda": <codMoneda>, "codFormaJuridica": <codFormaJuridica> }
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 |
<domicilio> |
Domicilio |
No |
Cadena de caracteres |
|
|
<personaContacto> |
Persona de contacto |
No |
Cadena de caracteres |
|
|
<email> |
|
No |
Cadena de caracteres |
|
|
<nombre> |
Nombre |
No |
Cadena de caracteres |
|
|
<codIdioma> |
Idioma. Consultar petición [GET] /idiomas/descripciones para más información |
Sí |
Cadena de caracteres |
|
es |
<codNacionalidad> |
Nacionalidad. Consultar petición [GET] /nacionalidades para más información |
No |
Cadena de caracteres |
|
|
<poblacion> |
Poblacíon |
No |
Cadena de caracteres |
|
|
<codPostal> |
Código Postal |
No |
Cadena de caracteres |
|
|
<codPais> |
Código de Pais.Consultar petición [GET] /paises para más información |
Sí |
Cadena de caracteres |
|
05 |
<telefonos> |
Telefonos |
No |
Cadena de caracteres |
|
|
<fax> |
Fax |
No |
Cadena de caracteres |
|
|
<codFormaPago> |
Forma de pago. Consultar petición [GET] /formas/pago para más información |
No |
Cadena de caracteres |
|
|
<formaFiscal> |
Forma fiscal. Consultar petición [GET] /formas/fiscales para más información |
No |
Cadena de caracteres |
Único carácter |
|
<noEnviarEmail> |
No enviar email |
No |
Booleano |
|
|
<noEnviarCorrespondencia> |
No enviar correspondencia |
No |
Booleano |
|
|
<precioEspecial> |
Precio especial |
No |
Decimal |
Debe tener hasta 7 enteros y 2 decimales |
|
<notificacion> |
Notificacion |
No |
Cadena de caracteres |
Único carácter |
|
<dni> |
Dni |
No |
Cadena de caracteres |
|
|
<principal> |
Indica si el domicilio es principal |
No |
Booleano |
|
|
<codMoneda> |
Moneda. Consultar petición [GET] /monedas para más información |
Sí |
Cadena de caracteres |
|
AMD |
<codFormaJuridica> |
Forma jurídica. Consultar petición [GET] /formas/juridicas para más información |
No |
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/<id>/domicilios'
Ejemplo de body
{ "apellidos": "García Fernández", "tipo": "A", "domicilio": null, "personaContacto": null, "email": null, "nombre": null, "codIdioma": "es", "codNacionalidad": null, "poblacion": null, "codPostal": null, "codPais": "05", "telefonos": null, "fax": null, "codFormaPago": null, "formaFiscal": null, "noEnviarEmail": null, "noEnviarCorrespondencia": null, "precioEspecial": null, "notificacion": null, "dni": null, "principal": null, "codMoneda": "AMD", "codFormaJuridica": null }
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", "domicilio": null, "personaContacto": null, "email": null, "nombre": null, "codIdioma": "es", "codNacionalidad": null, "poblacion": null, "codPostal": null, "codPais": "05", "telefonos": null, "fax": null, "codFormaPago": null, "formaFiscal": null, "noEnviarEmail": null, "noEnviarCorrespondencia": null, "precioEspecial": null, "notificacion": null, "dni": null, "principal": null, "codMoneda": "AMD", "codFormaJuridica": null }'
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>, "tipo": <tipo>, "domicilio": <domicilio>, "personaContacto": <personaContacto>, "email": <email>, "nombre": <nombre>, "codIdioma": <codIdioma>, "codNacionalidad": <codNacionalidad>, "poblacion": <poblacion>, "codPostal": <codPostal>, "codPais": <codPais>, "telefonos": <telefonos>, "fax": <fax>, "codFormaPago": <codFormaPago>, "formaFiscal": <formaFiscal>, "noEnviarEmail": <noEnviarEmail>, "noEnviarCorrespondencia": <noEnviarCorrespondencia>, "precioEspecial": <precioEspecial>, "notificacion": <notificacion>, "dni": <dni>, "principal": <principal>, "codMoneda": <codMoneda>, "codFormaJuridica": <codFormaJuridica> }
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 |
<domicilio> |
Domicilio |
No |
Cadena de caracteres |
|
|
<personaContacto> |
Persona de contacto |
No |
Cadena de caracteres |
|
|
<email> |
|
No |
Cadena de caracteres |
|
|
<nombre> |
Nombre |
No |
Cadena de caracteres |
|
|
<codIdioma> |
Idioma. Consultar petición [GET] /idiomas/descripciones para más información |
Sí |
Cadena de caracteres |
|
es |
<codNacionalidad> |
Nacionalidad. Consultar petición [GET] /nacionalidades para más información |
No |
Cadena de caracteres |
|
|
<poblacion> |
Poblacíon |
No |
Cadena de caracteres |
|
|
<codPostal> |
Código Postal |
No |
Cadena de caracteres |
|
|
<codPais> |
Código de Pais.Consultar petición [GET] /paises para más información |
Sí |
Cadena de caracteres |
|
05 |
<telefonos> |
Telefonos |
No |
Cadena de caracteres |
|
|
<fax> |
Fax |
No |
Cadena de caracteres |
|
|
<codFormaPago> |
Forma de pago. Consultar petición [GET] /formas/pago para más información |
No |
Cadena de caracteres |
|
|
<formaFiscal> |
Forma fiscal. Consultar petición [GET] /formas/fiscales para más información |
No |
Cadena de caracteres |
Único carácter |
|
<noEnviarEmail> |
No enviar email |
No |
Booleano |
|
|
<noEnviarCorrespondencia> |
No enviar correspondencia |
No |
Booleano |
|
|
<precioEspecial> |
Precio especial |
No |
Decimal |
Debe tener hasta 7 enteros y 2 decimales |
|
<notificacion> |
Notificacion |
No |
Cadena de caracteres |
Único carácter |
|
<dni> |
Dni |
No |
Cadena de caracteres |
|
|
<principal> |
Indica si el domicilio es principal |
No |
Booleano |
|
|
<codMoneda> |
Moneda. Consultar petición [GET] /monedas para más información |
Sí |
Cadena de caracteres |
|
AMD |
<codFormaJuridica> |
Forma jurídica. Consultar petición [GET] /formas/juridicas para más información |
No |
Cadena de caracteres |
|
|
¡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", "tipo": "A", "domicilio": null, "personaContacto": null, "email": null, "nombre": null, "codIdioma": "es", "codNacionalidad": null, "poblacion": null, "codPostal": null, "codPais": "05", "telefonos": null, "fax": null, "codFormaPago": null, "formaFiscal": null, "noEnviarEmail": null, "noEnviarCorrespondencia": null, "precioEspecial": null, "notificacion": null, "dni": null, "principal": null, "codMoneda": "AMD", "codFormaJuridica": null }
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", "tipo": "A", "domicilio": null, "personaContacto": null, "email": null, "nombre": null, "codIdioma": "es", "codNacionalidad": null, "poblacion": null, "codPostal": null, "codPais": "05", "telefonos": null, "fax": null, "codFormaPago": null, "formaFiscal": null, "noEnviarEmail": null, "noEnviarCorrespondencia": null, "precioEspecial": null, "notificacion": null, "dni": null, "principal": null, "codMoneda": "AMD", "codFormaJuridica": null }'
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": 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 }