AtlasWork, planned itself.

The AI-native, all-in-one work platform. Tasks, projects, CRM, contracts, and analytics in one calm workspace.

All systems operational
  • SOC 2 II
  • ISO 27001
  • HIPAA
  • GDPR

Product

  • Overview
  • PDF tools
  • Diagram tools
  • People & HR
  • Integrations
  • Marketplace
  • Pricing

Resources

  • Guides
  • Glossary
  • Compare
  • Docs
  • API reference
  • Support
  • Changelog
  • Status

Company

  • About
  • Careers
  • Press
  • Contact

Legal & trust

  • Trust center
  • Security
  • Privacy
  • Terms
  • DPA
  • GDPR
  • SLA
  • Refunds
  • Google API data
Atlas, a product by wrxstack.com·© 2026 wrxstack·All rights reserved
PrivacyTermsSecurityStatus
Skip to documentation
Docs
Back to Atlas

Start here

  • Overview

Developer

  • REST API guide
  • Authentication
  • API reference
  • MCP (AI agents)
  • MCP tools reference
  • SDKs
  • Quick actions
  • Changelog

Webhooks

  • Overview
  • Quickstart
  • Events
  • Payloads and headers
  • Security and signing
  • Delivery and retries
  • Managing via API

Connect

  • Connectors
  • Integrations

Product

  • Collaboration and chat

Reference

  • Glossary
  • Keyboard shortcuts
  • Module reference

Tools reference

PDF Studio

Every PDF Studio tool, with the scope it needs, its arguments and the API operation it calls.

All areasTasksProjectsPortfoliosBoardsGoalsHabitsCommentsTime trackingWorkloadCRMGrowth suiteContractseSignPDF StudioFormsCalendarBookingMeetingsChatHuddlesWikiDocumentationDiagramsWhiteboardsHRPayrollClient deliveryClient onboardingService operationsStatus pageAutomationsAgentsAIReportsInsightsConnectorsNotificationsSearchWorkspace administrationAccessGovernancePrivacyBillingWebhooksAccess tokensMy accountFocusChangelogBlogTrashThemesEmail templatesMetadataCustom fieldsWalkthroughsVoiceActivityServer

24 tools

Create PDF annotations

Changes data

atlas_pdf_annotations_create

Create a PDF Studio annotation (highlight, sticky note, or free-text box) on a document page. shape uses PDF user-space coords.

Scope
pdf:write
Calls
POST /v1/pdf-studio/documents/{documentId}/annotations
Example prompt
Add a note annotation to page 2 of pdf_123.

Arguments

FieldTypeRequiredDescription
documentIdstringYesPdfDocument id the annotation belongs to.
pageIndexintegerYes0-based page index.
kind"highlight" | "note" | "text"Yes
shapeobjectYes
payloadobjectNo

Delete PDF annotations

Destructive

atlas_pdf_annotations_delete

Delete one PDF Studio annotation from a document by annotation id with an idempotent REST mutation.

Scope
pdf:write
Calls
DELETE /v1/pdf-studio/documents/{documentId}/annotations/{id}
Example prompt
Remove annotation ann_123 from pdf_123.

Arguments

FieldTypeRequiredDescription
documentIdstringYesPdfDocument id the annotation belongs to.
idstringYesPdfAnnotation id to delete.

List PDF annotations

Read only

atlas_pdf_annotations_list

List PDF Studio annotations (highlights, sticky notes, free-text boxes) on a document. Filter by page index or kind.

Scope
pdf:read
Calls
GET /v1/pdf-studio/documents/{documentId}/annotations
Example prompt
List annotations on pdf_123.

Arguments

FieldTypeRequiredDescription
documentIdstringYesPdfDocument id to list annotations for.
pageIndexintegerNoFilter to a single 0-based page index.
kind"highlight" | "note" | "text"No
limitintegerNo

Update PDF annotations

Changes data

atlas_pdf_annotations_update

Update a PDF Studio annotation page, kind, shape, or payload while keeping document and annotation ids in the route.

Scope
pdf:write
Calls
PATCH /v1/pdf-studio/documents/{documentId}/annotations/{id}
Example prompt
Move annotation ann_123 on pdf_123 to page 3.

Arguments

FieldTypeRequiredDescription
documentIdstringYesPdfDocument id the annotation belongs to.
idstringYesPdfAnnotation id to update.
pageIndexintegerNoNew 0-based page index.
kind"highlight" | "note" | "text"No
shapeobjectNo
payloadobjectNo

List PDF conversion directions

Read only

atlas_pdf_conversion_directions_list

List the supported PDF Studio conversion directions (Office <-> PDF, HTML to PDF, PDF/A). Useful before calling atlas_pdf_documents_convert.

