# REST API

RADIUSaaS は REST API を公開しており、RADIUSaaS Admin Portal の UI から行う必要があるほとんどの操作を自動化できます。

{% hint style="warning" %}
構成変更につながる API 呼び出しを実行する前に、その影響を十分に理解していることを確認してください。API を誤って使用すると、サービスの構成が壊れる可能性があります。
{% endhint %}

## 認証

REST API への呼び出しを認証するには、各リクエストに HTTP `認証` ヘッダーを含めます。このヘッダーには有効な [アクセストークン](https://docs.radiusaas.com/ja/ptaru/settings/permissions#access-tokens):

```
Authorization: Bearer
               <Access Token>
```

## API リファレンス

API ドキュメントには、各 API エンドポイントについて Swagger ベースの完全な API リファレンスが含まれており、

* 利用可能な HTTP メソッド、
* HTTP 応答コード、
* リクエスト（ボディ）の JSON スキーマ / フォームデータ、
* レスポンス本文の JSON スキーマ、および
* 一部のエンドポイント向けのリクエスト・レスポンス例が含まれます。

{% hint style="info" %}
API リファレンスから直接 API 呼び出しを実行することはできません。
{% endhint %}

<figure><img src="https://992520889-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FSWU1DQ4UGkqER7uGNUOm%2Fuploads%2FyrjaWH8wAIOQrsCLO9IP%2Fimage.png?alt=media&#x26;token=1c649dc2-b62e-494e-a640-d1042e4bb754" alt=""><figcaption></figcaption></figure>

## シナリオ

### BYOD またはゲストアクセス用のユーザー名/パスワードアカウントを管理する

REST API は、BYOD またはゲストアクセスのシナリオにおけるユーザー名/パスワードアカウントの管理を自動化するために使用できます。&#x20;

これには、新規学生やコワーキングスペースの入居者のオンボーディング時に (WiFi) 認証情報を自動でプロビジョニングすることや、それらのアカウントを自動で廃止することが含まれる場合があります。

ユーザー名/パスワードアカウントをプロビジョニングするために REST API を使用する方法の例は、API リファレンス内の **ユーザー** エンドポイントで確認できます。

### 外部監視の実装

外部システムを使用して RADIUSaaS インスタンスのサービス可用性と稼働時間を監視する場合、または RADIUS Server Certificate の有効期限を監視する場合は、次のガイドを参照してください。

{% content-ref url="rest-api/wai-bu-jian-shi" %}
[wai-bu-jian-shi](https://docs.radiusaas.com/ja/sono/rest-api/wai-bu-jian-shi)
{% endcontent-ref %}

## cURL の例

一般に、REST API には form data または JSON の 2 種類のコンテンツタイプがあります。必要なメディアタイプは API ドキュメントで確認できます。&#x20;

curl の構文に慣れていない場合は、ここで 2 つの例を確認できます。

#### JSON

```bash
curl -X "METHOD" "https://YOURNAME.radius-as-a-service.com/api/ROUTE/PATH" \
    -H 'Authorization: Bearer ACCESS_TOKEN' \
    -H 'Content-Type: application/json' \
    -d $'{
            必要な JSON データ。ドキュメントをご覧ください
        }'
```

#### フォームデータ

```bash
curl -X "METHOD" "https://YOURNAME.radius-as-a-service.com/api/ROUTE/PATH" \
    -H 'Authorization: Bearer ACCESS_TOKEN' \
    -F 'KEY=VALUE'\
    -F 'KEY=VALUE'
```
