---
updatedAt: 2026-05-27T10:25:03.000Z
agentTools:
  projectIndex: https://docs.v7labs.com/llms.txt
---

# Register locally stored data to Darwin

Register locally stored data with Darwin for upload. The request response will contain an upload ID for each item. After this step, the upload needs to be signed, the upload URL from this response used, and the upload confirmed.

# OpenAPI definition

```json
{
  "components": {
    "schemas": {
      "Common.DatasetSlug": {
        "description": "Dataset's slugified name",
        "example": "my-dataset",
        "title": "Common.DatasetSlug",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.Common.DatasetSlug",
        "x-validate": null
      },
      "DatasetsV2.Common.LayersStack": {
        "description": "Stack of slots representing different layers of the same media file.",
        "items": {
          "$ref": "#/components/schemas/DatasetsV2.Common.SlotName"
        },
        "maxItems": 128,
        "minItems": 1,
        "title": "DatasetsV2.Common.LayersStack",
        "type": "array",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.LayersStack",
        "x-validate": null
      },
      "DatasetsV2.Common.SlotType": {
        "description": "When type is ommited, it's gonna be infered from the slot's extension if possible.",
        "enum": [
          "image",
          "video",
          "pdf",
          "dicom"
        ],
        "title": "DatasetsV2.Common.SlotType",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.SlotType",
        "x-validate": null
      },
      "DatasetsV2.Common.ItemLayoutV1": {
        "additionalProperties": false,
        "description": "Object describing Item's layout. Version 1.",
        "example": {
          "slots": [
            "1",
            "2",
            "3"
          ],
          "type": "grid",
          "version": 1
        },
        "properties": {
          "slots": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.Common.SlotName"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "type": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemLayout.ViewType"
          },
          "version": {
            "description": "Layout version.",
            "enum": [
              1
            ],
            "type": "integer",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "version",
          "type",
          "slots"
        ],
        "title": "DatasetsV2.Common.ItemLayoutV1",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ItemLayoutV1",
        "x-validate": null
      },
      "DatasetsV2.Common.SlotAsFrames": {
        "default": false,
        "description": "When set, processes the video as individual frames creating Item for each frame.",
        "title": "DatasetsV2.Common.SlotAsFrames",
        "type": "boolean",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.SlotAsFrames",
        "x-validate": null
      },
      "DatasetsV2.Common.ItemLayout.ViewType": {
        "description": "View type.",
        "enum": [
          "grid",
          "horizontal",
          "vertical",
          "simple"
        ],
        "title": "DatasetsV2.Common.ItemLayout.ViewType",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ItemLayout.ViewType",
        "x-validate": null
      },
      "DatasetsV2.Common.ItemLayoutV2": {
        "additionalProperties": false,
        "description": "Object describing Item's layout. Version 2.",
        "example": {
          "layout_shape": [
            2,
            2
          ],
          "slots": [
            "1",
            "2",
            "3"
          ],
          "type": "grid",
          "version": 2
        },
        "properties": {
          "layout_shape": {
            "items": {
              "minimum": 1,
              "type": "integer",
              "x-struct": null,
              "x-validate": null
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "slots": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.Common.SlotName"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "type": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemLayout.ViewType"
          },
          "version": {
            "description": "Layout version.",
            "enum": [
              2
            ],
            "type": "integer",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "version",
          "type",
          "slots"
        ],
        "title": "DatasetsV2.Common.ItemLayoutV2",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ItemLayoutV2",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.BlockedItem": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Common.UUID"
          },
          "name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemName"
          },
          "path": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemPath"
          },
          "slots": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.BlockedSlot"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "name",
          "path",
          "slots"
        ],
        "title": "DatasetsV2.ItemRegistration.BlockedItem",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.BlockedItem",
        "x-validate": null
      },
      "DatasetsV2.Common.ExtractViews": {
        "default": false,
        "description": "When set, this will extract axial, sagittal and coronal views for a 3D volume.",
        "title": "DatasetsV2.Common.ExtractViews",
        "type": "boolean",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ExtractViews",
        "x-validate": null
      },
      "DatasetsV2.Common.CustomSlotFramerate": {
        "description": "Framerate which Darwin should extract frames at.",
        "title": "DatasetsV2.Common.CustomSlotFramerate",
        "type": "number",
        "x-struct": null,
        "x-validate": null
      },
      "DatasetsV2.Common.FileName": {
        "description": "Name of the File. This will be included in exports for easier Item tracking.",
        "example": "my_image.jpg",
        "pattern": "^[^/]+$",
        "title": "DatasetsV2.Common.FileName",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.FileName",
        "x-validate": null
      },
      "DatasetsV2.Common.Tags": {
        "description": "Tags to associate with the individual Slot. Use object format to attach tags with text values.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.TagsList"
          },
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.TagsObject"
          }
        ],
        "title": "DatasetsV2.Common.Tags",
        "x-struct": null,
        "x-validate": null
      },
      "JsonErrorResponse": {
        "properties": {
          "errors": {
            "items": {
              "properties": {
                "detail": {
                  "example": "null value where string expected",
                  "type": "string",
                  "x-struct": null,
                  "x-validate": null
                },
                "source": {
                  "properties": {
                    "pointer": {
                      "example": "/data/attributes/petName",
                      "type": "string",
                      "x-struct": null,
                      "x-validate": null
                    }
                  },
                  "required": [
                    "pointer"
                  ],
                  "type": "object",
                  "x-struct": null,
                  "x-validate": null
                },
                "title": {
                  "example": "Invalid value",
                  "type": "string",
                  "x-struct": null,
                  "x-validate": null
                }
              },
              "required": [
                "title",
                "source",
                "detail"
              ],
              "type": "object",
              "x-struct": null,
              "x-validate": null
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "errors"
        ],
        "title": "JsonErrorResponse",
        "type": "object",
        "x-struct": "Elixir.OpenApiSpex.JsonErrorResponse",
        "x-validate": null
      },
      "DatasetsV2.Common.ItemLayout": {
        "nullable": true,
        "oneOf": [
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemLayoutV3"
          },
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemLayoutV2"
          },
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemLayoutV1"
          }
        ],
        "title": "DatasetsV2.Common.ItemLayout",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ItemLayout",
        "x-validate": null
      },
      "DatasetsV2.Common.NativeSlotFramerate": {
        "description": "Instructs Darwin that it should extract frames at native framerate.",
        "enum": [
          "native"
        ],
        "title": "DatasetsV2.Common.NativeSlotFramerate",
        "type": "string",
        "x-struct": null,
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.NewCompositeItem": {
        "additionalProperties": false,
        "description": "Definition of 'composite' Item that can hold multiple Slots.",
        "properties": {
          "layout": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemLayout"
          },
          "name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemName"
          },
          "path": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemPath"
          },
          "slots": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.NewSlot"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "tags": {
            "$ref": "#/components/schemas/DatasetsV2.Common.Tags"
          }
        },
        "required": [
          "name",
          "slots"
        ],
        "title": "DatasetsV2.ItemRegistration.NewCompositeItem",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.NewCompositeItem",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.NewSimpleItem": {
        "additionalProperties": false,
        "description": "Definition of 'simple' Item that implicitly hold only a single Slot.",
        "properties": {
          "as_frames": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotAsFrames"
          },
          "extract_views": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ExtractViews"
          },
          "fps": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotFramerate"
          },
          "metadata": {
            "type": "object",
            "x-struct": null,
            "x-validate": null
          },
          "name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemName"
          },
          "path": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemPath"
          },
          "tags": {
            "$ref": "#/components/schemas/DatasetsV2.Common.Tags"
          },
          "type": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotType"
          }
        },
        "required": [
          "name"
        ],
        "title": "DatasetsV2.ItemRegistration.NewSimpleItem",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.NewSimpleItem",
        "x-validate": null
      },
      "Common.APIError": {
        "additionalProperties": false,
        "properties": {
          "errors": {
            "properties": {
              "code": {
                "enum": [
                  "OUT_OF_ANNOTATION_CREDITS",
                  "NOT_ARCHIVED",
                  "ASSIGN_WORKFLOW_TEMPLATE_UNAVAILABLE",
                  "WORKFLOW_UPDATE_FAILURE",
                  "GATED_FEATURE_SSO_AND_SAML",
                  "UPLOAD_DISABLED",
                  "ITEM_REGISTRATION_LIMIT_EXCEEDED",
                  "SSO_REQUIRED",
                  "TOO_MANY_PENDING_EXPORTS",
                  "STORAGE_VALIDATION_FAILED",
                  "INVALID_ITEM_LAYOUT",
                  "WORKFLOW_ALREADY_COMPLETE",
                  "SUBSCRIPTION_INCOMPLETE_EXPIRED",
                  "UNIQUE_CONSTRAINT_VIOLATION",
                  "ITEM_IS_NOT_READY_FOR_ANNOTATIONS_IMPORT",
                  "NO_EXTERNAL_STORAGE_SET_FOR_TEAM",
                  "NO_DEFAULT_WORKFLOW",
                  "PLATFORM_TFA_ENFORCEMENT_LOCKED",
                  "STORAGE_LIMIT_REACHED",
                  "FEATURE_FLAG_DISABLED",
                  "MISSING_FILE_TYPE",
                  "DUPLICATED_FILE_SLOT",
                  "NO_AVAILABLE_WORK",
                  "MODIFYING_COMPLETE_STAGE",
                  "ENFORCING_SSO_BLOCKS_REGULAR_MEMBERSHIPS",
                  "INVALID_SAML_REQUEST",
                  "MISSING_PARAMETERS",
                  "INCORRECT_CLASS_USAGE",
                  "GROUND_TRUTH_NAME_DUPLICATE",
                  "NOT_AUTHENTICATED",
                  "TOO_MANY_ACTIVE_REPORT_JOBS",
                  "NOT_CURRENT_STAGE",
                  "INVALID_2FA_TOKEN",
                  "DATASET_IN_WORKFLOW",
                  "INCOMPATIBLE_STAGE_TYPE",
                  "TARGET_IN_DIFFERENT_DATASET",
                  "ASSIGN_ASSIGNMENT_INVALID",
                  "INVALID_ANNOTATION_DATA",
                  "OUT_OF_SEATS",
                  "STAGE_MISSING_ASSIGNEE",
                  "NO_ANNOTATIONS_ON_SOURCE_ITEM",
                  "REVIEW_STATUS_NOT_SET",
                  "NOT_FOUND",
                  "SUBSCRIPTION_PAST_DUE",
                  "EXTERNAL_STORAGE_LIMIT_REACHED",
                  "UNPROCESSED_VIDEO_REGISTRATION_DISABLED",
                  "GATED_FEATURE_TFA_ENFORCEMENT",
                  "NO_ACTIVE_WORKFLOW",
                  "USER_NOT_FOUND_FOR_ACTOR",
                  "GROUND_TRUTH_VERSIONING_NOT_SUPPORTED",
                  "CLASSES_USED_IN_WORKFLOW",
                  "DUPLICATED_OBJECT_REJECTED",
                  "SUBSCRIPTION_UNPAID",
                  "MULTIBITRATE_STREAM_NOT_AVAILABLE",
                  "TIMEOUT",
                  "TARGET_STAGE_NOT_CURRENT",
                  "BAD_REQUEST",
                  "MULTIPLE_SLOTS_IN_AS_FRAMES_MODE",
                  "INCLUDES_RASTER_LAYER",
                  "OUT_OF_SUBSCRIBED_STORAGE",
                  "REPORT_JOB_NOT_FINISHED",
                  "ASSIGN_ATTRIBUTES_INVALID",
                  "NOT_AUTHORIZED",
                  "SUBSCRIPTION_CANCELLED",
                  "DATASET_ERROR",
                  "STORAGE_NOT_FOUND",
                  "NO_WORKSPACES_AVAILABLE",
                  "TARGET_REVIEW_STAGE_READONLY",
                  "TOO_MANY_ATTEMPTS",
                  "OUT_OF_SUBSCRIBED_ANNOTATION_CREDITS",
                  "SSO_SIGNUP_REQUIRED",
                  "TOO_MANY_PENDING_AI_REVIEW_BLUEPRINTS",
                  "NOTHING_TO_EXPORT",
                  "TARGET_STAGE_TYPE_INVALID",
                  "PAYMENT_NOT_SETUP",
                  "AWS_MARKETPLACE_FULFILLMENT_INCOMPLETE",
                  "MISSING_SELECT_ALL_FILTER",
                  "DUPLICATED_ITEM_FULL_PATH",
                  "UPLOAD_VIDEO_READONLY_STORAGE_MISSING_FRAME_SPECS",
                  "PATH_ALREADY_TAKEN",
                  "TARGET_ALREADY_ANNOTATED",
                  "FILTER_VALIDATION_ERROR",
                  "OPERATION_ALREADY_IN_PROGRESS",
                  "DATASET_NOT_FOUND",
                  "INVALID_URL",
                  "ALREADY_IN_WORKFLOW",
                  "ASSIGN_NOT_ALL_ITEMS_ASSIGNABLE",
                  "INCOMPATIBLE_DATASET_VERSION",
                  "ALREADY_HAS_ANNOTATIONS",
                  "BILLING_ADDRESS_INFO_MISSING",
                  "INVALID_REQUEST",
                  "GATED_FEATURE_EXTERNAL_MODEL_REGISTRATION"
                ],
                "type": "string",
                "x-struct": null,
                "x-validate": null
              },
              "detail": {
                "nullable": true,
                "type": "object",
                "x-struct": null,
                "x-validate": null
              },
              "message": {
                "example": "Error message",
                "nullable": true,
                "type": "string",
                "x-struct": null,
                "x-validate": null
              },
              "status": {
                "example": 422,
                "nullable": false,
                "type": "integer",
                "x-struct": null,
                "x-validate": null
              }
            },
            "required": [
              "message"
            ],
            "type": "object",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "errors"
        ],
        "title": "Common.APIError",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.Common.APIError",
        "x-validate": null
      },
      "DatasetsV2.Common.ItemLayoutV3": {
        "additionalProperties": false,
        "description": "Object describing Item's layout. Version 3.",
        "example": {
          "slots_grid": [
            [
              [
                "1",
                "2"
              ],
              "3"
            ],
            [
              "4"
            ]
          ],
          "version": 3
        },
        "properties": {
          "slots_grid": {
            "description": "3D grid of slots. Max dimensions are 4x4x128.",
            "items": {
              "description": "Grid's row.",
              "items": {
                "$ref": "#/components/schemas/DatasetsV2.Common.SlotsGridCell"
              },
              "maxItems": 4,
              "minItems": 1,
              "type": "array",
              "x-struct": null,
              "x-validate": null
            },
            "maxItems": 4,
            "minItems": 1,
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "version": {
            "description": "Layout version.",
            "enum": [
              3
            ],
            "type": "integer",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "version",
          "slots_grid"
        ],
        "title": "DatasetsV2.Common.ItemLayoutV3",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ItemLayoutV3",
        "x-validate": null
      },
      "DatasetsV2.Common.SlotsGridCell": {
        "anyOf": [
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotName"
          },
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.LayersStack"
          }
        ],
        "title": "DatasetsV2.Common.SlotsGridCell",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.SlotsGridCell",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.TaggingErrors": {
        "additionalProperties": false,
        "properties": {
          "MISSING_TEXT_FOR_TAGS": {
            "items": {
              "description": "class name",
              "type": "string",
              "x-struct": null,
              "x-validate": null
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "UNKNOWN_TAGS": {
            "items": {
              "description": "class name",
              "type": "string",
              "x-struct": null,
              "x-validate": null
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          }
        },
        "title": "DatasetsV2.ItemRegistration.TaggingErrors",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.TaggingErrors",
        "x-validate": null
      },
      "DatasetsV2.Common.FileSize": {
        "default": 0,
        "description": "File size in bytes.",
        "example": 500,
        "title": "DatasetsV2.Common.FileSize",
        "type": "integer",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.FileSize",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.NewItem": {
        "description": "Definition of registered Item. Can be either in composite format (allows for more then one Slot) or in simple format (enforces single Slot).",
        "oneOf": [
          {
            "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.NewCompositeItem"
          },
          {
            "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.NewSimpleItem"
          }
        ],
        "title": "DatasetsV2.ItemRegistration.NewItem",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.NewItem",
        "x-validate": null
      },
      "DatasetsV2.Common.ItemName": {
        "description": "Name of the Item.",
        "example": "some-item",
        "pattern": "^[^/]+$",
        "title": "DatasetsV2.Common.ItemName",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ItemName",
        "x-validate": null
      },
      "DatasetsV2.Common.TagsObject": {
        "additionalProperties": {
          "nullable": true,
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "description": "Tags to associate with the individual Slot. The map `key` is the class name of the tag. The map `value` is the Text attribute",
        "example": {
          "tag_class_name1": "This becomes the Text attribute on the tag.",
          "tag_class_name2": "This becomes the Text attribute on the tag."
        },
        "title": "DatasetsV2.Common.TagsObject",
        "type": "object",
        "x-struct": null,
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.AllowedSlot": {
        "additionalProperties": false,
        "properties": {
          "as_frames": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotAsFrames"
          },
          "errors": {
            "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.TaggingErrors"
          },
          "extract_views": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ExtractViews"
          },
          "file_name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.FileName"
          },
          "fps": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotFramerate"
          },
          "metadata": {
            "type": "object",
            "x-struct": null,
            "x-validate": null
          },
          "size_bytes": {
            "$ref": "#/components/schemas/DatasetsV2.Common.FileSize"
          },
          "slot_name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotName"
          },
          "type": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotType"
          },
          "upload_id": {
            "$ref": "#/components/schemas/Common.UUID"
          }
        },
        "required": [
          "file_name",
          "slot_name",
          "type",
          "upload_id"
        ],
        "title": "DatasetsV2.ItemRegistration.AllowedSlot",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.AllowedSlot",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.RegisterNewItemsRequest": {
        "additionalProperties": false,
        "description": "Request upload for new Items that are to be added to the Dataset.",
        "properties": {
          "dataset_slug": {
            "$ref": "#/components/schemas/Common.DatasetSlug"
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.NewItem"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "options": {
            "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.ItemsOptions"
          }
        },
        "required": [
          "items",
          "dataset_slug"
        ],
        "title": "DatasetsV2.ItemRegistration.RegisterNewItemsRequest",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.RegisterNewItemsRequest",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.RegistrationResponse": {
        "additionalProperties": false,
        "description": "Presents list of succesfully registered or blocked items/slots. Items can appear on both lists as each item can contain both blocked (existing) slots and new ones.",
        "properties": {
          "blocked_items": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.BlockedItem"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          },
          "items": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.AllowedItem"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "items",
          "blocked_items"
        ],
        "title": "DatasetsV2.ItemRegistration.RegistrationResponse",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.RegistrationResponse",
        "x-validate": null
      },
      "DatasetsV2.Common.TagsList": {
        "description": "The class names of the Tags to associate with the individual Slot.",
        "example": [
          "tag_class_name1",
          "tag_class_name2"
        ],
        "items": {
          "type": "string",
          "x-struct": null,
          "x-validate": null
        },
        "title": "DatasetsV2.Common.TagsList",
        "type": "array",
        "x-struct": null,
        "x-validate": null
      },
      "DatasetsV2.Common.SlotFramerate": {
        "description": "Framerate which Darwin should extract frames at. Should be either positive number or string 'native'.",
        "oneOf": [
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.NativeSlotFramerate"
          },
          {
            "$ref": "#/components/schemas/DatasetsV2.Common.CustomSlotFramerate"
          }
        ],
        "title": "DatasetsV2.Common.SlotFramerate",
        "x-struct": null,
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.NewSlot": {
        "additionalProperties": false,
        "description": "Object encapsulating a Slot to be uploaded to Dataset.",
        "properties": {
          "as_frames": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotAsFrames"
          },
          "extract_views": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ExtractViews"
          },
          "file_name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.FileName"
          },
          "fps": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotFramerate"
          },
          "metadata": {
            "type": "object",
            "x-struct": null,
            "x-validate": null
          },
          "slot_name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotName"
          },
          "tags": {
            "$ref": "#/components/schemas/DatasetsV2.Common.Tags"
          },
          "type": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotType"
          }
        },
        "required": [
          "file_name",
          "slot_name"
        ],
        "title": "DatasetsV2.ItemRegistration.NewSlot",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.NewSlot",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.AllowedItem": {
        "additionalProperties": false,
        "properties": {
          "id": {
            "$ref": "#/components/schemas/Common.UUID"
          },
          "name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemName"
          },
          "path": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ItemPath"
          },
          "slots": {
            "items": {
              "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.AllowedSlot"
            },
            "type": "array",
            "x-struct": null,
            "x-validate": null
          }
        },
        "required": [
          "name",
          "path",
          "slots"
        ],
        "title": "DatasetsV2.ItemRegistration.AllowedItem",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.AllowedItem",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.BlockedSlot": {
        "additionalProperties": false,
        "properties": {
          "as_frames": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotAsFrames"
          },
          "errors": {
            "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.TaggingErrors"
          },
          "extract_views": {
            "$ref": "#/components/schemas/DatasetsV2.Common.ExtractViews"
          },
          "file_name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.FileName"
          },
          "fps": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotFramerate"
          },
          "metadata": {
            "type": "object",
            "x-struct": null,
            "x-validate": null
          },
          "reason": {
            "enum": [
              "ALREADY_EXISTS",
              "FILE_UPLOAD_TIMEOUT",
              "FILE_UPLOAD_FAILED",
              "UNEXPECTED_ERROR",
              "ITEM_COUNT_LIMIT_EXCEEDED"
            ],
            "type": "string",
            "x-struct": null,
            "x-validate": null
          },
          "size_bytes": {
            "$ref": "#/components/schemas/DatasetsV2.Common.FileSize"
          },
          "slot_name": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotName"
          },
          "type": {
            "$ref": "#/components/schemas/DatasetsV2.Common.SlotType"
          }
        },
        "required": [
          "file_name",
          "slot_name",
          "reason"
        ],
        "title": "DatasetsV2.ItemRegistration.BlockedSlot",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.BlockedSlot",
        "x-validate": null
      },
      "DatasetsV2.Common.ItemPath": {
        "default": "/",
        "description": "Path under which Item should be added to on Darwin platform. Should always be absolute.",
        "title": "DatasetsV2.Common.ItemPath",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.ItemPath",
        "x-validate": null
      },
      "DatasetsV2.ItemRegistration.ItemsOptions": {
        "additionalProperties": false,
        "description": "Item options.",
        "properties": {
          "force_tiling": {
            "default": false,
            "description": "Forces tiling for given items.",
            "example": false,
            "type": "boolean",
            "x-struct": null,
            "x-validate": null
          },
          "handle_as_slices": {
            "default": false,
            "description": "If true the items will be handled as slices. This means that the items will betreated as a sequence of pixel arrays without any spatial information.",
            "example": false,
            "type": "boolean",
            "x-struct": null,
            "x-validate": null
          },
          "ignore_dicom_layout": {
            "default": true,
            "description": "If true the layout which we extract from the users DICOMs will besuperceded by the slots provided by the user.",
            "example": false,
            "type": "boolean",
            "x-struct": null,
            "x-validate": null
          }
        },
        "title": "DatasetsV2.ItemRegistration.ItemsOptions",
        "type": "object",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.ItemRegistration.ItemsOptions",
        "x-validate": null
      },
      "Common.UUID": {
        "example": "e23ff3f3-8f77-4e78-9e81-fdb25abfb781",
        "format": "uuid",
        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
        "title": "Common.UUID",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.Common.UUID",
        "x-validate": null
      },
      "DatasetsV2.Common.SlotName": {
        "description": "'ID' of the Slot to identify it within the Item. It's recommended to use numeric values satarting with 1.",
        "example": "0",
        "title": "DatasetsV2.Common.SlotName",
        "type": "string",
        "x-struct": "Elixir.GraphotateWeb.Schemas.DatasetsV2.Common.SlotName",
        "x-validate": null
      }
    },
    "securitySchemes": {
      "ApiKeyAuth": {
        "description": "Prefix the value with 'ApiKey '.",
        "in": "header",
        "name": "Authorization",
        "type": "apiKey"
      },
      "BearerAuth": {
        "scheme": "bearer",
        "type": "http"
      }
    }
  },
  "info": {
    "title": "Darwin",
    "version": "1.0"
  },
  "openapi": "3.0.0",
  "paths": {
    "/api/v2/teams/{team_slug}/items/register_upload": {
      "post": {
        "callbacks": {},
        "description": "Register locally stored data with Darwin for upload. The request response will contain an upload ID for each item. After this step, the upload needs to be signed, the upload URL from this response used, and the upload confirmed.",
        "operationId": "imports-upload",
        "parameters": [
          {
            "description": "Team's sluggified name",
            "example": "my-team",
            "in": "path",
            "name": "team_slug",
            "required": true,
            "schema": {
              "type": "string",
              "x-struct": null,
              "x-validate": null
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.RegisterNewItemsRequest"
              }
            }
          },
          "description": "DatasetsV2.ItemRegistration.RegisterNewItemsRequest",
          "required": false
        },
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DatasetsV2.ItemRegistration.RegistrationResponse"
                }
              }
            },
            "description": "DatasetsV2.ItemRegistration.RegistrationResponse"
          },
          "401": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Common.APIError"
                }
              }
            },
            "description": "Common.APIError"
          },
          "403": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Common.APIError"
                }
              }
            },
            "description": "Common.APIError"
          },
          "404": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Common.APIError"
                }
              }
            },
            "description": "Common.APIError"
          },
          "422": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JsonErrorResponse"
                }
              }
            },
            "description": "Unprocessable Entity"
          }
        },
        "summary": "Register locally stored data to Darwin",
        "tags": [
          "Imports"
        ]
      }
    }
  },
  "security": [
    {
      "BearerAuth": []
    },
    {
      "ApiKeyAuth": []
    }
  ],
  "servers": [
    {
      "url": "https://darwin.v7labs.com",
      "variables": {}
    }
  ]
}
```