Python-catmaid

Latest version: v2.4.2

Safety actively analyzes 722460 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 7

2021.12.21

Additions

- POST `/{project_id}/neurons/rename`:
Rename multiple neurons at the same time.

- GET|POST `/{project_id}/skeletons/summary`:
Retrieve meta information like cable length or number of nodes for skeletons.

- GET `/accounts/anonymous-api-token`:
Get the API token for the anonymous user.

- POST `/{project_id}/neurons/all-skeletons`:
Map a list of neuron IDs to the skeleton IDs that model them.

- GET `/{project_id}/`:
Get project details like the title and comment.

- POST `/{project_id}/`:
Update the project title if the user has admin permissions in the project.

Modifications

- `GET /{project_id}/transactions/`:
Now accepts the optional parameters user_id and type to further constrain the
result. Type is a transaction label string, e.g. 'skeletons.import'.

- `POST /{project_id}/skeletons/import`:
Now accepts the optional boolean parameter replace_annotations, which can be
used to remove all existing annotations if an existing neuron/skeleton is
replaced with force=true.

- `POST /{project_id}/graphexport/json`:
The returned graph export is now in networkx 2.x format, rather than in v1.x
format like before. The main difference is that start and target nodes of an
edge are now defined explicitly by ID rather than an index.

- `POST /{project_id}/skeleton/connectivity_matrix`:
The new parameters row_relations and col_relations allow callers now to
specify the relations used to connect two skeletons for each side. They
default to "presynaptic_to" and "postsynaptic_to".

Deprecations

None.

Removals

None.

Maintenance updates

Modifications

- `POST /{project_ids}/skeletons/in-bounding-box`:
Returns now also unlinked connectors by default. To only get linked connectors
like before, pass in `only_linked = true`.

2020.02.15

Additions

- GET `/{project_id}/stats/cable-length`:
Accepts now an optional 'name_pattern' argument that allows case insensitive
pattern matching in the respective neuron name. If a '/' prefix is used, the
pattern is interpreted as a regular expression.

- GET|POST `/{project_id}/skeletons/validity`:
Obtain a list of valid or invalid skeletons in a set pf passed in skeleton
IDs.

- `GET|POST /{project_id}/skeletons/from-origin`:
Looks up skeleton IDs based on a set of `source_ids`, a `source_url` and a
`source_project_id`..

- `GET|POST /{project_id}/skeletons/origin`:
Gets origin information on a list of `skeleton_ids`.

- `GET|POST /{project_id}/skeletons/import-info`:
Gets information on which and how many nodes are imported in a set of
skeletons.

- `POST /{project_id}/annotations/query-targets`:
Accepts now an optional boolean "with_timestamps" parameter, which is set to
false by default. If set to true, the returned annotations will include their
creation_time and edition_time.

- `POST /{project_id}/annotations/query-targets`:
Accepts now two additional sorting options: annotated_on,
last_annotation_link_edit. The first one sorts by the date the matched
annotations were added to the target. The second option sorts by when this
link was edited last.

- GET|POST `/{project_id}/skeletons/completeness`:
Obtain compleness information on a list of skeletons.

- `POST /{project_id}/skeletons/{skeleton_id}/find-labels`:
The new optional bolean `only_leaves` parameter (default false) can be used to
return only tagged leaf nodes (including root).

Modifications

- All APIs: errors during a request are now indicated with a more useful HTTP
status code than 200: errors related to the request, input data and the client
will result in status 400, permission errors in status 403, unavailable
resources in status 404 and internal server errors in status 500.

- `POST|GET /{project_id}/node/list`:
Offers a new optional parameter
"ordering", which can be used to order the result set of nodes. The values
cable-asc and cable-desc are allowed. By default no ordering is applied.

- `POST|GET /{project_id}/volumes/`:
Information on area, volume and watertightness is now returned for each
volume as well as information on whether these details have been computed
(meta_computed). This meta data can be computed for each volume using the
`{project_id}/volumes/{volume_id}/update-meta-info` API.

