Aspose.Slides.SaaSIntegrations 25.9.0

Prefix Reserved
dotnet add package Aspose.Slides.SaaSIntegrations --version 25.9.0
                    
NuGet\Install-Package Aspose.Slides.SaaSIntegrations -Version 25.9.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Aspose.Slides.SaaSIntegrations" Version="25.9.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Aspose.Slides.SaaSIntegrations" Version="25.9.0" />
                    
Directory.Packages.props
<PackageReference Include="Aspose.Slides.SaaSIntegrations" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Aspose.Slides.SaaSIntegrations --version 25.9.0
                    
#r "nuget: Aspose.Slides.SaaSIntegrations, 25.9.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Aspose.Slides.SaaSIntegrations@25.9.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Aspose.Slides.SaaSIntegrations&version=25.9.0
                    
Install as a Cake Addin
#tool nuget:?package=Aspose.Slides.SaaSIntegrations&version=25.9.0
                    
Install as a Cake Tool

Aspose.Slides team is excited to introduce our integrations with popular presentation SaaS services such as Google Slides, Google Drive, Canva, and Zoho. With Aspose.Slides SaaS Integrations, you can convert, edit, download, and upload presentations programmatically from the services mentioned above.

For more examples, visit our GitHub repository: Aspose.Slides SaaS Integrations Examples.

Google API

Before starting to work with your Google Slides presentation via Aspose.Slides you have to create a Google API project and create a Google Cloud project, then enable the desired APIs. Then you have to choose a way you are going to access Google API.

Aspose.Slide Google Slides SaaS Integration supports two ways to access Google API: Google Service Account or OAuth 2.0 with user interaction via a browser.

Google Integration Example

In the following example, we will download a Google Slides presentation from Google Drive and save it to the local disk as a PDF file. We will use a Google Service Account for authorization, assuming the service account JSON file with credentials has already been downloaded.

// Create externally managed HttpClient
HttpClient httpClient = new HttpClient();

// Create an authorization provider using a service account JSON file
IGoogleAuthorizationProvider account = new GoogleServiceAccountAuthProvider(@"service_account_json_file.json", httpClient);

// Initialize Google Slides integration service with the authorization provider
GoogleSlidesIntegration googleSlidesIntegration = new GoogleSlidesIntegration(account, httpClient);

// Load a presentation from Google Drive by its file ID into an Aspose.Slides IPresentation instance
using IPresentation pres = await googleSlidesIntegration.LoadPresentationAsync("1A2B3C4D5E6F7G8H9I0J");

// Modify the presentation if needed (e.g., remove the second slide)
pres.Slides.RemoveAt(1);

// Save the presentation locally as a PDF file
pres.Save(@"GoogleDriveDownload.pdf", SaveFormat.Pdf);

Canva API

Before working with Canva presentations using Aspose.Slides, you must first create a Canva integration, enable the required APIs, and configure the redirection URI. In general, working with Canva via our library is similar to working with Google Slides. However, instead of the Google Slides-specific classes, use the CanvaIntegration class along with the dedicated ICanvaAuthorizationProvider. Canva supports OAuth 2.0 authorization only.

Canva Integration example

This example demonstrates how to load a presentation instance from Canva using access via CanvaOAuthProvider. On the first run, this code will require interaction with a browser (consent mode). All subsequent executions will not require browser interaction, as the refresh token is stored locally after the initial run.

// Create externally managed HttpClient
using HttpClient httpClient = new HttpClient();

// Create an authorization provider using OAuth with client ID, client secret and redirect URI
CanvaOAuthProvider authorizationProvider = new CanvaOAuthProvider("your_cliend_id", "your_client_secret", "your_redirect_uri", httpClient);

// Initialize the Canva integration service with the authorization provider
CanvaIntegration canvaIntegration = new CanvaIntegration(authorizationProvider, httpClient);

//Load presentation 
using IPresentation presentation = await canvaIntegration.LoadPresentationAsync("your_canva_design_id");

// Save the presentation locally as a PowerPoint presentation file
presentation.Save("MyPresentation.pptx", Export.SaveFormat.Pptx);

Zoho API

You can use the ZohoIntegration class to integrate Aspose.Slides with Zoho. The ZohoIntegration class interacts with the Zoho WorkDrive REST API to list, upload, and download presentations.

To work with the Zoho WorkDrive API, you must first register on the Zoho API Console and create an application. Make sure you know the data center where your files are hosted (e.g., USA, EU, Canada).

The Zoho WorkDrive API uses OAuth 2.0 for authorization. To authenticate your requests, use one of the available IZohoAuthorizationProvider implementations.

// Create externally managed HttpClient
using HttpClient httpClient = new HttpClient();
// Create an authorization provider using OAuth with client ID, client secret, and redirect URI for the EU data center
IZohoAuthorizationProvider auth = new ZohoServerAppOAuthProvider(
    "my_client_id",
    "my_client_secret",
    ZohoAccountDataCenterType.EU,
    "https://myzohoapp.com/oauth/redirect",
    httpClient);
 
// Initialize Zoho integration with the authorization provider
ZohoIntegration zoho = new ZohoIntegration(auth, ZohoApiDataCenterType.EU, httpClient);
 
// Load a presentation from Zoho WorkDrive
using IPresentation pres = await zoho.LoadPresentationAsync("1A2B3C4D5E6F7G8H9I0J");
 
// Save the presentation locally as a PDF file
pres.Save("ZohoDownload.pdf", SaveFormat.Pdf);
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
25.9.0 31 8/27/2025
25.8.0 212 8/5/2025

Added Zoho Integration