Ango Hub Docs
Open Ango HubContact iMerit
  • Ango Hub Documentation
  • Video Guides
  • Changelog
  • FAQs & Troubleshooting
  • All Keyboard and Mouse Shortcuts
  • Core Concepts
    • Assets
    • Attachments
    • Batches
    • Benchmarks
    • Category Schema (Ontologies)
    • Frame Interpolation
    • Geofencing
    • Idle Time Detection & Time Tracking
    • Instructions
    • Issues
      • Issue Error Codes
    • Label Validation
    • Labeler Performance
    • Labeling
    • Labeling Queue
    • Multiple Classification
    • Notifications
    • Organizations
    • Projects
    • Requeuing
    • Reviewing
    • Review Queue
    • Skipping
    • Stage History
    • Tasks
    • Usage
    • User Roles
    • Workflow
      • Complete
      • Consensus
      • Hold
      • Label
      • Logic
      • Plugin
      • Review
      • Start
      • Webhook
  • Labeling
    • Managing Users in Projects
      • Profile Page
    • Managing the Project Ontology
    • Labeling Editor Interface
      • Audio Labeling Editor
      • Image Labeling Editor
      • Video Labeling Editor
      • DICOM Labeling Editor
      • Medical Labeling Editor
        • 3D Bounding Box
        • Fill Between Slices
        • Island Tools
        • Line (Tape Measure)
        • Smoothing
      • PDF Labeling Editor
      • Text (NER) Labeling Editor
      • LLM Chat Labeling Editor
      • Markdown Labeling Editor
      • 3D Multi-Sensor Fusion Labeling Editor
    • Labeling Classes
      • Tools
        • Bounding Box
        • Brush
        • Entity
        • Message
        • Nested Classifications
        • PCT
        • PDF Tool
        • Point
        • Polygon
        • Polyline
        • Rotated Bounding Box
        • Segmentation
        • Spline
        • Voxel Brush
      • Classification
        • Checkbox
        • Multiple Dropdown
        • Radio
        • Rank
        • Single Dropdown
        • Text
        • Tree Dropdown Tools (Single and Multiple Selection)
      • Relation
        • Single Relation
        • Group Relation
    • Magnetic Lasso
    • Performance & Compatibility Considerations
  • Data
    • Data in Ango Hub
      • Embedding Private Bucket Files in MD Assets
    • Importing Assets
      • Asset Builder
      • Bundled Assets
        • Importing Multiple Images as One Multi-Page Asset
        • Importing Multiple Single-Frame DICOM Files as One Multi-Page Asset
        • Importing multiple DICOM files to be annotated and displayed at once
        • Importing Multiple Single-Frame DICOM Files as a DICOM Series
        • Importing Multiple Markdown Files as One Multi-Page Asset
      • File Explorer
      • Supported Asset File Types & Codecs
      • Importing Cloud (Remote) Assets
      • Importing From Local Machine
      • Creating and Importing LLM Chat Assets
      • Importing Data in the 3D Multi-Sensor Fusion Labeling Tool
      • Bulk Importing Markdown/HTML Assets
      • Importing Attachments during Asset Import
      • Importing Annotations during Asset Import
      • contextData: Adding Extra Data to Assets
      • Importing Reference Images as Overlay
      • Importing Reference Medical Data During Asset Import
    • Importing and Exporting Annotations
      • Importing Annotations
        • Ango Import Format
        • Importing Brush Traces
        • Importing NRRD Annotations
      • Exporting Annotations
        • Ango Export Format
          • Asset
            • Task
              • Tools
              • Classifications
              • Relations
          • Stage History
    • Adding and Managing LLMs
    • Storages
      • Set up a storage integration with Azure
      • Set up a storage integration with AWS S3
      • Set up a storage integration with MinIO and S3-compatible custom storage services
      • Set up a storage integration with GCP (Google Cloud Platform)
      • Set up CORS
      • Validating Storage Integrations
    • Purging Data from Ango Hub
  • Plugins
    • Overview of Plugins in Ango Hub
      • Installing Plugins
      • Plugin Setting Presets
      • Monitoring Plugin Progress
    • First-Party Plugins
      • Ango Export Converter Plugins
      • Asset Converter Plugins
      • Ango to Mask Converter
      • Batch Assignment
      • ChatGPT
      • Column-Agnostic Markdown Generator
      • CSV Export for Classification
      • DALL-E
      • DALL-E (Model Plugin)
      • File Explorer Plugin
      • General Object Detector
      • General Object Segmenter
      • Markdown Generator
      • One-Click Segmentation
      • Open World Object Detection
      • Optical Character Recognition
      • TPT Export
      • YOLO | Instance Segmentation
      • YOLO | Pose Estimation
      • YOLO | Object Detection
      • YOLO | Image Classification
    • Plugin Developer Documentation
      • Export Plugins
      • Batch Model Plugins
      • Model Plugins
      • File Explorer Plugins
      • Markdown Generator Plugins
      • Plugin Logger
      • [WIP] Deploying your Plugin
      • Plugin 'Host' Information
  • SDK
    • SDK Documentation
      • Project Level SDK Functions
        • add_members_to_project
        • assign_batches
        • assign_task
        • create_attachment
        • create_batch
        • create_issue
        • create_label_set
        • create_project
        • delete_issue
        • export
        • exportV3
        • get_assets
        • get_batches
        • get_issues
        • get_metrics
        • get_project
        • get_project_performance
        • get_task
        • get_tasks
        • get_task_history
        • import_labels
        • list_projects
        • requeue_tasks
        • rerun_webhook
        • update_workflow_stages
        • upload_files
        • upload_files_cloud
        • upload_files_with_asset_builder
        • upload_chat_assets
      • Organization Level SDK Functions
        • create_storage
        • delete_organization_invites
        • delete_organization_members
        • delete_storage
        • get_organization_invites
        • get_organization_members
        • get_storages
        • invite_members_to_org
        • update_organization_members_role
    • SDK - Useful Snippets
    • SDK Changelog
  • API
    • API Documentation
  • How-To
    • Add Members
      • Add multiple users to a project
    • Annotate
      • Annotate 3D Point Cloud Files on Ango Hub
      • Perform targeted OCR on images
    • Export Data
      • Automatically send Ango Hub Webhook contents to Google Sheets, Email, Slack, and more with Zapier
      • Download a JSON of your project ontology
      • Download DICOM Segmentation Masks
      • Download your annotations in the COCO, KITTI, or YOLO format
      • Download your Segmentation Masks
      • Get your export as separate JSON files for each asset
    • Manage a Project
      • Get your API Key
      • Get your Organization ID
      • Mute your notifications
      • Open an asset provided the Asset ID
      • Pre-label assets
      • Share a filtered view of the Tasks table with others
      • Transfer project ontologies between projects
      • Transfer project workflows between projects
    • Perform Model Evaluation on Ango Hub
  • Troubleshooting
    • I get a "0 Tasks Labeled" alert when trying to pre-label tasks
    • I get a 'The data couldn't be loaded properly' error when opening certain assets
    • I get a "Unknown Classification" warning when opening a task
  • Feature Availability Status for projects of the 3D Multi-Sensor Fusion type
  • Comparison between QuickServe and Ango Hub
  • Changes from Ango Hub Legacy
  • Video V2 Breaking Changes and Transition
  • Data Access, Storage, and Security
  • Two-Factor Authentication
  • Single Sign-On (SSO) Support
  • Customer Support
  • Ango Hub Status Page