- `GET /{project_id}/volumes/{volum_id}/update-meta-info`:
Try to compute area, volume and watertightness for a volume. Sets
`meta_computed` to true. If this operation fails, all meta data fields are set
to NULL/None.

- `POST /{project_id}/annotations/query-targets`:
Accepts now an optional boolean "name_exact" parameter, which is set to false
by default. If set to true, the passed in name has to match exactly. This is
faster than using a regular expression like '/^name$' for exact matches.

- `POST /{project_id}/skeletons/import`:
The new parameters `source_id` and `source_url` allow to associate a source
data reference with the imported skeleton. The new list parameter
"annotations" can have annotation names, which are added to the import
skeleton. By default only the annotation "Import" is set.

- `POST /{project_id}/skeleton/join`:
The new parameter `lose_sampler_handling` controls how to deal with samplers
defined for the merged in skeleton. Possible values are 'delete-sampler' and
'keep-sampler', the latter being the default. If samplers should be kept, it
is required that the sampler domains are defined on parts of the skeleton that
don't need local rerooting. Otherwise an error is raised.

Deprecations

None.

Removals

None.

2019.06.20

Additions

- `GET /{project_id}/nodes/nearest`:
Replaces `POST /{project_id}/node/nearest`. The parameters are the same, but
the API allows now to look globally for the nearest node in the project, if no
skeleton ID or neuron ID is provided.

- `GET /{project_id}/nodes/most-recent`:
Replaces `POST /{project_id}/node/nearest`. A skeleton_id parameter can still
be provided, but now also a user_id parameter is available to further
constrain.

Modifications

- `POST|GET /{project_id}/node/list`:
Offers a new optional parameter "min_skeleton_length", which can be used to
constrain the returned neurons to only those of at least this cable length.

- `POST|GET /{project_id}/pointclouds/`:
Offers a new optional parameter "order_by", which accepts the strings 'id' and
'name' to define in what order the list of pointclouds should be retuned
(default: id).

- `POST /{project_id}/landmarks/{landmark_id}/`:
Offers a new optional parameter "group_ids", an array of integers, which
allows to set the landmark group memberships of a specific landmark. The new
boolean parameter "append_memberships" allows to only append new group IDs as
memberships, without removing any. Otherwise the whole set of memberships is
replaced.

- `POST /{project_id}/skeletons/import`:
The new parameter `skeleton_id` makes it possible to request a particular
skeleton ID during import, just like it is done for neurons using `neuron_id`.
If a skeleton or neuron with this ID exists already, a new object is created
and the existing one is not touched. If an error should be raised instead, set
the `auto_id` parameter to `false`. If instead the passed in IDs should
replace existing data, the `force` parameter can be set to `true`. Both
options apply to both neurons and skeletons.

- `POST /{project_id}/skeletons/connectivity/csv`:
The new optional parameter `names` makes it possible to pass in a mapping of
skeleton IDs to names used in the CSV export as column and row headers. If
this parameter is not provided, the plain skeleton IDs will be used as it was
done before. If it is provided, it has to be a list of two-element lists, each
of the form [<skeleton-id>, <name>], which provides the mapping.

- `POST /{project_id}/skeletons/connectivity`:
The `source_skeleton_ids` parameter can now also be specified in regular form
format (multiple arguments with the exact same name), rather than only the
square braces style.

Deprecations

None.

Removals

- `POST /{project_id}/node/nearest`:
Replaced with `GET /{project_id}/nodes/nearest` (note the plural of nodes).

- `POST /{project_id}/node/most-recent`:
Replaced with `GET /{project_id}/nodes/most-recent`.

2018.11.09

Additions

- `POST /{project_id}/skeletons/cable-length`:
The POST version of the already existing GET endpoint. It allows passing in
more skeleton IDs for which to get the cable length.

- `POST /{project_id}/skeletons/connectivity-counts`:
Allows to get the number connector links per relation type for each passed in
skeleton. Also accepts GET parameters.

- `POST /{project_id}/skeletons/connectivity_matrix/csv`:
Return a CSV file containing the connectivity matrix for the passed in `rows`
and `columns`.

