🚀 Netskope API ドキュメント
このドキュメントは、Netskope APIを使用したユーザー管理、パブリッシャー管理、ポリシー管理などの操作方法を説明しています。
📚 詳細ドキュメント
ユーザー管理
listUsers
- 説明: すべてのユーザーをリスト表示します。
- リクエストメソッド: GET
- パス: /users
- パラメータ:
- fields: オプションのカンマ区切りのフィールドリスト(例: name, email, role)
 
- レスポンス:
{
    "status": "success",
    "data": {
        "users": [
            {
                "id": "string",
                "name": "string",
                "email": "string",
                "role": "string"
            }
        ],
        "pagination": {
            "page": integer,
            "pageSize": integer,
            "totalPages": integer,
            "totalItems": integer
        }
    }
}
createUser
- 説明: 新しいユーザーを作成します。
- リクエストメソッド: POST
- パス: /users
- リクエストボディ:
{
    "name": "string",
    "email": "string",
    "role": "string"
}
updateUser
- 説明: 既存のユーザーを更新します。
- リクエストメソッド: PUT
- パス: /users/{userId}
- リクエストボディ:
{
    "name": "string",
    "email": "string",
    "role": "string"
}
deleteUser
- 説明: ユーザーを削除します。
- リクエストメソッド: DELETE
- パス: /users/{userId}
パブリッシャー管理
listPublishers
- 説明: すべてのパブリッシャーをリスト表示します。
- リクエストメソッド: GET
- パス: /publishers
- パラメータ:
- fields: オプションのカンマ区切りのフィールドリスト(例: name, status, region)
 
- レスポンス:
{
    "status": "success",
    "data": {
        "publishers": [
            {
                "id": "string",
                "name": "string",
                "status": "active" | "inactive",
                "region": "string"
            }
        ],
        "pagination": {
            "page": integer,
            "pageSize": integer,
            "totalPages": integer,
            "totalItems": integer
        }
    }
}
createPublisher
- 説明: 新しいパブリッシャーを作成します。
- リクエストメソッド: POST
- パス: /publishers
- リクエストボディ:
{
    "name": "string",
    "status": "active" | "inactive",
    "region": "string"
}
updatePublisher
- 説明: 既存のパブリッシャーを更新します。
- リクエストメソッド: PUT
- パス: /publishers/{publisherId}
- リクエストボディ:
{
    "name": "string",
    "status": "active" | "inactive",
    "region": "string"
}
deletePublisher
- 説明: パブリッシャーを削除します。
- リクエストメソッド: DELETE
- パス: /publishers/{publisherId}
ポリシー管理
listPolicies
- 説明: すべてのポリシーをリスト表示します。
- リクエストメソッド: GET
- パス: /policies
- パラメータ:
- fields: オプションのカンマ区切りのフィールドリスト(例: name, type, status)
 
- レスポンス:
{
    "status": "success",
    "data": {
        "policies": [
            {
                "id": "string",
                "name": "string",
                "type": "firewall" | "vpn" | "auth",
                "status": "active" | "inactive"
            }
        ],
        "pagination": {
            "page": integer,
            "pageSize": integer,
            "totalPages": integer,
            "totalItems": integer
        }
    }
}
createPolicy
- 説明: 新しいポリシーを作成します。
- リクエストメソッド: POST
- パス: /policies
- リクエストボディ:
{
    "name": "string",
    "type": "firewall" | "vpn" | "auth",
    "status": "active" | "inactive"
}
updatePolicy
- 説明: 既存のポリシーを更新します。
- リクエストメソッド: PUT
- パス: /policies/{policyId}
- リクエストボディ:
{
    "name": "string",
    "type": "firewall" | "vpn" | "auth",
    "status": "active" | "inactive"
}
deletePolicy
- 説明: ポリシーを削除します。
- リクエストメソッド: DELETE
- パス: /policies/{policyId}
監視と診断
getUsageStats
- 説明: 使用統計情報を取得します。
- リクエストメソッド: GET
- パス: /monitoring/usage
- パラメータ:
- timeRange: 時間範囲(例: "last_hour", "today")
 
- レスポンス:
{
    "status": "success",
    "data": {
        "stats": [
            {
                "timestamp": "string",
                "usage": integer,
                "peakUsage": integer
            }
        ]
    }
}
getLogs
- 説明: ログを取得します。
- リクエストメソッド: GET
- パス: /monitoring/logs
- パラメータ:
- level: ログレベル(例: "info", "warning", "error")
 
