XNAT Imaging Extractor avatar

XNAT Imaging Extractor

Pricing

from $0.35 / 1,000 records

Go to Apify Store
XNAT Imaging Extractor

XNAT Imaging Extractor

Point at ANY public XNAT neuroimaging server (NITRC-IR, BMIA, institutional archives) and pull structured metadata over the XNAT REST API: projects, subjects, imaging experiments/sessions, and scans. One actor, the whole /data REST surface, every row lossless.

Pricing

from $0.35 / 1,000 records

Rating

0.0

(0)

Developer

Datamule

Datamule

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Point at any public XNAT server and pull structured neuroimaging metadata over the standard XNAT REST API. XNAT is the de-facto open-source platform for neuroimaging & clinical imaging research data management, and every install — the NITRC image repository, the BMIA public archive, central.xnat.org, and countless institutional deployments — speaks the identical /data/... REST surface. So there is no per-server scraper: give a base URL and a mode, get clean rows.

Modes

modeReturnsEndpoint
projectsone row per project (whole server)/data/projects
subjectsone row per subject in a project/data/projects/{projectId}/subjects
experimentsone row per imaging session in a project/data/projects/{projectId}/experiments
scansone row per scan in a session/data/experiments/{experimentId}/scans
  • subjects and experiments need a projectId.
  • In experiments mode, add a subjectId to narrow to one subject.
  • scans needs an experimentId.

Input

{
"serverUrl": "https://www.nitrc.org/ir",
"mode": "projects",
"maxRecords": 1000
}

Drill down further:

{ "serverUrl": "https://www.nitrc.org/ir", "mode": "subjects", "projectId": "ixi" }
{ "serverUrl": "https://www.nitrc.org/ir", "mode": "experiments", "projectId": "studyforrest_rev003" }
{ "serverUrl": "https://www.nitrc.org/ir", "mode": "scans", "experimentId": "NITRC_IR_E07478" }
FieldTypeNotes
serverUrlstring (required)XNAT base URL. Include any path prefix — NITRC serves under /ir.
modeenumprojects | subjects | experiments | scans (default projects).
projectIdstringRequired for subjects / experiments.
subjectIdstringOptional drill-down in experiments mode.
experimentIdstringRequired for scans.
maxRecordsintegerRow cap (default 1000).
bearerstring (secret)Optional bearer token for authenticated servers.
extraHeadersobjectOptional extra HTTP headers (e.g. a session cookie).

Output

Each row carries the mapped, human-friendly fields for its mode (id, name, label, project, date, scan type, series description, …) plus a lossless _raw object with the complete original API record, so nothing is dropped even when a column key differs between XNAT versions.

{
"id": "NITRC_IR_E07478",
"label": "sub001",
"project": "studyforrest_rev003",
"date": "",
"xsiType": "xnat:mrSessionData",
"subjectId": "NITRC_IR_E07478",
"uri": "/data/experiments/NITRC_IR_E07478",
"_server": "https://www.nitrc.org/ir",
"_mode": "experiments",
"_raw": { "...": "complete original record" }
}

Notes on public vs gated servers

?format=json is a request, not a guarantee. Some XNAT servers gate public browse behind an interactive login and answer with an HTML login page at HTTP 200 (e.g. central.xnat.org, cnda.wustl.edu). This actor detects that (non-JSON body / no ResultSet envelope) and fails fast rather than emitting an empty dataset — it never fabricates rows and never reports a gated server as an honest zero. Servers that expose anonymous public projects (NITRC-IR, BMIA) return real JSON and work out of the box.

Pricing

Pay-per-event: $0.0005 per record (one project / subject / experiment / scan row). You only pay for rows actually extracted.