开发者文档

工作台概览

GET/api/orgs/:orgId/dashboard

权限与前置条件

当前有效工作区成员;工作区及账号必须有效。

支持账号中心 API Key:Authorization: Bearer <ltak_…>。中心每次实时校验,仍执行当前用户的工作区角色和业务权限。Cookie 写入仍需允许来源的 Origin 和 X-Requested-With: suren360。不能同时携带 Cookie 与 API Key。所有路径参数须使用真实 ID。

请求参数

orgId · 路径参数 · 必填字符串

Query 查询参数

字段类型必填约束
periodstring否{"default":"month","enum":["month","7d","30d"]}
issueKindstring否{"enum":["overdue","review","rework","fee"]}
查看完整请求 JSON Schema
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "period": {
      "default": "month",
      "type": "string",
      "enum": [
        "month",
        "7d",
        "30d"
      ]
    },
    "issueKind": {
      "type": "string",
      "enum": [
        "overdue",
        "review",
        "rework",
        "fee"
      ]
    }
  }
}

调用示例

先在统一账号中心创建 Key,并授权素人种草 360 应用,将密钥安全设置为 LINGTU_API_KEY 环境变量。 请替换部署地址与示例字段,不要将凭证粘贴到聊天或日志中。

cURL · 示例占位值需替换
curl --request GET \
  'https://YOUR_DEPLOYMENT_HOST/api/orgs/YOUR_orgId/dashboard' \
  --header "Authorization: Bearer $LINGTU_API_KEY"

响应结构

成功返回 HTTP 200 的 JSON 对象。下方为响应结构定义,不是虚构的业务数据。

字段类型必填约束
periodobject是{"required":["from","to","recovered","approved"],"additionalProperties":false}
financeobject是{"required":["confirmedFen","paidFen","pendingFen","overpaidFen","overBudgetProjects"],"additionalProperties":false}
managementobject是{"required":["projects","issues"],"additionalProperties":false}
dueSooninteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
activeProjectsinteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
runningPlansinteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
recoveredContentsinteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
activeCreatorsinteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
draftPlansinteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
pendingCreatorsinteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
awaitingSubmissioninteger是{"minimum":-9007199254740991,"maximum":9007199254740991}
projectsarray是{}
plansarray是{}
查看完整响应 JSON Schema
JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "period": {
      "type": "object",
      "properties": {
        "from": {
          "type": "string",
          "format": "date",
          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
        },
        "to": {
          "type": "string",
          "format": "date",
          "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
        },
        "recovered": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "approved": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "from",
        "to",
        "recovered",
        "approved"
      ],
      "additionalProperties": false
    },
    "finance": {
      "type": "object",
      "properties": {
        "confirmedFen": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "paidFen": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "pendingFen": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "overpaidFen": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        },
        "overBudgetProjects": {
          "type": "integer",
          "minimum": -9007199254740991,
          "maximum": 9007199254740991
        }
      },
      "required": [
        "confirmedFen",
        "paidFen",
        "pendingFen",
        "overpaidFen",
        "overBudgetProjects"
      ],
      "additionalProperties": false
    },
    "management": {
      "type": "object",
      "properties": {
        "projects": {
          "type": "object",
          "properties": {
            "total": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "page": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "pageSize": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "items": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 32
                  },
                  "name": {
                    "type": "string"
                  },
                  "status": {
                    "type": "string"
                  },
                  "responsibleName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "endsOn": {
                    "type": "string",
                    "format": "date",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
                  },
                  "daysRemaining": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  "plannedTasks": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "completedTasks": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "recoveredCount": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "approvedCount": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "pendingReviewCount": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "reworkCount": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "pendingFeeCount": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "overdueCount": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  },
                  "confirmedFeeFen": {
                    "type": "integer",
                    "minimum": -9007199254740991,
                    "maximum": 9007199254740991
                  },
                  "budgetFen": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 9007199254740991
                  }
                },
                "required": [
                  "id",
                  "name",
                  "status",
                  "responsibleName",
                  "endsOn",
                  "daysRemaining",
                  "plannedTasks",
                  "completedTasks",
                  "recoveredCount",
                  "approvedCount",
                  "pendingReviewCount",
                  "reworkCount",
                  "pendingFeeCount",
                  "overdueCount",
                  "confirmedFeeFen",
                  "budgetFen"
                ],
                "additionalProperties": false
              }
            }
          },
          "required": [
            "total",
            "page",
            "pageSize",
            "items"
          ],
          "additionalProperties": false
        },
        "issues": {
          "type": "object",
          "properties": {
            "total": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "page": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "pageSize": {
              "type": "integer",
              "minimum": 0,
              "maximum": 9007199254740991
            },
            "counts": {
              "type": "object",
              "properties": {
                "overdue": {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 9007199254740991
                },
                "review": {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 9007199254740991
                },
                "rework": {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 9007199254740991
                },
                "fee": {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 9007199254740991
                }
              },
              "required": [
                "overdue",
                "review",
                "rework",
                "fee"
              ],
              "additionalProperties": false
            },
            "items": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 32
                  },
                  "kind": {
                    "type": "string",
                    "enum": [
                      "overdue",
                      "review",
                      "rework",
                      "fee"
                    ]
                  },
                  "projectId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 32
                  },
                  "projectName": {
                    "type": "string"
                  },
                  "responsibleName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "title": {
                    "type": "string"
                  },
                  "creatorName": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "occurredAt": {
                    "type": "string",
                    "format": "date-time",
                    "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
                  },
                  "targetId": {
                    "type": "string",
                    "minLength": 1,
                    "maxLength": 32
                  }
                },
                "required": [
                  "id",
                  "kind",
                  "projectId",
                  "projectName",
                  "responsibleName",
                  "title",
                  "creatorName",
                  "occurredAt",
                  "targetId"
                ],
                "additionalProperties": false
              }
            }
          },
          "required": [
            "total",
            "page",
            "pageSize",
            "counts",
            "items"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "projects",
        "issues"
      ],
      "additionalProperties": false
    },
    "dueSoon": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "activeProjects": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "runningPlans": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "recoveredContents": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "activeCreators": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "draftPlans": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "pendingCreators": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "awaitingSubmission": {
      "type": "integer",
      "minimum": -9007199254740991,
      "maximum": 9007199254740991
    },
    "projects": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "platform": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "endsOn": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "platform",
          "status",
          "endsOn"
        ],
        "additionalProperties": false
      }
    },
    "plans": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "projectName": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "deadline": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"
          },
          "groups": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          },
          "submitted": {
            "type": "integer",
            "minimum": -9007199254740991,
            "maximum": 9007199254740991
          }
        },
        "required": [
          "id",
          "projectName",
          "status",
          "deadline",
          "groups",
          "submitted"
        ],
        "additionalProperties": false
      }
    }
  },
  "required": [
    "period",
    "finance",
    "management",
    "dueSoon",
    "activeProjects",
    "runningPlans",
    "recoveredContents",
    "activeCreators",
    "draftPlans",
    "pendingCreators",
    "awaitingSubmission",
    "projects",
    "plans"
  ],
  "additionalProperties": false
}
查看错误码与重试规则