https://github.com/ricaun-io/forge-api-dotnet-oss
Forge Data Management OSS .NET SDK: Provides .NET SDK to help you easily integrate Forge Data Management v2 REST APIs into the application
https://github.com/ricaun-io/forge-api-dotnet-oss
autodesk autodesk-data-management autodesk-forge
Last synced: 6 months ago
JSON representation
Forge Data Management OSS .NET SDK: Provides .NET SDK to help you easily integrate Forge Data Management v2 REST APIs into the application
- Host: GitHub
- URL: https://github.com/ricaun-io/forge-api-dotnet-oss
- Owner: ricaun-io
- License: mit
- Created: 2022-12-20T14:17:00.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-12-18T21:05:34.000Z (over 1 year ago)
- Last Synced: 2025-10-11T01:07:30.943Z (10 months ago)
- Topics: autodesk, autodesk-data-management, autodesk-forge
- Language: C#
- Homepage:
- Size: 149 KB
- Stars: 7
- Watchers: 1
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Autodesk.Forge.Oss
[](https://github.com/ricaun-io/forge-api-dotnet-oss)
[](https://nuke.build/)
[](LICENSE)
[](https://github.com/ricaun-io/forge-api-dotnet-oss/actions)
[](https://www.nuget.org/packages/ricaun.Autodesk.Forge.Oss)
## Overview
.NET SDK for **Data Management v2 API** for `Object Storage Service (OSS)`, for more information, please visit [official documentation](https://aps.autodesk.com/en/docs/data/v2)
### PackageReference
```xml
```
### Requirements
- [.NET 6](https://dotnet.microsoft.com/en-us/download/dotnet/6.0) or later
- A registered app on the [Autodesk Platform Service](https://aps.autodesk.com/).
### Dependencies
- [Autodesk.Forge](Autodesk.Forge) assembly which provides services such as:
- Forge [TwoLeggedApi](Autodesk.Forge/Api/TwoLeggedApi.cs)
- Data Management [BucketsApi](Autodesk.Forge/Api/BucketsApi.cs)
- Data Management [ObjectsApi](Autodesk.Forge/Api/ObjectsApi.cs)
### Configuration
By default the Forge credentials could be defined with the following environment variables:
```bash
APS_CLIENT_ID=
APS_CLIENT_SECRET=
```
or
```bash
FORGE_CLIENT_ID=
FORGE_CLIENT_SECRET=
```
## API Reference
The package `ricaun.Autodesk.Forge.Oss` use the namespace `Autodesk.Forge.Oss`.
### OssClient
```csharp
using Autodesk.Forge.Oss;
using System;
using System.Threading.Tasks;
internal class Program
{
public static async Task Main(string[] args)
{
var ossClient = new OssClient(new Configuration()
{
ClientId = "",
ClientSecret = ""
});
var buckets = await ossClient.GetBucketsAsync();
Console.WriteLine(buckets);
}
}
```
### Bundle
```csharp
Buckets buckets = await ossClient.GetBucketsAsync();
Bucket bucket = await ossClient.CreateBucketAsync(bucketKey);
Bucket bucket = await ossClient.TryGetBucketDetailsAsync(bucketKey);
Bucket bucket = await ossClient.GetBucketDetailsAsync(bucketKey);
await ossClient.DeleteBucketAsync(bucketKey);
```
### Object
```csharp
BucketObjects bucketObjects = await ossClient.GetObjectsAsync(bucketKey);
Stream stream = await ossClient.GetObjectAsync(bucketKey, objectName);
ObjectDetails objectDetails = await ossClient.GetObjectDetailsAsync(bucketKey, objectName);
ObjectDetails objectDetails = await ossClient.UploadObjectAsync(bucketKey, objectName);
ObjectDetails objectDetails = await ossClient.GetS3UploadURLAsync(bucketKey, objectName);
ObjectDetails objectDetails = await ossClient.CompleteS3UploadAsync(bucketKey, objectName, uploadKey);
await ossClient.DeleteObjectAsync(bucketKey, objectName);
```
### Signed
```csharp
PostObjectSigned postObjectSigned = await ossClient.CreateSignedResourceAsync(bucketKey, objectName, postBucketsSigned);
```
### FileExtension
```csharp
ObjectDetails objectDetails = await ossClient.UploadFileAsync(bucketKey, objectName, localFullName);
await ossClient.DownloadFileAsync(bucketKey, objectName, localFullName);
string signedUrl = await ossClient.CreateSignedFileAsync(bucketKey, objectName);
string signedUrl = await ossClient.CreateSignedFileWriteAsync(bucketKey, objectName);
```
## Release
* [Latest release](https://github.com/ricaun-io/forge-api-dotnet-oss/releases/latest)
## License
This project is [licensed](LICENSE) under the [MIT License](https://en.wikipedia.org/wiki/MIT_License).
---
Do you like this project? Please [star this project on GitHub](https://github.com/ricaun-io/forge-api-dotnet-oss/stargazers)!