- `POST /{project_id}/skeletons/sampler-count`:
Return the number of samplers linked to each skeleton in the passed in
`skeleton_ids` list.

- `GET /{project_id}/skeletons/{skeleton_id}/sampler-count`:
Return the number of samplers linked to this skeleton.

- `GET /{project_id}/labels/detail`:
Returns a list of of label objects, each with a name field and an ID field.

- `POST /{project_id}/volumes/import`:
Import volumes as STL files.

- `GET /{project_id}/volumes/{volume_id}/export.{extension}`:
Export a particular volume. Currentl only exports AS STL are supported.

- `GET /{projec_id}/stats/cable-length`:
Get the top N largest skeletons. N can be specified using the 'n_skeletons'
parameter.

- `POST /{project_id}/volumes/skeleton-innervations`:
Get a list of all volume/skeleton combinations that intersect. Skeletons are
provided with a 'skeleton_ids' parameter. This can be constrained by volume
annotation, cable length and node count.

- `POST /{project_id}/volumes/`:
Previously only the GET method would be supported. With the introduction of an
optional `volume_ids` parameter, POST can be used as well. This parameter can
be used to constrain the returned set of volumes.

Modifications

- `POST /{project_id}/skeletons/node-label`:
The new `label_names` parameter accepts a list of strings that an be used
instead of or together with label IDs to get skeletons with nodes that have
particular labels.

- `GET /{project_id}/stacks/{stack_id}/info`:
Now includes the `comment` field for each stack.

- `GET /{project_id}/connectors/`:
The partner data returned when the `with_partners` is set, includes now
additionally the creator of the link and the creation and edition time (in
epoch format).

- `GET /user-list`:
Accepts a new boolean parameter `with_passwords` to export encrypted
passwords, which in turn can be imported into other CATMAID instances. This
requires the requesting user to be a superuser.

- `GET /{project_id}/skeleton/{skeleton_id}/swc`:
A new optional parameter `soma_markers` can be supplied. It is a list of
'tag:soma', 'radius:<n>' and 'root'. These are conditions for when a node is
marked as soma in the SWC export. The first matching condition in this order
wins.

- `GET /{project_id}/volumes/`:
The return format changed. Instead of a list of volume objects an object with
a 'columns' field and a 'data' field are returned. The data fields contains a
list of lists, with each inner list being a volume. The entries are described
by the 'columns' field. Along with the already returned fields, annotations
are now retuned as well.

- `GET /{project_id}/volumes/`:
An optional `volume_ids` parameter can now be used and the POST method is
supported as well (to transfer larger volume ID lists). This parameter can be
used to constrain the returned set of volumes.

- `POST /{project_id}/skeletons/connectivity`:
A new optional option 'link_types' allows to specify which connectivity types
should be returned. By default 'incoming' and 'outgoing' is returned.
Additionally, the following options are allowed: gapjunction, abutting,
attachment, close_object. The return field names have also been adapted to
these parameters and match them. Instead of 'gapjunctions' and 'attachments',
the fields are now named 'gapjunction' and 'attachment'.

- `GET /{project_id}/annotations/`:
Supports now an optional boolean parameter named `simple`, which returns only
names and IDs and is therefore much faster.

Deprecations

None.

Removals

None.

2018.07.19

Additions

- `POST /{project_ids}/connectors/links`:
Accepts the same parameters as the GET variant, but allows for larger
skeleton_ids list.

- `POST /{project_ids}/skeletons/in-bounding-box`:
Accepts the same parameters as the GET variant, but allows for larger
skeleton_ids list.

- `GET /{project_id}/volumes/entities`:
Return a mapping of volume IDs to their respective class instance ID.

Modifications

- `GET /{project_id}/skeletons/in-bounding-box`:
The `min_nodes` and `min_cable` parameters can be used to further filter the
result. The `src` parameter can be 'postgis2d' and 'postgis3d', with the
former being the default spatial query type. The `volume_id` parameter can
optionally be used to return the skeletons in the bounding box of a specific
volume, alternative to explicit bounding box. Optionally, the `skeleton_ids`
parameter can provide a list of skeletons to test for intersections. Without
it, all skeletons in the project are considered.

