> **アプリ用の認証キーの配布は準備中です。** アプリ連携APIの仕組みと、現在の一般向け配布状況は別です。受付開始日・登録方法は決まり次第案内します。

あいもげのAPIを使ったツール開発を始める方向けの案内です。利用するAPIのURL、対応するバージョン、必要な認証を確認してから実装してください。

APIの動作確認でスレ立て・返信などの書き込みを行う際は、[てすとjun](https://nijiurachan.net/b/test)を利用してください。板のslugは `test` です。板を指定する操作では `X-Board-Key: test` を送り、`POST /threads/{slug}` の `{slug}` も `test` に置き換えます。

## はじめに読むページ

| 目的 | 解説 |
| --- | --- |
| Swagger UIで入力や応答を調べる | [Swagger UIの使い方](/運営公式/Swagger%20UIの使い方) |
| アプリでブラウザー承認から専用資格を取得する | [アプリ開発者向け認証ガイド](/運営公式/アプリ開発者向け認証ガイド) |

## 開発の順番

1. 仕様書を開き、APIバージョンと対象の板を確認します。
2. `GET /boards` や `GET /capabilities` などの読み取りから接続を確認します。
3. アプリ登録・キー配布の案内を確認し、アプリ連携の認証を実装します。
4. `GET /client-policy` で板の受付条件を取得します。
5. 投稿には認証資格、未使用のAltchaの解、投稿操作を識別するrequestIdなどを用意します。

| 操作 | 主なAPI | 注意点 |
| --- | --- | --- |
| 板一覧・機能確認 | `GET /boards`、`GET /capabilities` | 配信先の対応機能を確認 |
| 板の受付条件 | `GET /client-policy` | `X-Board-Key` が必要。許可MIMEや上限を固定値で決めない |
| アプリ認証開始 | `POST /app-authorizations` | 登録済みアプリと戻り先、state、PKCEが必要 |
| アプリ資格への交換 | `POST /app-credentials` | ブラウザー承認後の単回codeを交換 |
| 投稿前の課題 | `GET /altcha` | 課題取得だけでは完了せず、解を計算する |
| 添付の準備 | `POST /attachments/presign` | uploadUrlへアップロードするとき掲示板トークンを付けない |
| スレ立て・返信 | `POST /threads/{slug}`、`POST /threads/{threadId}/posts` | 同じ投稿の再送ではrequestIdと内容を維持 |

アプリ用APIの利用には `X-Api-Version: 2026-08-29` と、対象の板のslugを `X-Board-Key` に指定します。詳細な必須項目は各操作の仕様書を確認してください。

## 仕様書を開く

[APIドキュメントを開く（Swagger UI）](https://api.nijiurachan.net/ui)

掲示板のメニューにあるAPIドキュメントへのリンクから、対象APIの仕様書を開いてください。APIのドメインは利用する板・環境の設定によって決まります。掲示板やWikiのURLから推測して、認証情報を送らないでください。

APIの起点となるURLを確認できたら、同じ起点の次のパスを利用できます。

| パス | 内容 |
| --- | --- |
| `/ui` | ブラウザーで読むAPI仕様書 |
| `/openapi.json` | OpenAPI形式の仕様書 |
| `/capabilities` | 対象バージョンが返す対応機能情報 |

リクエスト項目・応答形式・エラーは、利用先が配信する仕様書を確認してください。すべての環境で同じ機能が使えるとは限りません。

## バージョンを確認する

バージョンは `apiVersion` クエリ、`X-Api-Version` リクエストヘッダー、未指定時の `latest` の順で選ばれます。両方を指定した場合はクエリが優先されます。応答の `X-Api-Version` ヘッダーには、選択された日付版が返ります。

次は仕様書を取得する読み取り専用の例です。`API_ORIGIN` は、APIドキュメントで確認した実際の起点URLに置き換えてください。

```sh
API_ORIGIN='https://your-api.example'
curl --fail-with-body --show-error --include \
  "$API_ORIGIN/openapi.json?apiVersion=latest"
```

開発時には動作確認した日付版を記録し、継続利用するクライアントではその版を明示すると、`latest` の切り替わりによる影響を把握しやすくなります。

## 閲覧と投稿の認証

閲覧、投稿、添付では必要な条件が異なります。仕様書の各操作を確認してください。

掲示板の投稿・添付APIで使うトークンは `x-aimg-token` ヘッダーで渡します。このWikiを編集するためのGROWI Access Tokenとは別の認証情報です。

アプリは `/app-authorizations` でブラウザー承認を開始し、`/app-credentials` で受け取ったcredentialを `x-aimg-token` に指定します。ブラウザーのCookieやWeb用トークンをアプリへコピーする必要はありません。具体例・期限・解除手順は[アプリ開発者向け認証ガイド](/運営公式/アプリ開発者向け認証ガイド)で解説しています。

投稿には資格以外にAltchaの検証なども必要です。認証成功は、BANや板の投稿条件の免除を意味しません。

## エラー時の扱い

- HTTPステータスと、JSON応答の `error.code`・`error.message` を確認してください。
- `429` の応答で `Retry-After` が返された場合は、その値に従って待機してください。
- 投稿結果が分からない通信エラーでは、同じ投稿を無条件に繰り返すと重複することがあります。
- 認証エラーでトークン発行を無限に繰り返したり、アクセス制限を回避したりしないでください。
- トークン・Cookie・認証ヘッダーをソースコードや公開ログへ載せないでください。

APIの利用にも[各板の利用規約](https://nijiurachan.net/mix/board_rules.html#aimg)が適用されます。不具合の報告方法は[問い合わせ・不具合報告](/運営公式/問い合わせ・不具合報告)を参照してください。

---
[運営公式トップへ](/運営公式) / 更新日：2026年10月1日

---

## Page Navigation

- Canonical URL: https://wiki.nijiurachan.net/運営公式/API利用ガイド
- Permalink: https://wiki.nijiurachan.net/6aa8caadd878104439f64084
- Parent: [運営公式](/6aa8caacd878104439f64039.md)
- Children: 0 total
- Total descendants: 0
- Siblings: 6 total
  - [Swagger UIの使い方](/6aa8cdddd878104439f67113.md)
  - [アプリ開発者向け認証ガイド](/6aa8cdddd878104439f6715f.md)
  - [利用規約とモデレーション](/6aa8caaed878104439f640d0.md)
  - [問い合わせ・不具合報告](/6aa8caafd878104439f6411c.md)
  - [編集する際の注意](/6ab5de219260a06592e5ede7.md)
  - [運営への支援](/6ac201659260a0659246a12f.md)
- Last updated: 2026-10-01T02:37:44.041Z by Admin
- Full page listing (all children regardless of count): https://wiki.nijiurachan.net/_api/v3/page-listing/children?id=6aa8caadd878104439f64084
