Parse custom plugin code
PUT /api/gateway_groups/{gateway_group_id}/custom_plugins/code/parse
PUT /api/gateway_groups/{gateway_group_id}/custom_plugins/code/parseInteractive request editor loads with JavaScript.
In: header
Path Parameters
Gateway group ID.
1 <= lengthRequest Body
application/json
Response Body
application/json
curl -X PUT "$API_BASE_URL/api/gateway_groups/86fb9981-d9d2-4555-9df8-91ae92129335/custom_plugins/code/parse" \ -H "Content-Type: application/json" \ -d '{ "file": "bG9jYWwgY29yZSA9IHJlcXVpcmUoImFwaXNpeC5jb3JlIikKbG9jYWwgbmd4ID0gbmd4Cgpsb2NhbCBzY2hlbWEgPSB7CiAgICB0eXBlID0gIm9iamVjdCIKfQoKbG9jYWwgcGx1Z2luX25hbWUgPSAicm91dGUtaWQtcmVnaXN0ZXIiCgpsb2NhbCBfTSA9IHsKICB2ZXJzaW9uID0gMC4yLAogIHByaW9yaXR5ID0gMSwKICBuYW1lID0gcGx1Z2luX25hbWUsCiAgc2NoZW1hID0gc2NoZW1hLAogIHNjb3BlID0gImdsb2JhbCIsCn0KCmZ1bmN0aW9uIF9NLmNoZWNrX3NjaGVtYShjb25mKQogIHJldHVybiBjb3JlLnNjaGVtYS5jaGVjayhzY2hlbWEsIGNvbmYpOwplbmQKCmZ1bmN0aW9uIF9NLmxvZyhjb25mLCBjdHgpCiAgaWYgY3R4LnZhci5yb3V0ZV9pZCB0aGVuCiAgICBuZ3gudmFyLnJvdXRlX2lkID0gY3R4LnZhci5yb3V0ZV9pZAogIGVuZAplbmQKCnJldHVybiBfTQo=" }'Successfully parsed the custom plugin code and extracted metadata.
{
"value": {
"name": "route-id-register",
"version": "0.2",
"catalog": "General",
"description": "string",
"documentation_link": "https://docs.api7.ai/hub/route-id-register",
"author": "plugindev",
"logo": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAH4SURBVHgBrVVLUhsxEH3SaBJSxJQWLLJKzAkClcqCVcINkhuYk6RygnCDkBOYI3iXTVKQE9ipggIGKKb42TAjNWrbY0+BkcY2b6ceqV/3688Ac6CrF+r/tfzmuyMxI25rL75klO+exDbFcxP0luItAjXbKteSsOe7qzAFWBJpbZOIVhNlkAkgyvHP96ZyBiyJMGaXnd8JQhJZgNBZSzGfRKS1LiRxR822dpwPPgq/PAyvRCzJnb1pukhXC9uZi5ylGfgPEzyZQbcWNwpJChtLcxyZ8WOaMYPua/XZRffzoT1xzq0Yn3vGX+B+EJOMr67yFkXZivO1XdjOnTRpROVr6XqKDmYh6JO4xy8vs00mMpJ2kpI0QwTl8RKUiZSlX+9yhcWSPqIiQaVBEyQ/Lbi2X7EK19LiULlOArWqvK00aC7wUSctWom3WcQZNH6/QT30VqACerX4HMMhY+yrfFxwgW3H9339aHLBgwQ8bG4e2sWZu+lAPSq4m0VsfDxF66E9KJE02Uge099Bj5ynzntjknNGuMgk3hd5JqU1McReluOrbx7CRRaynwGvCd5DIzOw5Vb1RmjYghkQdxCVNuhAks0PZ9hBBXgJSEPfGqoXPxdUkGQq8NK7WFL0Zxn0dxk/MAO8GQhX4E6cTSXJVAQnsdHXBmvzSHIP3R3bZScnj8UAAAAASUVORK5CYII="
}
}Invalid arguments. Error details will be provided in the response.
Complete operation details and schema variants
PUT /api/gateway_groups/{gateway_group_id}/custom_plugins/code/parse
Parse custom plugin code
Parse and validate custom plugin source payload to extract plugin metadata and detect structural issues before uploading a plugin.
Required IAM Permission: Action gateway:UpdateCustomPlugin, Resource arn:api7:gateway:gatewaygroup/{gateway_group_id}
Parameters
gateway_group_id(path, string, required): Gateway group ID.
Request body
Content type: application/json
file(string, required): Base64-encoded ZIP archive that contains the plugin package. The archive includes the plugin code and the plugin metadata. A plugin that has dependency files holds $PLUGIN_NAME.lua alongside a $PLUGIN_NAME directory of Lua files.
Responses
200: Successfully parsed the custom plugin code and extracted metadata.- allOf variant 1
value(object, optional): The specific resource.- allOf variant 2
value(object, optional):value.name(string, optional): The name of the plugin.value.version(string, optional): The version of the plugin.value.catalog(string, optional): Plugin category, such as "Traffic" or "Observability".value.description(string, optional): A brief description of the plugin.value.documentation_link(string, optional): Link to the plugin's documentation.value.author(string, optional): Author of the plugin.value.logo(string, optional): The base64-encoded logo image.400: Invalid arguments. Error details will be provided in the response.
cURL
curl -X PUT '$API_BASE_URL/api/gateway_groups/{gateway_group_id}/custom_plugins/code/parse'