プロキシ API の設定を登録する

目次

プロキシ API の設定を登録する

プロキシ API の設定( クラウド版 (External link) )を登録します。

URL

クラウド版

https://sample.cybozu.com/g/api/v1/system/api/admin/proxies

パッケージ版

環境に合わせてそれぞれ以下を置き換えてください。

  • IP_ADDRESS_OR_HOST_NAME:Garoon のインストール先の IP アドレスまたはホスト名
  • INSTALL_IDENTIFER:Garoon のインストール識別子
Windows 環境
http://IP_ADDRESS_OR_HOST_NAME/scripts/INSTALL_IDENTIFER/grn.exe/api/v1/system/api/admin/proxies
Linux 環境
http://IP_ADDRESS_OR_HOST_NAME/cgi-bin/INSTALL_IDENTIFER/grn.cgi/api/v1/system/api/admin/proxies

HTTP メソッド

POST

利用できるバージョン

  • クラウド版 Garoon
  • パッケージ版 Garoon 5.15 以降

必要なアクセス権

リクエスト

パラメーター
パラメーター名 必須 説明
status 文字列 省略可 プロキシ API 設定のステータス
次のいずれかの値を指定します。
  • ACTIVE:有効
  • INACTIVE:無効
省略すると「INACTIVE」が設定されます。
proxyCode 文字列 必須 プロキシコード
指定できる文字数は、1 文字以上 100 文字までです。
登録済みのプロキシコードは指定できません。
method 文字列 必須 HTTP メソッド
次のいずれかの値を指定します。
  • GET
  • POST
  • PUT
  • PATCH
  • DELETE
url 文字列 必須 「http://」または「https://」で始まる URL
parameters[].key 文字列 省略可 パラメーターのキー
parameters[].value 文字列 省略可 パラメーターの値
headers[].key 文字列 省略可 ヘッダーのキー
headers[].value 文字列 省略可 ヘッダーの値
body[].key 文字列 省略可 ボディのキー
body[].value 文字列 省略可 ボディの値
リクエストの例
URL

https://sample.cybozu.com/g/api/v1/system/api/admin/proxies

ヘッダー
1
2
3
4
{
  "X-Cybozu-Authorization": "QWRtaW5pc3RyYXRvcjpjeWJvenU=",
  "Content-Type": "application/json"
}

リクエストヘッダーの詳細は Garoon REST API の共通仕様 を参照してください。

ボディ
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
  "status": "ACTIVE",
  "proxyCode": "sample",
  "method": "PUT",
  "url": "https://api.example.com",
  "parameters": [
    {
      "key": "app",
      "value": "1203"
    }
  ],
  "headers": [
    {
      "key": "Authorization",
      "value": "QWRtaW5pc3RyYXRvcjpjeWJvenU="
    },
    {
      "key": "Content-Type",
      "value": "application/json"
    }
  ],
  "body": [
    {
      "key": "id",
      "value": "13"
    }
  ]
}

レスポンス

プロパティ
プロパティ名 説明
status 文字列 プロキシ API 設定のステータス
  • ACTIVE:有効
  • INACTIVE:無効
proxyCode 文字列 プロキシコード
method 文字列 HTTP メソッド
url 文字列 URL
parameters[].key 文字列 パラメーターのキー
parameters[].value 文字列 パラメーターの値
headers[].key 文字列 ヘッダーのキー
headers[].value 文字列 ヘッダーの値
body[].key 文字列 ボディのキー
body[].value 文字列 ボディの値
レスポンスの例
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
{
  "status": "ACTIVE",
  "proxyCode": "sample",
  "method": "PUT",
  "url": "https://api.example.com",
  "parameters": [
    {
      "key": "app",
      "value": "1203"
    }
  ],
  "headers": [
    {
      "key": "Authorization",
      "value": "QWRtaW5pc3RyYXRvcjpjeWJvenU="
    },
    {
      "key": "Content-Type",
      "value": "application/json"
    }
  ],
  "body": [
    {
      "key": "id",
      "value": "13"
    }
  ]
}

サンプルコード

curl を使ったリクエスト
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
curl -X POST 'https://sample.cybozu.com/g/api/v1/system/api/admin/proxies' \
  -H 'X-Cybozu-Authorization: QWRtaW5pc3RyYXRvcjpjeWJvenU=' \
  -H 'Content-Type: application/json' \
  -d '{
    "status": "ACTIVE",
    "proxyCode": "sample",
    "method": "PUT",
    "url": "https://api.example.com",
    "parameters": [
      {
        "key": "app",
        "value": "1203"
      }
    ],
    "headers": [
      {
        "key": "Authorization",
        "value": "QWRtaW5pc3RyYXRvcjpjeWJvenU="
      },
      {
        "key": "Content-Type",
        "value": "application/json"
      }
    ],
    "body": [
      {
        "key": "id",
        "value": "13"
      }
    ]
  }'
Garoon REST API リクエストを送信する API を使ったリクエスト
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
const body = {
  status: 'ACTIVE',
  proxyCode: 'sample',
  method: 'PUT',
  url: 'https://api.example.com',
  parameters: [
    {
      key: 'app',
      value: '1203'
    }
  ],
  headers: [
    {
      key: 'Authorization',
      value: 'QWRtaW5pc3RyYXRvcjpjeWJvenU='
    },
    {
      key: 'Content-Type',
      value: 'application/json'
    }
  ],
  body: [
    {
      key: 'id',
      value: '13'
    }
  ]
};

await garoon.api('/api/v1/system/api/admin/proxies', 'POST', body);