Create, Manage, Maintain: A Practical Guide to the Aspose.Cells Cloud Management API

Creating an empty workbook, renaming a sheet, compressing a bloated file, or repairing a corrupted one — these are the small, everyday chores that still eat developer time when you don’t have the right tool. ManagementController turns them into one-liners.

Every application that works with spreadsheets eventually hits the same unglamorous tasks:

  • Creating a new, empty workbook on the fly — sometimes from a branded template.
  • Rearranging worksheets — adding, renaming, deleting, reordering — because the shape of the data changed since yesterday.
  • Taming file size — compressing a 40 MB XLSX down to 8 MB before emailing it.
  • Rescuing a corrupted file — the one a user saved wrong, or a tool exported badly.
  • Inspecting structure — figuring out which sheets, tables, charts, and merged-cell regions live inside a workbook without opening it.

The ManagementController in the Aspose.Cells Cloud microservice (source: src/Aspose.Cells.Cloud.MicroService/Controllers/ManagementController.cs) handles all of these behind a clean REST surface. This post introduces its 15 endpoints with runnable cURL examples you can paste into your pipeline today.

1. What does ManagementController do?

ManagementController is the controller dedicated to workbook lifecycle and housekeeping. Unlike ConversionController (format conversion), DataProcessingController (bulk merge/split/import), or CellsController (cell-level read/write), this controller is about the shape, health, and metadata of the workbook itself.

Responsibility Typical endpoints
Create workbooks, optionally from a template spreadsheet/create
Inspect structure — worksheets, merged cells, full structure JSON spreadsheet/worksheets, spreadsheet/mergedcells, spreadsheet/structure, {name}/worksheets/{worksheet}/mergedcells, {name}/structure
Modify worksheet layout — add, delete, rename, move spreadsheet/add/worksheet, spreadsheet/delete/worksheet, spreadsheet/rename/worksheet, spreadsheet/move/worksheet
Maintain — compress, repair, accept revisions spreadsheet/compress, spreadsheet/repair, spreadsheet/accept-all-revisions, {name}/accept-all-revisions

Every endpoint takes a workbook as multipart input (local) or references one already in cloud storage (remote), and returns either a modified workbook stream, a JSON payload, or a simple OK.

2. The fifteen endpoints at a glance