Powered by GitBook
On this page
  • Validating your Storage Integration during Creation
  • Validating your Existing Storage Integration
  • Using the Validation Dialog
  • Validate Read Access
  • Validate Write Access
  • Validate CORS Configuration
  • Possible Errors
  1. Data
  2. Storages

Validating Storage Integrations

PreviousSet up CORSNextPurging Data from Ango Hub

Last updated 3 months ago

After setting up a storage integration between Ango Hub and a supported provider, verifying that the integration is correctly configured before using it in a project will help catch errors before they reach production.

This page explains how to validate your storage integration, either as you create the integration for the first time or after you've already created it.

Validating your Storage Integration during Creation

As you follow the steps outlined in the page detailing how to create a storage integration for each provider (, , ), you will reach a point where, after entering your integration's credentials and clicking on "Next", you will be displayed the following dialog:

This is the validation dialog. If you wish to skip validation altogether, you may click on "Create Storage to finalize the creation of the storage integration.

Validating your Existing Storage Integration

From your Organization page, enter the Storages tab. Click on the three dots to the right of the row representing the storage integration you'd like to validate. The following dialog will appear, mostly filled in:

Complete filling in the dialog and click on "Next". You will see the following dialog:

Using the Validation Dialog

The validation dialog has three main sections:

Validate Read Access

To validate read access, copy the URL to a file in your storage. This URL will, for example, look something like this (for AWS S3):

https://angohub-docs-assets.s3.eu-central-1.amazonaws.com/demo-assets/circle.png

Validate Write Access

Validate Write Access will help you check whether Ango Hub can create new files in the connected storage.

Validate CORS Configuration

Please successfully validate the storage's read access before validating the CORS configuration.

Failure to do so may result in incorrect error messages being displayed.

Validate CORS Configuration is essential to ensure that imported assets (images, videos, and any other asset type) can be displayed on Ango Hub.

To validate the CORS configuration, copy the URL to a file in your storage. This URL will, for example, look something like this (for AWS S3):

