APIでスキャンを作成・変更・実行する
Axe Monitorの管理者は、AxeアカウントでAPIキーを生成し、ユーザーインターフェースを使用せずに、システマチックにスキャンを作成、変更、または実行できます。
はじめにについて詳しく学ぶ。
エンドポイント
| メソッド | エンドポイント | 目的 |
|---|---|---|
| POST | /scans |
スキャンを作成する。 |
| PATCH | /scans/[scanId] |
スキャンの設定を1つ以上編集する。 |
| POST | /scans/[scanId]/runs |
新しい実行をキューに入れる。 |
スキャンの作成
1つのスキャン設定オブジェクトから1つのスキャンを作成します。複数のスキャンを同時に作成するには、スキャンごとに1つのリクエストを送信してください。
注意: 資格情報を安全に保つため、APIはパスワード、キーストアファイル、または環境変数の値を受け付けません。これらの値は、Axe Monitorのユーザーインターフェース内のスキャンのログイン情報に追加してください。
リクエスト例
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans
X-API-Key: <your_api_key>
Content-Type: application/json必須パラメータ
| 名前 | タイプ | 説明 |
|---|---|---|
| name | 文字列 | スキャンの名前。 |
| sites | 文字列 | スキャンの開始URL。スクリプトがない場合にのみ必要です。 |
| axeCoreVersion | 文字列 | スキャンに使用するaxe-coreのバージョン。GET /axe-versionsからversionの値を使用します。 |
| standardLevel | 文字列 | テスト対象のアクセシビリティ基準。例えばwcag22aa。 |
| depth | 整数 | 開始URLからクロールするリンクレベルの数。 |
| pageLimit | 整数 | 各実行でスキャンされるページの最大数。 |
オプション設定
追加のスキャン設定は、スキャン作成エンドポイントで使用できます。スキャン設定ドキュメントを参照してください。
リクエスト例
{
"name": "Marketing Site - Production",
"sites": ["https://www.example.com"],
"axeCoreVersion": "latest",
"standardLevel": "wcag22aa",
"standardOptions": ["best-practice"],
"depth": 3,
"pageLimit": 100,
"skipSpecificUrls": ["https://www.example.com/logout"],
"teams": [
{ "name": "Digital Accessibility Team" }
],
"notifyGroup": true
}レスポンス例
ステータス: 201 作成
{
"scanId": 12345
}返された[scanId]を使用して、スキャンを読み取り、編集、または実行します。
注意: APIはパスワード、キーストア、または環境変数の値を受け付けません。スキャンがサイトにサインインする場合やスクリプトの実行に秘密の値が必要な場合は、APIを通じてスキャンを作成し、その値をaxe Monitorの詳細設定で追加してください。
エラーレスポンス
| HTTPステータスコード | エラーコード | 発生条件 |
|---|---|---|
| 400 | out_of_range |
数値が許可範囲外です。 |
| 400 | unknown_version |
インスタンスでaxeCoreVersionが使用できません。 |
| 400 | conflicting_pdf_config |
pdfTargetが設定されていますが、application/pdfはexcludeMimeTypesに含まれています。 |
| 400 | conflicting_url_scope |
ignoreAllParamsがtrueであり、meaningfulParamsまたはmeaninglessParamsが空でありません。 |
| 400 | unknown_reference |
スキャングループまたはチームが存在しません。 |
スキャンの編集
既存のスキャンの設定を1つ以上更新します。変更したい設定のみを送信してください。省略した設定は現在の値を保持します。
注意:
- 一部の設定を編集するにはIDが必要です。IDの取得に関するドキュメントを参照してください。
- スキャンにプリセットが適用されている場合、一部の設定は編集できないことがあります。プリセットのドキュメントを参照してください。
- APIを通じて編集可能なスキャン設定の完全なリストを表示。
リクエスト例
PATCH
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/settings
X-API-Key: <your_api_key>
Content-Type: application/json必須パラメータ
| 名前 | タイプ | 説明 |
|---|---|---|
| scanId | 整数 | スキャンの一意の識別子。 |
変更を行うには少なくとも1つの追加設定が必要です。スキャン設定のドキュメントを参照してください。
注意:
- 「null」はフィールドをデフォルトにリセットします
- 配列は保存された値を置き換えます
リクエスト例
{
"name": "Marketing Site - Production (weekly)",
"depth": 4,
"pageLimit": 250
}レスポンス例
ステータス: 200 OK
{
"scanId": 12345,
"updatedFields": ["name", "depth", "pageLimit"]
}updatedFields変更された設定をリストします。
エラーレスポンス
| HTTPステータスコード | エラーコード | 発生条件 |
|---|---|---|
| 400 | field_locked_by_preset |
スキャンに適用されたプリセットがこの設定をロックしています。 |
| 400 | field_not_editable |
スキャンが作成された後、この設定は変更できません。 |
スキャンの実行を開始
既存のスキャンの新しい実行をキューに入れます。実行はaxe Monitorがキューから取り出したときに開始されます。進行状況を確認するにはGET /scans/[scanId]/runsを使用してください。
リクエスト例
POST
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs
X-API-Key: <your_api_key>必須パラメータ
| 名前 | タイプ | 説明 |
|---|---|---|
| scanId | 整数 | スキャンの一意の識別子。 |
レスポンス例
ステータス: 202 Accepted
レスポンスには本体がありません。
エラーレスポンスの例
{
"title": "Bad Request",
"status": 400,
"detail": "Couldn't queue job since it's already running",
"instance": "/v1/scans/20/runs"
}エラーレスポンス
| HTTPステータスコード | 説明 |
|---|---|
| 400 | スキャンはすでに実行中です。現在の実行が終了するのを待ってから、再試行してください。 |
| 404 | スキャンが存在しません。 |
