Condition a PassageWay .csv or .json

Category: Import & Export
On this page:

    This article defines the format you should use when manually conditioning a .csv or .json for import into PassageWay. This format is identical to that used by .csv or .json files created by Exporting your PassageWay Vault.

    Make sure that you’re using the format for Personal Vaults or Organizations depending on your export/import operation, as they are slightly different.

    Condition a .csv

    Note

    PassageWay .csv files will only handle Logins and Secure Notes. If you need to import or export Identities and Cards as well, use JSON.

    For your Personal Vault

    Create a UTF-8 encoded plaintext file with the following header as the first line in the file:

    folder,favorite,type,name,notes,fields,reprompt,login_uri,login_username,login_password,login_totp
    

    For example:

    folder,favorite,type,name,notes,fields,reprompt,login_uri,login_username,login_password,login_totp
    Social,1,login,Twitter,,,0,twitter.com,me@example.com,password123,
    ,,login,EVGA,,,https://www.evga.com/support/login.asp,hello@bitwarden.com,fakepassword,TOTPSEED123
    ,,login,My Bank,Bank PIN is 1234,"PIN: 1234",https://www.wellsfargo.com/home.jhtml,john.smith,password123456,
    ,,note,My Note,"This is a secure note.",,,,,
    

    When importing this file, select PassageWay (csv) as your file format.

    Download sample csv

    For your Organization

    Create a UTF-8 encoded plaintext file with the following header as the first line in the file:

    collections,type,name,notes,fields,reprompt,login_uri,login_username,login_password,login_totp
    

    For example,

    collections,type,name,notes,fields,reprompt,login_uri,login_username,login_password,login_totp
    "Social,Marketing",login,Twitter,,,0,twitter.com,me@example.com,password123,
    "Finance",login,My Bank,Bank PIN is 1234,"PIN: 1234",0,https://www.wellsfargo.com/home.jhtml,john.smith,password123456,
    ,login,EVGA,,,https://www.evga.com/support/login.asp,hello@bitwarden.com,fakepassword,TOTPSEED123
    ,note,My Note,"This is a secure note.",,,,,
    

    When importing this file, select PassageWay (csv) as your file format.

    Download sample csv

    Minimum Required Values

    You may not have data for all the values shown in the above formats, however most are optional. In order for the PassageWay .csv importer to function properly, you are only required to have the following values for any given object:

    folder,favorite,type,name,notes,fields,reprompt,login_uri,login_username,login_password,login_totp
    ,,login,Login Name,,,,,,
    ,,note,Secure Note Name,,,,,,
    

    Condition a .json

    For your Personal Vault

    Create a UTF-8 encoded plaintext file in the following format:

    {
      "folders": [
        {
          "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "name": "Folder Name"
        },
        ...
      ],
      "items": [
        {
        "id": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
        "organizationId": null,
        "folderId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "type": 1,
        "reprompt": 0,
        "name": "My Gmail Login",
        "notes": "This is my gmail login for import.",
        "favorite": false,
        "fields": [
            {
              "name": "custom-field-1",
              "value": "custom-field-value",
              "type": 0
            },
            ...
          ],
          "login": {
            "uris": [
              {
                "match": null,
                "uri": "https://mail.google.com"
              }
            ],
            "username": "myaccount@gmail.com",
            "password": "myaccountpassword",
            "totp": otpauth://totp/my-secret-key
          },
          "collectionIds": null
        },
        ...
      ]
    }
    

    When importing this file, select PassageWay (json) as your file format.

    Download sample json

    For your Organization

    Create a UTF-8 encoded plaintext file in the following format:

    {
      "collections": [
        {
          "id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          "organizationId": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
          "name": "My Collection"
          "externalId": null
        },
        ...
      ],
      "items": [
        {
        "id": "vvvvvvvv-vvvv-vvvv-vvvv-vvvvvvvvvvvv",
        "organizationId": "yyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy",
        "folderId": "zzzzzzzz-zzzz-zzzz-zzzz-zzzzzzzzzzzz",
        "type": 1,
        "reprompt": 1,
        "name": "Our Shared Login",
        "notes": "A login for sharing",
        "favorite": false,
        "fields": [
            {
              "name": "custom-field-1",
              "value": "custom-field-value",
              "type": 0
            },
            ...
          ],
          "login": {
            "uris": [
              {
                "match": null,
                "uri": "https://mail.google.com"
              }
            ],
            "username": "myaccount@gmail.com",
            "password": "myaccountpassword",
            "totp": otpauth://totp/my-secret-key
          },
          "collectionIds": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
        },
        ...
      ]
    }
    

    When importing this file, select PassageWay (json) as your file format.

    Download sample json

    Minimum Required Key-Value Pairs

    You may not have data for all the key-value pairs shown in the above formats, however most are optional. In order for the PassageWay .json importer to function properly, you are only required to have the following key-value pairs for each object:

    {
      "items": [
        {
        "type": 1,
        "name": "Login Item's Name",
        "login": {}                         
      },
      {
        "type": 2,
        "name": "Secure Note Item's Name",
        "secureNote": {}                     
      },
      {
        "type": 3,
        "name": "Card Item's Name",
        "card": {}                         
      },
      {
        "type": 4,
        "name": "Identity Item's Name",
        "identity": {}                     
      }
      ]
    }
    

    The "login":, "secureNote":, "card":, and "identity": objects can be imported as empty objects, however we recommend conditioning files with as much data as you are able.