APIトークンの詳細の取得

最終更新日: 11 年 2024 月 XNUMX 日

LogicMonitor REST API v3 を使用して API トークンの詳細を取得できます。 API リクエストを行う前に、自分自身を認証する必要があります。

ユーザー全体の API トークンのリストを取得する

次のクエリ パラメーターを含めて、応答に含めるデータの種類とその形式を管理できます。

注: クエリ パラメータはリソース パスの一部ではないため、LMv1 認証署名の計算に含めるべきではありません。

URI: 取得/setting/admins/apitokens

タイプ説明
type文字列API ベアラー トークンのリストを返します。値を入力しない場合は、 type パラメータを指定すると、デフォルトで LMv1 API トークンのリストが返されます。
例– /setting/admins/apitokens?type=bearer
permission文字列トレースの権限を持つユーザーのベアラー トークンのリストをフィルターします。 permission パラメータを指定すると、デフォルトですべてのベアラー トークンのリストが返されます。ただし、permission=traces を指定すると、トレースの権限を持つユーザーが生成したベアラー トークンのリストが返されます。
例– /setting/admins/apitokens?permission=traces&type=bearer
fields文字列応答はフィルター処理され、各オブジェクトの指定されたフィールドのみが含まれます。 プロパティのリストをカンマで区切って指定できます。 
例– /setting/admins/apitokens?fields=id,status,adminName
size整数表示する結果の数を示します。 GET 呼び出しでは最大 1000 件の結果を要求できます。このパラメータに値が指定されていない場合、デフォルトでは 50 個の API トークンのリストが返されます。
例– /setting/admins/apitokens?size=5
offset整数表示された結果をオフセットする結果の数を示します。 デフォルトでは、オフセットは 0 に設定されます。
例– /setting/admins/apitokens?offset=2
filter文字列応答は、演算子と指定された値に従ってフィルタリングされます。 filter=property:value
  • 複数の文字と一致するにはアスタリスク (*) を使用します
  • オブジェクト内の値をフィルターするには、ドット (.) 文字を使用します (例 – custom properties)
  • 複数のフィルターを区切るにはカンマ (,) を使用します。

演算子は次のとおりです。
  • 以上以上 >:
  • 以下 <:
  • 越える >
  • 以下 <
  • 等しいです :
  • 等しくない !:
  • 含まれています ~
  • 含まれていません !~
例– /setting/admins/apitokens?filter=status:2

次のPythonスクリプトは、アカウントapi.logicmonitor.com内のすべてのAPIトークンを取得します。

#!/bin/env python
 
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
 
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'apiAccount'  

#Request Info
httpVerb ='GET'
resourcePath = '/setting/admins/apitokens'
queryParams =''
data = ''
 
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath + queryParams
 
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
 
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
 
#Construct signature
digest = hmac.new(
        AccessKey.encode('utf-8'),
        msg=requestVars.encode('utf-8'),
        digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
 
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}  
  
# Make request
response = requests.get(url, data=data, headers=headers)
  
# Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)
Pythonの3

APIトークンのリストの取得

URI: 取得 /setting/admins/{adminId}/apitokens

クエリパラメータ: typepermissionfieldssizeoffsetfilter リクエストを GET するときにも含める必要があります /setting/admins/{adminId}/apitokens。このセクションの表を参照してください。 ユーザー全体の API トークンのリストを取得する クエリパラメータの詳細については、

追加パラメータ adminId に特有のもの /setting/admins/{adminId}/apitokens 次の表で説明します。

タイプ説明
adminId整数(必須の) API トークンを取得するユーザーの ID。

次の Python スクリプトは、アカウント api.logicmonitor.com の ID 131 を持つユーザーのすべての API トークンを取得します。

#!/bin/env python
 
import requests
import json
import hashlib
import base64
import time
import hmac
import getpass
 
#Account Info: LogicMonitor recommends to NEVER hardcode the credentials. Instead, retrieve the values from a secure storage.
#Note: The below is provided for illustration purposes only.
AccessId = getpass.getpass("Enter your AccessId: ")
AccessKey = getpass.getpass("Enter your AccessKey: ")
Company = 'apiAccount'  

#Request Info
httpVerb ='GET'
resourcePath = '/setting/admins/131/apitokens'
queryParams =''
data = ''
 
#Construct URL
url = 'https://'+ Company +'.logicmonitor.com/santaba/rest' + resourcePath + queryParams
 
#Get current time in milliseconds
epoch = str(int(time.time() * 1000))
 
#Concatenate Request details
requestVars = httpVerb + epoch + data + resourcePath
 
#Construct signature
digest = hmac.new(
        AccessKey.encode('utf-8'),
        msg=requestVars.encode('utf-8'),
        digestmod=hashlib.sha256).hexdigest()
signature = base64.b64encode(digest.encode('utf-8')).decode('utf-8')
 
#Construct headers
auth = 'LMv1 ' + AccessId + ':' + str(signature) + ':' + epoch
headers = {'Content-Type':'application/json','Authorization':auth,'X-Version':'3'}
  
# Make request
response = requests.get(url, data=data, headers=headers)
  
# Print status and body of response
print('Response Status:',response.status_code)
print('Response Body:',response.content)
Pythonの3
記事上で