Partager via


API pour la définition GraphQL

Cet article fournit une répartition de la structure de définition pour les éléments GraphQLApi.

Parties de définition

Ce tableau répertorie les parties de définition GraphQLApi.

Chemin d’accès du composant Définition type Obligatoire Descriptif
.platform PlatformDetails (JSON) faux Décrit les détails courants de l’élément
graphql-definition.json GraphQLDefinition (JSON) vrai Décrit la configuration générale et de source de données de l’API pour GraphQL

GraphQLDefinition

Nom Catégorie Descriptif
$schema Chaîne URL pour la spécification du schéma
sources de données Source[] Liste des sources de données associées à l’API pour GraphQL

Origine

Nom Catégorie Descriptif
sourceItemId Guide ID de l’élément source
sourceWorkspaceId Guide ID de l’espace de travail contenant l’élément source
connectionId Guide ID de la connexion utilisée pour l’élément source
type de source Type de source Type d’élément source
Objets SourceObject[] Liste d’objets dans l’élément source exposés à l’aide de l’API GraphQL

SourceType (énumération)

Nom Descriptif
SqlAnalyticsEndpoint Point de terminaison SQL Analytics
Entrepôt Entrepôt
SqlDbNative Base de données SQL
AzureSql Azure SQL Database

SourceObject

Nom Catégorie Descriptif
graphqlType Chaîne Nom de type GraphQL à utiliser pour l’objet dans l’élément source
sourceObject Chaîne Nom de l’objet dans l’élément source exposé par l’API GraphQL
sourceObjectType SourceObjectType Type d’objet dans l’élément source
Actions <ActionType, ActionValue> Dictionnaire de type d’action en valeur d’action qui indique les requêtes et les mutations avec leur état d’activation
mappages de champs <Chaîne, chaîne> Dictionnaire de champs dans l’objet source vers les champs GraphQL
Relations Relation[] Liste des relations configurées à partir de l’objet source
IsStoredProcedureQueryNode Booléen Type d’opération GraphQL pour exposer la procédure stockée. True - Requête, False - Mutation.

SourceObjectType (énumération)

Nom Descriptif
Tableau Table de base de données
Afficher Vue base de données
StoredProcedure Procédure stockée de base de données

ActionType (énumération)

Nom Descriptif
Requête Requête sur l’objet source
Query_by_pk Interroger par clé primaire sur l’objet source
Créer Créer une mutation sur l’objet source
Mise à jour Mettre à jour la mutation sur l’objet source
Supprimer Supprimer la mutation sur l’objet source
Exécuter Exécuter une requête ou une mutation sur une procédure stockée

ActionValue (énumération)

Nom Descriptif
Activé Activer la requête ou la mutation
Handicapé Désactiver la requête ou la mutation

Relation

Nom Catégorie Descriptif
champ Chaîne Nom du champ GraphQL à utiliser pour la relation dans le type GraphQL
cardinalité RelationshipCardinality Cardinalité pour la relation
targetObject Chaîne Objet cible pour la relation
sourceFields Chaîne[] Liste des champs dans l’objet source utilisé pour la relation
targetFields Chaîne[] Liste des champs dans l’objet cible utilisé pour la relation
linkingObject Chaîne Objet de liaison pour les relations plusieurs-à-plusieurs entre les objets source et cible
linkingSourceFields Chaîne[] Liste des champs de l’objet de liaison pour la relation à partir de l’objet source
linkingTargetFields Chaîne[] Liste des champs de l’objet de liaison pour la relation à l’objet cible

RelationshipCardinality (énumération)

Nom Descriptif
ManyToOne Relation plusieurs-à-un
OneToMany Relation un-à-plusieurs
OneToOne Relation un-à-un
ManyToMany Relation plusieurs-à-plusieurs

Exemple GraphQLDefinition

{
  "$schema": "https://developer.microsoft.com/json-schemas/fabric/item/graphqlApi/definition/1.0.0/schema.json",
  "datasources": [
    {
      "objects": [
        {
          "actions": {
            "Query": "Enabled"
          },
          "fieldMappings": {
            "LastName": "LastName",
            "Name": "Name"
          },
          "graphqlType": "Customers",
          "relationships": [],
          "sourceObject": "model.Customers",
          "sourceObjectType": "View"
        }
      ],
      "sourceItemId": "c54cd4ce-cbaa-4fc5-bcc8-121f2a3e0c4c",
      "sourceType": "Warehouse",
      "sourceWorkspaceId": "c2231263-b81e-4dd2-a69b-41eca8c93584"
    },
    {
      "connectionId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
      "objects": [
        {
          "actions": {
            "Query": "Enabled"
          },
          "fieldMappings": {
            "id": "id",
            "publisher_id": "publisher_id",
            "title": "title"
          },
          "graphqlType": "publishers",
          "relationships": [],
          "sourceObject": "dbo.publishers_view",
          "sourceObjectType": "View"
        },
        {
          "actions": {
            "Query": "Enabled",
            "Query_by_pk": "Enabled",
            "Create": "Enabled",
            "Update": "Enabled",
            "Delete": "Disabled"
          },
          "fieldMappings": {
            "id": "id",
            "title": "title"
          },
          "graphqlType": "books",
          "relationships": [],
          "sourceObject": "dbo.books",
          "sourceObjectType": "Table"
        }
      ],
      "sourceItemId": "daa5dc10-6eae-4b19-af5f-da8db84c51c1",
      "sourceType": "AzureSql",
      "sourceWorkspaceId": "00000000-0000-0000-0000-000000000000"
    }
  ]
}