A Go SDK for SharePoint providing authentication, HTTP client, and fluent API wrapper for both SharePoint Online and On-Premises.
Gosip is a SharePoint SDK for Go that provides authentication, HTTP client, and fluent API wrapper functionalities. It simplifies interactions with SharePoint Online and On-Premises by abstracting complex authentication flows and offering a developer-friendly API for REST, CSOM, and SOAP endpoints. The SDK solves the problem of cumbersome SharePoint integration in Go applications by reducing boilerplate code and handling SharePoint-specific nuances.
Go developers building applications that need to interact with SharePoint, such as enterprise tools, automation scripts, or integration services. It's particularly useful for those working in environments with SharePoint Online or On-Premises who require reliable authentication and API consumption.
Developers choose Gosip for its comprehensive authentication support across multiple SharePoint versions and strategies, its fluent API that simplifies code readability, and its SharePoint-aware features like retries and error handling. It stands out as a dedicated, well-documented Go SDK that reduces the complexity of SharePoint integration compared to manual HTTP client implementations.
⚡️ SharePoint SDK for Go
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports numerous auth strategies for both SharePoint Online and On-Premises, including Azure AD, NTLM, and ADFS, as listed in the README's auth table.
Offers a chainable syntax that enhances code readability and provides IntelliSense support, demonstrated in the usage samples with Web().Lists().Select().
Includes SharePoint-aware retries, error handling, and header presets, reducing the need for custom boilerplate code for robust API calls.
Provides both high-level fluent API and low-level HTTP client helpers, allowing flexibility for different use cases, from simple queries to custom endpoints.
Some authentication methods like SAML are deprecated, and the README notes this, which may force upgrades or workarounds for older systems.
Authentication setup requires detailed strategy-specific parameters and config files, which can be error-prone, as shown in the auth initialization examples.
For endpoints not covered by the fluent API, developers must fall back to generic HTTP helpers, adding complexity, as mentioned in the README for custom calls.