Scope
none
Example prompt
What PDF conversion directions are supported?

Arguments

This tool takes no arguments.

Convert PDF documents

Changes data

atlas_pdf_documents_convert

Convert an Office document to PDF, a PDF to an Office document, render HTML to PDF, or normalise a PDF to PDF/A. Returns the upload URL + POST body so the host can stream the converted bytes back.

Scope
pdf:write
Calls
POST /v1/pdf-convert/{direction}
Example prompt
Convert this DOCX to PDF.

Arguments

FieldTypeRequiredDescription
direction"pdf-to-docx" | "pdf-to-xlsx" | "pdf-to-pptx" | "docx-to-pdf" | "xlsx-to-pdf" | "pptx-to-pdf" | "html-to-pdf" | "pdf-a"YesConversion direction; pdf-a normalises a PDF to PDF/A-1.
filenamestringNoOriginal filename, used only to derive the output filename.
fileBase64stringYesBase64-encoded source bytes (up to 50 MB decoded).

Protect PDF documents

Changes data

atlas_pdf_documents_protect

Password-protect a PDF (qpdf AES). Returns the upload URL + POST body so the host can stream the encrypted PDF back.

Scope
pdf:write
Calls
POST /v1/pdf-secure/protect
Example prompt
Password-protect this PDF with the password Atlas2026.

Arguments

FieldTypeRequiredDescription
pdfBase64stringYesBase64-encoded PDF bytes.
userPasswordstringYesPassword required to open the protected PDF.
ownerPasswordstringNoOptional owner password granting full edit / print permissions.

Unlock PDF documents

Changes data

atlas_pdf_documents_unlock

Remove the password from a PDF using the supplied password (qpdf). Returns the upload URL + POST body so the host can stream the decrypted PDF back.

Scope
pdf:write
Calls
POST /v1/pdf-secure/unlock
Example prompt
Unlock this PDF with the password Atlas2026.

Arguments

FieldTypeRequiredDescription
pdfBase64stringYesBase64-encoded encrypted PDF bytes.
passwordstringYesPassword used to decrypt the PDF (user or owner password).

Upload PDF documents

Changes data

atlas_pdf_documents_upload

Capture a PDF Studio document end-to-end: mint an upload ticket, PUT the file bytes to the returned uploadUrl, then finalize. Returns the finalized document id and metadata. Supply sizeBytes (and optionally actualSizeBytes/actualContentType) for the file already at the content reference.

Scope
growth:write
Calls
POST /growth-suite/pdf/documents/upload-ticket
Example prompt
Capture this contract PDF into PDF Studio end to end.

Arguments

FieldTypeRequiredDescription
accountIdstring | nullNoCRM account the document belongs to, if any.
dealIdstring | nullNoCRM deal the document belongs to, if any.
envelopeIdstring | nullNoE-signature envelope the document belongs to, if any.
projectIdstring | nullNoProject the document is filed under, if any.
taskIdstring | nullNoTask the document is filed under, if any.
namestringYesDisplay filename for the captured document.
contentTypestringNoDeclared MIME type of the upload (defaults server-side to application/pdf).
sizeBytesintegerYesDeclared byte size used to mint the upload ticket.
actualSizeBytesintegerNoActual byte count written to storage. Defaults to sizeBytes when omitted.
actualContentTypestringNoActual MIME type of the stored object. Defaults to contentType / application/pdf.
pageCountinteger | nullNoKnown page count.
textExtractedbooleanNoWhether searchable text has already been extracted.
riskFlagsarray of stringNoRisk / compliance flags to attach to the document.
metadataobjectNoFree-form metadata bag persisted with the document.

Cancel PDF operations

Destructive

atlas_pdf_operations_cancel

Cancel a queued or running PDF Studio operation and return the updated operation posture.

Scope
growth:write
Calls
POST /growth-suite/pdf/operations/{id}/cancel
Example prompt
Cancel PDF operation op_123.

Arguments

FieldTypeRequiredDescription
idstringYes

Create PDF operations

Changes data

atlas_pdf_operations_create

Create a PDF Studio operation for merge, split, OCR, redact, protect, compare, convert, compress, and related workflows.

Scope
growth:write
Calls
POST /growth-suite/pdf/operations
Example prompt
Queue OCR for document pdf_123 with English language settings.

Arguments

