# n8n-nodes-xcredentialsx

这是一个 n8n 社区节点，用于列出当前 n8n 系统中所有已保存工作流使用的 Credentials ID。

## 功能

这个节点可以帮助你：

1. **列出所有工作流中的凭据** - 扫描所有已保存的工作流，提取其中使用的 Credentials ID
2. **按工作流分组凭据** - 将凭据按使用它们的工作流进行分组显示
3. **获取唯一凭据列表** - 获取系统中所有唯一的 Credentials ID

## 安装

### 社区节点安装

1. 在 n8n 中，转到 **Settings > Community Nodes**
2. 选择 **Install**
3. 输入 `n8n-nodes-xcredentialsx`
4. 同意风险并安装

### 手动安装

1. 克隆或下载此仓库
2. 在项目目录中运行：
   ```bash
   npm install
   npm run build
   ```
3. 将生成的 `dist` 目录复制到你的 n8n 自定义节点目录

## 配置

### 设置 n8n API 凭据

在使用此节点之前，你需要设置 n8n API 凭据：

1. 在 n8n 中，转到 **Settings > API**
2. 创建一个新的 API 密钥
3. 在节点中创建新的 "n8n API" 凭据
4. 输入：
   - **API Key**: 你的 n8n API 密钥
   - **Base URL**: 你的 n8n 实例 URL（例如：`http://localhost:5678`）

## 使用方法

### 操作选项

1. **List All Workflow Credentials** (列出所有工作流凭据)
   - 扫描所有工作流并返回每个使用的凭据
   - 可选择包含工作流详情和节点详情

2. **List Credentials by Workflow** (按工作流列出凭据)
   - 将凭据按工作流分组显示
   - 显示每个工作流使用的所有凭据

3. **Get Unique Credentials** (获取唯一凭据)
   - 返回系统中所有唯一的 Credentials ID
   - 去除重复项

### 输出格式

#### List All Workflow Credentials
```json
{
  "credentialId": "lm06WCoSqfb281dg",
  "credentialType": "httpBasicAuth",
  "workflowId": "BYra6VXqfaF9k4HN",
  "workflowName": "API Data Sync",
  "nodeName": "HTTP Request",
  "nodeType": "n8n-nodes-base.httpRequest"
}
```

#### List Credentials by Workflow
```json
{
  "workflowId": "BYra6VXqfaF9k4HN",
  "workflowName": "API Data Sync",
  "credentials": [
    {
      "credentialId": "lm06WCoSqfb281dg",
      "credentialType": "httpBasicAuth",
      "nodeName": "HTTP Request",
      "nodeType": "n8n-nodes-base.httpRequest"
    },
    {
      "credentialId": "kN8mPqR3xZc9vB2w",
      "credentialType": "googleSheetsOAuth2Api",
      "nodeName": "Google Sheets",
      "nodeType": "n8n-nodes-base.googleSheets"
    }
  ]
}
```

#### Get Unique Credentials
```json
{
  "credentialId": "lm06WCoSqfb281dg"
}
```

## 权限要求

- 需要 n8n API 访问权限
- 需要读取工作流的权限
- API 密钥必须有足够的权限访问工作流数据

## 故障排除

### 常见问题

1. **"Authentication failed"** - 检查 API 密钥是否正确
2. **"No workflows found"** - 确保有已保存的工作流
3. **"Permission denied"** - 检查 API 密钥权限

### 调试

启用节点的 "Continue on Fail" 选项来查看详细的错误信息。

## 开发

### 本地开发

```bash
# 安装依赖
npm install

# 开发模式（监听文件变化）
npm run dev

# 构建
npm run build

# 格式化代码
npm run format

# 检查代码
npm run lint
```

## 许可证

MIT

## 贡献

欢迎提交 Issue 和 Pull Request！

## 版本历史

- **1.0.0** - 初始版本
  - 支持列出工作流中的所有凭据
  - 支持按工作流分组凭据
  - 支持获取唯一凭据列表
