Ofimedic Web Service (1.0.0)

Introducción

Especificaciones de los métodos que permiten interactuar con la información almacenada en las bases de datos de Ofimedic.

Especificaciones

  • La URL para acceder al servicio tendrá la siguiente estructura:
    • https://{URL}/services.asmx/{NombreMétodo}

  • Los parámetros de entrada que son obligatorios están marcados como tal.
    • Hay parámetros de entrada que pueden no estar marcados como obligatorios, pero que lo sean bajo ciertas condiciones, las cuales están indicadas.

  • Si un parámetro es opcional, hay que pasar un espacio en blanco.

  • Todas las llamadas que incluyen los parámetros fechaInicio y fechaFin están limitados a un periodo máximo de un año.

  • Si no se indica como parámetro el identificador único, solo se permiten llamadas entre las 21:00h y las 10:59h.

  • Todos los mensajes de respuesta estarán formateados en JSON.

  • En cada llamada hay que indicar como parámetro un código/token que se obtiene mediante 2FA vía email con la función SetAuth.

  • El token tiene una validez de 2 horas.

  • En todos los métodos de devolución de datos podemos indicar el parámetro fechaModificacion. Si se indica dicha fecha, se devolverán los registros modificados desde esa fecha (incluída) hasta el día actual.

Historial de cambios

Lista actualizada con los cambios realizados. Se indican las fechas y la descripción de los cambios. Se muestra del cambio más reciente al más antiguo.

05/05/2025

  • Modificación en GetDelegaciones: inclusión de todos los campos de Persona Jurídica y el campo textoLOPD

26/02/2025

  • Creación de GetPacienteId y GetPaises
  • Modificación en GetDoctores: inclusión de los campos titulacion, numColegiado, observaciones y fotografia

30/01/2025

  • Modificaciones en GetVisitas: inclusión de los campos observaciones, salaID y consultorioID
  • Modificación en GetPacientes: inclusión del campo observacionesHistoria

18/10/2024

  • Modificación en GetPacientes: inclusión del campo tipoPaciente

08/10/2024

  • Creación de SetLlamada
  • Modificación en GetDoctores

03/10/2024

  • Incorporación del parámetro pacienteID en GetVisitas, GetVentas, GetCobros, GetPresupuestos, GetPresupuestosLineas, GetBonos y GetVentasDirectas

06/08/2024

  • Modificación en GetPacientes: inclusión del campo fechaAlta

29/07/2024

  • Modificación en GetDocumentos: inclusión del campo ext

26/07/2024

  • Creación de GetDocumentos

19/06/2024

  • Ampliación de GetDoctores, GetDelegaciones, GetVisitas, GetPresupuestos y GetTarifas
  • Creación de GetConsultorios y GetPresupuestosLineas

08/05/2024

  • Ampliación de GetVisitas

12/04/2024

  • Ampliación de GetPacientes

26/02/2024

  • Modificación en GetPacientes, incluyendo paginación de resultados

19/02/2024

  • Incorporación del parámetro de entrada fechaModificacion a todos los métodos de devolución de datos

15/02/2024

  • Modificación de fechas

30/01/2024

  • Modificación horario permitido de llamadas
  • Añadido 2FA para todas las llamadas

19/12/2023

  • Creación del documento
Languages
Servers
Test

https://ws.ofimedic.com/ofimedicws/test/services.asmx/

Autenticación

Autenticación con el servidor.

Operations

Obtención de datos

Obtiene las listas con los datos a partir de los valores especificados.

Operations

Paciente (identificador)

Request

Obtiene el identificador del paciente en Ofimedic.

Es obligatorio indicar, como mínimo, uno de los dos parámetros de entrada.

Query
emailstring(email)

Correo del paciente.

Example: email=example@email.com
dnistring

Documento de identidad del paciente.

Example: dni=00000000A
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/ofimedicws/test/services.asmx/GetPacienteId?dni=00000000A&email=example%40email.com'

Responses

Relación de identificadores

Bodyapplication/jsonArray [
idinteger

Identificador del paciente.

Example: 1
]
Response
application/json
[ { "id": 1 } ]

Pacientes

Request

Obtiene los pacientes de Ofimedic.

Query
tokenstringrequired

Código o Token de la sesión.

Example: token=1234
pacienteIDstring

Identificador del paciente.

Example: pacienteID=1
pageNumberstring

Número de página de resultados.
Si se indica este valor, se devolverá el resultado en dos bloques, uno con la información de paginación, llamado “info” (página actual, total de páginas y registros mostrados por página) y otro con los datos, llamado “data”. Si este parámetro se deja en blanco, se devuelven todos los registros.

Example: pageNumber=1
pageSizestring

Número de registros por página de resultados.
Sólo es posible indicarlo en caso de indicar también el parámetro pageNumber.
En caso de indicar el parámetro pageNumber dejando este parámetro en blanco, se devuelven 100 registros por página.

Example: pageSize=100
showBajasstring

Vacío o “1” para devolver todos los registros. “0” para devolver solo los registros dados de alta.

Example: showBajas=1
fechaModificacionstring(date)

Fecha de modificación.

Example: fechaModificacion=01/01/1970
showObsHistoriastring

