API endpoint that allows CustomProperties to be viewed or edited.

» click to learn about Filtering, Ordering and more...

Accepted filters:

- id: ID (exact)
- created: Created (exact)
- modified: Modified (exact)
- name: Name starts with (istartswith)
- description: Description contains (icontains)
- query: Search filter on the name property (exact)
- owner: Owner Username (exact)
- owned_by: Filter on list of owned by group names [OR] (exact)
- public: Public (exact)
- type: Type (exact)
- label: Label (exact)
- model_name: Model name (exact)
- mandatory: Mandatory (exact)
- created_by: Created by Username (exact)
- modified_by: Modified by Username (exact)
- model_type: Model type (exact)

Advanced Filtering

You can also filter using a json object to process all search parameters. Currently this filter supports the syntax as produced/used by the http://summitroute.github.io/react-structured-filter/ search UI.

Example

?query_expression={"category":"name","operator":"contains","value":"Y00"},
       {"category":"amount","operator":">","value":"10"},
       {"category":"type__name","operator":"exact","value":"ANTIBODY"}
» more info about the query_expression param..

Preset mappings

- created_by: created_by__username
- modified_by: modified_by__username
- owner: owner__username
- owned_by: owned_by__name
- deleted: <function filter_deleted at 0x7f45063b6710>
- deleted_by: deleted_by__username
- notes: notes__content
- cv_category: cv_category__name
- field_meta: field_meta__name
- mandatory_owned_by: mandatory_owned_by__name
- user: user__username
- credential: credential__name
- workflowversion: workflowversion__name
- workflowrun: workflowrun__name
- dataset: dataset__name

Operators

- ==
- =
- >=
- >
- <=
- <
- contains
- icontains
- exact
- iexact
- startswith
- istartswith
- endswith
- iendswith

Permission filtering

Based on the current logged in user you can filter for objects that have a particular permission set:

- can_change: True/False, show objects that you can change
- can_delete: True/False, show objects that you can delete

# not applicable - will raise NotAcceptable:
- can_view: as this is always True, you can only view items you are allowed to see

Ordering

You can order on practically any field even spanning relations.

# reverse order on owner username
?ordering=-owner

# order on related field
?ordering=category__version
API endpoint that allows CustomProperties to be viewed or edited.

None

The default modelviewset used in this project


Add JSONPatch like functionality to bulk update items.


### Bulk Delete

This view also allows for one to bulk delete items. The url needs to be appended by ``/bulk_delete/`` and the ids
need to be given by multiple query_params:

