{"id":22907902,"url":"https://github.com/bynder/bynder-c-sharp-sdk","last_synced_at":"2025-04-06T18:16:22.484Z","repository":{"id":41390248,"uuid":"82541782","full_name":"Bynder/bynder-c-sharp-sdk","owner":"Bynder","description":"SDK in C# for integration with Bynder","archived":false,"fork":false,"pushed_at":"2024-10-14T15:31:36.000Z","size":353,"stargazers_count":3,"open_issues_count":14,"forks_count":23,"subscribers_count":67,"default_branch":"master","last_synced_at":"2025-03-30T16:13:32.327Z","etag":null,"topics":["api","csharp","integration","sdk"],"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/Bynder.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-02-20T09:46:06.000Z","updated_at":"2024-10-14T15:29:14.000Z","dependencies_parsed_at":"2023-12-12T23:25:28.712Z","dependency_job_id":"f210bb42-8413-481f-a941-06b7b657d27b","html_url":"https://github.com/Bynder/bynder-c-sharp-sdk","commit_stats":null,"previous_names":[],"tags_count":25,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bynder%2Fbynder-c-sharp-sdk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bynder%2Fbynder-c-sharp-sdk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bynder%2Fbynder-c-sharp-sdk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Bynder%2Fbynder-c-sharp-sdk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Bynder","download_url":"https://codeload.github.com/Bynder/bynder-c-sharp-sdk/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526764,"owners_count":20953143,"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":["api","csharp","integration","sdk"],"created_at":"2024-12-14T03:18:35.608Z","updated_at":"2025-04-06T18:16:22.454Z","avatar_url":"https://github.com/Bynder.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bynder C# SDK\n\n![Tests](https://github.com/Bynder/bynder-c-sharp-sdk/workflows/Tests/badge.svg)\n![Publish](https://github.com/Bynder/bynder-c-sharp-sdk/workflows/Publish/badge.svg)\n[![Coverage Status](https://coveralls.io/repos/github/Bynder/bynder-c-sharp-sdk/badge.svg?branch=master)](https://coveralls.io/github/Bynder/bynder-c-sharp-sdk?branch=master)\n![Nuget](https://img.shields.io/nuget/v/Bynder.Sdk)\n![Nuget](https://img.shields.io/nuget/dt/Bynder.Sdk?color=orange)\n\nThe main goal of this SDK is to speed up the integration of Bynder customers who use C# making it easier to connect to the Bynder API (http://docs.bynder.apiary.io) and executing requests on it.\n\n## Nuget Package\n\nYou can download and use Bynder SDK from Nuget. https://www.nuget.org/packages/Bynder.Sdk/\n\n## Current status\n\nAt the moment this SDK provides a library with the following methods:\n\n### OAuth operations\n\n```c#\nstring GetAuthorisationUrl(string state);\nTask GetAccessTokenAsync();\nTask GetAccessTokenAsync(string code);\n```\n\n### Asset management operations\n\n```c#\nTask\u003cIList\u003cBrand\u003e\u003e GetBrandsAsync();\nTask\u003cUri\u003e GetDownloadFileUrlAsync(DownloadMediaQuery query);\nTask\u003cIDictionary\u003cstring, Metaproperty\u003e\u003e GetMetapropertiesAsync();\nTask\u003cMetaproperty\u003e GetMetapropertyAsync(MetapropertiesQuery query);\nTask\u003cList\u003cString\u003e\u003e GetMetapropertyDependenciesAsync(MetapropertiesQuery query);\nTask\u003cMedia\u003e GetMediaInfoAsync(MediaInformationQuery query);\nTask\u003cIList\u003cMedia\u003e\u003e GetMediaListAsync(MediaQuery query);\nTask\u003cSaveMediaResponse\u003e UploadFileAsync(UploadQuery query);\nTask\u003cStatus\u003e ModifyMediaAsync(ModifyMediaQuery query);\nTask\u003cList\u003cTag\u003e\u003e GetTagsAsync(TagsQuery query);\nTask\u003cStatus\u003e AddTagToMediaAsync(AddTagToMediaQuery query);\n```\n\n### Collection management operations\n\n```c#\nTask\u003cIList\u003cCollection\u003e\u003e GetCollectionsAsync(GetCollectionsQuery query);\nTask\u003cCollection\u003e GetCollectionAsync(string id);\nTask\u003cStatus\u003e CreateCollectionAsync(CreateCollectionQuery query);\nTask\u003cStatus\u003e DeleteCollectionAsync(string id);\nTask\u003cIList\u003cstring\u003e\u003e GetMediaAsync(GetMediaQuery query);\nTask\u003cStatus\u003e AddMediaAsync(AddMediaQuery query);\nTask\u003cStatus\u003e RemoveMediaAsync(RemoveMediaQuery query);\nTask\u003cStatus\u003e ShareCollectionAsync(ShareQuery query);\n```\n\n### Sample Files Functionality Testing\n\nClasses within `Sample` contain code to execute corresponding functionalities. The purpose is to demonstrate how methods \nare called and provide a convenient method to execute functions.\n\nExecuting the code in each file will prompt you in the terminal to enter in various IDs (media, collection, brand, tag, etc) to pass into each of the functions being run.\n\nWithin `Bynder/Sample` create an `Config.json` file or modify with the correct values. This file will be referenced from sample files. Depending on the sample file, you will need to have the correct scopes granted. \n\nExample `Config.json` file content:\n\n```json\n{\n  \"base_url\": \"https://example.bynder.com\",\n  \"client_id\": \"your oauth app client id\",\n  \"client_secret\": \"your oauth app client secret\",\n  \"redirect_uri\": \"your oauth app redirect uri\",\n  \"scopes\": \"offline asset:read asset:write collection:read collection:write asset.usage:read asset.usage:write meta.assetbank:read meta.assetbank:write meta.workflow:read\"\n}\n```\nWithin each sample file, OAuth credentials are read in from `Config.json`. \nThis will prompt the browser to open to retrieve an access code and then redirected to the redirect URI. \nAccess code is then provided to terminal prompt to retrieve an access token for API calls afterward.\n\n\n#### Setting up .NET (dotnet) and building the project\n\nMake sure you have .NET 8.0 set up and installed. If you are developing on a Mac OS, the fastest method is to download the C# Dev Kit in Visual Studio Code and download .NET 8.0 from https://dotnet.microsoft.com/en-us/download/dotnet/8.0.\n\nFrom `Bynder/Sample` directory, the project can be built using command from `Bynder.Sample.csproj`:\n```bash\ndotnet build\n```\n\n\n#### Brands Sample\n\nExecute `BrandsSample.cs` file with command\n\n```bash\ndotnet run -- BrandsSample\n```\n\nMethods Used:\n* GetBrandsAsync()\n\n\n#### Collections Sample\n\nExecute `CollectionsSample.cs` file with command\n\n```bash\ndotnet run -- CollectionsSample\n```\n\nMethods Used:\n* GetCollectionsAsync(GetCollectionsQuery)\n* GetCollectionAsync(collectionId)\n* CreateCollectionAsync(CreateCollectionQuery)\n* ShareCollectionAsync(ShareQuery)\n* DeleteCollectionAsync(collectionId)\n* AddMediaAsync(AddMediaQuery)\n* GetMediaAsync(GetMediaQuery)\n* RemoveMediaAsync(RemoveMediaQuery)\n\n\n#### Media Sample\n\nExecute `MediaSample.cs` file with command\n\n```bash\ndotnet run -- MediaSample\n```\n\nMethods Used:\n\n* GetMediaListAsync(MediaQuery)\n* GetMediaInfoAsync(MediaInformationQuery)\n* GetDownloadFileUrlAsync(DownloadMediaQuery)\n* ModifyMediaAsync(ModifyMediaQuery)\n\n#### Metaproperties Sample\n\nExecute `MetapropertiesSample.cs` file with command\n\n```bash\ndotnet run -- MetapropertiesSample\n```\n\nMethods Used:\n* GetMetapropertiesAsync()\n* GetMetapropertyAsync(MetapropertyQuery)\n* GetMetapropertyDependenciesAsync(GetMetapropertyDependenciesAsync)\n\n#### Tags Sample\n\nExecute `TagsSample.cs` file with command\n\n```bash\ndotnet run -- TagsSample\n```\n\nMethods Used:\n* GetTagsAsync(GetTagsQuery)\n* AddTagToMediaAsync(AddTagToMediaQuery)\n\n#### Upload Sample\n\nExecute `UploadSample.cs` file with command\n\n```bash\ndotnet run -- UploadSample\n```\n\nMethods Used:\n* UploadFileAsync(UploadQuery)\n\n#### Asset Usage Sample\n\nExecute `AssetUsage.cs` file with command\n\n```bash\ndotnet run -- AssetUsage\n```\nMethods Used:\n* CreateAssetUsage(AssetUsageQuery)\n* DeleteAssetUsage(AssetUsageQuery)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbynder%2Fbynder-c-sharp-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbynder%2Fbynder-c-sharp-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbynder%2Fbynder-c-sharp-sdk/lists"}