Tous les produits
Search
Centre de documentation

API Gateway:Exporter des API basées sur OAS

Dernière mise à jour :Aug 09, 2026

Exportez des API d'un groupe au format OAS 2.0 ou OAS 3.0 pour les migrer entre différents comptes, régions ou plateformes.

Vue d'ensemble

API Gateway permet d'exporter des API au format OAS. Associée à la fonctionnalité d'importation d'API, cette option répond aux scénarios suivants. Pour plus d'informations sur l'importation d'API, consultez Importer des API conformes à OAS.

  1. Migrer des API entre comptes, régions ou plateformes : exportez des API conformes à OAS depuis API Gateway ou une autre plateforme, puis importez-les dans un autre compte Alibaba Cloud, une autre région ou une autre plateforme.

  2. Publier et étendre des API : convertissez des définitions d'API conformes à OAS en ressources API dans API Gateway pour créer et configurer rapidement des API, puis personnalisez leur comportement selon vos besoins. API Gateway vous aide à gérer les autorisations d'accès, à limiter le trafic et à transférer les requêtes de manière sécurisée.

  3. Intégrer et collaborer : intégrez les API exportées avec d'autres outils ou plateformes de développement basés sur la norme OAS. Le partage des définitions d'API réduit la charge de communication et l'effort de développement entre les équipes.

Exporter des API conformes à OAS

Vous pouvez exporter un groupe d'API entier ou des API spécifiques.

Procédure

  1. Exporter un groupe d'API

    1. Connectez-vous à la console API Gateway.

    2. Dans le volet de navigation de gauche, choisissez Manage APIs > API Groups.

    3. Sur la page API Groups, recherchez le groupe d'API à exporter. Cliquez sur image, puis choisissez Export API Definitions dans la colonne Actions.

    4. Dans la boîte de dialogue Export API Definitions, spécifiez les paramètres Data Format, Stage et Export Extended Definitions. Cliquez ensuite sur Confirm.

  2. Exporter des API spécifiques

    1. Connectez-vous à la console API Gateway.

    2. Dans le volet de navigation de gauche, choisissez Manage APIs > APIs.

    3. Sur la page APIs, sélectionnez les API à exporter, puis choisissez More > Export API Definitions sous la liste.

    4. Dans la boîte de dialogue Export API Definitions, spécifiez les paramètres Data Format, Stage et Export Extended Definitions. Cliquez ensuite sur Confirm.

Définitions d'API étendues

Si vous sélectionnez Yes pour le paramètre Export Extended Definitions, les champs spécifiques à API Gateway suivants sont ajoutés aux fichiers exportés.

Champ étendu

Emplacement dans OAS 2.0

Emplacement dans OAS 3.0

Description

Type

Valeurs valides

x-aliyun-apigateway-any-method

Objet Paths

Objet Paths

La définition complète de la méthode ANY.

Objet

-

x-aliyun-apigateway-backend

Objet Operation

Objet Operation

Le service backend.

Objet

-

x-aliyun-apigateway-api-market-enable

Objet Operation

Objet Operation

Indique si l'API peut être publiée sur Alibaba Cloud Marketplace.

Booléen

  • true

  • false

x-aliyun-apigateway-api-force-nonce-check

Objet Operation

Objet Operation

Indique si la protection contre la relecture est activée.

Booléen

  • true

  • false

x-aliyun-apigateway-parameter-handling

Objet Operation

Objet Operation

Le mode de requête dans la définition de la requête.

Chaîne

  • MAPPING

  • PASSTHROUGH

  • MAPPING_PASSTHROUGH

x-aliyun-apigateway-auth-type

Objet Operation

Objet Operation

Le type d'authentification de sécurité.

Chaîne

  • ANONYMOUS

  • APP

x-aliyun-apigateway-app-code-type

Objet Operation

Objet Operation

Le type d'authentification AppCode.

Chaîne

  • DEFAULT

  • DISABLE

  • HEADER

  • HEADER_QUERY

x-aliyun-apigateway-constant-parameters

Objet Operation

Objet Operation

Les définitions des paramètres constants.

Objet

-

x-aliyun-apigateway-system-parameters

Objet Operation

Objet Operation

Les définitions des paramètres système.

Objet

-

x-aliyun-apigateway-api-enable-internet

Objet Operation

Objet Operation

Indique si l'accès via Internet est autorisé.

Booléen

  • true

  • false

x-aliyun-apigateway-success-demo

Objet Operation

Objet Operation

L'exemple de retour pour un appel réussi.

Chaîne

-

x-aliyun-apigateway-failed-demo

Objet Operation

Objet Operation

L'exemple de retour pour un appel échoué.

Chaîne

-

x-aliyun-apigateway-api-name

Objet Operation

Objet Operation

Le nom de l'API.

Chaîne

-

x-aliyun-apigateway-request-scheme

S/O

Objet Operation

Les protocoles pris en charge par l'API, tels que HTTP.

Chaîne

-

x-aliyun-apigateway-backend-location

Objet Parameter

Objet Parameter

Les emplacements des paramètres mappés dans le service backend.

Chaîne

  • header

  • query

  • path

x-aliyun-apigateway-backend-name

Objet Parameter

Objet Parameter

Les noms des paramètres mappés dans le service backend.

Chaîne

-

x-aliyun-apigateway-parameter-demo

Objet Parameter