- レスポンス:
{
    "status": "success",
    "data": {
        "logs": [
            {
                "timestamp": "string",
                "level": "info" | "warning" | "error",
                "message": "string"
            }
        ],
        "pagination": {
            "page": integer,
            "pageSize": integer,
            "totalPages": integer,
            "totalItems": integer
        }
    }
}
アップグレードとメンテナンス
checkUpdates
- 説明: 利用可能な更新を確認します。
- リクエストメソッド: GET
- パス: /maintenance/updates
- レスポンス:
{
    "status": "success",
    "data": {
        "updates": [
            {
                "version": "string",
                "releaseDate": "string",
                "notes": "string"
            }
        ]
    }
}
applyUpdate
- 説明: 更新を適用します。
- リクエストメソッド: POST
- パス: /maintenance/updates/{updateVersion}
- レスポンス:
{
    "status": "success",
    "message": "string"
}
検証ツール
validateName
- 説明: 名前が有効かどうかを検証します。
- リクエストメソッド: POST
- パス: /validation/username
- リクエストボディ:
{
    "name": "string"
}
{
    "status": "success",
    "isValid": boolean
}
validateResource
- 説明: リソースが存在するかどうかを検証します。
- リクエストメソッド: GET
- パス: /validation/resource/{resourceId}
- レスポンス:
{
    "status": "success",
    "exists": boolean
}
検索ツール
searchUsers
- 説明: ユーザーを検索します。
- リクエストメソッド: GET
- パス: /search/users
- パラメータ:
- query: 検索キーワード(例: name、email)
 
- レスポンス:
{
    "status": "success",
    "results": [
        {
            "id": "string",
            "name": "string",
            "email": "string"
        }
    ],
    "pagination": {
        "page": integer,
        "pageSize": integer,
        "totalPages": integer,
        "totalItems": integer
    }
}
searchResources
- 説明: リソースを検索します。
- リクエストメソッド: GET
- パス: /search/resources
- パラメータ:
- query: 検索キーワード(例: name、type)
 
- レスポンス:
{
    "status": "success",
    "results": [
        {
            "id": "string",
            "name": "string",
            "type": "string"
        }
    ],
    "pagination": {
        "page": integer,
        "pageSize": integer,
        "totalPages": integer,
        "totalItems": integer
    }
}
サンプルリクエストとレスポンス
ポリシーリストの取得
リクエスト:
GET /policies HTTP/1.1
Content-Type: application/json
レスポンス:
{
    "status": "success",
    "data": {
        "policies": [
            {
                "id": "policy_001",
                "name": "Firewall Policy 1",
                "type": "firewall",
                "status": "active"
            },
            {
                "id": "policy_002",
                "name": "VPN Policy 2",
                "type": "vpn",
                "status": "inactive"
            }
        ],
        "pagination": {
            "page": 1,
            "pageSize": 10,
            "totalPages": 2,
            "totalItems": 15
        }
    }
}
更新の確認
リクエスト:
GET /maintenance/updates HTTP/1.1
Content-Type: application/json
レスポンス:
{
    "status": "success",
    "data": {
        "updates": [
            {
                "version": "2.5.0",
                "releaseDate": "2023-10-01",
                "notes": "New features and bug fixes"
            },
            {
                "version": "2.4.1",
                "releaseDate": "2023-09-15",
                "notes": "Security patches"
            }
        ]
    }
}
名前の検証
リクエスト:
POST /validation/username HTTP/1.1
Content-Type: application/json
{
    "name": "admin_user_123"
}
レスポンス:
{
    "status": "success",
    "isValid": true
}
ユーザーの検索
リクエスト:
GET /search/users?query=admin HTTP/1.1
Content-Type: application/json
レスポンス:
{
    "status": "success",
    "results": [
        {
            "id": "user_001",
            "name": "Admin User 1",
            "email": "admin@company.com"
        },
        {
            "id": "user_002",
            "name": "Admin User 2",
            "email": "admin2@company.com"
        }
    ],
    "pagination": {
        "page": 1,
        "pageSize": 10,
        "totalPages": 2,
        "totalItems": 15
    }
}
注意事項
⚠️ 重要提示
- 認証と承認: すべてのリクエストには有効な認証トークンが必要です。詳細は関連ドキュメントを参照してください。
- エラー処理: 返されるステータスコードが2xx以外の場合、レスポンスボディのerrorフィールドに基づいてエラーを処理してください。
- レート制限: 高頻度の呼び出しはレート制限をトリガーする可能性があります。リクエスト回数を適切に制御してください。
- ログと監視: 問題のトラブルシューティングとシステム状態の監視のために、詳細なログ記録を有効にすることをお勧めします。
各インターフェイスの具体的なパラメータと使用シナリオについては、完全なAPIドキュメントを参照するか、技術サポートにお問い合わせください。