Ofimedic Cita Online (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:
    • http://{URL}/services.asmx/{NombreMétodo}
    • 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 parámetros de entrada en formato de fecha con inicio (START) y final (END) tendrán una limitación, la cuál estará indicada en cada método.

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

  • En el caso de que la función indique horario restringido de obtención de datos, solo se permiten llamadas entre las 21:00h y las 10:59h.

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.

30/01/2025

  • Modificaciones en GetAppointments:
    • Inclusión de los campos APP_ARRIVAL_TIME, APP_ENTER_TIME, APP_EXIT_TIME y APP_STATEID.
    • Eliminación del campo APP_CREATED.

23/12/2024

  • Adecuación del documento y modificaciones en SearchAvailabilities, CheckAvailavility y GetAppointments.

23/01/2024

  • Creación del documento.
Languages
Servers
Test
https://ws.ofimedic.com/citaonlinews/test/services.asmx/

Conexión

Prueba de conexión.

Operations

Citas

Respuesta de las acciones relativas a las citas en Ofimedic.

Operations

Obtención

Request

Obtiene las citas de Ofimedic.

Query
APP_IDstring

Identificador de la cita.

Example: APP_ID=1
START_DATEstring(date)

Fecha de inicio de la cita. Se indica en formato de fecha (dd/mm/aaaa).
Obligatorio indicar este parámetro si no se indica el parámetro APP_ID.
En caso de indicarlo, la diferencia de tiempo máxima entre este parámetro y END_DATE será de 31 días.
Debe ser anterior a END_DATE.

Example: START_DATE=01/01/2024
END_DATEstring(date)

Fecha de finalización de la cita. Se indica en formato de fecha (dd/mm/aaaa).
Obligatorio indicar este parámetro si no se indica el parámetro APP_ID.
En caso de indicarlo, la diferencia de tiempo máxima entre este parámetro y START_DATE será de 31 días.
Debe ser posterior a START_DATE.

Example: END_DATE=31/01/2024
PATIENT_IDstring

Identificador del paciente.
Obligatorio indicar este parámetro si no se indica el parámetro PATIENT_ID_NUMBER.

Example: PATIENT_ID=1
RESOURCE_IDstring

Identificador del facultativo.

Example: RESOURCE_ID=1
LOCATION_IDstring

Identificador del centro/delegación.

Example: LOCATION_ID=1
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/citaonlinews/test/services.asmx/GetAppointments?APP_ID=1&END_DATE=31%2F01%2F2024&LOCATION_ID=1&PATIENT_ID=1&RESOURCE_ID=1&START_DATE=01%2F01%2F2024'

Responses

Relación de citas

Bodyapplication/jsonArray [
APP_IDinteger

Identificador de la cita

Example: 1
APP_STATUSstring

Estado de la cita.
NotAttended si está Pendiente.
Cancelled si está Anulada.
Confirmed en en cualquier otro caso.

Example: "Confirmed"
APP_DATEstring(date)

Fecha de la cita.
Formato de fecha en "dd/mm/aaaa".

Example: "14/07/2023"
APP_START_TIMEstring(date)

Hora de inicio de la cita.
Formato de tiempo "hh:mm".

Example: "16:00"
APP_END_TIMEstring(date)

Finalización de la cita.
Formato de tiempo "hh:mm".

Example: "16:30"
APP_ARRIVAL_TIMEstring(time)

Hora de llegada del paciente al centro.
Formato de tiempo "hh:mm".

Example: "15:55"
APP_ENTER_TIMEstring(time)

Hora de entrada del paciente a la consulta.
Formato de tiempo "hh:mm".

Example: "16:00"
APP_EXIT_TIMEstring(time)

Hora de salida del paciente del centro.
Formato de tiempo "hh:mm".

Example: "16:35"
APP_STATEIDinteger

Estado de la visita:
0 = Pendiente
1 = En espera
2 = En consulta
3 = Finalizada
4 = Anulada
5 = Caducada
6 = Administración

Example: 0
PATIENT_IDinteger

Identificador del paciente.

Example: 1
PATIENT_FIRST_NAMEstring

Nombre del paciente

Example: "A"
PATIENT_SECOND_NAMEstring

Apellidos del paciente

Example: "A"
PATIENT_DATE_OF_BIRTHstring(date)

Fecha de nacimiento del paciente.

Example: "01/01/1970"
PATIENT_PLACE_OF_BIRTHstring

Población del paciente.

Example: "Barcelona"
PATIENT_ID_NUMBERstring

DNI del paciente

Example: "00000000A"
PATIENT_GENDERstring

Sexo del paciente (“H” para hombre, “M” para mujer).

Example: "H"
PATIENT_ZIP_CODEstring

Código postal del paciente.

Example: "01234"
PATIENT_LANDLINE_PHONEstring

Teléfono fijo del paciente.

Example: "900000000"
PATIENT_MOBILE_PHONEstring

Teléfono móvil del paciente.

Example: "600000000"
PATIENT_WORK_PHONEstring

Teléfono del trabajo del paciente.

Example: "910000000"
PATIENT_EMAILstring(email)

Email del paciente.

Example: "example@ofimedic.com"
PATIENT_DATEstring(date)

Fecha de alta del paciente

Example: "01/01/1970"
PATIENT_PRIVACYinteger

1 si el paciente acepta el tratamiento de sus datos. 0 en caso contrario.

Example: 1
PATIENT_PRIVACY_PROMOTIONSinteger

1 si acepta acciones de marketing. 0 en caso contrario.

Example: 1
ACTIVITY_IDinteger

Identificador del tipo de visita.

Example: 2
APPOINTMENT_TYPEinteger

Identificador del tipo de cita.

Example: 1
RESOURCE_IDinteger

Identificador del facultativo.

Example: 1
INSURANCE_IDinteger

Identificador de la compañía.

Example: 4
LOCATION_IDinteger

Identificador del centro/delegación.

Example: 2
]
Response
application/json
[ { "APP_ID": 1, "APP_STATUS": "Confirmed", "APP_DATE": "14/07/2023", "APP_START_TIME": "16:00", "APP_END_TIME": "16:30", "APP_ARRIVAL_TIME": "15:55", "APP_ENTER_TIME": "16:00", "APP_EXIT_TIME": "16:35", "APP_STATEID": 0, "PATIENT_ID": 1, "PATIENT_FIRST_NAME": "A", "PATIENT_SECOND_NAME": "A", "PATIENT_DATE_OF_BIRTH": "01/01/1970", "PATIENT_PLACE_OF_BIRTH": "Barcelona", "PATIENT_ID_NUMBER": "00000000A", "PATIENT_GENDER": "H", "PATIENT_ZIP_CODE": "01234", "PATIENT_LANDLINE_PHONE": "900000000", "PATIENT_MOBILE_PHONE": "600000000", "PATIENT_WORK_PHONE": "910000000", "PATIENT_EMAIL": "example@ofimedic.com", "PATIENT_DATE": "01/01/1970", "PATIENT_PRIVACY": 1, "PATIENT_PRIVACY_PROMOTIONS": 1, "ACTIVITY_ID": 2, "APPOINTMENT_TYPE": 1, "RESOURCE_ID": 1, "INSURANCE_ID": 4, "LOCATION_ID": 2 } ]

Creación

Request

Crea una cita en Ofimedic.

Query
APP_DATEstring(date)

Fecha de inicio de la cita. Se indica en formato de fecha (dd/mm/aaaa).
Antes de crear una cita, se comprueba si APP_ID existe en Ofimedic.

Example: APP_DATE=09/06/2022
APP_START_TIMEstring(time)required

Hora de inicio de la cita. Se indica en formato de hora (hh:mm).

Example: APP_START_TIME=08:00
PATIENT_IDstring

Identificador del paciente.

Example: PATIENT_ID=1
RESOURCE_IDstringrequired

Identificador del facultativo.

Example: RESOURCE_ID=1
ACTIVITY_IDstringrequired

Identificador del tipo de visita.

Example: ACTIVITY_ID=1
APPOINTMENT_TYPEstring

Tipo de atención.
1 si es Presencial.
2 si es Online.
3 si es Domiciliaria.

Example: APPOINTMENT_TYPE=1
APPOINTMENT_REASONstring

Motivo de la visita.

Example: APPOINTMENT_REASON=Primera visita
INSURANCE_IDstring

Identificador de la compañía.

Example: INSURANCE_ID=1
LOCATION_IDstringrequired

Identificador del centro/delegación.

Example: LOCATION_ID=1
PATIENT_FIRST_NAMEstring

Nombre del paciente.
Obligatorio indicar este parámetro si el parámetro PATIENT_ID no existe en Ofimedic.

Example: PATIENT_FIRST_NAME=Nombre
PATIENT_SECOND_NAMEstring

Apellidos del paciente.
Solo es posible indicar este parámetro, de forma opcional, si el parámetro PATIENT_ID no existe en Ofimedic.
En caso de que PATIENT_ID exista, es obligatorio dejar este parámetro en blanco.

Example: PATIENT_SECOND_NAME=Apellidos
PATIENT_MOBILE_PHONEstring

Teléfono móvil del paciente.
Solo es posible indicar este parámetro, de forma opcional, si el parámetro PATIENT_ID no existe en Ofimedic.
En caso de que PATIENT_ID exista, es obligatorio dejar este parámetro en blanco.

Example: PATIENT_MOBILE_PHONE=600000000
PATIENT_EMAILstring

Email del paciente.
Solo es posible indicar este parámetro, de forma opcional, si el parámetro PATIENT_ID no existe en Ofimedic.
En caso de que PATIENT_ID exista, es obligatorio dejar este parámetro en blanco.

Example: PATIENT_EMAIL=patient.email@example.com
PATIENT_ID_NUMBERstring

DNI/NIF del paciente.
Solo es posible indicar este parámetro, de forma opcional, si el parámetro PATIENT_ID no existe en Ofimedic.
En caso de que PATIENT_ID exista, es obligatorio dejar este parámetro en blanco.

Example: PATIENT_ID_NUMBER=00000000A
OTHER_FIRST_NAMEstring

Nombre si la cita es para otra persona.

Example: OTHER_FIRST_NAME=Nombre
OTHER_SECOND_NAMEstring

Apellidos si la cita es para otra persona.

Example: OTHER_SECOND_NAME=Apellidos
OTHER_DATE_OF_BIRTHstring(date)

Fecha de nacimiento si la cita es para otra persona Se indica en formato de fecha (dd/mm/aaaa).

Example: OTHER_DATE_OF_BIRTH=27/12/1976
OTHER_GENDERstring

Sexo si la cita es para otra persona.
H si es Hombre.
M si es una mujer.

Example: OTHER_GENDER=M
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/citaonlinews/test/services.asmx/AddAppointment?ACTIVITY_ID=1&APPOINTMENT_REASON=Primera%20visita&APPOINTMENT_TYPE=1&APP_DATE=09%2F06%2F2022&APP_START_TIME=08%3A00&INSURANCE_ID=1&LOCATION_ID=1&OTHER_DATE_OF_BIRTH=27%2F12%2F1976&OTHER_FIRST_NAME=Nombre&OTHER_GENDER=M&OTHER_SECOND_NAME=Apellidos&PATIENT_EMAIL=patient.email%40example.com&PATIENT_FIRST_NAME=Nombre&PATIENT_ID=1&PATIENT_ID_NUMBER=00000000A&PATIENT_MOBILE_PHONE=600000000&PATIENT_SECOND_NAME=Apellidos&RESOURCE_ID=1'

Responses

Resultado

Bodyapplication/jsonArray [
RESULTstring

Respuesta de creación de la cita.
OK en caso de creación correcta.
ERROR en caso de error.

Example: "OK"
ERROR_MESSAGEstring

Descripción del error en caso de error.

APP_IDinteger

Identificador de la cita.

Example: 1
PATIENT_IDinteger

Identificador del paciente.

Example: 2
]
Response
application/json
[ { "RESULT": "OK", "ERROR_MESSAGE": "", "APP_ID": 1, "PATIENT_ID": 2 } ]

Modificación

Request

Modifica una cita en Ofimedic.

Query
APP_IDstringrequired

Identificador de la cita.

Example: APP_ID=1
APP_DATEstring(date)

Fecha de inicio de la cita. Se indica en formato de fecha (dd/mm/aaaa).
Antes de crear una cita, se comprueba si APP_ID existe en Ofimedic.

Example: APP_DATE=09/06/2022
APP_START_TIMEstring(time)

Hora de inicio de la cita. Se indica en formato de hora (hh:mm).

Example: APP_START_TIME=08:00
INSURANCE_IDstring

Identificador de la compañía.

Example: INSURANCE_ID=1
LOCATION_IDstring

Identificador del centro/delegación.

Example: LOCATION_ID=1
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/citaonlinews/test/services.asmx/UpdateAppointment?APP_DATE=09%2F06%2F2022&APP_ID=1&APP_START_TIME=08%3A00&INSURANCE_ID=1&LOCATION_ID=1'

Responses

Resultado

Bodyapplication/jsonArray [
RESULTstring

Respuesta de creación de la cita.
OK en caso de creación correcta.
ERROR en caso de error.

Example: "OK"
ERROR_MESSAGEstring

Descripción del error en caso de error.

APP_IDinteger

Identificador de la cita.

Example: 1
PATIENT_IDinteger

Identificador del paciente.

Example: 2
]
Response
application/json
[ { "RESULT": "OK", "ERROR_MESSAGE": "", "APP_ID": 2, "PATIENT_ID": 2 } ]

Eliminación

Request

Elimina una cita en Ofimedic.

Query
APP_IDstringrequired

Identificador de la cita.

Example: APP_ID=1
curl -i -X GET \
  -u <username>:<password> \
  'https://ws.ofimedic.com/citaonlinews/test/services.asmx/DeleteAppointment?APP_ID=1'

Responses

Resultado

Bodyapplication/jsonArray [
RESULTstring

Respuesta de creación de la cita.
OK en caso de creación correcta.
ERROR en caso de error.

Example: "OK"
APP_IDinteger

Identificador de la cita.

Example: 1
]
Response
application/json
[ { "RESULT": "OK", "APP_ID": 2 } ]

Disponibilidad

Búsqueda de datos de disponibilidad a partir de parámetros y valores indicados.

Operations

Obtención de listados

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

Operations