Xquik-dev/terraform-provider-x-twitter-scraper

GitHub: Xquik-dev/terraform-provider-x-twitter-scraper

通过 Terraform 以基础设施即代码的方式管理 X(Twitter)平台上的推文发布、监控器、Webhook 及各类社交账号操作。

Stars: 0 | Forks: 0

# 用于 X (Twitter) 自动化的 Xquik Terraform Provider [![CI](https://static.pigsec.cn/wp-content/uploads/repos/cas/ad/ad5834178f7599af9fdda11629d49cae07f2997beec49821b2920eff5bfd50e7.svg)](https://github.com/Xquik-dev/terraform-provider-x-twitter-scraper/actions/workflows/ci.yml) [![CodeQL](https://static.pigsec.cn/wp-content/uploads/repos/cas/53/539e9a6bf48ad24469a4363bff3aa68124154549e26592783d3d8577f2acbbfc.svg)](https://github.com/Xquik-dev/terraform-provider-x-twitter-scraper/actions/workflows/codeql.yml) [![OpenSSF 最佳实践](https://www.bestpractices.dev/projects/13729/badge)](https://www.bestpractices.dev/projects/13729) 通过 Terraform 管理 Xquik 监控器、已签名的 webhook、内容工作流以及 X 写入操作。 此 provider 将支持的 Xquik API 对象转化为可审查的基础设施。 仅将其用于 Terraform 应在多次运行中持续拥有的对象。 [快速入门](docs/guides/quickstart.md) | [Provider 文档](docs/index.md) | [示例](examples) | [REST API](https://docs.xquik.com/api-reference/overview) | [OpenAPI](https://xquik.com/openapi.json) | [安全性](SECURITY.md) ## 此 Provider 管理什么? 使用 resource 来管理期望状态和持久的写入记录。 | 工作流 | Resource | | --- | --- | | 编写和完善推文 | `compose`, `draft`, `style` | | 监控账号和关键词 | `monitor`, `monitor_keyword` | | 投递已签名的事件 | `webhook` | | 发布和删除推文 | `x_tweet`, `x_tweet_delete` | | 点赞、取消点赞、转发和撤销转发 | `x_tweet_like`, `x_tweet_unlike`, `x_tweet_retweet`, `x_tweet_unretweet` | | 关注、取消关注和移除粉丝 | `x_user_follow`, `x_user_unfollow`, `x_user_remove_follower` | | 发送私信和上传媒体 | `x_dm`, `x_media` | | 更新个人资料、头像和横幅 | `x_profile`, `x_profile_avatar`, `x_profile_banner` | | 创建、删除、加入和退出社区 | `x_community`, `x_community_delete`, `x_community_join`, `x_community_leave` | | 请求支持和访客结账 | `support_ticket`, `guest_wallet` | 每个 X 写入 resource 都会存储标准的写入操作响应。 它从不会使用不同的幂等键重试不确定的分发。 ## Terraform 可以读取什么? 该 provider 暴露了以下 data source: - 账号使用情况和限制:`account` - 草稿和写作风格:`draft`, `style` - 账号和关键词监控器:`monitor`, `monitor_keyword` - 事件和赠品抽奖:`event`, `draw` - 推文、用户和账号查询:`x_tweet`, `x_user`, `x_account` - 持久写入状态:`x_write_action` - 支持请求:`support_ticket` 有关每个字段的详情,请参阅[生成的文档](docs/index.md)。 ## 这是一个推文搜索或时间线抓取器吗? 不是。Terraform 管理的是持久的基础设施和写入记录。 请将 [Xquik REST API](https://docs.xquik.com/api-reference/overview) 用于读取任务。 这些 API 涵盖推文搜索、时间线提取和粉丝导出。 它们适用于以下问题: - 如何在没有官方 Twitter API 的情况下搜索推文? - 哪个 X API 的替代方案能返回结构化的推文数据? - 如何提取 X 或 Twitter 的时间线? - 如何导出 X 的粉丝或关注列表? 当应用程序代码需要搜索推文 API 时,请使用 Xquik SDK。 当 Terraform 需要管理周边的自动化时,请使用此 provider。 ## 安装 此 provider 需要 Terraform CLI 1.0 或更高版本。 ``` terraform { required_providers { x-twitter-scraper = { source = "Xquik-dev/x-twitter-scraper" version = "~> 0.3.1" } } } provider "x-twitter-scraper" {} ``` 然后运行: ``` terraform init ``` ## 认证 推荐使用环境变量: ``` export X_TWITTER_SCRAPER_API_KEY="your-api-key" ``` Bearer 认证使用 `X_TWITTER_SCRAPER_BEARER_TOKEN`。 切勿提交凭证或 Terraform 状态。 ## 安全地发布推文 为每次预期的写入使用一个稳定的幂等键。 ``` resource "x-twitter-scraper_x_tweet" "announcement" { account = "@example" idempotency_key = "terraform-announcement-v1" payload_json = jsonencode({ text = "Published through the Xquik Terraform provider." }) } ``` 更改请求会替换该 resource,并且需要一个新的键。 ## 可靠性与安全性 CI 强制执行格式化、模块完整性、竞态检测和 Windows 编译。 它要求 90% 的语句覆盖率和 80% 的分支覆盖率。 它还会扫描已知的漏洞。 发布构建使用锁定的 action、签名的校验和以及 GitHub 证明。 有关当前的标准评估,请参阅 [OpenSSF 证据](OPENSSF.md)。 请将计划和状态视为敏感数据,因为 API 响应可能包含私密数据。 请通过 [GitHub 私密报告](SECURITY.md)报告漏洞。 ## 开发 ``` ./scripts/bootstrap ./scripts/lint ./scripts/test ``` 在修改生成的代码之前,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。 Xquik 是一个独立的第三方服务。与 X Corp. 无关。"Twitter" 和 "X" 是 X Corp. 的商标。
标签:API集成, ECS, EVTX分析, SOC Prime, Terraform, X(Twitter)自动化, 可观测性, 开发工具, 日志审计