# 55. ZIP-Dateien hochladen (über 6 MB)

Aufgrund einer technischen Einschränkung des Cloud-Anbieters AWS muss das Hochladen von Dateien größer als 6 MB in 2 Schritten erfolgen:

#### **1. Fordern Sie den vor-signierten Link für das anschließende direkte Hochladen an.**  <a href="#step1" id="step1"></a>

Als Eingabe:&#x20;

* `fileType` - `Ertrag` ODER `Boden` ODER `angewendeten` ODER `adapt` ODER `Begrenzung`,&#x20;
* `farmUuid` (optional) - UUID des Betriebs, in den die Datei importiert werden soll.&#x20;

Als Ausgabe:

* `uuid` - die erwartete UUID nach Upload und Verarbeitung,
* `farmUuid` - dieselbe wie in der Eingabe,
* `fileType` - dieselbe wie in der Eingabe,
* `s3Url` - die URL, die zum Hochladen der Datei verwendet wird,
* `s3Fields` - Attribute, die im Upload-Formular der Datei übergeben werden müssen.

Die Details zur Verwendung von `s3Url` und `s3Fields` werden im zweiten Schritt beschrieben.&#x20;

Die Attribute sind nur 60 Minuten gültig, um die Datei hochzuladen.

{% code overflow="wrap" lineNumbers="true" %}

```graphql
mutation GeneratePresignedPostFileData {
  generatePresignedPostFileData(input:{
    fileType: applied
    farmUuid: "8bba5132-3a92-4ce1-8699-220e78ad68bd"
  } ) {
    uuid
    farmUuid
    fileType
    s3Url
    s3Fields
  }
}

```

{% endcode %}

#### **2. Senden Sie eine lokale Datei an s3Url mit den vordefinierten Formularattributen aus s3Fields.**  <a href="#step2" id="step2"></a>

{% code overflow="wrap" lineNumbers="true" %}

```bash
curl --location --request POST '<s3Url>' \
--form 'key="<value_in_s3Fields>"' \
--form 'AWSAccessKeyId="<value_in_s3Fields>"' \
--form 'x-amz-security-token="<value_in_s3Fields>"' \
--form 'policy="<value_in_s3Fields>"' \
--form 'signature="<value_in_s3Fields>"' \
--form 'file=@"<local_file_path>"'
```

{% endcode %}

Benachrichtigungen über die Verarbeitung werden über den in beschriebenen Abonnementmechanismus zugestellt\
&#x20;[1. Abonnement: Ereignisse abrufen](/geopard-tutorials/de/api-dokumentation/uberblick-uber-geopard-api-anfragen/1.-subscription-ereignisse-abrufen.md).

{% hint style="info" %}
Der Antwort-Header enthält einen `Etag` Header, der beispielsweise wie folgt erscheint `Etag: "6fd3e76992738357ab50039f2c60024e"`. Dieser Wert wird anschließend in GraphQL verwendet [query getPlatformContext](/geopard-tutorials/de/api-dokumentation/uberblick-uber-geopard-api-anfragen/83.-abfrage-plattformkontext-erfassen.md) um den Verarbeitungsfortschritt zu überwachen sowie die Zuordnung zu den Entitäten „Field“, „AsAppliedDataset“, „YieldDataset“ und „SoilDataset“.
{% endhint %}

{% hint style="info" %}
Verwenden `‘Accept-Encoding’:’gzip, deflate, br’`.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.geopard.tech/geopard-tutorials/de/api-dokumentation/uberblick-uber-geopard-api-anfragen/55.-zip-dateien-hochladen-uber-6-mb.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
