Skip to main content
Skip table of contents

Bulk upload from synapse command line client

Instructions for using the Synapse command line client for bulk upload with a manifest:

  1. Install synapseclient. Detailed instructions are here but in most cases, you should be able to install by running the following in a terminal:

    pip install synapseclient
  2. Log in via a Synapse Personal Authentication Token (PAT), which can be generated following the instructions here.

    synapse login -p <your-PAT-here>
  3. Check that your upload manifest file contains valid file paths and parent folder ids:

    synapse sync --dryRun <local-path-to-your-manifest.tsv>
  4. If the dry run succeeds, you can remove the “dryRun” flag to begin the upload:

    synapse sync <local-path-to-your-manifest.tsv>

First pass troubleshooting:

  • For large data/faster upload, always use python or command line client (automatic multi-threading) rather than synapser (R does not allow multi-threading out of the box)

  • If the upload times out halfway through, use a Synapse PAT rather than a username/password to log in – the PAT stays logged in for at least 24 hours.

  • Update to the latest version of the client – currently 2.7.0

    • check version on command line: synapse --v

    • update: pip install --upgrade synapseclient

  • Clear out the Synapse cache

    • Look for .synapseCache/ directory (usually in the user’s home directory)

    • run rm -r .synapseCache/* to remove all cached files

  • If you run into this error: “OSError: The path  is not a file or does not exist“, please go to the end of your file and delete any additional whitespace.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.