# Create a Briefing Document from a PDF Upload

Use a PDF as the source when you want to summarize a private report, whitepaper, or internal deck.

You can either:

* send a base64 payload with `type: "pdf"`, or
* upload the file first by following [Upload Private Files](https://docs.autocontentapi.com/quick-start/tools/upload-files) and send the returned file ID with `type: "file"`

### Option A: Base64 PDF Payload

```bash
curl -X POST "https://api.autocontentapi.com/content/Create" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "outputType": "briefing_doc",
    "format": "pdf",
    "resources": [
      {
        "type": "pdf",
        "content": "BASE64_ENCODED_PDF"
      }
    ],
    "text": "Extract the executive summary, highlight three supporting data points, and end with recommended actions."
  }'
```

### Option B: Uploaded File ID

```bash
curl -X POST "https://api.autocontentapi.com/content/Create" \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "outputType": "briefing_doc",
    "format": "html",
    "resources": [
      {
        "type": "file",
        "content": "YOUR_FILE_ID"
      }
    ],
    "text": "Turn this uploaded report into an HTML briefing with headings, bullets, and a recommendations section."
  }'
```

**Tips**

* Use `type: "file"` when the PDF is large or private.
* Use `format: "html"` if the output will be embedded in your application.
* Use `format: "pdf"` if you want the result as a downloadable asset URL.

## Try it in code

* [C#](https://docs.autocontentapi.com/code-samples/documents/csharp/from-pdf)
* [Node.js](https://docs.autocontentapi.com/code-samples/documents/nodejs/from-pdf)
* [Java](https://docs.autocontentapi.com/code-samples/documents/java/from-pdf)
* [PHP](https://docs.autocontentapi.com/code-samples/documents/php/from-pdf)
* [Python](https://docs.autocontentapi.com/code-samples/documents/python/from-pdf)
