Documentación DICOMweb

PrerrequisitosIntroducción e información general

Este documento proporciona una guía técnica completa para las funciones de la API DICOMweb con métodos de ejemplo que se utilizan a través de una aplicación de ejemplo en C#. Incluye explicaciones detalladas de todas las funciones disponibles, cubriendo tanto los servicios estándar DICOMweb (como QIDO-RS, WADO-RS y STOW-RS) como los puntos finales personalizados de la API DICOMweb desarrollados por PostDICOM. Estas funciones están diseñadas para ser utilizadas en llamadas del lado del servidor.

Para utilizar los servicios DICOMweb de PostDICOM, primero debe tener esta función habilitada para su cuenta y poseer credenciales de usuario válidas. Si el acceso DICOMweb aún no está activado para su cuenta y desea integrar su aplicación con PostDICOM, por favor contáctenos para solicitar la activación.

Nombre de usuario: Esta es su credencial principal de inicio de sesión, generalmente su dirección de correo electrónico. Es única para su cuenta y se utiliza como nombre de usuario en la Autenticación Básica.

Contraseña: Esta es la contraseña asociada con su cuenta de PostDICOM. Se utiliza junto con su nombre de usuario durante la Autenticación Básica. Para una seguridad óptima, recomendamos encarecidamente elegir una contraseña segura. Por favor, disponga de los mecanismos de seguridad necesarios en su llamada del lado del servidor para que este nombre de usuario y contraseña estén protegidos por usted mismo.

Puede gestionar su contraseña y configuración de seguridad a través de la página de perfil de su cuenta después de iniciar sesión en su cuenta de PostDICOM.


DICOMwebServicios estándar DICOMweb

Almacenar instancias DICOM (STOW-RS)

UploadDicomImagesInAFolder(UserName, Password, WebAddress, FileNamesList)

Esta función orquesta la carga de todos los archivos .dcm desde una carpeta local especificada al servidor DICOMweb. Primero identifica todos los archivos relevantes, luego utiliza métodos auxiliares para construir y enviar una solicitud POST multipart/related autenticada para cada archivo, adhiriéndose al estándar STOW-RS.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
DirectoryPath string La ruta completa al directorio local que contiene los archivos DICOM (.dcm) a cargar.

Consulta de objetos DICOM (QIDO-RS)

QidoSearch(UserName, Password, WebAddress, PatientID, StudyInstanceUID, SeriesInstanceUID)

Esta función realiza una consulta de objetos DICOM utilizando el estándar QIDO-RS, permitiendo búsquedas a nivel de Estudio, Serie o Instancia. Basándose en el parámetro de búsqueda proporcionado (como ID del paciente, UID de instancia de estudio o UID de instancia de serie), construye la URL apropiada y ejecuta una solicitud autenticada para recuperar los resultados coincidentes del servidor.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientID string Opcional. Se utiliza para identificar al paciente y buscar estudios relacionados.
StudyInstanceUID string Opcional. Se utiliza para buscar un estudio específico o todas las series dentro de ese estudio.
SeriesInstanceUID string Opcional. Se utiliza para buscar todas las instancias de imagen dentro de una serie específica.

Recuperar instancias DICOM (WADO-RS)

RetrieveImagesUsingWadoRs(UserName, Password, WebAddress, StudyInstanceUID, SeriesInstanceUID, SOPInstanceUID)

Esta función proporciona un menú interactivo para recuperar objetos DICOM utilizando el estándar WADO-RS. El usuario selecciona un nivel de recuperación (Estudio, Serie o Instancia) y proporciona el UID correspondiente. La función entonces realiza una solicitud autenticada y procesa la respuesta multipart/related, guardando cada parte DICOM como un archivo .dcm separado en un directorio local recién creado.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
StudyInstanceUID string Opcional. Un identificador globalmente único para un estudio DICOM. Se utiliza para recuperar todas las series e instancias asociadas con ese estudio.
SeriesInstanceUID string Opcional. Un identificador globalmente único para una serie dentro de un estudio DICOM. Se utiliza para recuperar todas las imágenes bajo esa serie.
SOPInstanceUID string Opcional. Un identificador único para una instancia de imagen DICOM individual. Se utiliza para recuperar una imagen específica usando WADO-RS.