Objet Parameter

Les exemples de valeurs de paramètre.

Chaîne

-

x-aliyun-apigateway-response-messages

Objet Responses

Objet Responses

Les messages d'erreur dans les définitions d'erreur.

Chaîne

-

Description

  1. Lors d'une exportation par groupe, le chemin de base du groupe est inclus.

  2. Vous pouvez exporter jusqu'à 300 API simultanément. Si le groupe contient plus de 300 API, seules les 300 premières sont exportées.

  3. Si la définition de modèle d'un groupe d'API ne peut pas être analysée, elle n'est pas exportée.

  4. Lors de l'exportation d'API spécifiques, toutes les API sélectionnées sont exportées dans le même fichier.

  5. Si plusieurs API partagent le même chemin et la même méthode, une seule est exportée.

  6. Si vous sélectionnez No pour le paramètre Export Extended Definitions, la valeur OperationId dans le fichier exporté correspond à une chaîne concaténant le chemin de requête et la méthode de requête de la définition d'API (par exemple, export1ByGET).

  7. Si vous sélectionnez Yes pour le paramètre Export Extended Definitions, les informations supplémentaires relatives à l'API (telles que le plug-in associé, l'application autorisée, le nom de domaine lié au groupe d'API et les définitions du service backend dans différents environnements) ne sont pas exportées.

Exemple

L'exemple suivant présente un groupe d'API exporté avec des définitions d'API étendues.

swagger: '2.0'
info:
  description: Export from api group xxx
  version: 1.0.0
  title: Api Gateway API
basePath: /export
paths:
  /export1/{pathParam}:
    get:
      summary: test export job 1.
      operationId: export1pathParamByGET
      schemes:
        - http
        - https
      parameters:
        - name: pathParam
          in: path
          description: the path parameter.
          required: true
          type: string
          maxLength: 10
          x-aliyun-apigateway-parameter-demo: pathValue
          x-aliyun-apigateway-backend-name: pathParam
          x-aliyun-apigateway-backend-location: path
        - name: headParam
          in: header
          description: the header parameters.
          required: false
          type: string
          x-aliyun-apigateway-parameter-demo: headerValue
          x-aliyun-apigateway-backend-name: headParam
          x-aliyun-apigateway-backend-location: query
        - name: queryParam
          in: query
          description: the query parameters.
          required: false
          type: string
          x-aliyun-apigateway-parameter-demo: queryValue
          x-aliyun-apigateway-backend-name: queryParam
          x-aliyun-apigateway-backend-location: header
      responses:
        '200':
          description: success.
          x-aliyun-apigateway-response-messages: success
        '400':
          description: client error.
          x-aliyun-apigateway-response-messages: clent error
        '500':
          description: server error.
          x-aliyun-apigateway-response-messages: server error
      x-aliyun-apigateway-system-parameters:
        - backendName: testClientIp
          systemName: CaClientIp
          location: header
      x-aliyun-apigateway-constant-parameters:
        - backendName: constantparam
          location: header
          value: constantValue
          descriptoin: the constant parameters.
      x-aliyun-apigateway-api-name: export_1
      x-aliyun-apigateway-api-market-enable: false
      x-aliyun-apigateway-api-force-nonce-check: true
      x-aliyun-apigateway-parameter-handling: MAPPING
      x-aliyun-apigateway-auth-type: APP
      x-aliyun-apigateway-api-enable-internet: true
      x-aliyun-apigateway-failed-demo: '{"result":"fail"}'
      x-aliyun-apigateway-success-demo: '{"result":"success"}'
      x-aliyun-apigateway-app-code-type: DEFAULT
      x-aliyun-apigateway-backend:
        body: good job
        statusCode: 200
        header:
          - name: test
            value: header1
        type: MOCK
  /export2/*:
    x-aliyun-apigateway-any-method:
      operationId: export_2
      description: test export job 1.
      x-aliyun-apigateway-api-market-enable: false
      x-aliyun-apigateway-api-force-nonce-check: false
      x-aliyun-apigateway-api-enable-internet: true
      x-aliyun-apigateway-parameter-handling: PASSTHROUGH
      x-aliyun-apigateway-auth-type: ANONYMOUS
      x-aliyun-apigateway-success-demo: '{"result":"success"}'
      x-aliyun-apigateway-failed-demo: '{"result":"fail"}'
      schemes:
        - http
        - https
      x-aliyun-apigateway-backend:
        body: good job
        statusCode: 200
        header:
          - name: test
            value: header1
        type: MOCK
      x-aliyun-apigateway-constant-parameters:
        - backendName: constantparam
          location: header
          value: constantValue
          descriptoin: the constant parameters.
      x-aliyun-apigateway-system-parameters:
        - backendName: testClientIp
          systemName: CaClientIp
          location: header
      responses:
        '200':
          description: success.
          briefMessage: success
          schema:
            $ref: testModel
        '400':
          description: client error.
          briefMessage: clent error
          schema:
            $ref: testModel
        '500':
          description: server error.
          briefMessage: server error
definitions:
  testModel:
    type: object
    required:
      - name
    properties:
      dogProject:
        type: object
        properties:
          name:
            type: string
            maxLength: 10
          id:
            type: integer
            format: int64
      name:
        type: string
        pattern: ^\d{3}-\d{2}-\d{4}$
      id:
        type: integer
        format: int64
      status:
        type: string