npm i '@bkui/apigateway-nodejs-sdk'
import {
syncApi
} from '@bkui/apigateway-nodejs-sdk'
syncApi(
'网关名称',
{
description: '',
maintainers: [],
status: 1,
is_public: true,
user_auth_type: 'default'
},
{
bk_app_code: 'xxx',
bk_app_secret: 'xxx'
},
'prod'
)
详细接口参数请查阅 APIGATEWAY 文档,下面列出 SDK 导出的功能
const syncApi: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const syncStage: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const syncResources: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const syncAccessStrategy: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const revokePermissions: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const release: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const grantPermissions: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const getLatestResourceVersion: (api_name: string, authorization: IAuthorization, stageName: string) => Promise<any>
const getPublicKey: (api_name: string, authorization: IAuthorization, stageName: string) => Promise<any>
const createResourceVersion: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const applyPermissions: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const addRelatedApps: (api_name: string, httpBody: any, authorization: IAuthorization, stageName: string) => Promise<any>
const decodeToken: (api_name: string, jwtToken: string, authorization: IAuthorization, stageName: string) => Promise<any>
const execApiGateWay: ({ api_name: string, apiUrlTemp: string, path: string, method: string, data: any, authorization: IAuthorization, stageName: string }) => Promise<any>
// apigateway 认证参数,必填
interface IAuthorization {
bk_app_code: '',
bk_app_secret: '',
access_token: ''
}
api_name: '网关名称'
httpBody: '请求参数,详细请查阅 apigateway 文档'
stageName: '环境名称,prod/stag 等等'
apiUrlTemp: '网关地址模板,可不传,会通过部署环境自动匹配'
path: '网关接口path'
method: '网关接口方法'