If so you can download any of the below versions for testing. The product will function as normal except for an evaluation limitation. At the time of purchase we provide a license file via email that will allow the product to work in its full capacity. If you would also like an evaluation license to test without any restrictions for 30 days, please follow the directions provided here.
If you experience errors, when you try to download a file, make sure your network policies (enforced by your company or ISP) allow downloading ZIP and/or MSI files.

Installation
The package is available at Packagist and it can be installed via Composer by executing following command:
composer require groupdocscloud/groupdocs-annotation-cloud

Cloud Document Annotation PHP SDK
GroupDocs.Annotation Cloud API provides a comprehensive PHP SDK for seamless document annotation in the cloud. Add, edit, and manage annotations within popular file formats like PDF, Word, and Excel, with features like text highlighting, redaction, and collaborative commenting.
Document Annotations
Text Annotations add comments or explanations directly within the text.
Area Annotations highlight specific areas in a document for more detailed notes.
Point Annotations mark points of interest in a document for easy reference.
Arrow Annotations direct attention to specific document elements using arrows.
Strikeout/Underline Annotations highlight text by striking through or underlining it.
Markup Features
Highlighting mark key sections of the text with highlights for emphasis.
Redaction hide or censor sensitive information within a document completely.
Watermarking add watermarks to documents to indicate ownership or status.
Annotation Management
Edit Annotations modify existing annotations in a document.
Delete Annotations remove outdated or unnecessary annotations.
Export Annotations extract annotations to store separately or share.
Collaboration Features
Commenting facilitate multi-user collaboration with threaded commenting.
Version Control track changes to annotations with built-in versioning.
Real-Time Updates keep all users in sync with real-time annotation updates during collaboration.
Security Features
Access Control protect document annotations with user-based access control.
Role-Based Permissions assign different permission levels for added security over annotations.
Encryption secure document data during transfer and storage with encryption.
Advanced Features
Combine Annotations merge multiple annotations into a single document.
Layered Annotations add and manage layered annotations for more flexibility in redacting and marking documents.
Custom Annotation Styles customize the appearance of annotations with different colors, opacity, and sizes.
API Integration easily integrate annotation features into other systems using REST APIs.
Scalable Infrastructure SDK supports scalable architecture, making it suitable for high‑load environments.
Supported Annotation Types
Area Annotation mark specific areas of a document with customizable rectangles; supports comments and replies for collaborative reviews.
Distance Annotation measure the distance between objects in a document, useful for technical documents.
Ellipse Annotation highlight circular or elliptical areas with customizable properties like radius, color, and opacity.
Image Annotation insert images into a document for visual references like logos or stamps.
Link Annotation add hyperlinks to specific text or areas, providing navigation or referencing additional resources.
Multiple Annotation add various types of annotations (e.g., text, shapes, images) simultaneously within a document.
Point Annotation attach comments to specific points within the document, ideal for collaborative feedback.
Polyline Annotation draw connected lines to create shapes or mark paths in a document, with options for customizing line thickness and color.
Resource Redaction Annotation hide sensitive information by adding black rectangles over content, commonly used in legal or financial documents.
Squiggly Annotation highlight text with a squiggly underline, often used for marking spelling or grammar issues.
By using GroupDocs.Annotation Cloud SDK for PHP, developers can efficiently manage document annotations in a wide variety of formats, enabling powerful collaboration, security, and customization options. This SDK simplifies the annotation process, allowing PHP developers to focus on building and enhancing their applications.
| File Format | Description | Annotate |
|---|
DOC, DOCX | Word® Document | ✔️ |
OTT | Open Document Standard Format | ✔️ |
ODT | Open Document Text File Format | ✔️ |
DOCM | Microsoft Word® Open XML Macro-Enabled Document | ✔️ |
DOT | Word® Document Template File | ✔️ |
DOTX | Word® Open XML Document Template | ✔️ |
DOTM | Word® Open XML Macro-Enabled Template File | ✔️ |
RTF | Rich Text File Format | ✔️ |
TXT | Plain Text File Format | ✔️ |
PDF | Portable Document Format | ✔️ |
PPT, PPTX | Presentation Document Format | ✔️ |
PPSX | PowerPoint Open XML Slide Show | ✔️ |
ODP | OpenDocument Presentation File Format | ✔️ |
OTP | OpenDocument Presentation Template | ✔️ |
XLS, XLSX | Cells Document Format | ✔️ |
XLSB | Microsoft Excel® Binary Spreadsheet File | ✔️ |
XLSX | Microsoft Excel® Open XML Spreadsheet | ✔️ |
DICOM | Digital Imaging and Communication in Medicine | ✔️ |
DJVU | DjVu Format | ✔️ |
EMF/WMF | Enhanced MetaFile / Windows MetaFile | ✔️ |
CAD | Computer-Aided Design | ✔️ |
EML/EMLX | Email Markup Language | ✔️ |
HTML | Hypertext Markup Language | ✔️ |
MHTML | MIME HTML File | ✔️ |
JPEG | Joint Photographic Experts Group | ✔️ |
TIFF | Tagged Image File Format | ✔️ |
BMP | Bitmap | ✔️ |
GIF (static images without animation) | Graphics Interchange Format | ✔️ |
VSD | Microsoft Visio® Drawing | ✔️ |
VDX | Microsoft Visio® XML File Format | ✔️ |
VSS | Microsoft Visio® Stencil File Format | ✔️ |
VSDM | Microsoft Visio® Macro-Enabled Drawing File | ✔️ |
MSG | Email Message | ✔️ |
Getting Started with GroupDocs.Annotation Cloud
Create an Account
- Visit the Dashboard and register for a free account.
Create an API Client App
- Generate your
Client ID and Client Secret from the Dashboard to authenticate API requests.
Dependencies
Installation & Usage
Composer
The package is available at Packagist and it can be installed via Composer by executing following command:
composer require groupdocscloud/groupdocs-annotation-cloud
Or you can install SDK via Composer directly from this repository, add the following to composer.json:
{
"repositories": [
{
"type": "git",
"url": "https://github.com/groupdocs-annotation-cloud/groupdocs-annotation-cloud-php.git"
}
],
"require": {
"groupdocscloud/groupdocs-annotation-cloud": "*"
}
}
Then run composer install.
Manual Installation
Clone or download this repository, then run composer install in the root directory to install dependencies and include autoload.php into your code file:
require_once('/path/to/groupdocs-annotation-cloud-php/vendor/autoload.php');
Tests
To run the unit tests set your AppSID and AppKey in json.config and execute following commands:
php composer.phar install
./vendor/bin/phpunit
Run the PHP Example
Please follow the installation procedure and then run the following:
<?php
require_once(__DIR__ . '/vendor/autoload.php');
//TODO: Get your AppSID and AppKey at https://dashboard.groupdocs.cloud (free registration is required).
$configuration = new GroupDocs\Annotation\Configuration();
$configuration->setAppSid("XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX");
$configuration->setAppKey("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX");
$infoApi = new GroupDocs\Annotation\InfoApi($configuration);
try {
$response = $infoApi->getSupportedFileFormats();
foreach ($response->getFormats() as $key => $format) {
echo $format->getFileFormat() . " - " . $format->getExtension(), "\n";
}
} catch (Exception $e) {
echo "Something went wrong: ", $e->getMessage(), "\n";
PHP_EOL;
}
?>
GroupDocs.Annotation Cloud API Data Models
FilesUploadResult, Error, ErrorDetails, FilesList, StorageFile, StorageExist, ObjectExist, DiscUsage, FileVersions, FileVersion, AnnotationInfo, Rectangle, Point, AnnotationReplyInfo, FileInfo, AnnotationApiLink, Link, RemoveOptions, AnnotateOptions, FormatsResult, Format, DocumentInfo, PageInfo, ConsumptionResult, PageImages, PageImage, LinkElement, PreviewOptions
PHP Code Sample 1: Add Text Annotation
This code sample demonstrates how to add a text annotation to a document using GroupDocs.Annotation Cloud SDK for PHP. The text annotation is customizable in terms of position, font, and color.
// For complete examples and data files, please go to https://github.com/groupdocs-annotation-cloud/groupdocs-annotation-cloud-php-samples
use GroupDocs\Annotation\Model;
use GroupDocs\Annotation\Model\Requests;
$AppSid = ""; // Get AppKey and AppSID from https://dashboard.groupdocs.cloud
$AppKey = ""; // Get AppKey and AppSID from https://dashboard.groupdocs.cloud
$configuration = new GroupDocs\Annotation\Configuration();
$configuration->setAppSid($AppSid);
$configuration->setAppKey($AppKey);
$apiInstance = new GroupDocs\Annotation\AnnotateApi($configuration);
$a = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt = new GroupDocs\Annotation\Model\Point();
$pt->setX(1);
$pt->setY(1);
$a->setAnnotationPosition($pt);
$box = new GroupDocs\Annotation\Model\Rectangle();
$box->setX(100);
$box->setY(100);
$box->setWidth(200);
$box->setHeight(100);
$a->setBox($box);
$a->setPageNumber(0);
$a->setFontColor(1201033);
$a->setFontSize(12);
$a->setOpacity(0.7);
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_TEXT_FIELD);
$a->setText("Text field text");
$a->setCreatorName("Anonym A.");
$fileInfo = new GroupDocs\Annotation\Model\FileInfo();
$fileInfo->setFilePath("annotationdocs\\one-page.docx");
$options = new GroupDocs\Annotation\Model\AnnotateOptions();
$options->setFileInfo($fileInfo);
$options->setAnnotations([$a]);
$options->setOutputPath("Output\\output.docx");
$request = new GroupDocs\Annotation\Model\Requests\annotateRequest($options);
$result = $apiInstance->annotate($request);
echo "AddTextFieldAnnotation: Text Field Annotation added: " . $result->getHref();
PHP Code Sample 2: Add Area Annotation
This code sample demonstrates how to add an area annotation.
// For complete examples and data files, please go to https://github.com/groupdocs-annotation-cloud/groupdocs-annotation-cloud-php-samples
use GroupDocs\Annotation\Model;
use GroupDocs\Annotation\Model\Requests;
$AppSid = ""; // Get AppKey and AppSID from https://dashboard.groupdocs.cloud
$AppKey = ""; // Get AppKey and AppSID from https://dashboard.groupdocs.cloud
$configuration = new GroupDocs\Annotation\Configuration();
$configuration->setAppSid($AppSid);
$configuration->setAppKey($AppKey);
$apiInstance = new GroupDocs\Annotation\AnnotateApi($configuration);
$a = new GroupDocs\Annotation\Model\AnnotationInfo();
$pt = new GroupDocs\Annotation\Model\Point();
$pt->setX(1);
$pt->setY(1);
$a->setAnnotationPosition($pt);
$box = new GroupDocs\Annotation\Model\Rectangle();
$box->setX(100);
$box->setY(100);
$box->setWidth(200);
$box->setHeight(100);
$a->setBox($box);
$a->setPageNumber(0);
$a->setPenColor(1201033);
$a->setPenStyle(GroupDocs\Annotation\Model\AnnotationInfo::PEN_STYLE_SOLID);
$a->setPenWidth(1);
$a->setOpacity(0.7);
$a->setType(GroupDocs\Annotation\Model\AnnotationInfo::TYPE_AREA);
$a->setText("This is area annotation");
$a->setCreatorName("Anonym A.");
$fileInfo = new GroupDocs\Annotation\Model\FileInfo();
$fileInfo->setFilePath("annotationdocs\\one-page.docx");
$options = new GroupDocs\Annotation\Model\AnnotateOptions();
$options->setFileInfo($fileInfo);
$options->setAnnotations([$a]);
$options->setOutputPath("Output\\output.docx");
$request = new GroupDocs\Annotation\Model\Requests\annotateRequest($options);
$result = $apiInstance->annotate($request);
echo "AddAreaAnnotation: Area Annotation added: " . $result->getHref();
PHP Code Sample 3: Remove Annotation
This code sample demonstrates how to remove an annotation from a document.
// For complete examples and data files, please go to https://github.com/groupdocs-annotation-cloud/groupdocs-annotation-cloud-php-samples
use GroupDocs\Annotation\Model;
use GroupDocs\Annotation\Model\Requests;
$AppSid = ""; // Get AppKey and AppSID from https://dashboard.groupdocs.cloud
$AppKey = ""; // Get AppKey and AppSID from https://dashboard.groupdocs.cloud
$configuration = new GroupDocs\Annotation\Configuration();
$configuration->setAppSid($AppSid);
$configuration->setAppKey($AppKey);
$apiInstance = new GroupDocs\Annotation\AnnotateApi($configuration);
$fileInfo = new GroupDocs\Annotation\Model\FileInfo();
$fileInfo->setFilePath("input\\input.docx");
$options = new GroupDocs\Annotation\Model\RemoveOptions();
$options->setFileInfo($fileInfo);
$options->setAnnotationIds([1, 2, 3]);
$options->setOutputPath("Output\\output.docx");
$request = new GroupDocs\Annotation\Model\Requests\removeAnnotationsRequest($options);
$result = $apiInstance->removeAnnotations($request);
echo "DeleteAnnotations: Annotations deleted. " . $result->getHref();
