Export Podio data.
In order to keep you account secure we recommend that:
- If you generate a
client_idandclient_secretonly to runpodio-exportplease consider removing it once you are done usingpodio-export. - Optionally, you may want to add a user to your Podio account just to run
podio-exportand generate theclient_idandclient_secret. This will allow you to keep existing user accounts unchanged. If you create the test user, please remember to remove it from your account once you are done usingpodio-export.
Note: The process below assumes node is already installed.
Download podio-export and unzip it.
Execute the following commands to download podio-export and install dependencies:
cd podio-export
npm install --productionHead over to Podio to generate a client_id and client_secret and add your client_id, client_secret, username and password to a new file you should create as podio-export/secrets.json. This file should have the following format:
{
"CLIENT_ID": "YOUR_CLIENT_ID",
"CLIENT_SECRET": "YOUR_CLIENT_SECRET",
"USERNAME": "YOUR_USERNAME",
"PASSWORD": "YOUR_PASSWORD"
}And finally run the tool:
npm run podio-exportOnce the tool has finished, it will show the contents of the resulting summary.json, which should be something like:
podio-export result: {
"MY_USERNAME": {
"My Organization": {
"numTasks": 3,
"Demo Workspace": {
"Leads & Clients": {
"numFiles": 0,
"numItems": 76,
"totalItems": 76
},
... other apps ...
},
... other workspaces ...
"Employee Network": {}
},
... other organizations ...
"numContacts": 2
}
}Please note that Podio will rate limit requests and lower rate limits apply for the following podio-export actions:
- Exporting organization tasks (each 100 tasks exported count as one request).
- Exporting application items (each 500 items of a single app exported to JSON count as one request).
- Downloading files (each file downloaded counts as one request).
In order to work within these rate limits, once the limit is reached the tool will halt and wait until the next rate interval (hour) to continue working. See configuration option RATE_LIMIT for further details.
Note: The tool only guarantees operation within RATE_LIMIT during one run. Invoking the tool multiple times may result in these limits being exceeded.
The following configuration options can be changed in the ./config.json file:
RATE_LIMIT- assign the number of requests per hour. Defaults to 250 requests per hour (the Podio lower rate limit). Change this value only if yourclient_idis granted a higher limit by Podio.SHOULD_DOWNLOAD_FILES- controls if files in your app items should be downloaded. Defaults totrue. Please note that downloading files is the most common cause for exceedingRATE_LIMIT.EACH_LIMIT- how many requests to perform simultaneously. These will be throttled to comply with the configuredRATE_LIMIT. Defaults to 4.
The following describes which data is exported to the ./podio-export folder:
- For the user account provided, will export data for each organization as follows:
./podio-export/USER_NAME/summary.jsoncontains a count of all data exported in the lastpodio-exportsession (see sample)../podio-export/USER_NAME/contacts_X-Y.jsonfiles containing contacts X through Y for userUSER_NAME../podio-export/USER_NAME/ORG_NAMEfolder (one for each organization)../podio-export/USER_NAME/ORG_NAME/ORG_NAME.jsonfile containing information about organizationORG_NAME../podio-export/USER_NAME/ORG_NAME/tasks_X-Y.jsonfiles containing tasks X through Y for organizationORG_NAME.
- For each organization identified, will export data for each workspace as follows:
./podio-export/USER_NAME/ORG_NAME/WORKSPACE_NAME: folder (one for each workspace)../podio-export/USER_NAME/ORG_NAME/WORKSPACE_NAME/WORKSPACE_NAME.jsonfile containing information about workspaceWORKSPACE_NAME.
- For each workspace identified, will export data for each workspace as follows:
./podio-export/USER_NAME/ORG_NAME/WORKSPACE_NAME/APP_NAME: folder (one for each application)../podio-export/USER_NAME/ORG_NAME/WORKSPACE_NAME/APP_NAME/APP_NAME.jsonfile containing information about applicationAPP_NAME../podio-export/USER_NAME/ORG_NAME/WORKSPACE_NAME/APP_NAME/items_X-Y.jsonfiles containing items X through Y for applicationAPP_NAME../podio-export/USER_NAME/ORG_NAME/WORKSPACE_NAME/APP_NAME/files_X-Y.jsonfiles containing information on files X through Y in applicationAPP_NAME../podio-export/USER_NAME/ORG_NAME/WORKSPACE_NAME/APP_NAME/filesfolder containing the actual files in applicationAPP_NAME.
Here is a sample summary.json file generated by exporting a single organization containing only the default Podio Demo Workspace:
{
"MY_USERNAME": {
"My Organization": {
"numTasks": 3,
"Demo Workspace": {
"Leads & Clients": {
"numFiles": 0,
"numItems": 76,
"totalItems": 76
},
"Projects": {
"numFiles": 0,
"numItems": 12,
"totalItems": 12
},
"Inspiration": {
"numFiles": 0,
"numItems": 9,
"totalItems": 9
},
"Meetings": {
"numFiles": 0,
"numItems": 0,
"totalItems": 0
},
"Expenses": {
"numFiles": 0,
"numItems": 32,
"totalItems": 32
}
},
"Employee Network": {}
},
"numContacts": 0
}
}MIT © podio-export
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
Check the software license for further details.