{"_id":"56ab7572678b58170031eb86","version":{"_id":"5540ce1c31827a0d007ab1cf","project":"5540ce1b31827a0d007ab1cc","__v":31,"createdAt":"2015-04-29T12:27:08.390Z","releaseDate":"2015-04-29T12:27:08.390Z","categories":["5540ce1c31827a0d007ab1d0","5540d91bbb9e762d00f594ad","5540e5f131827a0d007ab212","5540e5febb9e762d00f594d3","5540e61331827a0d007ab213","5540e6195cf9682100d61afa","5540e62631827a0d007ab214","5540e63031827a0d007ab215","5540e63531827a0d007ab216","5540e63e5cf9682100d61afc","5540e6445cf9682100d61afd","5540e64a5cf9682100d61afe","55a4ff5b2e70c0250038050f","55acb28318eefd0d0071d504","55ae1abe8576b92300291c80","55ae453ef302af23000ac109","55af586d555b900d0036d296","55af91dac8a85321007a53c3","55b9fee204775a2f00628071","55b9ff0e04775a2f00628072","55b9ff4604775a2f00628073","55b9ff5fd72d1e1900276a38","55b9ff7f04775a2f00628074","55b9ff90eb08801900f833e5","55b9ffa5d72d1e1900276a39","55b9ffca04775a2f00628075","55b9fffdd72d1e1900276a3a","56bc2f033ee9e70d008b46af","56c2f6efbbf9ec2d00e0fe4f","57595bbb18760817001e8bbe","57d8d9793916800e003dde53"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"project":"5540ce1b31827a0d007ab1cc","category":{"_id":"55af586d555b900d0036d296","pages":["55af5a24826d210d00041e4b","56ab71540b9e0b0d0061620a","56ab7572678b58170031eb86"],"project":"5540ce1b31827a0d007ab1cc","__v":3,"version":"5540ce1c31827a0d007ab1cf","sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-07-22T08:46:37.620Z","from_sync":false,"order":0,"slug":"send-push-guide","title":"Getting Started"},"parentDoc":null,"__v":14,"user":"5540cdbf5cf9682100d61a97","updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-01-29T14:21:38.056Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":2,"body":"We're sorry to see Parse go and we are welcoming Parse users. To make life easy, we've built an import tool to migrate all your push data from Parse to Pushwoosh in a blink of an eye.\n\nIt imports **all device tokens**, **Parse channels**and takes care of current **iOS badge** and **timezone** values. \n\nThe imported tags are:\n**1.** First Install\n**2.** Last Application Open\n**3.** Channels\n**4.** Language\n\n[block:callout]\n{\n  \"type\": \"info\",\n  \"body\": \"From now on **all devices** imported from Parse are displayed in control panel. Note that you can send push notifications only to push-available devices, i.e. those with device tokens.\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"warning\",\n  \"title\": \"Must-know info for Android developers\",\n  \"body\": \"If you used the **default Parse configuration settings** and didn’t register your own GCM sender ID and GCM Server key, all your GCM tokens belong to Parse. It means that you can use the **default Sender ID and API key registered in Parse** only to send push notifications via Parse. You can’t migrate these device tokens to a different push service since you don’t have Parse’s Server Key. In this sense, these tokens are gone for good. The only real solution is, start collecting new push tokens **as soon as you can.** \\n\\nFor more information, check out our **[blog post](https://www.pushwoosh.com/parse-android-push/)**.\"\n}\n[/block]\n\n[block:callout]\n{\n  \"type\": \"danger\",\n  \"title\": \"Warning\",\n  \"body\": \"In case you are planning to use your Parse Channels, keep in mind that Segmentation is available starting from **developer plan**. In Pushwoosh we've got Tags, which are pretty similar to Parse Channels.\"\n}\n[/block]\nAll you have to do is:\n\n**0.** [Register](https://cp.pushwoosh.com/register) your Pushwoosh account; no credit card required.\n\n**1.** Create an application in Pushwoosh Control Panel or select an existing app and click \"Configure\".\n\n**2. **Press \"Migrate from Parse\"/\n\n\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/3LvAlbMZRuG3KHrugg12_Banners_and_Alerts_and_Pushwoosh___Applications___parseTest___Configure.png\",\n        \"Banners_and_Alerts_and_Pushwoosh___Applications___parseTest___Configure.png\",\n        \"858\",\n        \"229\",\n        \"#17afeb\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n**3. **Enter your **Parse Application ID** and **Parse Master Key** \n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/8shSUMDR2OYHaA4ajrgg_Screen%20Shot%202016-01-29%20at%2019.43.28.png\",\n        \"Screen Shot 2016-01-29 at 19.43.28.png\",\n        \"1073\",\n        \"575\",\n        \"#26acea\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n**4. **Wait until the migration is over.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/NHzXN7MEQMOMNUVlE2YJ_Screen%20Shot%202016-01-29%20at%2019.42.31.png\",\n        \"Screen Shot 2016-01-29 at 19.42.31.png\",\n        \"959\",\n        \"188\",\n        \"#2c8532\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\nThat's it!\n\nChannels from Parse are imported as **Parse Channels** List tags.\n[block:image]\n{\n  \"images\": [\n    {\n      \"image\": [\n        \"https://files.readme.io/eqNBUG9ZQ67MX8UgURAD_Screen%20Shot%202016-01-29%20at%2019.47.48.png\",\n        \"Screen Shot 2016-01-29 at 19.47.48.png\",\n        \"913\",\n        \"137\",\n        \"#4c93b6\",\n        \"\"\n      ]\n    }\n  ]\n}\n[/block]\n\n[block:api-header]\n{\n  \"type\": \"basic\",\n  \"title\": \"Pushwoosh Parse Adapter for Parse Server\"\n}\n[/block]\nRun your push campaign at full power with our new mighty tool – [**Pushwoosh Parse Adapter**](https://github.com/Pushwoosh/pushwoosh-parse-adapter) . Host your Parse-backend App anywhere and use the full array of Pushwoosh features.\n\n**Installation**\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"npm install --save pushwoosh-parse-adapter\",\n      \"language\": \"javascript\"\n    }\n  ]\n}\n[/block]\n**Usage**\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"var PushwooshPushAdapter = require('pushwoosh-parse-adapter');\\nvar pushwooshPushAdapter = new PushwooshPushAdapter({\\n  applicationCode: 'your-pushwoosh-app-id',\\n  apiAccessKey: 'your-pushwoosh-api-key'\\n});\\n\\nvar api = new ParseServer({\\n  push: {\\n    adapter: pushwooshPushAdapter\\n  },\\n  ...otherOptions\\n});\",\n      \"language\": \"javascript\"\n    }\n  ]\n}\n[/block]","excerpt":"Automatic Migration from Parse to Pushwoosh","slug":"migration-from-parse","type":"basic","title":"Migration from Parse"}

Migration from Parse

Automatic Migration from Parse to Pushwoosh

We're sorry to see Parse go and we are welcoming Parse users. To make life easy, we've built an import tool to migrate all your push data from Parse to Pushwoosh in a blink of an eye. It imports **all device tokens**, **Parse channels**and takes care of current **iOS badge** and **timezone** values. The imported tags are: **1.** First Install **2.** Last Application Open **3.** Channels **4.** Language [block:callout] { "type": "info", "body": "From now on **all devices** imported from Parse are displayed in control panel. Note that you can send push notifications only to push-available devices, i.e. those with device tokens." } [/block] [block:callout] { "type": "warning", "title": "Must-know info for Android developers", "body": "If you used the **default Parse configuration settings** and didn’t register your own GCM sender ID and GCM Server key, all your GCM tokens belong to Parse. It means that you can use the **default Sender ID and API key registered in Parse** only to send push notifications via Parse. You can’t migrate these device tokens to a different push service since you don’t have Parse’s Server Key. In this sense, these tokens are gone for good. The only real solution is, start collecting new push tokens **as soon as you can.** \n\nFor more information, check out our **[blog post](https://www.pushwoosh.com/parse-android-push/)**." } [/block] [block:callout] { "type": "danger", "title": "Warning", "body": "In case you are planning to use your Parse Channels, keep in mind that Segmentation is available starting from **developer plan**. In Pushwoosh we've got Tags, which are pretty similar to Parse Channels." } [/block] All you have to do is: **0.** [Register](https://cp.pushwoosh.com/register) your Pushwoosh account; no credit card required. **1.** Create an application in Pushwoosh Control Panel or select an existing app and click "Configure". **2. **Press "Migrate from Parse"/ [block:image] { "images": [ { "image": [ "https://files.readme.io/3LvAlbMZRuG3KHrugg12_Banners_and_Alerts_and_Pushwoosh___Applications___parseTest___Configure.png", "Banners_and_Alerts_and_Pushwoosh___Applications___parseTest___Configure.png", "858", "229", "#17afeb", "" ] } ] } [/block] **3. **Enter your **Parse Application ID** and **Parse Master Key** [block:image] { "images": [ { "image": [ "https://files.readme.io/8shSUMDR2OYHaA4ajrgg_Screen%20Shot%202016-01-29%20at%2019.43.28.png", "Screen Shot 2016-01-29 at 19.43.28.png", "1073", "575", "#26acea", "" ] } ] } [/block] **4. **Wait until the migration is over. [block:image] { "images": [ { "image": [ "https://files.readme.io/NHzXN7MEQMOMNUVlE2YJ_Screen%20Shot%202016-01-29%20at%2019.42.31.png", "Screen Shot 2016-01-29 at 19.42.31.png", "959", "188", "#2c8532", "" ] } ] } [/block] That's it! Channels from Parse are imported as **Parse Channels** List tags. [block:image] { "images": [ { "image": [ "https://files.readme.io/eqNBUG9ZQ67MX8UgURAD_Screen%20Shot%202016-01-29%20at%2019.47.48.png", "Screen Shot 2016-01-29 at 19.47.48.png", "913", "137", "#4c93b6", "" ] } ] } [/block] [block:api-header] { "type": "basic", "title": "Pushwoosh Parse Adapter for Parse Server" } [/block] Run your push campaign at full power with our new mighty tool – [**Pushwoosh Parse Adapter**](https://github.com/Pushwoosh/pushwoosh-parse-adapter) . Host your Parse-backend App anywhere and use the full array of Pushwoosh features. **Installation** [block:code] { "codes": [ { "code": "npm install --save pushwoosh-parse-adapter", "language": "javascript" } ] } [/block] **Usage** [block:code] { "codes": [ { "code": "var PushwooshPushAdapter = require('pushwoosh-parse-adapter');\nvar pushwooshPushAdapter = new PushwooshPushAdapter({\n applicationCode: 'your-pushwoosh-app-id',\n apiAccessKey: 'your-pushwoosh-api-key'\n});\n\nvar api = new ParseServer({\n push: {\n adapter: pushwooshPushAdapter\n },\n ...otherOptions\n});", "language": "javascript" } ] } [/block]