# HTTP Route Source What it does
1 PUT /v4.0/cells/spreadsheet/create — Create a new workbook, optionally from a template
2 PUT /v4.0/cells/spreadsheet/worksheets Local List all worksheets (name + type)
3 PUT /v4.0/cells/spreadsheet/add/worksheet Local Add a worksheet with type, name, position
4 PUT /v4.0/cells/spreadsheet/delete/worksheet Local Remove a worksheet by name
5 PUT /v4.0/cells/spreadsheet/rename/worksheet Local Rename a worksheet
6 PUT /v4.0/cells/spreadsheet/move/worksheet Local Move a worksheet to a new index
7 PUT /v4.0/cells/spreadsheet/compress Local Compress the workbook to reduce size
8 PUT /v4.0/cells/spreadsheet/repair Local Repair a corrupted workbook
9 GET /v4.0/cells/{name}/worksheets/{worksheet}/mergedcells Cloud List merged-cell areas in a remote worksheet
10 PUT /v4.0/cells/spreadsheet/mergedcells Local List merged-cell areas in a local worksheet
11 PUT /v4.0/cells/spreadsheet/accept-all-revisions Local Accept all tracked changes
12 PUT /v4.0/cells/{name}/accept-all-revisions Cloud Accept all tracked changes in a remote file
13 PUT /v4.0/cells/spreadsheet/structure Local Get full structure as JSON
14 GET /v4.0/cells/{name}/structure Cloud Get full structure of a remote file as JSON
15 PUT /v4.0/cells/spreadsheet/create — (alias — see #1)

Routes assume the host https://api.aspose.cloud. Live calls look like https://api.aspose.cloud/v4.0/cells/....

3. Before you start: two prerequisites

  1. Get credentials. Sign up at Aspose Cloud Dashboard, create an Application, grab Client ID and Client Secret. SDKs handle the JWT exchange for you; with cURL, you trade them for a bearer token manually.
  2. Install an SDK — or just use cURL. Everything is plain REST.
<!-- .NET -->
<PackageReference Include="Aspose.Cells-Cloud" Version="25.x" />
# Python
pip install asposecellscloud

4. Quick start: create a new workbook

PUT /v4.0/cells/spreadsheet/create is the simplest thing the controller does — and one of the most useful. It returns a brand-new workbook file.

cURL

# 1) Get a bearer token
curl -X POST "https://api.aspose.cloud/connect/token" \
  -d "grant_type=client_credentials" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET"

# 2) Create an empty XLSX
curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/create?format=xlsx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  --output new_workbook.xlsx
Parameter Type Default Meaning
format string xlsx Output file format — xlsx, xlsm, xlsb, ods, etc.
template string null Optional template file path. When provided, the new workbook is initialized with the template’s content and formatting.

Using a template

If you have a branded template — logo in the header, brand colors in the theme, pre-formatted “Invoice” table — upload it once to cloud storage, then pass its path as template:

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/create?format=xlsx&template=templates/invoice_branded.xlsx" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  --output invoice_2026_09_001.xlsx

Now your application can mint fresh invoices that already look right, without embedding any styling logic.

5. Walkthrough: manage worksheets in a workbook

These four endpoints handle the day-to-day shape of a workbook. Let’s walk through a realistic sequence: you’ve uploaded a workbook, and you need to list its sheets, add a new one, rename an existing one, and delete a third.

5a. List worksheets

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/worksheets" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: multipart/form-data" \
  -F "file=@my_workbook.xlsx"

Response:

[
  { "WorksheetName": "Sheet1", "SheetType": "Worksheet" },
  { "WorksheetName": "Data", "SheetType": "Worksheet" },
  { "WorksheetName": "Chart1", "SheetType": "Chart" }
]

5b. Add a new worksheet

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/add/worksheet?sheetType=Worksheet&position=1&sheetName=Summary" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx
Parameter Type Default Meaning
sheetType string Worksheet Type of the new sheet — Worksheet, Chart, etc.
position int end 0-indexed position to insert the new sheet
sheetName string auto Name to give the new sheet

5c. Rename a worksheet

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/rename/worksheet?sourceName=Sheet1&targetName=Overview" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx

5d. Delete a worksheet

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/delete/worksheet?sheetName=Chart1" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx

5e. Move a worksheet

# Move "Data" to position 0 (front of the workbook)
curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/move/worksheet?worksheet=Data&position=0" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@my_workbook.xlsx" \
  --output updated.xlsx

Each of these endpoints follows the same pattern: upload workbook in multipart, get modified workbook back. Chain them in your pipeline, or call them ad-hoc from a UI.

6. Walkthrough: compress a bloated workbook

A user emailed you a 40 MB XLSX that’s 90% redundant XML. PUT /v4.0/cells/spreadsheet/compress shrinks it.

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/compress?level=9" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@bloated.xlsx" \
  --output slim.xlsx
Parameter Type Meaning
level int Compression aggressiveness. 0 = no compression, 9 = maximum.

A level of 9 on a typical 40 MB workbook often lands in the 6–10 MB range. The content is identical; only the ZIP compression of the XLSX container is tightened.

7. Walkthrough: repair a corrupted workbook

Sometimes you receive a file that Excel refuses to open. PUT /v4.0/cells/spreadsheet/repair runs the engine’s recovery routine and returns a clean version.

curl -X PUT "https://api.aspose.cloud/v4.0/cells/spreadsheet/repair" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -F "file=@broken.xlsx" \
  --output repaired.xlsx

No parameters. The controller re-serializes the workbook through the engine, which discards corrupt parts and writes a structurally valid file. Not every corruption is recoverable, but this handles the common cases — truncated ZIP entries, invalid cell references, malformed shared strings.

8. Key benefits summary

  • One controller for lifecycle ops. Create, restructure, compress, repair, inspect — all under one auth model and one error contract.
  • Template-aware creation. Don’t re-implement styling in your app; let the server bake a template into every new workbook.
  • Local and remote variants. Same logic whether files are in your user’s browser or already in cloud storage.
  • Structure introspection. The structure endpoint returns a full JSON map of sheets, tables, pivot tables, charts, and shapes — perfect for driving a UI or a validation pipeline.
  • Zero infrastructure. No Excel install, no COM, no server to maintain.