---
name: "pdf123-get-info"
description: "Inspect a PDF's metadata, permissions, fonts, and structure. Runs the PDF123 \"Document Info\" tool (pdf123.xyz) over its REST API with curl, no account needed. Use when the user wants this done to their file. Also known as: 文档信息, Información del documento, दस्तावेज़ जानकारी, معلومات المستند, Informações do documento, Informasi dokumen, Infos du document, Сведения о документе, 文書情報, Dokumentinformationen, 문서 정보, Thông tin tài liệu, Belge bilgisi, 文件資訊, Info documento, ข้อมูลเอกสาร, Informacje o dokumencie, Відомості про документ, Documentinfo, Maklumat dokumen, Dokumentinfo, Πληροφορίες εγγράφου, Информация за документа, Informació del document, Maelezo ya hati."
compatibility: "Needs curl 7.76+ and outbound HTTPS to pdf123.xyz, or PDFX_API_BASE pointing at a self-hosted pdfx-server."
---

# Document Info (PDF123)

Inspect a PDF's metadata, permissions, fonts, and structure.

Web version: https://pdf123.xyz/get-info · All tools: https://pdf123.xyz/skills/pdf123.md

## When to use

- Read page count before Split
- See whether a password is required
- Grab Info title/author without opening a desktop app

## Run it

Replace the sample file names and values with the user's, then run:

```bash
API="${PDFX_API_BASE:-https://pdf123.xyz}"
curl -sS --fail-with-body -X POST "$API/api/v1/security/get-info-on-pdf" \
  -F "fileInput=@input.pdf"
```

## Inputs

Everything is `multipart/form-data`. The command above already sends each field with its default; keep them all and change only the values the user asked for, since some endpoints reject a missing optional field.

| Field | Type | Required | Default | Notes |
| --- | --- | --- | --- | --- |
| `fileInput` | file | yes | | .pdf (one file) |

## Result

The response body is JSON and is printed to stdout. Summarize it for the user.

## Limits

- IsSigned is a placeholder
- No per-page geometry
- Not a signature validator
- Upload limit on this website: 500 MB per file, sent in chunks above about 95 MB. A single direct API request body is capped at 100 MB.

## Errors

- A non-zero curl exit means the request failed. The saved file then holds `application/problem+json`; read it and report its `detail` to the user instead of retrying blindly.
- `413`: the upload exceeds 100 MiB. `429`: wait for `Retry-After` seconds, then retry once.
- Send `X-API-KEY: $PDFX_API_KEY` only if the user has a PDF123 API key; anonymous calls work without it.

## Privacy

Files are uploaded to the API host, processed, and deleted once the response is sent. For confidential files, ask before uploading, or use a self-hosted server via `PDFX_API_BASE`.
