{"id":19692759,"url":"https://github.com/hhandoko/yam-dotnet","last_synced_at":"2025-04-29T09:31:32.058Z","repository":{"id":9678932,"uuid":"11622957","full_name":"hhandoko/yam-dotnet","owner":"hhandoko","description":"An unofficial .Net Yammer REST API wrapper.","archived":false,"fork":false,"pushed_at":"2016-02-18T05:25:36.000Z","size":1165,"stargazers_count":9,"open_issues_count":0,"forks_count":3,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-26T04:15:40.714Z","etag":null,"topics":["c-sharp","rest","rest-api","yammer"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hhandoko.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"License.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-07-24T00:52:25.000Z","updated_at":"2019-03-12T04:45:23.000Z","dependencies_parsed_at":"2022-09-13T20:42:54.065Z","dependency_job_id":null,"html_url":"https://github.com/hhandoko/yam-dotnet","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hhandoko%2Fyam-dotnet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hhandoko%2Fyam-dotnet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hhandoko%2Fyam-dotnet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hhandoko%2Fyam-dotnet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hhandoko","download_url":"https://codeload.github.com/hhandoko/yam-dotnet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251473312,"owners_count":21595036,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c-sharp","rest","rest-api","yammer"],"created_at":"2024-11-11T19:14:20.895Z","updated_at":"2025-04-29T09:31:31.106Z","avatar_url":"https://github.com/hhandoko.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"YamNet is an unofficial, opinionated, Yammer REST API .NET (async) wrapper based on the the CodePlex [ContractMeow](http://yammercontractmeow.codeplex.com/) project. The goal is to provide a ready-to-use client library available via NuGet.\n\n## Breaking Changes\n  * **0.5**\n    * `MessageClient` return type updated to `MessageEnvelope` from `IQueryable\u003cMessage\u003e`\n    * `RelationshipClient` now accepts `Relation[]` as a parameter from `Dictionary\u003cstring, RelationshipType\u003e`\n    * Top-level `User` DTO classes has been renamed for consistency (`UserFullInfo` extends `User` extends `UserBasicInfo`).\n\n## Prerequisites and Installation\nYamNet is available as a .NET 3.5 and Portable Class Library (PCL) binaries, which makes it available for the following build targets:\n\n  * .NET 3.5+\n  * Silverlight 5+\n  * Windows Phone 8+\n  * Xamarin.iOS\n  * Xamarin.Android\n\nIt is available from NuGet, either via the GUI or running the following command from the Package Manager console:\n\n```\nPM\u003e Install-Package YamNet.Client\n```\n\n**Dependencies (.NET 3.5):**\n\n  * AsyncBridge\n  * Newtonsoft.Json\n  * RestSharp\n  * TaskParallelLibrary\n\n**Dependencies (PCL):**\n\n  * Microsoft.Bcl.Async\n  * Microsoft.Net.Http\n  * Newtonsoft.Json\n\n## Configuration\nYamNet requires the OAuth access token to access the Yammer REST endpoints. You will need to:\n\n  1. Register an application profile - [Yammer Developers Docs: Getting Started](https://developer.yammer.com/introduction/)\n  2. Obtain a test access token - [Yammer Developer Docs: Authentication](https://developer.yammer.com/authentication/#a-testtoken)\n\n## Usage\nWith the access token obtained, you can instantiate the YamNet client and obtain the current user info, for example, as follows:\n\n```C#\nusing (var yammerClient = new Client(token))\n{\n    // Calling async method synchronously\n    var currentUser = yammerClient.Users.Current().Result;\n\n    // Calling async method\n    var asyncResponse = await yammerClient.Users.Current();\n    var currentUserAsync = asyncResponse;\n}\n```\n\n**Note:** For usage in ASP.Net applications, it is recommended to chain the method with `ConfigureAwait(false)` to prevent async deadlock. More information is available on the following StackOverflow article: [An async/await example that causes a deadlock](http://stackoverflow.com/a/15022170).\n\nMost clients have support for various optional parameters, utilising C# 4.0 language feature (Visual Studio 2010 and up). The following is an example of retrieving a list of users whose name starts with \"F\", in descending order:\n\n```C#\nusing (var yammerClient = new Client(token))\n{\n    var asyncResponse = await yammerClient.Users.Get(letter: \"F\", reverse: true);\n    var usersWhoseNameStartsWithF = asyncResponse;\n}\n```\n\n## Supported Requests\nYamNet currently supports the following requests:\n\n  * Groups\n  * Invitations\n  * Messages (partial)\n  * Networks\n  * Relationships\n  * Search (partial)\n  * Topics\n  * Users (partial) \n\nThe goal by v1.0 is to reach completeness, i.e. 1:1 mapping of Yammer REST API to the library.\n\n## Undocumented Requests\nYamNet provides some support for Yammer requests that are not documented on the official REST API, but are known to be used by the Yammer web application itself through inspection via tools such as IE or Chrome network monitor, FireBug, Fiddler, etc. These undocumented methods can be found in separate classes under `/ClientExtensions`.\n\nCurrently there are no additional setup required in order to use them. However, in the future they may be separated into a different assembly and NuGet package (e.g. YamNet.Client.Undocumented).\n\n**Use it with caution. As these APIs may be subject to change without notice, and may break your application.**\n\n## Contributors\nPlease refer to the following [page](/Contributors.md) for a complete list of all contributors.\n\n## Contributing\nPull requests shall be made against `develop` branch, which will be reviewed for merging into the `master` branch.\n\n## Copyright and License\n  * Code and documentation copyright YamNet [contributors](/Contributors.md).\n  * Code released under [BSD3 license](/License.txt).\n  * Documentation released under [Creative Commons license](/LicenseDocs.txt).\n\n## Credits\nBig thanks to [jmjc95](http://www.codeplex.com/site/users/view/jmjc95) and [tuongla](http://www.codeplex.com/site/users/view/tuongla) for creating a thoughtful, open-source sample project, and using a fork-friendly Apache 2.0 license so others can reuse and adapt the original works.\n\nAlso thanks to [tejacques](https://github.com/tejacques) for [.Net 3.5 AsyncBridge](https://github.com/tejacques/AsyncBridge), and [OmerMor](https://github.com/OmerMor) for [TaskParallelLibrary](http://www.nuget.org/packages/TaskParallelLibrary/), for providing useful libraries making it easier to backport YamNet to .NET 3.5. \n\n## Other Yammer-related .Net Resources\n * [Yammer .NET SDK](https://github.com/yammer/dotnet-yammersdk)\n * [Windows 8 App - ContractMeow](http://yammercontractmeow.codeplex.com/)\n * [Windows 8.1 + Windows Phone 8 Sample with Yammer SDK](https://yammersdk.codeplex.com/)\n * [Windows Phone OAuth SDK+Demo](https://github.com/yammer/windows-phone-oauth-sdk-demo)\n\n## Other Tools\n * [MarkdownPad Pro](markdownpad.com) to edit markdown text\n * [Violet UML Editor](http://alexdp.free.fr/violetumleditor/page.php) to generate UML diagrams","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhhandoko%2Fyam-dotnet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhhandoko%2Fyam-dotnet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhhandoko%2Fyam-dotnet/lists"}