APIG.API
Element Description
API providers configure APIs in API gateways to open backend capabilities. An API is divided into two parts. The first part is oriented to API users and defines how to invoke the API. The second part is oriented to API providers and defines the backend status of the API and how to access backend services through an API gateway.
Element Properties
| 
        Property  | 
      
        Required  | 
      
        Descripiton  | 
     
|---|---|---|
| 
        mockInfo  | 
      
        No  | 
      
        Mock backend details Type: APIG.MockInfo Value Description: For details, see the definition of the datatype. Default: {} Suggestion: None  | 
     
| 
        reqMethod  | 
      
        Yes  | 
      
        API request mode Type: string Value Description: Supports the following methods: GET, POST, PATCH, DELETE, OPTIONS, PUT, HEAD, and ANY. Default: GET Value Constraint: Supports "GET", "POST", "DELETE", "PUT", "PATCH", "HEAD", "OPTIONS", "ANY" Suggestion: None  | 
     
| 
        name  | 
      
        Yes  | 
      
        API group name Type: string Value Description: Supports customization. Value Constraint: Supports a string of 3-64 characters. This string consists of Chinese characters, letters, digits, and underscores (_), and starts with a letter. Suggestion: None  | 
     
| 
        backendType  | 
      
        Yes  | 
      
        Backend type Type: string Value Description: HTTP: a web backend; FUNCTION: a function workflow; MOCK: a simulated backend Default: HTTP Value Constraint: Supports HTTP, FUNCTION, MOCK Suggestion: None  | 
     
| 
        remark  | 
      
        No  | 
      
        API description Type: string Value Description: Indicates the API description,Ensure that the length does not exceed 255 characters. Value Constraint: Supports a maximum of 255 characters. Suggestion: None  | 
     
| 
        backendApi  | 
      
        No  | 
      
        Web backend details Type: APIG.BackendApi Value Description: For details, see the definition of the datatype. Default: {u'reqUri': u'unset', u'reqMethod': u'GET', u'urlDomain': u'unset', u'reqProtocol': u'HTTP'} Suggestion: None  | 
     
| 
        groupId  | 
      
        Yes  | 
      
        Group to which the API belongs Type: HuaweiCloud.APIG.ApiGroup.Id Value Description: Supports the use of an existing or new API group. To use a new API group, define the API group object in the template and establish the dependency relationship. You are advised to drag the object to the API group to automatically establish the dependency relationship. Suggestion: Use the get_input function to pass this parameter. Its value can then be automatically selected when you create a stack on the AOS console. Use the get_reference function to reference an APIG.ApiGroup element created by the current stack. The group ID can then be automatically specified when you use the designer to create a dependency on the APIG.ApiGroup element. Go to the API Gateway console and obtain the IDs of existing API groups.  | 
     
| 
        reqUri  | 
      
        Yes  | 
      
        API access mode Type: string Value Description: Indicates the API access address. Value Constraint: Supports a maximum of 255 characters. Suggestion: Comply with the URI specifications.  | 
     
| 
        authType  | 
      
        Yes  | 
      
        API authentication mode Type: string Value Description: NONE: no authentication; APP: app authentication; IAM: IAM authentication Default: IAM Value Constraint: The value can be NONE, APP, or IAM. Suggestion: Use the IAM authentication mode.  | 
     
| 
        matchMode  | 
      
        Yes  | 
      
        API matching mode Type: string Value Description: SWA: prefix match; NORMAL: full match Default: NORMAL Value Constraint: Supports "SWA", "NORMAL" Suggestion: None  | 
     
| 
        cors  | 
      
        Yes  | 
      
        Whether cross-domain access is supported Type: boolean Value Description: true: Cross-origin resource sharing (CORS) is supported. false: CORS is not supported. Default: False Suggestion: Unless required by services, you are advised to disable cross-domain access to ensure security.  | 
     
| 
        funcInfo  | 
      
        No  | 
      
        Function computation backend details Type: APIG.FuncInfo Value Description: For details, see the definition of the datatype. Default: {u'functionUrn': u'', u'invocationType': u'async'} Suggestion: None  | 
     
| 
        type  | 
      
        Yes  | 
      
        API type Type: string Value Description: public: public API; private: private API Default: public Value Constraint: Supports "public", "private" Suggestion: None  | 
     
| 
        strategyId  | 
      
        No  | 
      
        Process policy used by the API Type: string Value Description: Supports the use of an existing or new request throttling policy. To use a new request throttling policy, define the API policy object in the template and establish the dependency relationship. You are advised to connect the API to the API policy. Suggestion: Use the get_input function to pass this parameter. Its value can then be automatically selected when you create a stack on the AOS console. Use the get_reference function to reference an APIG.Throttle element created by the current stack. The group ID can then be automatically specified when you use the designer to create a dependency on the APIG.Throttle element. Go to the API Gateway console and obtain the IDs of existing API groups.  | 
     
| 
        reqProtocol  | 
      
        Yes  | 
      
        API protocol type Type: string Value Description: Supports HTTP and HTTPS, or BOTH. Default: HTTP Value Constraint: Supports "HTTP", "HTTPS", "BOTH" Suggestion: If sensitive information needs to be transferred, you are advised to use HTTPS.  | 
     
Relationships Between Elements
| 
        Description  | 
      
        Target  | 
     
|---|---|
| 
        Connected  | 
      |
| 
        ContainedIn  | 
      
Return Value
| 
        Property  | 
      
        Type  | 
      
        Description  | 
     
|---|---|---|
| 
        reqUri  | 
      
        string  | 
      
        API Uri  | 
     
| 
        reqMethod  | 
      
        string  | 
      
        API Method  | 
     
| 
        refID  | 
      
        string  | 
      
        API ID  | 
     
| 
        reqProtocol  | 
      
        string  | 
      
        API Protocol  | 
     
Blueprint Example
inputs:
  apiName:
    default: api321b
  apigroupName:
    default: test_group321b
  throttleName:
    default: throttle321
node_templates:
  throttle1:
    type: HuaweiCloud.APIG.Throttle
    properties:
      name: 
        get_input: throttleName
      remark: test throttle of aos plugin
      apiCallLimits: 10
      appCallLimits: 7
      userCallLimits: 9
      timeInterval: 100
      timeUnit: MINUTE     
  api-group1:
    properties:
      name:
        get_input: apigroupName
      remark: test group of aos plugin
    type: HuaweiCloud.APIG.ApiGroup
  api1:
    properties:
      authType: NONE
      backendApi:
        remark: test backend
        reqMethod: GET
        reqProtocol: HTTP
        reqUri: '/test/{aaa}'
        timeout: 10000
        urlDomain: 192.145.47.226:12346
      backendType: HTTP
      cors: false
      groupId:
        get_attribute:
          - api-group1
          - refID
      matchMode: NORMAL
      name:
        get_input: apiName
      remark: test api of aos plugin
      reqMethod: GET
      reqProtocol: HTTP
      reqUri: '/test/{aaa}'
      strategyId: 
        get_attribute:
          - throttle1
          - refID
    requirements:
      - groupId:
          node: api-group1
      - strategyId:
          node: throttle1
    type: HuaweiCloud.APIG.API
tosca_definitions_version: huaweicloud_tosca_version_1_0
 Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.