dify-spring-boot-starter
  • 介绍
  • 快速开始
  • 安装
  • 配置
  • 客户端构建器
  • 功能

    • Chat API
    • Workflow API
    • Dataset API
    • Server API
  • 使用配置
  • 自定义配置
  • v0.x
  • 更新日志
  • 简体中文
  • English
GitHub
  • 介绍
  • 快速开始
  • 安装
  • 配置
  • 客户端构建器
  • 功能

    • Chat API
    • Workflow API
    • Dataset API
    • Server API
  • 使用配置
  • 自定义配置
  • v0.x
  • 更新日志
  • 简体中文
  • English
GitHub
  • 指南

    • 介绍
    • 快速开始
    • 安装
    • 配置
    • 客户端构建器
  • 功能

    • Chat API
    • Workflow API
    • Dataset API
    • Server API

Server API

接口概述

服务器 API 提供了全面的功能,用于与 Dify 平台交互,包括管理应用程序、检索和初始化应用程序及数据集的 API 密钥。所有接口都需要有效的 API 密钥进行身份验证。 使用 DifyServer 接口实例。

默认检测当前环境包含 redis 则使用 redis持久化 token,若不包含 redis 则使用默认实现保存 token(重启服务会丢失)

1. 应用管理

1.1 获取所有应用

方法

List<AppsResponseVO> apps(String mode, String name);

请求参数

参数名类型是否必须描述
modeString否模式 chat\agent-chat\completion\advanced-chat\workflow
nameString否应用名称,用于过滤应用列表(可选,传入空字符串时表示不过滤)

响应参数

AppsResponseVO

参数名类型描述
idString应用ID
nameString应用名称
maxActiveRequestsInteger最大活跃请求数
descriptionString应用描述
modeString应用模式
iconTypeString图标类型
iconString图标
iconBackgroundString图标背景
iconUrlString图标URL
modelConfigModelConfig模型配置
workflowObject工作流信息
useIconAsAnswerIconBoolean是否使用图标作为答案图标
createdByString创建者ID
createdAtLong创建时间(时间戳)
updatedByString更新者ID
updatedAtLong更新时间(时间戳)
tagsList<String>应用标签

ModelConfig

参数名类型描述
modelModel模型信息
prePromptString预提示文本
createdByString创建者ID
createdAtLong创建时间(时间戳)
updatedByString更新者ID
updatedAtLong更新时间(时间戳)

Model

参数名类型描述
providerString模型提供商
nameString模型名称
modeString模型模式
completionParamsCompletionParams完成参数

CompletionParams

参数名类型描述
stopList<String>停止序列

请求示例


@Resource
private DifyServer difyServer;

@Test
public void testGetApps() {
    // 获取所有应用
    List<AppsResponseVO> apps = difyServer.apps("");

    // 获取带名称过滤的应用
    List<AppsResponseVO> filteredApps = difyServer.apps("myApp");
}

1.2 根据ID获取应用

方法

AppsResponseVO app(String appId);

请求参数

参数名类型是否必须描述
appIdString是应用 ID

响应参数

与上面定义的 AppsResponseVO 结构相同。

请求示例


@Resource
private DifyServer difyServer;

@Test
public void testGetApp() {
    AppsResponseVO app = difyServer.app("app-123456789");
}

1.3 获取应用API密钥

方法

List<ApiKeyResponseVO> getAppApiKey(String id);

请求参数

参数名类型是否必须描述
idString是应用 ID

响应参数

ApiKeyResponseVO

参数名类型描述
idStringAPI 密钥 ID
tokenStringAPI 密钥令牌值

请求示例


@Resource
private DifyServer difyServer;

@Test
public void testGetAppApiKeys() {
    List<ApiKeyResponseVO> apiKeys = difyServer.getAppApiKey("app-123456789");
}

1.4 初始化应用API密钥

方法

List<ApiKeyResponseVO> initAppApiKey(String id);

请求参数

参数名类型是否必须描述
idString是应用 ID

响应参数

与上面定义的 ApiKeyResponseVO 结构相同。

请求示例


@Resource
private DifyServer difyServer;

@Test
public void testInitAppApiKey() {
    List<ApiKeyResponseVO> apiKeys = difyServer.initAppApiKey("app-123456789");
}

2. 知识库管理

2.1 获取知识库API密钥

方法

List<DatasetApiKeyResponseVO> getDatasetApiKey();

响应参数

DatasetApiKeyResponseVO

参数名类型描述
idStringAPI 密钥 ID
typeStringAPI 密钥类型
tokenStringAPI 密钥令牌值
lastUsedAtLong上次使用时间(时间戳)
createdAtLong创建时间(时间戳)

请求示例


@Resource
private DifyServer difyServer;

@Test
public void testGetDatasetApiKeys() {
    List<DatasetApiKeyResponseVO> datasetApiKeys = difyServer.getDatasetApiKey();
}

2.2 初始化知识库API密钥

方法

List<DatasetApiKeyResponseVO> initDatasetApiKey();

响应参数

与上面定义的 DatasetApiKeyResponseVO 结构相同。

请求示例


@Resource
private DifyServer difyServer;

@Test
public void testInitDatasetApiKey() {
    List<DatasetApiKeyResponseVO> datasetApiKeys = difyServer.initDatasetApiKey();
}
在 GitHub 上编辑此页
上次更新: 2025/4/14 03:22
Prev
Dataset API