CompartirGestión de uso compartido

Crear enlace para compartir

CreateShareLink(UserName, Password, WebAddress, PatientOrderInfoList, ExpireDate, SharePassword, Downloadable)

Esta función genera un enlace web seguro para compartir una o más órdenes de pacientes con usuarios externos. El enlace puede estar protegido con contraseña y opcionalmente permitir descargas.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña para la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientOrderInfoList List Lista de cadenas JSON, cada una conteniendo una clave "PatientOrderUuid", identificando las órdenes de pacientes a compartir.
ExpireDate string (AAAA-MM-DD) Fecha de vencimiento para el enlace compartido. Después de esta fecha, el enlace será deshabilitado.
SharePassword string Opcional. Contraseña requerida para acceder al enlace compartido. Deje vacío para acceso público.
Downloadable bool Opcional. Determina si los estudios DICOM son descargables por el destinatario.

Compartir orden de paciente con URL

SharePatientOrderWithUrl(UserName, Password, WebAddress, OrderUuidList, ExpireDate, SharePassword, UserCanDownloadStudies)

Esta función genera una URL compartible para órdenes de pacientes seleccionadas con opciones adicionales de control de acceso como permiso de descarga y protección con contraseña.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (correo electrónico) de la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña para la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
OrderUuidList List Lista de UUIDs identificando las órdenes de pacientes a ser compartidas.
ExpireDate string (AAAA-MM-DD) Fecha después de la cual el enlace compartido se vuelve inactivo.
SharePassword string Opcional. Contraseña requerida para acceder al enlace compartido.
UserCanDownloadStudies bool Opcional. Si se establece en true, el destinatario puede descargar los estudios.

CarpetaGestión de carpetas y órdenes

Crear carpeta

CreateFolder(UserName, Password, WebAddress, FolderName, FolderDescription, ParentFolderUuid)

Esta función se utiliza para crear una nueva carpeta (un contenedor virtual) dentro de la cuenta PostDICOM para ayudar a organizar las órdenes de pacientes.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
FolderName string Requerido. El nombre visible para la nueva carpeta.
FolderDescription string Opcional. Una descripción de texto para la carpeta.
ParentFolderUuid string Opcional. El UUID de una carpeta existente para crear la nueva carpeta dentro de ella.

Buscar carpeta

SearchFolder(UserName, Password, WebAddress, ParentFolderUuid, FolderName, GetOrdersInFolder)

Esta función encuentra carpetas existentes basándose en criterios de búsqueda. Puede incluir opcionalmente la lista de órdenes de pacientes dentro de cada carpeta encontrada.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
ParentFolderUuid string Opcional. Un UUID de carpeta para restringir la búsqueda a sus hijos.
FolderName string Opcional. Un nombre completo o parcial a buscar.
GetOrdersInFolder bool Opcional. Si es `true`, la respuesta incluirá una lista de órdenes de pacientes para cada carpeta encontrada.

Compartir carpeta con URL

ShareFolderWithUrl(UserName, Password, WebAddress, FolderUuid, SharePassword, ShareTitle, ShareDescription, ExpireDate, UserCanDownloadStudies)

Esta función genera una URL segura y compartible para una carpeta completa y su contenido. Permite un control de acceso integral estableciendo un título personalizado, descripción, una contraseña, una fecha de vencimiento y especificando si el contenido puede ser descargado por el destinatario.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
FolderUuid string Requerido. El identificador único (UUID) de la carpeta a compartir.
SharePassword string Opcional. Una contraseña para proteger el enlace compartido. Si se deja vacío, el enlace será accesible públicamente.
ShareTitle string Opcional. Un título personalizado para la página de la carpeta compartida, visible para el destinatario.
ShareDescription string Opcional. Una descripción mostrada en la página de la carpeta compartida.
ExpireDate string (AAAA-MM-DD) Opcional. La fecha en la cual el enlace compartido se volverá inactivo automáticamente.
UserCanDownloadStudies bool Opcional. Si es `true`, los destinatarios pueden descargar las órdenes de pacientes contenidas dentro de la carpeta.