Vacío o “1” para devolver el campo de observaciones de la historia médica. “0” para devolver el campo vacío.

Example: showObsHistoria=1
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/ofimedicws/test/services.asmx/GetPacientes?fechaModificacion=01%2F01%2F1970&pacienteID=1&pageNumber=1&pageSize=100&showBajas=1&showObsHistoria=1&token=1234'

Responses

Relación de pacientes

Bodyapplication/jsonArray [
idinteger

Identificador del paciente.

Example: 1
numeroHistoriastring

Número de historia del paciente

Example: "1"
nombrestring

Nombre del paciente

Example: "A"
apellidosstring

Apellidos del paciente

Example: "A"
dnistring

DNI del paciente

Example: "00000000A"
fechaNacimientostring(date)

Fecha de nacimiento del paciente.

Example: "01/01/1970"
direccionstring

Dirección del paciente.

Example: "Gran Via 1"
poblacionstring

Población del paciente.

Example: "Barcelona"
cpstring

Código postal del paciente.

Example: "01234"
provinciastring

Provincia del paciente.

Example: "Barcelona"
paisstring

País del paciente.

Example: "España"
telefonoFijostring

Teléfono fijo del paciente.

Example: "900000000"
telefonoMovilstring

Teléfono móvil del paciente.

Example: "600000000"
emailstring(email)

Email del paciente.

Example: "example@ofimedic.com"
referenciaPacienteIdinteger

Identificador de la referencia del paciente.

Example: 1
tipoPacienteIdinteger

Tipo de paciente.

Example: 1
doctorIdinteger

Facultativo asignado al paciente.

Example: 1
tarifasArray of objects

Tarifas asignadas al paciente.

sexostring

Sexo del paciente.

Example: "Hombre"
alergiasstring

Alergias del paciente.

Example: "Ninguna"
antecedentesMedicosstring

Antecedentes médicos del paciente.

Example: "Ninguno"
medicacionstring

Medicación del paciente.

Example: "Ibuprofeno"
antecedentesQuirurgicosstring

Antecedentes quirúrgicos del paciente.

Example: "Ninguno"
habitosToxicosstring

Hábitos tóxicos del paciente.

Example: "Ninguno"
familiastring

Antecedentes familiares del paciente.

Example: "Ninguno"
observacionesHistoriastring

Observaciones de la historia del paciente.
Es un texto en formato RTF, lo cual puede provocar una sobrecarga.

Example: ""
aceptaTratamientoDatosboolean

True si acepta el tratamiento de sus datos. False en caso contrario.

Example: true
aceptaTratamientoImagenesboolean

True si acepta el tratamiento de sus imágenes. False en caso contrario.

Example: true
aceptaComunicacionesboolean

True si acepta comunicaciones. False en caso contrario.

Example: false
aceptaComunicacionesMarketingboolean

True si acepta comunicaciones de marketing. False en caso contrario.

Example: false
delegacionIdinteger

Identificador de la delegación del paciente.

Example: 1
exclusivaDelegacionboolean

True si es exclusivo de la delegación indicada. False en caso contrario.

Example: false
fechaUltimaVisitaFinalizadastring(date)

Fecha de la última visita finalizada.

Example: "01/01/1970"
idExternostring

Identificador externo del paciente.

Example: "1"
fechaAltastring(date)

Fecha de alta del paciente

Example: "01/01/1970"
]
Response
application/json
[ { "id": 1, "numeroHistoria": "1", "nombre": "A", "apellidos": "A", "dni": "00000000A", "fechaNacimiento": "01/01/1970", "direccion": "Gran Via 1", "poblacion": "Barcelona", "cp": "01234", "provincia": "Barcelona", "pais": "España", "telefonoFijo": "900000000", "telefonoMovil": "600000000", "email": "example@ofimedic.com", "referenciaPacienteId": 1, "tipoPacienteId": 1, "doctorId": 1, "tarifas": [], "sexo": "Hombre", "alergias": "Ninguna", "antecedentesMedicos": "Ninguno", "medicacion": "Ibuprofeno", "antecedentesQuirurgicos": "Ninguno", "habitosToxicos": "Ninguno", "familia": "Ninguno", "observacionesHistoria": "", "aceptaTratamientoDatos": true, "aceptaTratamientoImagenes": true, "aceptaComunicaciones": false, "aceptaComunicacionesMarketing": false, "delegacionId": 1, "exclusivaDelegacion": false, "fechaUltimaVisitaFinalizada": "01/01/1970", "idExterno": "2", "fechaAlta": "01/01/1970" } ]

Países

Request

Obtiene los países configurados en Ofimedic.

Query
tokenstringrequired

Código o Token de la sesión.

Example: token=1234
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/ofimedicws/test/services.asmx/GetPaises?token=1234'

Responses

Relación de países

Bodyapplication/jsonArray [
idinteger

Identificador del país.

Example: 1
paisstring

Nombre del país.

Example: "España"
prefijostring

Prefijo telefónico del país.

Example: "+34"
]
Response
application/json
[ { "id": 1, "pais": "España", "prefijo": "+34" } ]

Otras acciones

Respuesta de búsqueda de datos a partir de los parámetros y valores especificados.

Operations