How To Use XNAT

These documents are designed for all types of users of XNAT.

It's important to note that your role as a user is defined by the project that you are working in. In a typical XNAT, any person can create a project and upload data, thereby becoming a "Project Owner." This gives you full permissions to create, upload, modify and delete data within that project. However, in someone else's project, you may be given fewer permissions as a Project Member or Project Collaborator. Learn more about user permissions in XNAT. 

Also, your XNAT administrator may have created custom roles within XNAT, which could be tied to specific user workflows. If there are differences between your XNAT screen and the screenshots seen here, these user permission and accessibility settings may be a contributing factor.

User Registration and Login

User Registration and Accounts in XNAT

Related Topics:


Project Setup

Any registered user can create a project in XNAT, unless an administrator has removed that ability. 

How To Create and Manage Projects

Related Topics:

See the XNAT API documentation for REST paths for working with projects from the command line. 


Project Administration

All Project Admin tasks are accessible in the "Manage" tab at the top of the project report page, unless otherwise specified.


Enabling Custom Features Within your Project

Enabling Project Features


Working With Subjects

These activities can be performed by Project Owners and Project Members. 

How to Create and Manage Subjects

Related topics:

See the XNAT API documentation for REST paths for working with subjects from the command line. 


Uploading Image Data to XNAT

Data uploads can be performed by any Project Owner or Project Member, or any other role with "Create" permissions on your project.

XNAT Supports multiple image session types out of the box. The most commonly used are MR, PET and CT. Additional image session types, (e.g. MEG) can be added by your XNAT Administrator. See Adding Data Types to XNAT

How To Upload Image Sessions

Related topics:

See the XNAT API documentation for REST paths for working with image sessions from the command line. 


DICOM Anonymization on Imported Image Data

XNAT frequently needs to examine and alter the contents of image objects during the archiving process, to remove PHI and route inbound data to the correct location, among other uses. However, this is a process with known limitations and is only as good as the business processes and anonymization scripts that accompany the upload process.


Uploading Experiment Data to XNAT

Data uploads can be performed by any Project Owner or Project Member, or any other role with "Create" permissions on your project.

When any data type is added to XNAT, it will automatically have a data entry form created. (Some data types will have custom-formatted data entry forms.) Data can be entered manually, or it can be imported in bulk using our CSV uploader. 

See the XNAT API documentation for REST paths for working with experiments from the command line. 


Uploading Resource Data to XNAT

Resource files can be attached to any other data object in XNAT – projects, subjects, experiments, and scans. These resources can be managed through a variety of means, including custom resource uploaders that can be configured to require resources of particular types or formats.

See the XNAT API documentation for REST paths for working with resources from the command line.


Working with Scans

The scan datatype is associated with image sessions, which acquires metadata from DICOM or NIFTI properties and can store scan image files as resources. From an image session report page, users can compare scan details, add qualitative notes, open and annotate scans in the OHIF Image Viewer, download or delete scans.

Using the XNAT OHIF Viewer

See the XNAT API documentation for REST paths for working with scans from the command line. 


Running Pipelines and Containers on Project Data

To get a guided walkthrough of using the Container Service with XNAT's Event Service, try taking the free Container Service 101 Course on XNAT Academy

To run processing on XNAT data with the Container Service, a site administrator must install and enable the Container Service Plugin and connect your XNAT to a Docker Server, then install the specific container images that you can run commands with.

Using the Container Service

Container Service Administration

To run processing on XNAT data with pipelines, a site administrator must install and configure the XNAT Pipeline Engine, and install specific pipelines before they can be configured and used in your projects. 




Downloading Data from XNAT

Any user with read access to your project data can download your project data.

How To Download Image Data From XNAT Projects

Related Topics:


Searching, Reporting and Data Mining

Any user with read access to your project data can see that data in their searches.



Sharing Data Within XNAT

Any user with read access to your project data can share a copy of that data into their own project. The user will have project ownership of their project, but will not be able to directly modify their copy of the shared data.

Understanding Data Sharing in XNAT's Security Structure

Related Topics:


Automating XNAT Actions in your Project with the Event Service

XNAT 1.8 introduces the Event Service, which provides a way to subscribe to events such as "image session archived" and perform an action based on that event, such as launching a container. It is recommended that you work closely with your XNAT Administrator when using these features.

Using the XNAT Event Service



Scripting XNAT Interactions

User permissions in scripting match those in the XNAT UI. Permissions errors will be returned if your script attempts to access data that you do not have access to.

Generating an Alias Token for Scripted Authentication

Generating and Reusing a JSESSION ID for Scripted Interactions

XNAT REST API Directory


Advanced Topics in XNAT Usage



$label.name