```
{current_url}/bulk_delete/?id=<id_1>,id=<id_2>
```
GET /api/v2/custompropertytypes/?format=api&ordering=-public
HTTP 200 OK
Allow: GET, POST, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "previous": null,
    "next": "https://labid-demo.embl.de/api/v2/custompropertytypes/?format=api&ordering=-public&page=2",
    "current": 1,
    "total": 67,
    "total_pages": 4,
    "results": [
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/906f9ca1-6081-47e1-9158-3341626d7ce3/?format=api",
            "id": "906f9ca1-6081-47e1-9158-3341626d7ce3",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:22:51.100751+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:22:51.100887+01:00",
                "category": "property"
            },
            "name": "base_material",
            "choice_label": "base_material",
            "description": "",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Base Material",
            "help_text": "",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "f2e3ee3b-f454-4e35-81c7-357e7524b45e",
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=f2e3ee3b-f454-4e35-81c7-357e7524b45e&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "EMGRID",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/bc9017bf-9684-4d6c-afcd-383e5a2c670a/?format=api",
            "id": "bc9017bf-9684-4d6c-afcd-383e5a2c670a",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:22:51.106313+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:22:51.106401+01:00",
                "category": "property"
            },
            "name": "support_film",
            "choice_label": "support_film",
            "description": "",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Support Film",
            "help_text": "",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "2d488eb0-5d33-4255-9afe-8028114a9996",
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=2d488eb0-5d33-4255-9afe-8028114a9996&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "EMGRID",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/a672dce3-d5e0-42fa-8d27-02b8e3da4f5f/?format=api",
            "id": "a672dce3-d5e0-42fa-8d27-02b8e3da4f5f",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:22:51.111640+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:22:51.111734+01:00",
                "category": "property"
            },
            "name": "hole_geometry",
            "choice_label": "hole_geometry",
            "description": "",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Hole Geometry",
            "help_text": "",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "922cedc4-ce3d-4b8f-995b-c8d44cebb82e",
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=922cedc4-ce3d-4b8f-995b-c8d44cebb82e&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "EMGRID",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/2ea838f2-fad7-4d73-b892-7568b4465514/?format=api",
            "id": "2ea838f2-fad7-4d73-b892-7568b4465514",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:22:51.116976+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:22:51.117059+01:00",
                "category": "property"
            },
            "name": "additional_film",
            "choice_label": "additional_film",
            "description": "",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Additional Film",
            "help_text": "",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "906c09a2-8534-4991-93f0-5037090c2f52",
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=906c09a2-8534-4991-93f0-5037090c2f52&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "EMGRID",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/68be694c-b7ff-44ba-b6bf-baf7ec4eac7d/?format=api",
            "id": "68be694c-b7ff-44ba-b6bf-baf7ec4eac7d",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:31.994128+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:31.994256+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_ab_type",
            "choice_label": "stocks_antibody_ab_type",
            "description": "Indicates if this antibody is a primary or a secondary Ab.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Ab Type",
            "help_text": "Indicates if this antibody is a primary or a secondary Ab.",
            "default": "PRIMARY",
            "has_default": true,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": true,
            "validations": [
                {
                    "name": "required",
                    "arguments": [],
                    "error_message": "This field is mandatory."
                }
            ],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": [
                [
                    "PRIMARY",
                    "PRIMARY"
                ],
                [
                    "SECONDARY",
                    "SECONDARY"
                ]
            ],
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "SELECT",
            "preferred_edit_widget": "SELECT",
            "preferred_list_widget": "SELECT",
            "field_meta": "b9bb221d-f305-4530-aeb2-a316165b2417",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/d601ae36-0ea1-4492-8c59-5a26836a9a52/?format=api",
            "id": "d601ae36-0ea1-4492-8c59-5a26836a9a52",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.002621+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.002711+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_isotype",
            "choice_label": "stocks_antibody_isotype",
            "description": "Isotype of this Antibody.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Isotype",
            "help_text": "Isotype of this Antibody.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "6a7a3dae-1092-4a46-b5dd-809e00aab5ae",
            "mandatory": true,
            "validations": [
                {
                    "name": "required",
                    "arguments": [],
                    "error_message": "This field is mandatory."
                }
            ],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=6a7a3dae-1092-4a46-b5dd-809e00aab5ae&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/3996da29-e4c0-436d-8709-d2361693ab8b/?format=api",
            "id": "3996da29-e4c0-436d-8709-d2361693ab8b",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.009152+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.009230+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_clonality",
            "choice_label": "stocks_antibody_clonality",
            "description": "Select one.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Clonality",
            "help_text": "Select one.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "cea444a9-df98-4a6e-b6b8-19c9aeae5544",
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=cea444a9-df98-4a6e-b6b8-19c9aeae5544&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/84ba63ef-c37c-4cf3-9d54-af682948c62d/?format=api",
            "id": "84ba63ef-c37c-4cf3-9d54-af682948c62d",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.015899+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.015977+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_ig_species",
            "choice_label": "stocks_antibody_ig_species",
            "description": "Organism in which the antibody/immunoglobulin was raised.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Ig Organism",
            "help_text": "Organism in which the antibody/immunoglobulin was raised.",
            "default": "Mouse",
            "has_default": true,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "ecb49b95-a517-4019-884f-d9736d9583f4",
            "mandatory": true,
            "validations": [
                {
                    "name": "required",
                    "arguments": [],
                    "error_message": "This field is mandatory."
                }
            ],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=ecb49b95-a517-4019-884f-d9736d9583f4&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/e031696a-1041-4976-9983-185b91444d42/?format=api",
            "id": "e031696a-1041-4976-9983-185b91444d42",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.020809+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.020888+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_target_species",
            "choice_label": "stocks_antibody_target_species",
            "description": "List of organisms specifically targetted by this antibody/immunoglobulin.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Target Organisms",
            "help_text": "List of organisms specifically targetted by this antibody/immunoglobulin.",
            "default": "",
            "has_default": false,
            "multiple": true,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "ecb49b95-a517-4019-884f-d9736d9583f4",
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=ecb49b95-a517-4019-884f-d9736d9583f4&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/0a26623f-8488-460c-ba90-1415df50927b/?format=api",
            "id": "0a26623f-8488-460c-ba90-1415df50927b",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.025592+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.025684+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_conjugate",
            "choice_label": "stocks_antibody_conjugate",
            "description": "Indicates the compound that is conjugated to this antibody.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Conjugate",
            "help_text": "Indicates the compound that is conjugated to this antibody.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/6720a3b0-4a9f-49f6-80c6-2706d80fe2e7/?format=api",
            "id": "6720a3b0-4a9f-49f6-80c6-2706d80fe2e7",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.032032+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.032110+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_application",
            "choice_label": "stocks_antibody_application",
            "description": "Select one.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Application",
            "help_text": "Select one.",
            "default": "",
            "has_default": false,
            "multiple": true,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "1815c000-9c89-4e04-8b19-a0838233c638",
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=1815c000-9c89-4e04-8b19-a0838233c638&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/266ee96b-ecca-496e-976f-5f63a5aa2092/?format=api",
            "id": "266ee96b-ecca-496e-976f-5f63a5aa2092",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.036928+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.037008+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_dilution",
            "choice_label": "stocks_antibody_dilution",
            "description": "Dilution used.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Dilution used",
            "help_text": "Dilution used.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/4b4c3a7f-8c54-46f4-89ba-b5e41769ff82/?format=api",
            "id": "4b4c3a7f-8c54-46f4-89ba-b5e41769ff82",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.042017+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.042104+01:00",
                "category": "property"
            },
            "name": "stocks_antibody_clone_name",
            "choice_label": "stocks_antibody_clone_name",
            "description": "The name/identifier given by the manufacturer to the hybridoma clone producing this antibody.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Clone name",
            "help_text": "The name/identifier given by the manufacturer to the hybridoma clone producing this antibody.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.consumable",
            "model_type": "ANTIBODY",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/36b82292-75f3-41db-9643-58167079ce48/?format=api",
            "id": "36b82292-75f3-41db-9643-58167079ce48",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.117723+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.117805+01:00",
                "category": "property"
            },
            "name": "stocks_enzyme_category",
            "choice_label": "stocks_enzyme_category",
            "description": "Category or type of this enzyme.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Category",
            "help_text": "Category or type of this enzyme.",
            "default": "Polymerase",
            "has_default": true,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "66252dc2-7d24-4fb8-8068-083216dda958",
            "mandatory": true,
            "validations": [
                {
                    "name": "required",
                    "arguments": [],
                    "error_message": "This field is mandatory."
                }
            ],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=66252dc2-7d24-4fb8-8068-083216dda958&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "ENZYME",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/3e1662aa-b429-43cb-a648-bed701860481/?format=api",
            "id": "3e1662aa-b429-43cb-a648-bed701860481",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.123694+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.123777+01:00",
                "category": "property"
            },
            "name": "stocks_enzyme_ec_number",
            "choice_label": "stocks_enzyme_ec_number",
            "description": "The EC number of the Enzyme Class, see e.g. https://enzyme.expasy.org/",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "EC Number",
            "help_text": "The EC number of the Enzyme Class, see e.g. https://enzyme.expasy.org/",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.consumable",
            "model_type": "ENZYME",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/11151ada-1ea6-4282-97d9-6d46ee51788a/?format=api",
            "id": "11151ada-1ea6-4282-97d9-6d46ee51788a",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.612997+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.613082+01:00",
                "category": "property"
            },
            "name": "stocks_fish_transgenic_insert_description",
            "choice_label": "stocks_fish_transgenic_insert_description",
            "description": "Free text description of the transgenic material inserted in this specimen.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Transgenic Insert Description",
            "help_text": "Free text description of the transgenic material inserted in this specimen.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.specimen",
            "model_type": "FISH",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/65ea50d1-d36c-4f58-a2d3-2a7da3dc84a7/?format=api",
            "id": "65ea50d1-d36c-4f58-a2d3-2a7da3dc84a7",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.137721+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.137800+01:00",
                "category": "property"
            },
            "name": "stocks_oligo_sequence",
            "choice_label": "stocks_oligo_sequence",
            "description": "Primer sequence, only IUPAC codes are accepted.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Sequence",
            "help_text": "Primer sequence, only IUPAC codes are accepted.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": true,
            "validations": [
                {
                    "name": "required",
                    "arguments": [],
                    "error_message": "This field is mandatory."
                }
            ],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.consumable",
            "model_type": "OLIGO",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/0602cca6-fec8-4af5-9c30-77fa44054e8b/?format=api",
            "id": "0602cca6-fec8-4af5-9c30-77fa44054e8b",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.186764+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.186843+01:00",
                "category": "property"
            },
            "name": "stocks_oligo_polymer_type",
            "choice_label": "stocks_oligo_polymer_type",
            "description": "Polymer type, e.g. DNA",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "VOCABULARYTERM",
            "label": "Polymer Type",
            "help_text": "Polymer type, e.g. DNA",
            "default": "DNA",
            "has_default": true,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": "45cf38b8-dbd4-4965-8f9c-11b4fcdfbeb1",
            "mandatory": true,
            "validations": [
                {
                    "name": "required",
                    "arguments": [],
                    "error_message": "This field is mandatory."
                }
            ],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "label",
            "choices_api": "https://labid-demo.embl.de/api/v2/vocabularies/terms/?category_id=45cf38b8-dbd4-4965-8f9c-11b4fcdfbeb1&fields=id%2Clabel&ordering=name&page_size=20&response_format=flat",
            "preferred_view_widget": "CVVIEW",
            "preferred_edit_widget": "CVEDIT",
            "preferred_list_widget": "CSVTEXT",
            "field_meta": "ad0a3aab-0680-4e2b-b943-987013ba376b",
            "model_name": "stocks.consumable",
            "model_type": "OLIGO",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/2c7f5d9a-7de3-4c94-a1cb-e7bbad7f854b/?format=api",
            "id": "2c7f5d9a-7de3-4c94-a1cb-e7bbad7f854b",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:31:32.192017+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:31:32.192098+01:00",
                "category": "property"
            },
            "name": "stocks_oligo_modifications",
            "choice_label": "stocks_oligo_modifications",
            "description": "Modifications, free text.",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Modifications",
            "help_text": "Modifications, free text.",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "OPTIONAL",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.consumable",
            "model_type": "OLIGO",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        },
        {
            "url": "https://labid-demo.embl.de/api/v2/custompropertytypes/3ffcf012-f369-46ef-9796-e7fd98f3f49d/?format=api",
            "id": "3ffcf012-f369-46ef-9796-e7fd98f3f49d",
            "created_by": "admin",
            "modified_by": "admin",
            "created": {
                "name": "created",
                "value": "2025-12-16T09:22:51.089400+01:00",
                "category": "property"
            },
            "modified": {
                "name": "modified",
                "value": "2025-12-16T09:22:51.089603+01:00",
                "category": "property"
            },
            "name": "mesh",
            "choice_label": "mesh",
            "description": "",
            "public": false,
            "permissions": {
                "public": false,
                "actions": {}
            },
            "unit_choices_api": null,
            "type": "TEXT",
            "label": "Mesh",
            "help_text": "",
            "default": "",
            "has_default": false,
            "multiple": false,
            "is_protocol_parameter": false,
            "autocomplete": "",
            "searchable": true,
            "readonly": false,
            "sortable": true,
            "cv_category": null,
            "mandatory": false,
            "validations": [],
            "visibility": "ALWAYS",
            "edit_visibility": "ALWAYS",
            "list_visibility": "ALWAYS",
            "value_choices": null,
            "choices_value": "id",
            "choices_label": "name",
            "choices_api": null,
            "preferred_view_widget": "TEXT",
            "preferred_edit_widget": "TEXTINPUT",
            "preferred_list_widget": "TEXT",
            "field_meta": "ca1f6072-9c3a-4b1c-8e1c-14e53370e4f4",
            "model_name": "stocks.consumable",
            "model_type": "EMGRID",
            "owner": "admin",
            "owned_by": "SYSTEM_GROUP"
        }
    ]
}