Blame view

Readme.md 10.4 KB
2e410466   esau   versão inicial do...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
  # Authenticate

  

    - This method authenticate a player to your gamification and opens a session for the authenticated player on success. Authentication against the Funifier API is done with your gamification's API key, Authentication Mode and some combinations of credentials.

  GET Method

  

  **Parameters** .

  

   - Parameter  Type	Required	Description

   - api_key -	**String**  Required

   - app_secret-	**String**	Optional

   - auth_mode-	**String**	Required

   - app_secret-	**String**	Optional

   - auth_mode-	**String**	Required

   - password-	**String**	Optional

   - expiration-	**int**	Optional

   - callback-	**String**	Optional

  

  ### Example Request

  ```sh

  https://service2.funifier.com/2.0.0/authenticate?api_key=556df789108d44a65c389583&auth_mode=IMPLICIT&player=ricardo@funifier.com

  ```	

  ```sh

  $ https://service2.funifier.com/2.0.0/authenticate?api_key=556df789108d44a65c389583&auth_mode=PASSWORD&player=ricardo@funifier.com&password=123

  ```	

  ```sh

  $ mhttps://service2.funifier.com/2.0.0/authenticate?api_key=556df789108d44a65c389583&auth_mode=CREDENTIAL&player=ricardo@funifier.com&app_secret=54d80b7f34282de652978326

  ```

  ### Example Response

  

  ```sh

  {"message" : "action tracked","code" : 200,"type" : "OK"}

  ```	

  ### Example Response

  

  ```sh

  {"access_token" : "54d80a14e4b0e8d184586a1c"}

  ```	

  ### Example Error

  ```

  {"message" : "player ricardo@funifier.com does not exist, ask your administrator to create it in studio.funifier.com","code" : 401,"type" : "Unauthorized"}

  ```	

  ### Track

   - This method send actions performed by players to Funifier. Requires you to call this method whenever the action occurs, and pass the action name, and all the metadata you care about.

  

  POST Method

  

  ```	

  ### http[s]://service2.funifier.com/2.0.0/track

  ```

   - Parameter	Type	Required	Description

   - api_key	**String**	Required	

   - access_token	**String**	Optional	

   - player	**String**	Optional	

   - app_secret	**String**	Optional	

   - action	**String**	Required	

   - attributes	**String**	Optional **Description**	Json Object,

   (** Example: {"attribute1":"value1",  - - - - "attribute2":"value2"}**)

   - timestamp	long	Optional	

   - callback	String	Optional	

  

  ### Example Request

  

  ```sh

  https://service2.funifier.com/2.0.0/track?api_key=556df789108d44a65c389583&action=sell&attributes={"product":"book","price":12.5}&access_token=54d8139ae4b0e8d184586a1f

  ```	

  ```sh

  https://service2.funifier.com/2.0.0/track?api_key=556df789108d44a65c389583&action=sell&attributes={"product":"book","price":12.5}&player=ricardo@funifier.com&app_secret=54d80b7f34282de652978326

  ```	

  ### Example Response

  ```sh

  {"message" : "action tracked","code" : 200,"type" : "OK"}

  ```	

  ### Widget Data

  

  This method retrieves information about players, win-states, incentives and other objects inside the gamification. Use this to show to visually engage the players with their status and other infos.

  

  GET Method

  ```sh

  http[s]://service2.funifier.com/2.0.0/get_widget_data

  ```	

  ## Parameters

  

  - Parameter	Type	Required	Description

  - api_key	**String**	Required	

  - access_token	**String**	Optional	

  - player	**String**	Optional	

  - app_secret	**String**	Optional	

  - include_teams	**boolean**	Optional	

  - include_levels	**boolean**	Optional	

  - include_challenges	**boolean**	Optional	

  - include_catalogs	**boolean**	Optional	

  - include_leaderboards	**boolean**	Optional	

  - include_friends	**boolean**	Optional	

  - include_actions	**boolean**	Optional	

  - include_points	**boolean**Optional	

  - include_game	**boolean**	Optional	

  - callback **String**	Optional

  - 

  Example Request

  

  

  

  ##Example Response

  ```sh

  	https://service2.funifier.com/2.0.0/get_widget_data?api_key=556df789108d44a65c389583&access_token=54d8139ae4b0e8d184586a1f&include_challenges=true

  ```	

  

  ```sh

  https://service2.funifier.com/2.0.0/get_widget_data?api_key=556df789108d44a65c389583&player=ricardo@funifier.com&app_secret=54d80b7f34282de652978326&include_challenges=true

  ```

  ##Example Response

  ```sh

  {"player":{"name" : "Ricardo Lopes Costa","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"total_challenges" : 2,"challenges" : {"54d8098034282de65297817a" : 1,"54d809dc34282de65297822f" : 1},"total_points" : 25,"point_categories" : {"54d8064034282de652977c52" : 25},"total_catalog_items" : 1,"catalog_items" : {"54d8077c34282de652977e7f" : 1},"level_progress" : {"level" : {"level" : "Rookie","position" : 0,"description" : "Rookie level description","minPoints" : 10,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"notifications" : null,"requirements" : null,"_id" : "54d8067e34282de652977cb6"},"percent_completed" : 2.5,"next_points" : 975,"next_level" : {"level" : "Advanced","position" : 1,"description" : "Advanced level description","minPoints" : 1000,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"notifications" : null,"requirements" : null,"_id" : "54d8069734282de652977cf0"},"total_levels" : 2,"percent" : 2.5},"challenge_progress" : [ ],"teams" : [ "54d806c134282de652977d65", "54d806d534282de652977d9e", "54d806e934282de652977df8" ],"friends" : [ "esau@funifier.com" ],"positions" : [ ],"level" : {"level" : "Rookie","position" : 0,"description" : "Rookie level description","minPoints" : 10,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"notifications" : null,"requirements" : null,"_id" : "54d8067e34282de652977cb6"},"_id" : "ricardo.lopes.costa@gmail.com"},"teams":[ {"name" : "Brazil","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d806c134282de652977d65"}, {"name" : "Canada","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d806d534282de652977d9e"}, {"name" : "Mexico","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d806e934282de652977df8"} ],"levels":[ {"level" : "Rookie","position" : 0,"description" : "Rookie level description","minPoints" : 10,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d8067e34282de652977cb6"}, {"level" : "Advanced","position" : 1,"description" : "Advanced level description","minPoints" : 1000,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d8069734282de652977cf0"} ],"challenges":[ {"challenge" : "Big Sales Hero","description" : "You are a sales hero for closing a big opportunity of $100.000. enjoy this reward as you have earned the right to be recognized as a \"big sales hero\". PS. enjoy the commission cheque!","range" : 0,"active" : true,"rules" : [ {"actionId" : "54d8088c34282de652978027","position" : 1,"operator" : 5,"total" : 0,"timeAmount" : 0,"timeScale" : 0,"outOfTime" : false,"everyAmount" : 0,"everyScale" : 0,"filters" : [ {"value" : "100000","operator" : 5,"param" : "price"} ],"_id" : "54d8098034282de652978179"} ],"triggerUrl" : "","teamChallenge" : false,"limitTotal" : 1,"limitPerType" : 0,"limitTimeAmount" : 1,"limitTimeScale" : 5,"badge" : {"medium" : {"url" : "http://funifier.com/image.png"}},"hideUntilEarned" : false,"points" : [ {"total" : 10,"category" : "54d8064034282de652977c52","operation" : 0} ],"notifications" : [ {"event" : 0,"type" : 0,"scope" : 0,"content" : "{} completed {}"} ],"items" : [ "54d8077c34282de652977e7f" ],"tags" : [ ],"triggerURL" : "","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d8098034282de65297817a"}, {"challenge" : "Lead Start","description" : "Register your first lead in the system to earn this badge. Use the system well is a good way to start your sales career and earn 5 experiences points.","range" : 0,"active" : true,"rules" : [ {"actionId" : "54d808a634282de65297805f","position" : 1,"operator" : 5,"total" : 0,"timeAmount" : 0,"timeScale" : 0,"outOfTime" : false,"everyAmount" : 0,"everyScale" : 0,"filters" : [ ],"_id" : "54d809dc34282de65297822e"} ],"triggerUrl" : "","teamChallenge" : false,"limitTotal" : 1,"limitPerType" : 0,"limitTimeAmount" : 0,"limitTimeScale" : 0,"badge" : {"medium" : {"url" : "http://funifier.com/image.png"}},"principals" : [ ],"hideUntilEarned" : false,"points" : [ {"total" : 15,"category" : "54d8064034282de652977c52","operation" : 0} ],"notifications" : [ {"event" : 0,"type" : 0,"scope" : 0,"content" : "{} completed {}"} ],"items" : [ ],"triggerURL" : "","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d809dc34282de65297822f"} ], "catalogs":[ {"catalog" : "Privilegies","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d8070c34282de652977e3c"} ],"catalog_items":[ {"catalogId" : "54d8070c34282de652977e3c","name" : "Parking Place","description" : "Access to the private parking lot of the company for one month.","points" : [ {"total" : 100,"category" : "54d8064034282de652977c52","operation" : 0} ],"amount" : 100,"maxPerUser" : 10,"levelId" : "","active" : true,"real" : false,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"owned" : 0,"_id" : "54d8077c34282de652977e7f"}, {"catalogId" : "54d8070c34282de652977e3c","name" : "Home-Office","description" : "Being able to work a full day without leaving home.","points" : [ {"total" : 121,"category" : "54d8064034282de652977c52","operation" : 0} ],"amount" : 200,"maxPerUser" : 20,"levelId" : "","active" : true,"real" : false,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"owned" : 0,"_id" : "54d807e834282de652977efa"} ],"friends":[ {"name" : "Esau de Paula Freitas","image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"total_challenges" : 1,"challenges" : {"54d809dc34282de65297822f" : 1},"total_points" : 15,"point_categories" : {"54d8064034282de652977c52" : 15},"total_catalog_items" : 0,"catalog_items" : { },"level_progress" : {"level" : {"level" : "Rookie","position" : 0,"description" : "Rookie level description","minPoints" : 10,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d8067e34282de652977cb6"},"percent_completed" : 1.5,"next_points" : 985,"next_level" : {"level" : "Advanced","position" : 1,"description" : "Advanced level description","minPoints" : 1000,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d8069734282de652977cf0"},"total_levels" : 2,"percent" : 1.5},"challenge_progress" : [ ],"teams" : [ "54d806c134282de652977d65" ],"friends" : [ "ricardo.lopes.costa@gmail.com" ],"positions" : [ ],"level" : {"level" : "Rookie","position" : 0,"description" : "Rookie level description","minPoints" : 10,"image" : {"medium" : {"url" : "http://funifier.com/image.png"}},"_id" : "54d8067e34282de652977cb6"},"_id" : "esau@funifier.com"} ]}

  ```