Agregar orden a la carpeta

AddOrderToFolder(UserName, Password, WebAddress, PatientOrderUuid, FolderUuidList)

Esta función crea una asociación entre una orden de paciente existente y una carpeta existente. Esta es una herramienta de organización; no mueve ni copia datos.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientOrderUuid string Requerido. El UUID de la orden de paciente a ser colocada en una carpeta.
FolderUuidList List Requerido. Una lista conteniendo el UUID de la carpeta de destino.

Flujo de trabajoFlujo de trabajo y asignación

Asignar orden a usuario

AssignOrderToUser(UserName, Password, WebAddress, PatientOrderUuid, AssignedUserUuid)

Esta función es una herramienta central del flujo de trabajo. Asigna una orden de paciente a un usuario individual, lo que significa que este usuario es ahora responsable de una tarea relacionada con esa orden (p. ej., elaboración de informes).

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientOrderUuid string Requerido. El UUID de la orden de paciente que requiere acción.
AssignedUserUuid string Requerido. El UUID del usuario específico a quien se le asignará la responsabilidad.

Asignar orden a grupo de usuarios

AssignOrderToUserGroup(UserName, Password, WebAddress, PatientOrderUuid, AssignedUserGroupUuid)

Similar a asignar a un solo usuario, esta función asigna una orden de paciente a un grupo completo, permitiendo flujos de trabajo basados en equipos donde cualquier miembro del grupo puede encargarse de la tarea.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientOrderUuid string Requerido. El UUID de la orden de paciente a ser asignada al grupo.
AssignedUserGroupUuid string Requerido. El UUID del grupo de usuarios a quien se le asignará la orden.

Orden de pacienteCiclo de vida de la orden de paciente y recuperación de datos

Crear orden de paciente

CreatePatientOrder(UserName, Password, WebAddress, InstitutionUuid, PatientName, PatientId, OtherPatientId, PatientSex, PatientBirthdate, Modality, StudyDescription, AccessionNumber, PatientComplaints, OrderScheduledDatetime, RequestedProcedureId, RequestedProcedureDescription, RequestingPhysician, ReferringPhysiciansName, ScheduledEquipmentUuid)

Esta función crea una nueva orden de paciente para programar y gestionar estudios de imagenología dentro del sistema. Se deben proporcionar los parámetros requeridos para una creación exitosa.

Parámetros requeridos Tipo de dato Descripción
InstitutionUuid string Requerido. UUID de la institución donde se está creando la orden de paciente.
PatientName string Requerido. Nombre completo del paciente.
PatientId string Requerido. Identificador único del paciente, como un ID nacional o MRN.
PatientBirthdate string (AAAA-MM-DD) Requerido. Fecha de nacimiento del paciente en formato ISO.
Modality string Requerido. Tipo de modalidad como CT, MR, US, etc.
OtherPatientId string Opcional. Un identificador adicional para el paciente, si aplica.
PatientSex string Opcional. Sexo del paciente (p. ej., M, F, O).
StudyDescription string Opcional. Descripción del estudio de imagenología ordenado.
AccessionNumber string Opcional. Número de acceso único para la orden, si aplica.
PatientComplaints string Opcional. Texto que describe las quejas o síntomas del paciente.
OrderScheduledDatetime string (AAAA-MM-DD HH:MM) Opcional. La fecha y hora programada de inicio del procedimiento.
RequestedProcedureId string Opcional. Identificador para el procedimiento solicitado.
RequestedProcedureDescription string Opcional. Descripción del procedimiento solicitado.
RequestingPhysician string Opcional. Nombre del médico que solicitó el estudio.
ReferringPhysiciansName string Opcional. Nombre del médico referente, si es diferente del solicitante.
ScheduledEquipmentUuid string Opcional. UUID del equipo de imagenología a utilizar para el procedimiento programado.