FieldTypeRequiredDescription
documentIdstringYes
operation"MERGE" | "SPLIT" | "EXTRACT_PAGES" | "DELETE_PAGES" | "REORDER_PAGES" | "ADD_PAGE_NUMBERS" | "ADD_HEADER_FOOTER" | "DISCOVER_PAGE_MARKS" | "BATES_STAMP" | "STAMP_PDF" | "ANNOTATE" | "APPLY_SUGGESTED_EDIT" | "FILL_FORM" | "CROP_PAGES" | "INSERT_PAGES" | "INSERT_BLANK_PAGES" | "FLATTEN_PDF" | "EXTRACT_TEXT" | "REPAIR_PDF" | "ROTATE" | "REDACT" | "WATERMARK" | "COMPRESS" | "OCR" | "PROTECT" | "UNLOCK_PDF" | "CONVERT_TO_PDF" | "FLATTEN" | "SIGNING_HANDOFF" | "COMPARE"Yes
inputJsonobjectNo

List PDF operations

Read only

atlas_pdf_operations_list

List PDF Studio operations, optionally filtered by document and status, one page at a time. Returns tenant-scoped operation rows and a nextCursor; pass it back as cursor for the next page.

Scope
growth:read
Calls
GET /growth-suite/pdf/operations
Example prompt
List the last 50 completed PDF operations for pdf_123.

Arguments

FieldTypeRequiredDescription
documentIdstringNo
status"QUEUED" | "RUNNING" | "COMPLETED" | "FAILED" | "CANCELLED"No
limitintegerNoHow many operations to return, 1 to 100. 50 by default.
cursorstringNoThe nextCursor of the previous page. Leave it out for the first page.
sort"createdAt" | "updatedAt"NoThe field to sort on. createdAt by default.
order"asc" | "desc"Noasc or desc. desc (newest first) by default.

Get PDF operations package manifest

Read only

atlas_pdf_operations_package_manifest_get

Read the manifest for a split PDF Studio artifact package without downloading raw binary archive bytes.

Scope
growth:read
Calls
GET /growth-suite/pdf/operations/{id}/artifact/package/manifest
Example prompt
Show the package manifest for PDF operation op_123.

Arguments

FieldTypeRequiredDescription
idstringYes

Run PDF operations

Changes data

atlas_pdf_operations_run

Run a queued PDF Studio operation now and return the operation run result plus artifact posture.

Scope
growth:write
Calls
POST /growth-suite/pdf/operations/{id}/run
Example prompt
Run PDF operation op_123 now.

Arguments

FieldTypeRequiredDescription
idstringYes

Review PDF operations suggested edits

Changes data

atlas_pdf_operations_suggested_edits_review

Accept, reject, or return to pending review a PDF Studio suggested edit by operation id and edit index.

Scope
growth:write
Calls
POST /growth-suite/pdf/operations/{id}/suggested-edits/{editIndex}/decision
Example prompt
Accept suggested edit 2 on operation op_123.

Arguments

FieldTypeRequiredDescription
idstringYes
editIndexintegerYes
decisionState"pending_review" | "accepted" | "rejected"Yes
decisionReasonHashPrefixstring | nullNo
source"API" | "REVIEW_RAIL"No

Update PDF operations

Changes data

atlas_pdf_operations_update

Patch PDF Studio operation status, inputs, results, error message, and lifecycle timestamps without leaking the route id into the body.

Scope
growth:write
Calls
PATCH /growth-suite/pdf/operations/{id}
Example prompt
Mark operation op_123 as failed with sanitized evidence.

Arguments

FieldTypeRequiredDescription
idstringYes
status"QUEUED" | "RUNNING" | "COMPLETED" | "FAILED" | "CANCELLED"No
inputJsonobjectNo
resultJsonobject | nullNo
errorMessagestring | nullNo
startedAtstring (date-time) | nullNo
completedAtstring (date-time) | nullNo

Protect PDF

Changes data

atlas_pdf_protect

Password-protect a PDF with AES encryption (qpdf-backed). Streams back the encrypted PDF bytes.

Scope
pdf:write
Calls
POST /v1/pdf-secure/protect
Example prompt
Password-protect this PDF with the password Atlas2026.

Arguments

FieldTypeRequiredDescription
pdfBase64stringYesBase64-encoded PDF bytes to password-protect.
userPasswordstringYesPassword required to open the PDF.
ownerPasswordstringNoOwner password that allows full permissions on the PDF.

List PDF queued operations

Read only

atlas_pdf_queued_operations_list

List the PDF Studio operation queue with presets, sorting, cursor paging, and operation/status filters.

Scope
growth:read
Calls
GET /growth-suite/pdf/operations/queue
Example prompt
Show active redaction operations in the PDF queue.

Arguments

