# Einführung in die API von PDF Blocks

Was PDF Blocks ist, das Modell, dem jede Aktion folgt, und der Katalog dessen, was die API alles kann.

PDF Blocks ist eine sichere, schnelle, *stateless* HTTP-API für die Arbeit mit
PDF-Dokumenten. Senden Sie ein Dokument, nennen Sie eine Aktion, und Sie
bekommen das verarbeitete PDF direkt in der Antwort zurück. Es gibt keinen
Kontozustand zu verwalten, nach einer Anfrage wird nichts gespeichert, und es
gibt kein SDK zu installieren: Jede Aktion ist ein einziger authentifizierter
HTTPS-Aufruf, den Sie aus jeder Sprache heraus machen können.

## Das mentale Modell

Ein PDF hinein, ein PDF heraus. Jede Aktion ist eine reine Transformation: Sie
nimmt ein Dokument entgegen (dazu ein paar Parameter), gibt ein neues Dokument
zurück und behält nichts. Sie senden `multipart/form-data` mit Ihrem PDF in
einem Feld `file`, und eine Aktion mit einer einzigen Ausgabe antwortet mit
`200 OK` und `application/pdf`, dem fertigen Dokument als Antworttext.

Weil jede Ausgabe selbst ein gültiges PDF ist, ist sie eine gültige Eingabe für
die nächste Aktion. Damit lassen sich Aktionen zusammensetzen: mehrere Dateien
zusammenführen, auf dem Ergebnis ein Wasserzeichen aufbringen, es dann
verschlüsseln, wobei jeder Schritt den nächsten speist. Siehe [Aktionen
verketten](/docs/api/chaining-actions), um eine Pipeline zu bauen, ohne je die
Festplatte zu berühren.

## Der Aktionskatalog

Siebzehn Aktionen, nach Fähigkeit gruppiert. Jede verweist auf ihre
vollständige Referenz.

### Zusammenführen und aufteilen

<CardGroup cols={3}>
  <Card title="Dokumente zusammenführen" href="/docs/api/merge-pdf-documents">
    Eine geordnete Liste von PDFs zu einem einzigen Dokument kombinieren.
  </Card>
  <Card title="Nach Seitenanzahl aufteilen" href="/docs/api/split-pdf-by-page-count">
    In Blöcke fester Größe zerlegen.
  </Card>
  <Card title="An einer Seite aufteilen" href="/docs/api/split-pdf-at-page">
    An einer gewählten Seitengrenze zerlegen.
  </Card>
  <Card title="Nach Dateigröße aufteilen" href="/docs/api/split-pdf-by-file-size">
    Die Größe jedes Teils in Bytes begrenzen.
  </Card>
  <Card title="In Seitengruppen aufteilen" href="/docs/api/split-pdf-into-page-groups">
    Seiten nach einem Muster gruppieren, das Sie festlegen.
  </Card>
</CardGroup>

### Wasserzeichen

<CardGroup cols={3}>
  <Card title="Textwasserzeichen hinzufügen" href="/docs/api/add-text-watermark-to-pdf">
    Bis zu drei Textzeilen aufbringen.
  </Card>
  <Card title="Bildwasserzeichen hinzufügen" href="/docs/api/add-image-watermark-to-pdf">
    Ein Logo oder ein Bild aufbringen.
  </Card>
</CardGroup>

### Passwörter und Sicherheit

<CardGroup cols={3}>
  <Card title="Passwort hinzufügen" href="/docs/api/add-password-to-pdf">
    Ein Dokument verschlüsseln.
  </Card>
  <Card title="Passwort entfernen" href="/docs/api/remove-password-from-pdf">
    Ein Dokument mit bekanntem Passwort entschlüsseln.
  </Card>
  <Card title="Einschränkungen hinzufügen" href="/docs/api/add-restrictions-to-pdf">
    Berechtigungs-Flags setzen.
  </Card>
  <Card title="Einschränkungen entfernen" href="/docs/api/remove-restrictions-from-pdf">
    Die Berechtigungs-Flags zurücksetzen.
  </Card>
  <Card title="Signaturen entfernen" href="/docs/api/remove-signatures-from-pdf">
    Digitale Signaturen entfernen.
  </Card>
</CardGroup>

### Seiten

<CardGroup cols={3}>
  <Card title="Seiten extrahieren" href="/docs/api/extract-pages-from-pdf">
    Eine Teilmenge der Seiten behalten.
  </Card>
  <Card title="Seiten entfernen" href="/docs/api/remove-pages-from-pdf">
    Eine Teilmenge der Seiten verwerfen.
  </Card>
  <Card title="Seiten drehen" href="/docs/api/rotate-pages-in-pdf">
    Seiten um 90°, 180° oder 270° drehen.
  </Card>
  <Card title="Seitenreihenfolge umkehren" href="/docs/api/reverse-pages-of-pdf">
    Die Seitenreihenfolge umdrehen.
  </Card>
  <Card title="Seiten neu anordnen" href="/docs/api/reorder-pages-of-pdf">
    Seiten in beliebiger Reihenfolge neu anordnen.
  </Card>
</CardGroup>

Das ganze Bild, also die Namenskonvention, die Art, wie Aktionen sich
zusammensetzen, und der Ort, an dem jede einzelne dokumentiert ist, steht in
der [Übersicht der Aktionen](/docs/api/actions-overview).

## Was sie auszeichnet

- **Schnell.** Aktionen sind Transformationen mit einem einzigen Zweck, ohne
  Warteschlangen und ohne Roundtrips. Sie senden eine Anfrage und schreiben das
  Ergebnis direkt als Stream in eine Datei.
- **Sicher und stateless.** Anfragen laufen ausschließlich über HTTPS und
  authentifizieren sich mit einem geheimen Schlüssel. Dokumente werden in der
  Region verarbeitet und niemals gespeichert: Sobald die Antwort geschrieben
  ist, bleibt nichts zurück.
- **Regionale Datenresidenz.** Derselbe Katalog läuft in zehn Regionen, sodass
  Ihre Dokumente dort verarbeitet werden können, wo Ihre Compliance es
  verlangt. Richten Sie eine Anfrage an die Basis-URL der Region, alles andere
  ist identisch.

| Region                 | Basis-URL                         |
| ---------------------- | --------------------------------- |
| Global                 | `https://api.pdfblocks.com`       |
| USA                    | `https://us.api.pdfblocks.com`    |
| HIPAA USA              | `https://hipaa.api.pdfblocks.com` |
| Europäische Union      | `https://eu.api.pdfblocks.com`    |
| Vereinigtes Königreich | `https://uk.api.pdfblocks.com`    |
| Kanada                 | `https://ca.api.pdfblocks.com`    |
| Australien             | `https://au.api.pdfblocks.com`    |
| Japan                  | `https://jp.api.pdfblocks.com`    |
| Indien                 | `https://in.api.pdfblocks.com`    |
| Brasilien              | `https://br.api.pdfblocks.com`    |

Alle Details finden Sie unter [Regionen und
Datenresidenz](/docs/api/regions-and-data-residency).

## Wie es weitergeht

<CardGroup cols={2}>

<Card title="Schnellstart" href="/docs/api/quickstart">
  Den ersten authentifizierten Aufruf machen und in fünf Minuten ein
  verarbeitetes PDF in der Hand halten.
</Card>

<Card title="Authentifizierung" href="/docs/api/authentication">
  Einen API-Schlüssel holen und ihn bei jeder Anfrage korrekt senden.
</Card>

</CardGroup>