Obtener propiedades de la orden del paciente

GetPatientOrderProperties(UserName, Password, WebAddress, PatientOrderInstitutionUuid, PatientOrderUuid)

Esta función recupera el conjunto completo de propiedades para una orden de paciente única y específica.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientOrderInstitutionUuid string Requerido. El UUID de la institución a la que pertenece la orden.
PatientOrderUuid string Requerido. El UUID de la orden de paciente específica a recuperar.

Buscar órdenes de pacientes

GetPatientOrderList(UserName, Password, WebAddress, InstitutionUuidList, PatientName, PatientId, OtherPatientId, AccessionNumber, ModalityList, StudyDateFrom, StudyDateTo, PatientBirthdateFrom, PatientBirthdateTo)

Esta función recupera una lista de órdenes de pacientes basada en una combinación de filtros de búsqueda como nombre del paciente, ID, modalidad y fechas de estudio o nacimiento. Permite una funcionalidad de búsqueda avanzada para instituciones que gestionan múltiples órdenes.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
InstitutionUuidList List Lista de UUIDs identificando las instituciones para buscar órdenes de pacientes.
PatientName string Opcional. Filtrar por nombre completo del paciente.
PatientId string Opcional. Filtrar por identificador único del paciente.
OtherPatientId string Opcional. Identificador secundario para el paciente, si está disponible.
AccessionNumber string Opcional. Filtrar por número de acceso asignado al estudio.
ModalityList List Lista de modalidades (p. ej., CT, MR, US) para filtrar los resultados de búsqueda.
StudyDateFrom string (AAAA-MM-DD) Opcional. Fecha de inicio del rango de fechas del estudio para filtrar resultados.
StudyDateTo string (AAAA-MM-DD) Opcional. Fecha de fin del rango de fechas del estudio para filtrar resultados.
PatientBirthdateFrom string (AAAA-MM-DD) Opcional. Fecha de inicio del rango de fecha de nacimiento del paciente para filtrar pacientes por edad.
PatientBirthdateTo string (AAAA-MM-DD) Opcional. Fecha de fin del rango de fecha de nacimiento del paciente para filtrar pacientes por edad.

Eliminar orden de paciente

DeletePatientOrder(UserName, Password, WebAddress, PatientOrderInstitutionUuid, PatientOrderUuid)

Esta función elimina permanentemente una orden de paciente del sistema. Requiere tanto el UUID de la institución como el UUID de la orden de paciente específica para asegurar la precisión y prevenir la eliminación accidental.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientOrderInstitutionUuid string Requerido. UUID de la institución propietaria de la orden de paciente. Asegura que se utilice el contexto correcto para la eliminación.
PatientOrderUuid string Requerido. UUID de la orden de paciente específica a eliminar. Esto identifica de forma única la orden en el sistema.

Etiqueta DicomObtener contenido de etiqueta DICOM

Obtener contenido de etiqueta DICOM

GetDicomTagContent(UserName, Password, WebAddress, PatientOrderInstitutionUuid, PatientOrderUuid, PatientSeriesUuid, DicomTagIdList)

Esta función recupera los valores de etiquetas DICOM específicas de las imágenes asociadas con una orden de paciente.

Parámetros requeridos Tipo de dato Descripción
UserName string El nombre de usuario (dirección de correo electrónico) para la cuenta PostDICOM. (desde la inicialización)
Password string La contraseña asociada con la cuenta PostDICOM. (desde la inicialización)
WebAddress string La URL base de la API. (desde la inicialización)
PatientOrderInstitutionUuid string Requerido. El UUID de la institución donde reside la orden.
PatientOrderUuid string Requerido. El UUID de la orden que contiene las imágenes.
PatientSeriesUuid string Opcional. Si se proporciona, las etiquetas solo se leerán de esta serie específica.
DicomTagIdList List Opcional. Una lista de IDs de etiquetas DICOM a recuperar.