diff --git a/backend/framework/sdk/src/main/resources/i18n/project_en_US.properties b/backend/framework/sdk/src/main/resources/i18n/project_en_US.properties
index 30f86d5091..0846d412b3 100644
--- a/backend/framework/sdk/src/main/resources/i18n/project_en_US.properties
+++ b/backend/framework/sdk/src/main/resources/i18n/project_en_US.properties
@@ -91,6 +91,11 @@ functional_case_template_extend.id.not_blank=ID is required
functional_case_template_extend.step_model.length_range=Step Model length must be between {min} and {max}
functional_case_template_extend.step_model.not_blank=Step Model is required
project_is_null=Project does not exist
+# robot
+robot_is_null=The current robot does not exist
+ding_type_is_null= DingTalk robot type is required
+ding_app_key_is_null=DingTalk AppKey is required
+ding_app_secret_is_null=DingTalk AppSecret is required
# permission
permission.project_user.name=User
permission.project_group.name=User group
diff --git a/backend/framework/sdk/src/main/resources/i18n/project_zh_CN.properties b/backend/framework/sdk/src/main/resources/i18n/project_zh_CN.properties
index 4d081a5786..0c09c92b5f 100644
--- a/backend/framework/sdk/src/main/resources/i18n/project_zh_CN.properties
+++ b/backend/framework/sdk/src/main/resources/i18n/project_zh_CN.properties
@@ -91,6 +91,11 @@ functional_case_template_extend.id.not_blank=ID不能为空
functional_case_template_extend.step_model.length_range=步骤模型长度必须在{min}-{max}之间
functional_case_template_extend.step_model.not_blank=步骤模型不能为空
project_not_exist=项目不存在
+# robot
+robot_is_null=当前机器人不存在
+ding_type_is_null=钉钉机器人的类型不能为空
+ding_app_key_is_null=钉钉的AppKey不能为空
+ding_app_secret_is_null=钉钉的AppSecret不能为空
# permission
permission.project_user.name=用户
permission.project_group.name=用户组
diff --git a/backend/framework/sdk/src/main/resources/i18n/project_zh_TW.properties b/backend/framework/sdk/src/main/resources/i18n/project_zh_TW.properties
index aa571d0d8a..683806f662 100644
--- a/backend/framework/sdk/src/main/resources/i18n/project_zh_TW.properties
+++ b/backend/framework/sdk/src/main/resources/i18n/project_zh_TW.properties
@@ -91,6 +91,11 @@ functional_case_template_extend.id.not_blank=ID不能為空
functional_case_template_extend.step_model.length_range=步驟模型長度必須在{min}-{max}之間
functional_case_template_extend.step_model.not_blank=步驟模型不能為空
project_is_null=項目不存在
+# robot
+robot_is_null=當前機器人不存在
+ding_type_is_null=釘釘機器人的類型不能為空
+ding_app_key_is_null = 釘釘的AppKey不能為空
+ding_app_secret_is_null =釘釘的AppSecret不能為空
# permission
permission.project_user.name=用戶
permission.project_group.name=用戶組
diff --git a/backend/services/project-management/pom.xml b/backend/services/project-management/pom.xml
index 6f75443d93..4c651ed7dd 100644
--- a/backend/services/project-management/pom.xml
+++ b/backend/services/project-management/pom.xml
@@ -18,7 +18,14 @@
metersphere-sdk
${revision}
-
+
+ io.metersphere
+ metersphere-sdk
+ ${revision}
+ tests
+ test-jar
+ test
+
diff --git a/backend/services/project-management/src/main/java/io/metersphere/project/controller/ProjectRobotController.java b/backend/services/project-management/src/main/java/io/metersphere/project/controller/ProjectRobotController.java
new file mode 100644
index 0000000000..c00a9d3091
--- /dev/null
+++ b/backend/services/project-management/src/main/java/io/metersphere/project/controller/ProjectRobotController.java
@@ -0,0 +1,90 @@
+package io.metersphere.project.controller;
+
+import com.github.pagehelper.Page;
+import com.github.pagehelper.PageHelper;
+import io.metersphere.project.domain.ProjectRobot;
+import io.metersphere.project.dto.ProjectRobotDTO;
+import io.metersphere.project.request.ProjectRobotRequest;
+import io.metersphere.project.service.ProjectRobotService;
+import io.metersphere.sdk.constants.PermissionConstants;
+import io.metersphere.sdk.util.BeanUtils;
+import io.metersphere.sdk.util.PageUtils;
+import io.metersphere.sdk.util.Pager;
+import io.metersphere.sdk.util.SessionUtils;
+import io.metersphere.validation.groups.Created;
+import io.metersphere.validation.groups.Updated;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.annotation.Resource;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@Tag(name = "项目机器人管理")
+@RestController
+@RequestMapping("/project/robot/")
+public class ProjectRobotController {
+
+ @Resource
+ private ProjectRobotService projectRobotService;
+
+
+ @PostMapping("/list/page")
+ @Operation(summary = "获取机器人列表")
+ @RequiresPermissions(PermissionConstants.PROJECT_MESSAGE_READ)
+ public Pager> listResourcePools(@Validated @RequestBody ProjectRobotRequest request) {
+ Page