# Estensioni e annotazioni di Talend

Esporta la tua API con le estensioni o le annotazioni Talend per mantenere l'espressività fornita dai contratti API.

Quando si esporta un'API, è possibile scegliere di includere le estensioni Talend per OpenAPI Specification o le annotazioni Talend per RAML. Questi consentono di mantenere la struttura della tua API come definita in Contratti API.

Ad esempio, nella Contacts API, le risorse e le operazioni sono suddivise in sezioni e vengono utilizzati blocchi di testo per aggiungere informazioni.

![Screenshot dell'API Contacts.](https://help.qlik.com/it-IT/cloud-services/Subsystems/Hub/Content/Resources/Images/ApiDesigner/designer_talend_extensions.png)

Se si esegue l'esportazione di questa definizione senza estensioni o annotazioni Talend, le sezioni e i blocchi di testo non vengono esportati. Tuttavia, con le estensioni o le annotazioni, sono inclusi nel codice.

Le informazioni sulla sezione vengono aggiunte a qualsiasi elemento contenuto in una sezione:

```
    x-talend:
      section: "Companies"
```

I blocchi di testo vengono aggiunti alla fine del file:

```
  texts:
    3a36b8ba-2969-46f0-a36e-9d715eeece36:
      title: "Authentication"
      content: "This API is secured using Basic Authentication.\n\nAll **read operations are open** and don't require authentication. However, all **write operations require authentication**. "
      section: "General"
    612e4b7f-0530-4835-8a47-f580869c67df:
      title: "Error handling"
      content: "This API uses standard HTTP status codes to indicate the status of a response.\n\nThere are two main categories of error responses. Each have a different response payload structure.\n\n* Simple errors\n* Detailed errors\n\n\n# Simple errors\n\n| Name | Code | Description |\n| -------- | -------- | -------- |\n| Bad request     | 400     | The request was unacceptable     |\n| Unauthorized     | 401     | The request has not been applied because it lacks valid authentication credentials for the target resource.     |\n| Forbidden     | 403     | The server understood the request, but is refusing to fulfill it     |\n| Not Found     | 404     | The server has not found anything matching the request URI     |\n| Not acceptable     | 406     | The server is unable to return a response in the format that was requested by the client     |\n| Unsupported Media Type     | 415     | The server is refusing to service the request because the entity of the request is in a format not supported by the requested resource for the requested method     |\n| Too many requests     | 429     | Too many requests hit the API too quickly     |\n| Server error     | 500     | A technical error occured  |\n\n\n\n\n\n\n# Detailed errors\n| Name | Code | Description |\n| -------- | -------- | -------- |\n| Unprocessable entity     | 422     | The server understands the content type of the request entity, and the syntax of the request entity is correct, but was unable to process the contained instructions.     |\n\n\n\n\n"
| Server error     | 500     | A technical error occurred  |\n\n\n\n\n\n\n# Detailed errors\n| Name | Code | Description |\n| -------- | -------- | -------- |\n| Unprocessable entity     | 422     | The server understands the content type of the request entity, and the syntax of the request entity is correct, but was unable to process the contained instructions.     |\n\n\n\n\n"
      section: "General"
```