Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le générateur d’API de données nécessite au moins un fichier de configuration à exécuter. Ce fichier JSON définit votre configuration d’API, des paramètres d’environnement aux définitions d’entité. Elle commence par une $schema propriété, qui active la validation du schéma pour le reste du fichier.
Top-level properties
| Property | Description |
|---|---|
| $schema | URI du schéma JSON pour cette configuration. |
| data-source | Objet contenant les paramètres de connectivité de base de données. |
| data-source-files | Tableau d’autres chemins de fichier de configuration. |
| runtime | Objet configurant les comportements d’exécution. |
| entities | Objet définissant toutes les entités exposées via REST ou GraphQL. |
Data-source properties
| Property | Description |
|---|---|
| data-source | Objet contenant les paramètres de connectivité de base de données. |
| data-source.database-type | Type de base de données utilisé dans le back-end (mssql, postgresql, mysql, cosmosdb_nosql, cosmosdb_postgresql). |
| data-source.connection-string | Chaîne de connexion pour le type de base de données sélectionné. |
| data-source.options | Options spécifiques à la base de données et paramètres avancés. |
| data-source.health | Configuration du contrôle d’intégrité de la source de données. |
| data-source-files | Tableau d’autres chemins de fichier de configuration. |
Runtime properties
| Property | Description |
|---|---|
| runtime | Objet configurant les comportements d’exécution. |
| runtime.pagination | Paramètres de pagination pour les réponses d’API. |
| runtime.rest | Configuration globale de l’API REST. |
| runtime.graphql | Configuration globale de l’API GraphQL. |
| runtime.cache | Configuration de la mise en cache des réponses globales. |
| runtime.telemetry | Télémétrie, journalisation et configuration de surveillance. |
| runtime.health | Configuration globale du contrôle d’intégrité. |
Entities properties
| Property | Description |
|---|---|
| entities | Objet définissant toutes les entités exposées via REST ou GraphQL. |
| entities.entity-name.source | Détails de la source de base de données pour l’entité. |
| entities.entity-name.rest | Configuration de l’API REST pour l’entité. |
| entities.entity-name.graphql | Configuration de l’API GraphQL pour l’entité. |
| entities.entity-name.permissions | Autorisations et contrôle d’accès pour l’entité. |
| entities.entity-name.relationships | Relations avec d’autres entités. |
| entities.entity-name.cache | Configuration de la mise en cache au niveau de l’entité. |
| entities.entity-name.health | Configuration du contrôle d’intégrité au niveau de l’entité. |
Schema
| Parent | Property | Type | Required | Default |
|---|---|---|---|---|
$root |
$schema |
string | ✔️ Yes | None |
Each configuration file begins with a $schema property, specifying the JSON schema for validation.
Format
{
"$schema": <string>
}
Example
{
"$schema": "https://github.com/Azure/data-api-builder/releases/latest/download/dab.draft.schema.json"
}
Tip
Le schéma le plus récent est toujours disponible à l’adresse https://github.com/Azure/data-api-builder/releases/latest/download/dab.draft.schema.json.
Versioning
Les fichiers de schéma sont disponibles sur des URL spécifiques, ce qui vous permet d’utiliser la version correcte ou le schéma disponible le plus récent.
https://github.com/Azure/data-api-builder/releases/download/<VERSION>-<suffix>/dab.draft.schema.json
Remplacez VERSION-suffix par la version souhaitée.
https://github.com/Azure/data-api-builder/releases/download/v0.3.7-alpha/dab.draft.schema.json
Fichiers sources de données
| Parent | Property | Type | Required | Default |
|---|---|---|---|---|
$root |
data-source-files |
string array | ❌ Non | None |
Le générateur d’API de données prend en charge plusieurs fichiers de configuration, avec un fichier désigné comme paramètres de gestion runtime de fichiers de niveau supérieur. Toutes les configurations partagent le même schéma JSON, ce qui autorise runtime les paramètres dans un ou chaque fichier sans erreur. Fractionner des entités pour une meilleure organisation.
Format
{
"data-source-files": [ "<string>" ]
}
Plusieurs règles de configuration
- Chaque fichier de configuration doit inclure la propriété
data-source. - Chaque fichier de configuration doit inclure la propriété
entities. - La configuration de niveau supérieur doit inclure
runtime. - Les configurations enfants peuvent inclure
runtime, mais elles sont ignorées. - Les fichiers de configuration enfants peuvent inclure leurs propres fichiers enfants.
- Les fichiers de configuration peuvent être organisés en sous-dossiers.
- Les noms d’entités doivent être uniques dans tous les fichiers de configuration.
- Les relations entre les entités dans différents fichiers de configuration ne sont pas prises en charge.
Examples
{
"data-source-files": [
"dab-config-2.json",
"my-folder/dab-config-3.json",
"my-folder/my-other-folder/dab-config-4.json"
]
}