{"_id":"56c41a9fbc41330d009f2603","category":{"_id":"56c4181cc4796b0d007ef039","version":"56bc8e689afb8b0d00d62dd2","__v":26,"project":"56bc8e679afb8b0d00d62dcf","pages":["56c4192dbc41330d009f25fd","56c4196434df460d00c2bece","56c419814f0aed1700afaba6","56c4198dbc41330d009f25ff","56c419962e75e01700986053","56c4199f54b6030d00ec29a4","56c419a8bb64720d00552b8b","56c419b1bb64720d00552b8d","56c419b92d97560d00e23cf9","56c419c64040602b0064cea3","56c419d4bc41330d009f2601","56c419de70187b17005f43b9","56c419ea6063071700500cfe","56c419fa54b6030d00ec29a6","56c41a096063071700500d00","56c41a1834df460d00c2bed0","56c41a773d30210d00ea8517","56c41a86c4796b0d007ef03e","56c41a904f0aed1700afaba8","56c41a9fbc41330d009f2603","56c41aaa521f350d00d348fe","56c41abb4040602b0064cea5","56c41ad24040602b0064cea7","56c41ade48213b1700af6e28","56c41aeb3d30210d00ea8519","56c41af948213b1700af6e2a"],"sync":{"url":"","isSync":false},"reference":true,"createdAt":"2016-02-17T06:50:04.339Z","from_sync":false,"order":2,"slug":"users","title":"Users"},"version":{"_id":"56bc8e689afb8b0d00d62dd2","project":"56bc8e679afb8b0d00d62dcf","__v":18,"createdAt":"2016-02-11T13:36:40.146Z","releaseDate":"2016-02-11T13:36:40.146Z","categories":["56bc8e689afb8b0d00d62dd3","56c3c837bc41330d009f25ed","56c3c83e521f350d00d348eb","56c3c8452d97560d00e23cd8","56c3c85234df460d00c2beb8","56c4180d70187b17005f43b4","56c418162d97560d00e23cf6","56c4181cc4796b0d007ef039","56c4182370187b17005f43b5","56c418292e75e01700986052","56c4183328bd680d005e7ac6","56c4183bbb64720d00552b88","56c418414040602b0064cea0","56c4184754b6030d00ec29a1","56c4184c28bd680d005e7ac7","56c4185370187b17005f43b6","56c4185b6063071700500cfc","582a98b6f8c0a0190053d7a5"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"1.0.0","version":"1.0"},"user":"56b98db7bb36440d0001f492","__v":6,"project":"56bc8e679afb8b0d00d62dcf","parentDoc":null,"updates":[],"next":{"pages":[],"description":""},"createdAt":"2016-02-17T07:00:47.793Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"results":{"codes":[]},"settings":"","auth":"required","params":[],"url":""},"isReference":false,"order":19,"body":"[block:api-header]\n{\n  \"type\": \"post\",\n  \"title\": \"/users/me/identities/{identityProviderName}\"\n}\n[/block]\nAdds an additional identity for the user. Identities allow mapping between Buddy users and users within other systems. You can think of identities as a special class of metadata where you attach a unique identifier to a user representing some other platform.  For example, one of your users might have the Twitter handle `:::at:::tweeter`. To map the Twitter handle to the user within Buddy you add the identity to the user with an `identityProviderName` of `twitter` and value of `@tweeter`. This opens up new features within your application, such as user look up via Twitter handle.\n\n**Note:** Identities are not acted upon by Buddy, they are only stored for use by the application.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"var options = {\\n\\tidentityId: \\\"[yourIdentityId]\\\"\\n};\\n\\nBuddy.post('/users/me/identities/my_identityProviderName',\\n\\t\\toptions,\\n\\t\\tfunction(err, result) {\\n\\t\\t\\t \\n\\t\\t\\tif (result.success) {\\n\\t\\t\\t\\t// Do something with the result!\\n\\t\\t\\t} else { \\n\\t\\t\\t\\t// Otherwise log the error\\n\\t\\t\\t\\tconsole.log(err); \\n\\t\\t\\t} \\n\\t\\t}\\n\\t);\",\n      \"language\": \"javascript\"\n    },\n    {\n      \"code\": \"NSDictionary *params = @{\\n\\t\\t\\[email protected]\\\"identityId\\\": @\\\"[yourIdentityId]\\\"\\n\\t\\t};\\n\\n[Buddy POST:@\\\"/users/me/identities/my_identityProviderName\\\" parameters:params class:[BPUser class] callback:^(id obj, NSError *error) {\\n\\t// Your callback code here\\n}];\",\n      \"language\": \"objectivec\",\n      \"name\": \"iOS\"\n    },\n    {\n      \"code\": \"Map<String, Object> parameters = new HashMap<String, Object>();\\nparameters.put(\\\"identityId\\\", \\\"[yourIdentityId]\\\");\\n\\nBuddy.<User>post(\\\"/users/me/identities/my_identityProviderName\\\", parameters, new BuddyCallback<User>(User.class) {\\n\\[email protected]\\n\\tpublic void completed(BuddyResult<User> result) {\\n\\t\\t// Your callback code here\\n\\t}\\n});\",\n      \"language\": \"java\",\n      \"name\": \"Android\"\n    },\n    {\n      \"code\": \"var options = new {\\n\\t\\t\\tidentityId = \\\"[yourIdentityId]\\\"\\n\\t\\t};\\n\\nvar result = await Buddy.PostAsync<User>(\\\"/users/me/identities/my_identityProviderName\\\", options);\",\n      \"language\": \"csharp\",\n      \"name\": \".NET\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]\n###Path Parameters\n\nThese parameters should be specified as part of the HTTP path.\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"identityProviderName\",\n    \"0-1\": \"The name of the provider that the identifier is intended for use by (e.g the name of a social media website).\",\n    \"0-2\": \"string\",\n    \"0-3\": \"Required\"\n  },\n  \"cols\": 4,\n  \"rows\": 1\n}\n[/block]\n###Body Parameters\n\nThese parameters should be specified as part of the request body.\n[block:parameters]\n{\n  \"data\": {\n    \"0-0\": \"identityId\",\n    \"0-1\": \"The identifier to be added.\",\n    \"0-2\": \"string\",\n    \"0-3\": \"Required\"\n  },\n  \"cols\": 4,\n  \"rows\": 1\n}\n[/block]\n\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"{\\n    \\\"status\\\": 200,\\n    \\\"result\\\": 1,\\n    \\\"request_id\\\": \\\"0741f540-58c0-4ab3-89b2-1d784af0ad4b\\\",\\n    \\\"success\\\": true\\n}\",\n      \"language\": \"json\",\n      \"name\": \"Response\"\n    }\n  ],\n  \"sidebar\": true\n}\n[/block]","excerpt":"","slug":"add-identity","type":"basic","title":"Add Identity"}
[block:api-header] { "type": "post", "title": "/users/me/identities/{identityProviderName}" } [/block] Adds an additional identity for the user. Identities allow mapping between Buddy users and users within other systems. You can think of identities as a special class of metadata where you attach a unique identifier to a user representing some other platform. For example, one of your users might have the Twitter handle `@tweeter`. To map the Twitter handle to the user within Buddy you add the identity to the user with an `identityProviderName` of `twitter` and value of `@tweeter`. This opens up new features within your application, such as user look up via Twitter handle. **Note:** Identities are not acted upon by Buddy, they are only stored for use by the application. [block:code] { "codes": [ { "code": "var options = {\n\tidentityId: \"[yourIdentityId]\"\n};\n\nBuddy.post('/users/me/identities/my_identityProviderName',\n\t\toptions,\n\t\tfunction(err, result) {\n\t\t\t \n\t\t\tif (result.success) {\n\t\t\t\t// Do something with the result!\n\t\t\t} else { \n\t\t\t\t// Otherwise log the error\n\t\t\t\tconsole.log(err); \n\t\t\t} \n\t\t}\n\t);", "language": "javascript" }, { "code": "NSDictionary *params = @{\n\t\t\[email protected]\"identityId\": @\"[yourIdentityId]\"\n\t\t};\n\n[Buddy POST:@\"/users/me/identities/my_identityProviderName\" parameters:params class:[BPUser class] callback:^(id obj, NSError *error) {\n\t// Your callback code here\n}];", "language": "objectivec", "name": "iOS" }, { "code": "Map<String, Object> parameters = new HashMap<String, Object>();\nparameters.put(\"identityId\", \"[yourIdentityId]\");\n\nBuddy.<User>post(\"/users/me/identities/my_identityProviderName\", parameters, new BuddyCallback<User>(User.class) {\n\[email protected]\n\tpublic void completed(BuddyResult<User> result) {\n\t\t// Your callback code here\n\t}\n});", "language": "java", "name": "Android" }, { "code": "var options = new {\n\t\t\tidentityId = \"[yourIdentityId]\"\n\t\t};\n\nvar result = await Buddy.PostAsync<User>(\"/users/me/identities/my_identityProviderName\", options);", "language": "csharp", "name": ".NET" } ], "sidebar": true } [/block] ###Path Parameters These parameters should be specified as part of the HTTP path. [block:parameters] { "data": { "0-0": "identityProviderName", "0-1": "The name of the provider that the identifier is intended for use by (e.g the name of a social media website).", "0-2": "string", "0-3": "Required" }, "cols": 4, "rows": 1 } [/block] ###Body Parameters These parameters should be specified as part of the request body. [block:parameters] { "data": { "0-0": "identityId", "0-1": "The identifier to be added.", "0-2": "string", "0-3": "Required" }, "cols": 4, "rows": 1 } [/block] [block:code] { "codes": [ { "code": "{\n \"status\": 200,\n \"result\": 1,\n \"request_id\": \"0741f540-58c0-4ab3-89b2-1d784af0ad4b\",\n \"success\": true\n}", "language": "json", "name": "Response" } ], "sidebar": true } [/block]