https://angohub-docs-assets.s3.eu-central-1.amazonaws.com/demo-assets/circle.png

Then, paste it in the text field above the Validate CORS Configuration button and click on it.

Possible Errors

Error Message
Cause
Potential Solution

Azure, GCP: Bucket is not in this region AWS S3: Bucket is not in this region, use {correct-region}

The selected region does not match the region of the one obtained from the credentials.

Navigate back to the storage integration configuration dialog and change the selected region.

Azure, GCP: Incorrect region AWS S3: Bucket is not in this region, use {correct-region}

The "region" string provided is invalid.

Navigate back to the storage integration configuration dialog and change the selected region.

Access key ID is incorrect

The provided Access Key ID is not correct.

  • There may be a typo

  • The key might be expired or revoked

  • The secret key & access key pair may not be matching

Navigate back to the storage integration configuration dialog and change the access key to the correct one.

Secret key is probably incorrect

While this is a generic error message, it indicates that the most likely culprit is an incorrect secret key.

Navigate back to the storage integration configuration dialog and change the secret key to the correct one. If the error persists, contact support.

Azure: Authentication failed

The account key provided is incorrect.

Navigate back to the storage integration configuration dialog and change the account key to the correct one.

Object does not exist

The object the URL is pointing to does not exist.

Provide a URL to an object that exists in the storage.

Bucket does not exist Azure: Container not found

The bucket/container provided does not exist.

Provide the name of a bucket/container that exists in the storage.

Bucket name is incorrect

You have provided a bucket name that cannot possibly exist in the storage service you have selected.

Provide the name of a bucket/container that exists in the storage.

Access denied

If this is a read validation, it means that the IAM user for S3 and GCS & the storage account for the Azure is not given the correct read permissions to access the file.

If this is a write validation, it means that the IAM user for S3 and GCS & the storage account for the Azure is not given the correct write permissions to write to the bucket.

Network error: Address not found

It suggests that we can’t access the object with the given URL because the URL does not exist. The most likely case occurs when the account name is incorrectly typed with Azure. It might also be because of:

  • No internet or DNS issues

  • The domain name is incorrect or does not exist

Ensure your internet connection is working, and ensure the URL has been typed correctly.

No response: Possible networking or endpoint issue

We tried to send the request to the providers servers (to get the object or to write the object), but somehow we didn’t receive any response.

Please try again later & make sure the region selection is correct. For Azure check account name as well.

Possible causes:

  • The server crashed or is overloaded

  • The request is taking too long, leading to a timeout

Try again later, and ensure the region is correct.

A network error occured. This might be due to a CORS configuration issue

For security limitations it is impossible to tell whether a network error is definitely related to CORS, but this error might suggest it is most likely due to CORS.

Occurs when validating CORS. We can’t access the object URL, this may or may not be due to CORS.

Error in request: [errorMessage]

This is an error on Ango Hub's end.

Contact iMerit support.

Invalid URL

Appears when the URL field does not adhere to the structure of GCP, S3, or Azure.

It may be a completely invalid URL (for example linking to an unrelated domain), or the URL may not be valid within the context of these providers.

For example a valid GCS URL looks like this:

https://storage.cloud.google.com/test-private-assets/drag-and-drop.png

If you remove the last two slashes, you remove the bucket name and the key name, the URL becomes invalid: https://storage.cloud.google.com/

To instead proceed to validation, please follow the instructions in the section below.

To proceed with validation, please follow the instructions in the section below.

Validate Read Access will help you check whether Ango Hub can read from the storage. This is necessary in order to import assets, use , and anything that has to do with detecting and using existing files in the storage.

Then, paste it in the text field above the Validate Read Access button and click on Validate Read Access. If the storage was configured correctly, you will see a green Access Valid message. If not, you will see an error. Please consult the section for how to troubleshoot any error you might encounter.

To validate write access, write the name of a bucket or container in the storage integration you have just created, then click on Create 'ango-test.txt' in bucket root. Ango Hub will attempt to create a file named ango-test.txt in the bucket's root. If write access for the storage was configured correctly, you will see a green Access Valid message. If not, you will see an error. Please consult the section for how to troubleshoot any error you might encounter.

If the storage was configured correctly, you will see a green message. If not, you will see an error. Please consult the section for how to troubleshoot any error you might encounter.

Navigate to the dashboard of your storage provider and ensure you have given Ango Hub the correct permissions. More info on each individual page: , , .

Follow the instructions in the documentation page for and try again.

File Explorer
Using the Validation Dialog
Using the Validation Dialog
Validate Read Access
Validate Write Access
Validate CORS Configuration
Possible Errors
Possible Errors
Possible Errors
Azure
AWS S3
GCP
setting up CORS
AWS S3
Microsoft Azure
Google Cloud Platform