PDFに変換

さまざまなファイル形式を、共有やアーカイブがしやすい高品質なPDF文書に素早く変換します。

convert-to-pdf.md
ダウンロード
---
name: convert-to-pdf
description: "Quickly convert various file formats into high-quality PDF documents for easy sharing and archiving. Use this skill when the user asks to convert to pdf via the Cross Service Solutions API."
---

# Convert to PDF

## Solution Description

Quickly convert various file formats into high-quality PDF documents for easy sharing and archiving.

This widget is provided by PDF24. Get your own widget to enable your visitors to convert files to PDF on your website.

## Input

| Parameter | Type | Required | Description |
|---|---|---|---|
| `files` | multiple_files | Yes | You can convert multiple files and different types into multiple PDF's. Multiple files can be downloaded as zip-file |

**Constraints:**

- `files` accepts multiple values — repeat the form field once per item

## Expected Outcome

Executing this solution creates an asynchronous job. Poll the "Get Result" endpoint
until `status` is no longer `pending` — a `done` status means `output` will contain
the result (`output.result`, `output.data`, and/or `output.files[]` depending on the
solution), while a `failed` status means the job could not be completed.

## Execute Solution

This is a free endpoint — no `Authorization` header is required.

```bash
curl -D - -X POST 'https://api.cross-service-solutions.com/solutions/solutions/free/64' \
  -F 'files=@/path/to/file1.pdf' \
  -F 'files=@/path/to/file2.pdf'
```

The response sets `Solution_id` and `Solution_uuid` cookies via `Set-Cookie` headers
(visible with `-D -`). Read their values — they're required for the "Get Result"
request below.

## Get Result

```bash
curl --location 'https://api.process-machine.com/solutions/solutions/free/solution/latest' \
  --header 'Cookie: Solution_id=<id>; Solution_uuid=<uuid>'
```

Replace `<id>` and `<uuid>` with the `Solution_id` and `Solution_uuid` values captured
from the "Execute Solution" response headers. This endpoint lives on a different
domain than "Execute Solution", so the cookies must be passed explicitly via the
`Cookie` header — they won't be forwarded automatically across domains by a reused
cookie jar.

**Response example:**

```json
{
    "id": 101370,
    "name": "Free - Convert to PDF",
    "status": "done",
    "steps": [
        { "name": "Convert to PDF", "status": "done" }
    ],
    "output": {
        "result": "",
        "data": null,
        "files": [
            { "name": "converted.pdf", "path": "https://storage.googleapis.com/..." }
        ]
    }
}
```

**Polling behavior:**
- Poll every 3 seconds
- Timeout after 60 seconds (20 attempts) — if still `pending`, tell the user the
  job is taking longer than expected and offer to keep waiting or retry
- On `done`: download the file(s) from `output.files[].path` (a signed, time-limited
  URL) — or check `output.result`/`output.data` if `files` is empty
- On `failed`: surface the `error` field (if present) to the user in plain language;
  do not retry automatically more than once

## Error Handling

| Scenario | Response |
|---|---|
| Missing required parameter(s) | Ask the user for the missing field(s): `files` |
| Invalid or unreadable file | Tell the user which file couldn't be processed and ask them to check the format or re-upload |
| API returns `failed` status | Report the failure reason if available; offer to retry |
| `403 Forbidden` on Get Result | The `Solution_id`/`Solution_uuid` values are missing, incorrect, or expired — re-run "Execute Solution" and retry with the fresh values |

AIエージェントスキルの使い方

1

スキルをダウンロードしてアップロード

使用したいスキルをダウンロードし、ワークスペースにアップロードしてください。アップロード後、エージェントはタスク実行時にそのスキルを参照・適用できるようになります。

2

必要な外部ドメインを許可

一部のスキルは正しく動作するためにネットワークアクセスが必要です。実行前に、以下のドメインを許可リストに追加してください:

  • api.cross-service-solutions.com — 当サービスへのAPIリクエストに使用されます
  • api.process-machine.com — スキルジョブの結果取得に使用されます
  • storage.googleapis.com — 補助ファイルやアセットのダウンロードに使用されます

これらのドメインを許可していない場合、外部呼び出しに依存するスキルは失敗するか、不完全な結果を返す可能性があります。

コミュニティ

ご協力 ください

あなたのご意見がこのディレクトリをより良くします。知っていることをシェアしてください — 1分もかかりません。

解決策を提案する

実際の問題を解決するツールやワークフローをご存知ですか?他のユーザーが見つけられるよう協力してください — チームがすべての投稿をレビューします。

フィードバックを送る

不具合、不足、または改善すべき点がありましたか?すべてのメッセージを読み、優れたアイデアを反映させます。