---
title: 高度な設定
slug: api-guide/ja/m0lOBoPjnwZHVhBIfzL3y
docTags: 
createdAt: 2024-12-16T12:50:01.478Z
---

:::hint{type="info"}
### このページを読む必要がありますか？

[クイックスタート](docId\:WYm9o4UavbHvEioJEw8Ze)ページを既に完了している場合、**通常このページを読む必要はありません**。このページでは、より詳しい背景情報を扱っています。
:::

Kognicは、顧客向けサービスのHTTP APIと、基本的なAPI呼び出しをラップしてPythonコードからのAPI呼び出しを簡素化するAPIクライアントライブラリ（[`kognic-io`](https://pypi.org/project/kognic-io/)）を提供しています。

## 認証

認証は[kognic-auth](https://pypi.org/project/kognic-auth/)によって処理されます。これはrequestsライブラリの上にKognic認証の基盤を提供するPython 3ライブラリです。

認証は標準的なOAuth 2.0クライアントクレデンシャルフローに基づいています。APIクライアントに認証情報を提供する方法はいくつかあります。kognic-queryやkognic-ioなどのKognic Pythonクライアントは、明示的に設定できる`auth`パラメータを受け付けます。また、環境変数でKognic認証情報ファイルのパスを指定することもできます。以下の例をご覧ください。

## 認証情報の生成

KognicクライアントIDとKognicクライアントシークレットを含む認証情報ファイルは、[Kognicウェブアプリケーション](https://app.kognic.com)のユーザーメニューにある「Api Credentials...」（API認証情報）をクリックし、続いて「Generate Credentials」（認証情報の生成）ボタンをクリックすることで生成できます。

::Image[]{src="https://api.archbee.com/api/optimize/wLEz_RbWP6nIMpY-prjlm/jOJHsNDxZTLiP9MSjabEv_creds-ja.png" darkSrc="https://archbee-image-uploads.s3.amazonaws.com/wLEz_RbWP6nIMpY-prjlm/jOJHsNDxZTLiP9MSjabEv_creds-ja.png" size="50" width="476" height="298" darkWidth="476" darkHeight="298" position="center" showCaption="false"}

認証情報ファイルは、`~/.config/kognic/credentials.json`などの適切なディレクトリに保存してください。

## 例

認証情報を設定する方法は**いくつか**あります。

- 環境変数`KOGNIC_CREDENTIALS`にKognic認証情報ファイルのパスを設定します。コマンド`export KOGNIC_CREDENTIALS=~/.config/kognic/credentials.json`を実行してください。
- 環境変数`KOGNIC_CLIENT_ID`と`KOGNIC_CLIENT_SECRET`を設定します。
- `auth`パラメータに認証情報ファイルのパスを設定します（例：`auth="~/.config/kognic/credentials.json"`）。
- `auth`パラメータに認証情報のタプルを設定します（例：`auth=(<client_id>, <client_secret>)`）。

デフォルトでは、KognicのAPIクライアントは環境変数に設定された認証情報を使用します。環境変数が正しく設定されていれば、以下のようにするだけで認証済みのkognic-ioクライアントを作成できます：

```python
from kognic.io.client import KognicIOClient

api_client = KognicIOClient()
```

または、認証情報を明示的に指定することもできます：

```python
from kognic.io.client import KognicIOClient

api_client = KognicIOClient(auth="~/.config/kognic/credentials.json")
```

内部的には、すべて自動トークン更新機能を備えたrequestsセッションを実装するAuthSessionクラスを使用しています。

## ワークスペースの指定

kognic-io v2.4.0以降、データアップロード時に使用するワークスペースを指定できます。複数のワークスペースにアクセスできるユーザーの場合、この指定は必須です。

データをアップロードするワークスペースを見つけるには、ドロップダウンから選択してください：

![](https://api.archbee.com/api/optimize/wLEz_RbWP6nIMpY-prjlm/DTPYjC4_WktFnmJ-qsTZ8_workspace-drop-down.png)

次に、「Workspace management」（ワークスペース管理）をクリックします：

![](https://api.archbee.com/api/optimize/wLEz_RbWP6nIMpY-prjlm/QDi3AkOWfx287pjAuLS5W_workspace-management.png)

右上にあるコピーオプションでワークスペースIDをコピーします：

![](https://api.archbee.com/api/optimize/wLEz_RbWP6nIMpY-prjlm/f63R2_2LM1c4kZEd6_HWz_copy-workspace-id.png)

kognic-ioクライアントを作成する際にこのIDを指定すると、*データのアップロード時*に使用されます：

```python
from kognic.io.client import KognicIOClient

api_client = KognicIOClient(write_workspace_id=<Some workspace uuid>)
```

## プロキシ設定

組織のネットワークポリシーにより、HTTP(S)トラフィックを特定のホストを経由してプロキシする必要がある場合は、OSまたは実行環境で設定してください。`kognic-io`はPythonの`urllib`を使用しており、[OSおよび環境変数からプロキシ設定を自動的に取得します](https://docs.python.org/3/library/urllib.request.html#urllib.request.getproxies)。

使用する正しいプロキシホスト/アドレスは組織内のネットワーク構成によって異なるため、詳細については社内のITサポートにお問い合わせください。

例：

```text
export HTTPS_PROXY='http://10.9.8.7:1234'
```

