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

    • Chat API
    • Workflow API
    • Dataset API
    • Server API
  • 事件

    • 介绍
    • 聊天事件
  • 使用配置
  • 自定义配置
  • v1.x-SNAPSHOT
  • v0.x
  • 更新日志
  • 简体中文
  • English
GitHub
  • 介绍
  • 快速开始
  • 安装
  • 配置
  • 客户端构建器
  • 功能

    • Chat API
    • Workflow API
    • Dataset API
    • Server API
  • 事件

    • 介绍
    • 聊天事件
  • 使用配置
  • 自定义配置
  • v1.x-SNAPSHOT
  • 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