FieldTypeRequiredDescription
preset"all" | "active" | "failed" | "completed" | "redaction" | "review" | "provider"No
sort"createdAt" | "updatedAt" | "startedAt" | "completedAt"No
direction"asc" | "desc"No
cursorstringNo
limitintegerNo
documentIdstringNo
requestedByIdstringNo
status"QUEUED" | "RUNNING" | "COMPLETED" | "FAILED" | "CANCELLED"No
operation"MERGE" | "SPLIT" | "EXTRACT_PAGES" | "DELETE_PAGES" | "REORDER_PAGES" | "ADD_PAGE_NUMBERS" | "ADD_HEADER_FOOTER" | "DISCOVER_PAGE_MARKS" | "BATES_STAMP" | "STAMP_PDF" | "ANNOTATE" | "APPLY_SUGGESTED_EDIT" | "FILL_FORM" | "CROP_PAGES" | "INSERT_PAGES" | "INSERT_BLANK_PAGES" | "FLATTEN_PDF" | "EXTRACT_TEXT" | "REPAIR_PDF" | "ROTATE" | "REDACT" | "WATERMARK" | "COMPRESS" | "OCR" | "PROTECT" | "UNLOCK_PDF" | "CONVERT_TO_PDF" | "FLATTEN" | "SIGNING_HANDOFF" | "COMPARE"No

Get PDF redaction readiness

Read only

atlas_pdf_redaction_readiness_get

Read PDF Studio redaction readiness: sanitizer support, permanent-redaction posture, and review guardrails.

Scope
growth:read
Calls
GET /growth-suite/pdf/redaction/readiness
Example prompt
Is permanent PDF redaction safe to run for this tenant?

Arguments

This tool takes no arguments.

Get PDF security readiness

Read only

atlas_pdf_security_readiness_get

Read PDF Studio security readiness: encryption, lock/unlock, and provider posture without exposing secrets.

Scope
growth:read
Calls
GET /growth-suite/pdf/security/readiness
Example prompt
Is PDF Studio ready for secure export and unlock operations?

Arguments

This tool takes no arguments.

Extract PDF studio text

Changes data

atlas_pdf_studio_text_extract

Run server-side OCR over a PDF and return { text, pageCount, model }. Recognises English text only.

Scope
pdf:write
Calls
POST /v1/pdf-ocr/extract
Example prompt
OCR this PDF and read me the text.

Arguments

FieldTypeRequiredDescription
pdfBase64stringYesBase64-encoded PDF bytes to OCR.

Extract PDF text

Changes data

atlas_pdf_text_extract

Extract text from a PDF using server-side OCR (tesseract, English). Returns { text, pageCount, model } directly in the tool response.

Scope
pdf:write
Calls
POST /v1/pdf-ocr/extract
Example prompt
OCR this PDF and give me the text.

Arguments

FieldTypeRequiredDescription
pdfBase64stringYesBase64-encoded PDF bytes (up to 50 MB decoded).

Create PDF upload tickets

Changes data

atlas_pdf_upload_tickets_create

Reserve a PDF Studio document and mint a presigned upload ticket. Returns the new document plus the uploadUrl / headers / method the caller PUTs the file bytes to before finalizing.

Scope
growth:write
Calls
POST /growth-suite/pdf/documents/upload-ticket
Example prompt
Reserve a PDF Studio document and give me an upload URL.

Arguments

FieldTypeRequiredDescription
accountIdstring | nullNoCRM account the document belongs to, if any.
dealIdstring | nullNoCRM deal the document belongs to, if any.
envelopeIdstring | nullNoE-signature envelope the document belongs to, if any.
projectIdstring | nullNoProject the document is filed under, if any.
taskIdstring | nullNoTask the document is filed under, if any.
namestringYesDisplay filename for the captured document.
contentTypestringNoDeclared MIME type of the upload (defaults server-side to application/pdf).
sizeBytesintegerYesDeclared byte size used to mint a correctly-scoped upload ticket.
pageCountinteger | nullNoKnown page count.
textExtractedbooleanNoWhether searchable text has already been extracted.
riskFlagsarray of stringNoRisk / compliance flags to attach to the document.
metadataobjectNoFree-form metadata bag persisted with the document.

Finalize PDF uploads

Changes data

atlas_pdf_uploads_finalize

Finalize a PDF Studio document upload once the bytes are stored, confirming the actual size and content type so the document becomes usable.

Scope
growth:write
Calls
POST /growth-suite/pdf/documents/{id}/finalize-upload
Example prompt
Finalize the PDF Studio upload now that the bytes are stored.

Arguments

FieldTypeRequiredDescription
documentIdstringYesPdfDocument id returned by the upload ticket.
actualSizeBytesintegerYesActual byte count written to storage.
actualContentTypestringYesActual MIME type of the stored object.
pageCountinteger | nullNoKnown page count.
textExtractedbooleanNoWhether searchable text has already been extracted.
riskFlagsarray of stringNoRisk / compliance flags to attach to the document.
metadataobjectNoFree-form metadata bag persisted with the document.