{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","params":[],"results":{"codes":[]},"settings":""},"next":{"description":"","pages":[]},"title":"Creating Custom Events","type":"basic","slug":"creating-custom-events","excerpt":"","body":"[block:callout]\n{\n  \"type\": \"success\",\n  \"body\": \"Please make sure that you're familiar with the [Running the Pulsate SDK](https://pulsate.readme.io/v2.0/docs/running-the-pulsate-sdk) tutorial.\"\n}\n[/block]\nPulsate enables you to track actions that your user's have taken within your app by setting custom events. You can track these custom events to get a better idea of the customer journey within your app. You can also deliver targeted campaigns to users based on their actions within the app. \n[block:callout]\n{\n  \"type\": \"info\",\n  \"title\": \"Custom Event Campaign Example\",\n  \"body\": \"You create a campaign with a coupon for a variety of clothes. You decide to show this campaign on *didPressClothesButton* event trigger. When user clicks on the *Clothes* section button, you send a *didPressClothesButton* event through the SDK. The server will take care of the rest and deliver your campaign to the user.\"\n}\n[/block]\nTo enable Pulsate to track these events, use the *createEvent:* method on the Pulsate Manager object:\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"[pulsateManager createEvent::::at:::\\\"didPressClothesButton\\\"];\",\n      \"language\": \"objectivec\"\n    }\n  ]\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"pulsateManager.createEvent(\\\"didPressClothesButton\\\")\",\n      \"language\": \"swift\"\n    }\n  ]\n}\n[/block]\nOnce those custom events have been set, every time a user completes that action, it will be recorded by Pulsate and you can chooses those events in the Targeting section when you are sending a campaign.","updates":[],"order":11,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"5e5013741b3b2000653294a8","createdAt":"2015-09-15T09:00:06.637Z","parentDoc":null,"version":{"version":"2.7","version_clean":"2.7.0","codename":"iOS SDK","is_stable":false,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["5e5013741b3b200065329486","55781fe35129590d003ff4f9","55781fe35129590d003ff4fa","5e5013741b3b200065329487","5e5013741b3b200065329488","5e5013741b3b200065329489","5e5013741b3b20006532948a","5e5013741b3b20006532948b","565b66c446118c0d00dcb0bb","56898269f8dc340d00308c13","5e5013741b3b20006532948c","5e5013741b3b20006532948d","5c73dd27e8fdc000572a206a","5e5013741b3b20006532948e","5e53d9a2f75c0b0020de8935"],"_id":"5e5013741b3b20006532951d","project":"54aa7f773b56130b0056c86e","forked_from":"5e4fbbbda8fb41028f1861fe","__v":1,"createdAt":"2015-06-10T11:30:42.700Z","releaseDate":"2015-06-10T11:30:42.700Z"},"category":{"sync":{"isSync":false,"url":""},"pages":["5e5013741b3b20006532949e","5e5013741b3b20006532949f","55781fe45129590d003ff519","5e5013741b3b2000653294a0","5e5013741b3b2000653294a1","5e5013741b3b2000653294a2","5e5013741b3b2000653294a3","5e5013741b3b2000653294a4","55781fe45129590d003ff51f","55781fe45129590d003ff520","55781fe45129590d003ff521","5e5013741b3b2000653294a5","5e5013741b3b2000653294a6","5e5013741b3b2000653294a8","5e5013741b3b2000653294a9","5e5013741b3b2000653294ad","5e5013741b3b2000653294ae","5e5013741b3b2000653294af","5e5013741b3b2000653294b1","5e5013741b3b2000653294bc","5e5013741b3b2000653294be","5e5013741b3b2000653294c2"],"title":"iOS SDK","slug":"ios-sdk","order":1,"from_sync":false,"reference":false,"_id":"5e5013741b3b200065329487","version":"5e5013741b3b20006532951d","__v":11,"createdAt":"2015-01-05T12:43:51.897Z","project":"54aa7f773b56130b0056c86e"},"githubsync":"","project":"54aa7f773b56130b0056c86e","__v":8,"user":"54aa7f3f9bb00c0b00cb899b"}

Creating Custom Events


[block:callout] { "type": "success", "body": "Please make sure that you're familiar with the [Running the Pulsate SDK](https://pulsate.readme.io/v2.0/docs/running-the-pulsate-sdk) tutorial." } [/block] Pulsate enables you to track actions that your user's have taken within your app by setting custom events. You can track these custom events to get a better idea of the customer journey within your app. You can also deliver targeted campaigns to users based on their actions within the app. [block:callout] { "type": "info", "title": "Custom Event Campaign Example", "body": "You create a campaign with a coupon for a variety of clothes. You decide to show this campaign on *didPressClothesButton* event trigger. When user clicks on the *Clothes* section button, you send a *didPressClothesButton* event through the SDK. The server will take care of the rest and deliver your campaign to the user." } [/block] To enable Pulsate to track these events, use the *createEvent:* method on the Pulsate Manager object: [block:code] { "codes": [ { "code": "[pulsateManager createEvent:@\"didPressClothesButton\"];", "language": "objectivec" } ] } [/block] [block:code] { "codes": [ { "code": "pulsateManager.createEvent(\"didPressClothesButton\")", "language": "swift" } ] } [/block] Once those custom events have been set, every time a user completes that action, it will be recorded by Pulsate and you can chooses those events in the Targeting section when you are sending a campaign.