{"id":37056164,"url":"https://github.com/microsoftgraph/msgraph-sdk-dotnet-contrib","last_synced_at":"2026-01-14T06:20:33.184Z","repository":{"id":39608702,"uuid":"193967916","full_name":"microsoftgraph/msgraph-sdk-dotnet-contrib","owner":"microsoftgraph","description":"Community contributed extensions to the Microsoft Graph .NET SDK service library, to support APIs that have not yet made it into Microsoft Graph","archived":true,"fork":false,"pushed_at":"2024-06-11T20:15:04.000Z","size":866,"stargazers_count":33,"open_issues_count":4,"forks_count":8,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-10-05T02:53:46.694Z","etag":null,"topics":["devxeng"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/microsoftgraph.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null}},"created_at":"2019-06-26T19:46:51.000Z","updated_at":"2025-01-20T18:22:31.000Z","dependencies_parsed_at":"2023-02-19T20:45:48.331Z","dependency_job_id":"cb26bcc5-8a79-4790-b192-634f6e01b751","html_url":"https://github.com/microsoftgraph/msgraph-sdk-dotnet-contrib","commit_stats":{"total_commits":158,"total_committers":3,"mean_commits":"52.666666666666664","dds":0.01898734177215189,"last_synced_commit":"4894f6a026a935bbb3ef93e291f0051f55c25881"},"previous_names":[],"tags_count":47,"template":false,"template_full_name":null,"purl":"pkg:github/microsoftgraph/msgraph-sdk-dotnet-contrib","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fmsgraph-sdk-dotnet-contrib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fmsgraph-sdk-dotnet-contrib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fmsgraph-sdk-dotnet-contrib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fmsgraph-sdk-dotnet-contrib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoftgraph","download_url":"https://codeload.github.com/microsoftgraph/msgraph-sdk-dotnet-contrib/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoftgraph%2Fmsgraph-sdk-dotnet-contrib/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28412202,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T05:26:33.345Z","status":"ssl_error","status_checked_at":"2026-01-14T05:21:57.251Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["devxeng"],"created_at":"2026-01-14T06:20:32.390Z","updated_at":"2026-01-14T06:20:33.175Z","avatar_url":"https://github.com/microsoftgraph.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Graph SDK Community Extensions (Graph.Community)\n\nThe Graph extension library is a community effort to unblock developers building on .Net Standard who need to call endpoints that are not part of the Microsoft Graph.\n\n[![Build](https://github.com/microsoftgraph/msgraph-sdk-dotnet-contrib/actions/workflows/build.yml/badge.svg?branch=graph-v4\u0026event=push)](https://github.com/microsoftgraph/msgraph-sdk-dotnet-contrib/actions/workflows/build.yml)\n![NuGet package](https://buildstats.info/nuget/Graph.Community)\n\n## Documentation\n\nThis community library contains requests and models that extend the Microsoft Graph SDK. Please review the [Roadmap](./docs/ROADMAP.md) for an index of requests that are included and on the roadmap. \n\nIf there is an endpoint node for which you would like a request, please submit an issue to initiate a conversation. This will help reduce wasted effort.\n\n## Getting Started\n\nThe library includes a client factory class (`CommunityGraphClientFactory`) that provides methods to setup the Graph Service client with the handlers included in this library.\n\n### Using TokenCredential class\n\nTo use a `TokenCredential` class:\n\n```csharp\nvar credential = new DefaultAzureCredential();\n\nCommunityGraphClientOptions clientOptions = new CommunityGraphClientOptions()\n{\n  UserAgent = \"ExtendedCapabilitiesSample\"\n};\n\nvar graphServiceClient = CommunityGraphClientFactory.Create(clientOptions, credential);\n```\n\nTo use an Authorization provider:\n\n```csharp\nIAuthenticationProvider ap = new CustomAuthenticationProvider(pca, scopes);\n\nCommunityGraphClientOptions clientOptions = new CommunityGraphClientOptions()\n{\n  UserAgent = \"ExtendedCapabilitiesSample\"\n};\n\nvar graphServiceClient = CommunityGraphClientFactory.Create(clientOptions, ap);\n```\n\nA complete implementation is included in the [Diagnostic sample](samples/Diagnostics.cs).\n\nThe `CommunityGraphClientOptions` provides for specifing information to [decorate SharePoint REST traffic to help mitigate throttling](https://docs.microsoft.com/en-us/sharepoint/dev/general-development/how-to-avoid-getting-throttled-or-blocked-in-sharepoint-online#how-to-decorate-your-http-traffic-to-avoid-throttling).\n\nOnce a GraphServiceClient is instantiated, an extension method provides access to the SharePoint REST endpoint. This `SharePointAPI` extension method requires an absolute URL to the SharePoint site collection that is the target of the call. Subsequent methods of the fluent API are used to address the [feature area of the REST API](https://docs.microsoft.com/en-us/sharepoint/dev/sp-add-ins/determine-sharepoint-rest-service-endpoint-uris).\n\n### Example\nStatement:\n\n```csharp\ngsc.SharePointAPI('https://mock.sharepoint.com/sites/mockSite')\n     .SiteDesigns\n     .Request()\n     .GetAsync()\n```\n\nRequest:\n\n```\nGET https://mock.sharepoint.com/sites/mockSite/_api/Microsoft.Sharepoint.Utilities.WebTemplateExtensions.SiteScriptUtility.GetSiteDesigns`\n```\n\n## SharePoint Handler\n\nStarting with v3.21, the library contains middleware (a delegating handler) that will transform errors from SharePoint Online into a ServiceException. This allows consuming code to standardize error handling.\n\n## Breaking change in v3.18\n\nThe `SPUser` class returned from the `Web.SiteUsers` request has been renamed to **`User`**. This aligns with the OData.type property returned from the service.\n\n## Versioning\n\nThe version number intentionaly aligned with the version of the Microsoft.Graph package. \n\n\n|Version Component|Notes|\n|-|-|\n|Major|Aligned with Microsoft.Graph|\n|Minor|Aligned with Microsoft.Graph|\n|Patch|Incremented as requests/models are added to Graph.Community|\n|Suffix|Release/build type|\n\nVersion suffixes (`#` indicates a sequence number that is reset for each major/minor):\n- `-CI-#` Continuous Integration release built from **dev** branch \n- `-preview#` Preview release, built from **prerelease** branch\n- No suffix is release build\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoftgraph%2Fmsgraph-sdk-dotnet-contrib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrosoftgraph%2Fmsgraph-sdk-dotnet-contrib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoftgraph%2Fmsgraph-sdk-dotnet-contrib/lists"}