# Craftmypdf

CraftMyPDF is a web-based platform that enables users to design and generate customizable PDF documents using pre-designed templates and dynamic data.

- **Category:** documents
- **Auth:** API_KEY
- **Tools:** 13
- **Triggers:** 0
- **Slug:** `CRAFTMYPDF`
- **Version:** 20260217_00

## Tools

### Add Text to PDF

**Slug:** `CRAFTMYPDF_ADD_TEXT_TO_PDF`

Tool to add text annotations to a PDF including page numbers, watermarks, and custom text at specified positions. Supports dynamic variables like {{pageNumber}} and {{totalPages}} for automatic page numbering. Use when you need to add watermarks, headers, footers, or any text overlay to existing PDF documents.

### Add Watermark to PDF

**Slug:** `CRAFTMYPDF_ADD_WATERMARK`

Tool to add a text watermark to a PDF with customizable font, size, color, opacity, and rotation. Use when you need to overlay watermark text (e.g., CONFIDENTIAL, DRAFT) on PDF documents. For more advanced text placement and formatting options, consider using the add-text-to-pdf endpoint instead.

### Create Editor Session

**Slug:** `CRAFTMYPDF_CREATE_EDITOR_SESSION`

Tool to create an embeddable editor session URL for a template. Use when you need to embed the PDF editor for a specific template.

### Create PDF Asynchronously

**Slug:** `CRAFTMYPDF_CREATE_PDF_ASYNC`

Queues an asynchronous PDF generation job from a template. Use this endpoint when you need non-blocking PDF creation - the API returns immediately with a transaction_ref to track the job. The generated PDF URL can be delivered via webhook callback or polled using the transaction_ref. Requires a valid template_id from list-templates endpoint.

### Create PDF Asynchronously (Extended)

**Slug:** `CRAFTMYPDF_CREATE_PDF_ASYNC2`

Tool to create a PDF file asynchronously with JSON data and template. Returns immediately with a transaction reference and makes an HTTP/HTTPS GET callback to webhook_url when the PDF is generated. Use when you need non-blocking PDF creation with advanced options like image optimization, resizing, and custom storage configuration.

### Create PDFs in Parallel

**Slug:** `CRAFTMYPDF_CREATE_PDF_PARALLEL`

Tool to create multiple PDF files in parallel from templates with JSON data. Processes multiple PDF generation requests concurrently for improved performance. Optionally merges all generated PDFs into a single file when merge parameter is enabled. Use when you need to generate multiple PDFs at once from different templates or data.

### Get Account Information

**Slug:** `CRAFTMYPDF_GET_ACCOUNT_INFO`

Tool to retrieve account information including subscription and usage details. Use when you need to check quota limits, template usage, or account creation date.

### Get PDF Information

**Slug:** `CRAFTMYPDF_GET_PDF_INFO`

Tool to retrieve information about a PDF file including metadata, page count, and other properties. Use when you need to analyze PDF file structure or extract metadata without downloading the entire file.

### List PDF Templates

**Slug:** `CRAFTMYPDF_LIST_TEMPLATES`

Tool to retrieve a paginated list of PDF templates. Use when you need to browse available templates before generating a PDF.

### List API Transactions

**Slug:** `CRAFTMYPDF_LIST_TRANSACTIONS`

Tool to retrieve a paginated list of API transactions. Use when you need to view transaction history with pagination support.

### Merge PDF Files

**Slug:** `CRAFTMYPDF_MERGE_PDFS`

Tool to merge multiple PDF files from URLs into a single PDF document. Use when you need to combine multiple PDF files into one consolidated document. The API fetches PDFs from the provided URLs and merges them in the order specified.

### Query Template Usage Statistics

**Slug:** `CRAFTMYPDF_QUERY_TEMPLATE_USAGE`

Tool to retrieve usage statistics for specified templates within a date range. Use when you need to track PDF generation counts and credit consumption for specific templates.

### Update PDF Fields

**Slug:** `CRAFTMYPDF_UPDATE_PDF_FIELDS`

Tool to update fillable fields in a PDF document such as text fields, checkboxes, and dropdowns. Use when you need to programmatically fill out PDF forms by updating field values. The PDF must contain fillable form fields with identifiable names that match the field IDs you provide.
