使用 API 导入自定义 StyleBook

Last published : Oct 06, 2026
使用 StyleBook API 将自定义 StyleBook 导入 NetScaler Console。使用 REST API 在任何工具(例如 cURL 命令行工具或 Postman Chrome 浏览器扩展程序)中从此 StyleBook 创建配置包。例如,您可以导入名为 example-lb 的 StyleBook,该 StyleBook 可用于在 NetScaler 实例上创建负载均衡器配置。
HTTP 方法: POST
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/actions/import?mode=async
{
    "import": {
        "file_name": "add_dnssoarec.yaml",
        "source": "<base 64 encoded content of the sb definition>",
        "encoding": "base64"
    }
}
其中,source 属性的值是 StyleBook 文件内容的 base64 编码。您可以将 StyleBook 文件的 YAML 内容粘贴到在线工具中。例如,使用 <https://www.browserling.com/tools/file-to-base64> 获取 base64 字符串,然后将其用作 source 属性的值。
使用此 API 调用,您还可以在一个 API 操作中上传包含多个 StyleBook 文件的压缩 tarball 文件(.tgz 文件)。请执行以下操作:
  • 将 file_name 属性更改为 .tgz 文件
  • 将 source 属性更改为 .tgz 文件内容的 base64 编码
在工具中成功运行 API 后,您将收到包含作业 ID 的响应。使用此作业 ID 跟踪操作直至完成:
200 ACCEPTED
响应正文:
{
    "job": {
        "job_id": "12345678"
    }
}
使用作业 ID 跟踪操作状态:
HTTP 方法: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/jobs/<job-id>
返回作业状态:
200 OK
响应正文:
{
    "job": {
        "job_id": "<job-id>",
        "progress_info": [
            {
                "is_last": "true",
                "message": "No job found",
                "status": "failed"
            }
        ],
        "status": "completed"
    }
}
状态值“completed”表示StyleBook已成功导入。通过获取StyleBook的信息来确认操作状态:
HTTP 方法: GET
URL: https://<ADM-endpoint-name>/stylebook/nitro/v2/config/stylebooks/samples/1.0/demo-helper-object
将显示导入的StyleBook的详细信息:
200 OK
响应正文:
{
    "stylebook": {
        "builtin_namespaces": {},
        "created_datetime": "2023-01-14 00:13:59",
        "custom": true,
        "dependencies": [],
        "deprecate": "false",
        "description": "This Stylebook is a test",
        "display_name": "Test StyleBooks",
        "encoding": "BASE64",
        "header": "Test StyleBooks",
        "icon": "''",
        "id": "demo575731aacbfc20b4ff00b3b60ea59855",
        "is_updatable": true,
        "name": "demo-helper-object",
        "namespace": "samples",
        "primary_keys": {},
        "private": false,
        "repository_name": "",
        "reverse_dependencies": [],
        "schema_version": "1.0",
        "source": "<base 64 encoded content of the stylebook definition>",
        "tenant_id": "1a45fd70-7ce3-4bff-8642-1bd7f7e97673",
        "username": "abc",
        "version": "1.0"
    }
}