- `GET /{project_id}/skeletons/{skeleton_id}/review`:
The user ID of each node is now returned as well.

- `POST|GET /{project_id}/node/list`:
Offers a new optional parameter
"n_largest_skeletons_limit", which can be used to constrain the returned
neurons to only those of the N largest skeletons in the result set.

- `POST /{project_id}/skeleton/connectivity_matrix`:
The new parameter 'with_locations' includes more data in the result set. Each
connector and its contributions to the link count is returned as well.

- `GET|POST /{project_id}/skeletons/compact-detail`:
The new parameter 'format' can now be used to returned the skeleton data in
different formats. Supported are 'msgpack' and 'json'.

- `GET /{project_id}/skeletons/{skeleton_id}/compact-detail`:
The new parameter 'format' can now be used to returned the skeleton data in
different formats. Supported are 'msgpack' and 'json'.

- `POST /{project_id}/treenodes/compact-detail`:
The `treenode_ids` parameter is now optional and two new parameters can be
used instead: `label_ids` and `label_names`. They can be used to constrain the
result set by their labels. This effectively allows querying treenodes and
skeletons based on linked labels.

- `GET /{project_id/samplers/{sampler_id}/domains/`:
Returns now also end nodes for each domain.

Deprecations

None.

Removals

None.

2018.04.15

Additions

- `POST /{project_id}/treenodes/compact-detail`:
Retrieve treenode information for multiple nodes in the format of regular node
queries, accepts a parameter "treenode_ids".

- `GET /{project_id}/treenodes/{treenode_id}/compact-detail`:
Retrieve treenode information for a single node.

- `DELETE /{project_id}/landmarks/{landmark_id}/groups/{group_id}/`:
Delete landmark location links to the same locations from a landmark and
group.

- `PUT /{project_id}/landmarks/groups/links/`:
Add new links between groups, e.g. "adjacent_to".

- `DELETE /{project_id}/landmarks/groups/links/{link_id}/`:
Delete a single landmark group link.

- `GET /{project_id}/landmarks/groups/{landmarkgroup_id}/transitively-linked`:
Get a list of landmark groups that are linked to the referenced group using a
passed in relation, respects reciprocal relations.

- `POST /{project_id}/landmarks/groups/materialize`:
Create pairs of landmark groups along with their landmarks based on a simple
description.

- `GET /{project_id}/skeletons/cable-length`:
Get the cable length for multiple skeletons using the skeleton_ids parameter.

- `GET /{project_id}/skeletons/{skeleton_id}/cable-length`:
Get the cable length for a single skeleton.

- `GET /{project_id}/skeletons/in-bounding-box`:
Get IDs of all skeltons that intersect with the passed in bounding box.

Modifications

- `POST /{project_id}/annotations/query-targets`:
Accepts now a "annotation_reference" parameter which can either be 'id'
(default) or 'name'. If it is set to 'name', all annotation references in
annotated_with, not_annotated_with and sub_annotated_with are interpreted as
annotation names instead of IDs.

- `POST /{project_id}/skeleton/split`:
Returns now also the split location as fields x, y and z.

- `POST|GET /{project_id}/node/list` offers a new optional parameter
"with_relation_map", which controls which relation map information is
returned. Can be 'none', 'used' and all with 'used' being the default.

- `GET /{project_id}/landmarks/groups/`:
Accepts the new optional parameter "with_links", "with_names" and
"with_relations", to include links between landmark groups along with a list
of linked landmark names and a map of used relations

- `GET /{project_id}/landmarks/groups/{group_id}/`:
Accepts the new optional parameter "with_names" to include landmark names
along with linked landmark locations.

- `GET /{project_id}/stats/user-history`:
Returns actual node count in "new_treenodes" field, cable length is returned
in "new_cable_length" field (previously new_treenodes).

Deprecations

None.

Removals

None.

Page 1 of 7

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.