APIs เจฆเฉ เจจเจพเจฒ เจชเจฐเจธเจชเจฐ เจชเฉเจฐเจญเจพเจต เจฆเฉ เจชเฉเจฐเฉ เจธเจผเจเจคเฉ เจเจฆเฉเจ เจชเฉเจฐเจเจ เจนเฉเฉฐเจฆเฉ เจนเฉ เจเจฆเฉเจ เจชเฉเจฐเฉเจเจฐเจพเจฎ เจเฉเจก เจฆเฉ เจจเจพเจฒ เจเฉฑเจเจ เฉ เจตเจฐเจคเจฟเจ เจเจพเจเจฆเจพ เจนเฉ, เจเจฆเฉเจ API เจเจตเจพเจฌเจพเจ เจฆเจพ เจตเจฟเจธเจผเจฒเฉเจธเจผเจฃ เจเจฐเจจ เจฒเจ เจเจคเฉเจธเจผเฉเจฒ เจคเฉเจฐ 'เจคเฉ API เจฌเฉเจจเจคเฉเจเจ เจ
เจคเฉ เจเฉเจฒ เจคเจฟเจเจฐ เจเจฐเจจเจพ เจธเฉฐเจญเจต เจนเฉ เจเจพเจเจฆเจพ เจนเฉเฅค เจนเจพเจฒเจพเจเจเจฟ, เจเจน เจ
เจเฉ เจตเฉ เจงเจฟเจเจจ เจคเฉเจ เจฌเจพเจนเจฐ เจนเฉ เจชเจพเจเจฅเจจ เจธเจพเจซเจเจตเฉเจ
เจฐ เจกเจฟเจตเฉเจฒเจชเจฎเฉเจเจ เจเจฟเฉฑเจ (เจเจธ เจคเฉเจ เจฌเจพเจ
เจฆ เจชเจพเจเจฅเจจ SDK เจตเจเฉเจ เจเจพเจฃเจฟเจ เจเจพเจเจฆเจพ เจนเฉ) เจฒเจ เจชเฉเจเจเฉฐเจ เจชเฉเจฐเจฌเฉฐเจงเจจ API เจฆเฉ เจเจพเจเจ เจเจฐเฉ, เจชเจฐ เจตเจฟเจ
เจฐเจฅ เจตเจฟเฉฑเจ. เจเจน เจกเจฟเจตเฉเจฒเจชเจฐเจพเจ เจ
เจคเฉ เจเจเฉเจฎเฉเจธเจผเจจ เจฆเฉ เจเจคเจธเจผเจพเจนเฉเจเจ เจฆเฉ เจเฉเจตเจจ เจจเฉเฉฐ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจคเฉเจฐ 'เจคเฉ เจธเจฐเจฒ เจฌเจฃเจพเจเจเจฆเจพ เจนเฉเฅค เจชเจพเจเจฅเจจ เจจเฉ เจนเจพเจฒ เจนเฉ เจตเจฟเฉฑเจ เจฌเจนเฉเจค เจชเฉเจฐเจธเจฟเฉฑเจงเฉ เจชเฉเจฐเจพเจชเจค เจเฉเจคเฉ เจนเฉ เจ
เจคเฉ เจฎเฉเจ เจเจธ เจชเจพเฉเฉ เจจเฉเฉฐ เจญเจฐเจจ เจ
เจคเฉ เจฎเฉเฉฑเจ เจตเจฟเจธเจผเฉเจธเจผเจคเจพเจตเจพเจ เจฆเฉ เจธเจฎเฉเจเจฟเจ เจเจฐเจจ เจฆเจพ เจซเฉเจธเจฒเจพ เจเฉเจคเจพ เจนเฉเฅค . เจเจน เจฒเฉเจ เจนเฉเจฌเจฐเฉ 'เจคเฉ เจเจ เจนเฉเจฐ เจฒเฉเจ เจตเจฟเจ เจเจ เจธเจผเจพเจจเจฆเจพเจฐ เจเฉเฉ เจตเจเฉเจ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉ . เจ
เจธเฉเจ เจฆเฉเจเจพเจเจเฉ เจเจฟ เจชเจพเจเจฅเจจ SDK เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจธเจเฉเจฐเจฟเจชเจเจพเจ เจเจฟเจตเฉเจ เจฒเจฟเจเจฃเฉเจเจ เจนเจจ เจ
เจคเฉ เจธเฉฐเจธเจเจฐเจฃ 1.6 (R80.40 เจคเฉเจ เจธเจฎเจฐเจฅเจฟเจค) เจตเจฟเฉฑเจ เจจเจตเฉเจ เจชเฉเจฐเจฌเฉฐเจงเจจ API เจเจพเจฐเจเจเฉเจธเจผเจฒเจคเจพ 'เจคเฉ เจเฉฑเจ เจกเฉเฉฐเจเฉ เจจเจเจผเจฐ เจฎเจพเจฐเจพเจเจเฉเฅค เจฒเฉเจ เจจเฉเฉฐ เจธเจฎเจเจฃ เจฒเจ, เจคเฉเจนเจพเจจเฉเฉฐ APIs เจ
เจคเฉ Python เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฆเฉ เจฌเฉเจจเจฟเจเจฆเฉ เจเจฟเจเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเจตเฉเจเฉเฅค
เจเฉเฉฑเจ เจชเฉเจเจเฉฐเจ เจธเจฐเจเจฐเจฎเฉ เจจเจพเจฒ API เจจเฉเฉฐ เจตเจฟเจเจธเจค เจเจฐ เจฐเจฟเจนเจพ เจนเฉ เจ
เจคเฉ เจเจธ เจธเจฎเฉเจ เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจเจพเจฐเฉ เจเฉเจคเฉ เจเจ เจนเจจ:
- โ API เจฆเฉเจเจฐเจพ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจธเจฐเจตเจฐ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเฉ (เจ เจคเฉ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจธเจฐเจตเจฐ เจฆเฉเจเจฐเจพ เจจเจฟเจฏเฉฐเจคเจฐเจฟเจค เจเฉเจเจตเฉเจเจผ เจคเฉ เจธเจเฉเจฐเจฟเจชเจเจพเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฆเฉ เจฏเฉเจเจคเจพ)
- - เจธเฉเจฐเฉฑเจเจฟเจ เจเฉเจเจตเฉ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเฉ
- - เจเฉเฉฑเจ เจชเฉเจเจเฉฐเจ เจเจฒเจพเจเจก เจตเจฟเฉฑเจ เจเฉฑเจ เจธเฉเจเจกเจฌเฉเจเจธ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจเจพ
- - เจเฉเจเจตเฉ 'เจคเฉ เจชเจเจพเจฃ เจเจพเจเจฐเฉเจเจคเจพ เจฌเจฒเฉเจก เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจเจพ
- - SMB เจเฉเจเจตเฉ เจชเฉเจฐเจฌเฉฐเจงเจจ เจชเฉเจฐเจเจฒ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเฉ ()
- - IoT เจเฉฐเจเจฐเฉเจฒเจฐเจพเจ เจจเจพเจฒ เจเฉฑเจฒเจฌเจพเจค
- - เจจเจพเจฒ เจเฉฐเจฎ (SD-WAN เจธเฉเจฐเฉฑเจเจฟเจ เจนเฉฑเจฒ)
- - เจจเจพเจฒ เจเฉฐเจฎ
เจชเจพเจเจฅเจจ SDK เจตเจฐเจคเจฎเจพเจจ เจตเจฟเฉฑเจ เจธเจฟเจฐเจซ เจชเฉเจฐเจฌเฉฐเจงเจจ API เจ เจคเฉ เจจเจพเจฒ เจเฉฑเจฒเจฌเจพเจค เจฆเจพ เจธเจฎเจฐเจฅเจจ เจเจฐเจฆเจพ เจนเฉ Gaia API. เจ เจธเฉเจ เจเจธ เจฎเฉเจกเฉเจเจฒ เจตเจฟเฉฑเจ เจธเจญ เจคเฉเจ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจเจฒเจพเจธเจพเจ, เจตเจฟเจงเฉเจเจ เจ เจคเฉ เจตเฉเจฐเฉเจเจฌเจฒเจพเจ เจจเฉเฉฐ เจฆเฉเจเจพเจเจเฉเฅค

เจฎเฉเจกเฉเจเจฒ เจจเฉเฉฐ เจเฉฐเจธเจเจพเจฒ เจเจฐเจจเจพ
เจฎเฉเจกเฉuleเจฒ cpapi เจคเฉเจ เจคเฉเจเจผเฉ เจจเจพเจฒ เจ เจคเฉ เจเจธเจพเจจเฉ เจจเจพเจฒ เจธเจฅเจพเจชเจฟเจค เจเจฐเจฆเจพ เจนเฉ เจฆเฉ เจธเจนเจพเจเจคเจพ เจจเจพเจฒ PIP. เจตเจฟเจธเจคเฉเจฐเจฟเจค เจเฉฐเจธเจเจพเจฒเฉเจธเจผเจจ เจจเจฟเจฐเจฆเฉเจธเจผ เจตเจฟเฉฑเจ เจเจชเจฒเจฌเจง เจนเจจ . เจเจน เจฎเฉเจกเฉเจเจฒ เจชเจพเจเจฅเจจ เจธเฉฐเจธเจเจฐเจฃ 2.7 เจ เจคเฉ 3.7 เจฆเฉ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฒเจ เจ เจจเฉเจเฉเจฒเจฟเจค เจนเฉเฅค เจเจธ เจฒเฉเจ เจตเจฟเฉฑเจ, เจชเจพเจเจฅเจจ 3.7 เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเจฆเจพเจนเจฐเจจเจพเจ เจฆเจฟเฉฑเจคเฉเจเจ เจเจพเจฃเจเฉเจเจเฅค เจนเจพเจฒเจพเจเจเจฟ, เจชเจพเจเจฅเจจ SDK เจจเฉเฉฐ เจเฉเฉฑเจ เจชเฉเจเจเฉฐเจ เจฎเฉเจจเฉเจเจฎเฉเจเจ เจธเจฐเจตเจฐ (เจธเจฎเจพเจฐเจ เจฎเฉเจจเฉเจเจฎเฉเจเจ) เจคเฉเจ เจธเจฟเฉฑเจงเจพ เจเจฒเจพเจเจ เจเจพ เจธเจเจฆเจพ เจนเฉ, เจชเจฐ เจเจน เจธเจฟเจฐเจซ เจชเจพเจเจฅเจจ 2.7 เจฆเจพ เจธเจฎเจฐเจฅเจจ เจเจฐเจฆเฉ เจนเจจ, เจเจธเจฒเจ เจเจเจฐเฉ เจญเจพเจ เจธเฉฐเจธเจเจฐเจฃ 2.7 เจฒเจ เจเฉเจก เจชเฉเจฐเจฆเจพเจจ เจเจฐเฉเจเจพเฅค เจฎเฉเจกเฉเจเจฒ เจจเฉเฉฐ เจธเจฅเจพเจชเจฟเจค เจเจฐเจจ เจคเฉเจ เจคเฉเจฐเฉฐเจค เจฌเจพเจ เจฆ, เจฎเฉเจ เจกเจพเจเจฐเฉเจเจเจฐเฉเจเจ เจตเจฟเฉฑเจ เจเจฆเจพเจนเจฐเจฃเจพเจ เจจเฉเฉฐ เจฆเฉเจเจฃ เจฆเฉ เจธเจฟเจซเจพเจฐเจธเจผ เจเจฐเจฆเจพ เจนเจพเจ example_python2 ะธ example_python3.
เจธเจผเฉเจฐเฉเจเจค
เจธเจพเจกเฉ เจฒเจ cpapi เจฎเฉเจกเฉเจเจฒ เจฆเฉ เจญเจพเจเจพเจ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฆเฉ เจฏเฉเจ เจนเฉเจฃ เจฒเจ, เจธเจพเจจเฉเฉฐ เจฎเฉเจกเฉเจเจฒ เจคเฉเจ เจเจฏเจพเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ cpapi เจเฉฑเจเฉ-เจเฉฑเจ เจฆเฉ เจฒเฉเฉเฉเจเจฆเฉเจเจ เจเจฒเจพเจธเจพเจ:
APIClient ะธ APIClientArgs
from cpapi import APIClient, APIClientArgs
ะะปะฐัั APIClientArgs API เจธเจฐเจตเจฐ, เจ เจคเฉ เจเจฒเจพเจธ เจจเจพเจฒ เจเฉเจจเฉเจเจธเจผเจจ เจชเฉเจฐเจพเจฎเฉเจเจฐเจพเจ เจฒเจ เจเจผเจฟเฉฐเจฎเฉเจตเจพเจฐ เจนเฉ APIClient API เจจเจพเจฒ เจเฉฑเจฒเจฌเจพเจค เจฒเจ เจเจผเจฟเฉฐเจฎเฉเจตเจพเจฐ เจนเฉเฅค
เจเฉเจจเฉเจเจธเจผเจจ เจฎเจพเจชเจฆเฉฐเจก เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจเจพ
API เจจเจพเจฒ เจเฉเฉเจจ เจฒเจ เจตเฉฑเจ-เจตเฉฑเจ เจฎเจพเจชเจฆเฉฐเจกเจพเจ เจจเฉเฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเจฐเจจ เจฒเจ, เจคเฉเจนเจพเจจเฉเฉฐ เจเจฒเจพเจธ เจฆเฉ เจเฉฑเจ เจเจฆเจพเจนเจฐเจฃ เจฌเจฃเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ APIClientArgs. เจธเจฟเจงเจพเจเจค เจตเจฟเฉฑเจ, เจเจธเจฆเฉ เจฎเจพเจชเจฆเฉฐเจก เจชเจนเจฟเจฒเจพเจ เจคเฉเจ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจนเฉเฉฐเจฆเฉ เจนเจจ เจ เจคเฉ เจเจฆเฉเจ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจธเจฐเจตเจฐ เจคเฉ เจธเจเฉเจฐเจฟเจชเจ เจเจฒเจพเจเจเจฆเฉ เจนเจจ, เจคเจพเจ เจเจนเจจเจพเจ เจจเฉเฉฐ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉเฉฐเจฆเฉ เจนเฉ.
client_args = APIClientArgs()เจชเจฐ เจเจฆเฉเจ เจเจฟเจธเฉ เจคเฉเจเฉ-เจงเจฟเจฐ เจนเฉเจธเจ 'เจคเฉ เจเฉฑเจฒเจฆเฉ เจนเฉ, เจคเจพเจ เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฑเจเฉ-เจเฉฑเจ IP เจเจกเจฐเฉเฉฑเจธ เจเจพเจ API เจธเจฐเจตเจฐ เจฆเจพ เจนเฉเจธเจ เจจเจพเจฎ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ (เจเจฟเจธ เจจเฉเฉฐ เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ เจตเฉ เจเจฟเจนเจพ เจเจพเจเจฆเจพ เจนเฉ)เฅค เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉ เจเจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจ, เจ เจธเฉเจ เจธเจฐเจตเจฐ เจเจจเฉเจเจธเจผเจจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจจเฉเฉฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเจฐเจฆเฉ เจนเจพเจ เจ เจคเฉ เจเจธเจจเฉเฉฐ เจเฉฑเจ เจธเจคเจฐ เจตเจเฉเจ เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ เจฆเจพ IP เจชเจคเจพ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเจฆเฉ เจนเจพเจเฅค
client_args = APIClientArgs(server='192.168.47.241')เจเจ เจธเจพเจฐเฉ เจชเฉเจฐเจพเจฎเฉเจเจฐเจพเจ เจ เจคเฉ เจเจนเจจเจพเจ เจฆเฉ เจกเจฟเจซเฉเจฒเจ เจฎเฉเฉฑเจฒเจพเจ เจจเฉเฉฐ เจตเฉเจเฉเจ เจเฉ API เจธเจฐเจตเจฐ เจจเจพเจฒ เจเฉเฉเจจ เจตเฉเจฒเฉ เจตเจฐเจคเฉ เจเจพ เจธเจเจฆเฉ เจนเจจ:
APIClientArgs เจเจฒเจพเจธ เจฆเฉ __init__ เจตเจฟเจงเฉ เจฆเฉ เจเจฐเจเฉเจฎเฉเจเจเจธ
class APIClientArgs:
"""
This class provides arguments for APIClient configuration.
All the arguments are configured with their default values.
"""
# port is set to None by default, but it gets replaced with 443 if not specified
# context possible values - web_api (default) or gaia_api
def __init__(self, port=None, fingerprint=None, sid=None, server="127.0.0.1", http_debug_level=0,
api_calls=None, debug_file="", proxy_host=None, proxy_port=8080,
api_version=None, unsafe=False, unsafe_auto_accept=False, context="web_api"):
self.port = port
# management server fingerprint
self.fingerprint = fingerprint
# session-id.
self.sid = sid
# management server name or IP-address
self.server = server
# debug level
self.http_debug_level = http_debug_level
# an array with all the api calls (for debug purposes)
self.api_calls = api_calls if api_calls else []
# name of debug file. If left empty, debug data will not be saved to disk.
self.debug_file = debug_file
# HTTP proxy server address (without "http://")
self.proxy_host = proxy_host
# HTTP proxy port
self.proxy_port = proxy_port
# Management server's API version
self.api_version = api_version
# Indicates that the client should not check the server's certificate
self.unsafe = unsafe
# Indicates that the client should automatically accept and save the server's certificate
self.unsafe_auto_accept = unsafe_auto_accept
# The context of using the client - defaults to web_api
self.context = contextเจฎเฉเจฐเจพ เจฎเฉฐเจจเจฃเจพ เจนเฉ เจเจฟ APIClientArgs เจเจฒเจพเจธ เจฆเฉเจเจ เจเจฆเจพเจนเจฐเจฃเจพเจ เจตเจฟเฉฑเจ เจตเจฐเจคเฉ เจเจพ เจธเจเจฃ เจตเจพเจฒเฉ เจเจฐเจเฉเจฎเฉเจเจ เจเฉเจ เจชเฉเจเจเฉฐเจ เจชเฉเจฐเจธเจผเจพเจธเจเจพเจ เจฒเจ เจ เจจเฉเจญเจตเฉ เจนเจจ เจ เจคเฉ เจตเจพเจงเฉ เจเจฟเฉฑเจชเจฃเฉเจเจ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉเฅค
APIClient เจ เจคเฉ เจธเฉฐเจฆเจฐเจญ เจชเฉเจฐเจฌเฉฐเจงเจ เจฐเจพเจนเฉเจ เจเฉเฉ เจฐเจฟเจนเจพ เจนเฉ
ะะปะฐัั APIClient เจเจธเจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเจพ เจธเจญ เจคเฉเจ เจธเฉเจตเจฟเจงเจพเจเจจเจ เจคเจฐเฉเจเจพ เจธเฉฐเจฆเจฐเจญ เจชเฉเจฐเจฌเฉฐเจงเจ เจฆเฉเจเจฐเจพ เจนเฉเฅค APIClient เจเจฒเจพเจธ เจฆเฉ เจเฉฑเจ เจเจฆเจพเจนเจฐเจฃ เจจเฉเฉฐ เจชเจพเจธ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ เจเจน เจเฉเจจเฉเจเจธเจผเจจ เจฎเจพเจชเจฆเฉฐเจก เจเฉ เจชเจฟเจเจฒเฉ เจชเฉเจพเจ เจตเจฟเฉฑเจ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเฉเจคเฉ เจเจ เจธเจจเฅค
with APIClient(client_args) as client:
เจธเฉฐเจฆเจฐเจญ เจชเฉเจฐเจฌเฉฐเจงเจ API เจธเจฐเจตเจฐ เจจเฉเฉฐ เจเจเฉเจฎเฉเจเจฟเจเจฒเฉ เจเฉฑเจ เจฒเฉเจเจเจจ เจเจพเจฒ เจจเจนเฉเจ เจเจฐเฉเจเจพ, เจชเจฐ เจเจธ เจคเฉเจ เจฌเจพเจนเจฐ เจจเจฟเจเจฒเจฃ เจตเฉเจฒเฉ เจเจน เจเฉฑเจ เจฒเฉเจเจเจเจ เจเจพเจฒ เจเจฐเฉเจเจพเฅค เจเฉเจเจฐ เจเจฟเจธเฉ เจเจพเจฐเจจ เจเจฐเจเฉ API เจเจพเจฒเจพเจ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจคเฉเจ เจฌเจพเจ เจฆ เจฒเฉเจเจเจเจ เจฆเฉ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉ, เจคเจพเจ เจคเฉเจนเจพเจจเฉเฉฐ เจธเฉฐเจฆเจฐเจญ เจชเฉเจฐเจฌเฉฐเจงเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเฉเจคเฉ เจฌเจฟเจจเจพเจ เจเฉฐเจฎ เจเจฐเจจเจพ เจธเจผเฉเจฐเฉ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ:
client = APIClient(clieng_args)เจเฉเจจเฉเจเจธเจผเจจ เจเฉเจธเจ
เจเจน เจชเจคเจพ เจฒเจเจพเจเจฃ เจฆเจพ เจธเจญ เจคเฉเจ เจเจธเจพเจจ เจคเจฐเฉเจเจพ เจนเฉ เจเจฟ เจเฉ เจเจจเฉเจเจธเจผเจจ เจจเจฟเจฐเจงเจพเจฐเจค เจฎเจพเจชเจฆเฉฐเจกเจพเจ เจจเฉเฉฐ เจชเฉเจฐเจพ เจเจฐเจฆเจพ เจนเฉ เจเจพเจ เจจเจนเฉเจ เจตเจฟเจงเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐ เจฐเจฟเจนเจพ เจนเฉ เจเฉเฉฑเจ_เจซเจฟเฉฐเจเจฐเจชเฉเจฐเจฟเฉฐเจ. เจเฉเจเจฐ เจธเจฐเจตเจฐ API เจธเจฐเจเฉเจซเจฟเจเฉเจ เจฆเฉ เจซเจฟเฉฐเจเจฐเจชเฉเจฐเจฟเฉฐเจ เจฒเจ sha1 เจนเฉเจธเจผ เจฐเจเจฎ เจฆเฉ เจคเจธเจฆเฉเจ เจ เจธเจซเจฒ เจนเฉ เจเจพเจเจฆเฉ เจนเฉ (เจตเจฟเจงเฉ เจตเจพเจชเจธ เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเฉ เจเฉเจ เฉ), เจคเจพเจ เจเจน เจเจฎ เจคเฉเจฐ 'เจคเฉ เจเจจเฉเจเจธเจผเจจ เจธเจฎเฉฑเจธเจฟเจเจตเจพเจ เจฆเฉ เจเจพเจฐเจจ เจนเฉเฉฐเจฆเจพ เจนเฉ เจ เจคเฉ เจ เจธเฉเจ เจชเฉเจฐเฉเจเจฐเจพเจฎ เจฆเฉ เจเจเจเจผเฉเจเจฟเจเจธเจผเจจ เจจเฉเฉฐ เจฐเฉเจ เจธเจเจฆเฉ เจนเจพเจ (เจเจพเจ เจเจชเจญเฉเจเจคเจพ เจจเฉเฉฐ เจเฉเจจเฉเจเจธเจผเจจ เจกเฉเจเจพ เจจเฉเฉฐ เจ เฉเจ เจเจฐเจจ เจฆเจพ เจฎเฉเจเจพ เจฆเฉ เจธเจเจฆเฉ เจนเจพเจ):
if client.check_fingerprint() is False:
print("Could not get the server's fingerprint - Check connectivity with the server.")
exit(1)
เจเจฟเจฐเจชเจพ เจเจฐเจเฉ เจงเจฟเจเจจ เจฆเจฟเจ เจเจฟ เจญเจตเจฟเฉฑเจ เจตเจฟเฉฑเจ เจเจฒเจพเจธ APIClient เจนเจฐเฉเจ API เจเจพเจฒ เจฆเฉ เจเจพเจเจ เจเจฐเฉเจเจพ (เจคเจฐเฉเจเจฟเจเจ api_เจเจพเจฒ ะธ api_query, เจ เจธเฉเจ เจเจนเจจเจพเจ เจฌเจพเจฐเฉ เจฅเฉเฉเจพ เจนเฉเจฐ เจ เฉฑเจเฉ เจเฉฑเจฒ เจเจฐเจพเจเจเฉ) API เจธเจฐเจตเจฐ 'เจคเฉ sha1 เจซเจฟเฉฐเจเจฐเจชเฉเจฐเจฟเฉฐเจ เจธเจฐเจเฉเจซเจฟเจเฉเจ. เจชเจฐ เจเฉเจเจฐ, API เจธเจฐเจตเจฐ เจธเจฐเจเฉเจซเจฟเจเฉเจ เจฆเฉ sha1 เจซเจฟเฉฐเจเจฐเจชเฉเจฐเจฟเฉฐเจ เจฆเฉ เจเจพเจเจ เจเจฐเจฆเฉ เจธเจฎเฉเจ, เจเฉฑเจ เจเจฒเจคเฉ เจฆเจพ เจชเจคเจพ เจฒเจเจพเจเจ เจเจพเจเจฆเจพ เจนเฉ (เจธเจฐเจเฉเจซเจฟเจเฉเจ เจ เจฃเจเจพเจฃ เจนเฉ เจเจพเจ เจฌเจฆเจฒเจฟเจ เจเจฟเจ เจนเฉ), เจตเจฟเจงเฉ เจเฉเฉฑเจ_เจซเจฟเฉฐเจเจฐเจชเฉเจฐเจฟเฉฐเจ เจธเจฅเจพเจจเจ เจฎเจธเจผเฉเจจ 'เจคเฉ เจเจชเจฃเฉ เจเจช เจเจธ เจฌเจพเจฐเฉ เจเจพเจฃเจเจพเจฐเฉ เจเฉเฉเจจ/เจฌเจฆเจฒเจฃ เจฆเจพ เจฎเฉเจเจพ เจชเฉเจฐเจฆเจพเจจ เจเจฐเฉเจเจพเฅค เจเจธ เจเจพเจเจ เจจเฉเฉฐ เจชเฉเจฐเฉ เจคเจฐเฉเจนเจพเจ เจ เจฏเฉเจ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ (เจชเจฐ เจเจธเจฆเฉ เจธเจฟเจซเจผเจพเจฐเจธเจผ เจธเจฟเจฐเจซเจผ เจคเจพเจ เจนเฉ เจเฉเจคเฉ เจเจพ เจธเจเจฆเฉ เจนเฉ เจเฉเจเจฐ 127.0.0.1 เจจเจพเจฒ เจเจจเฉเจเจ เจเจฐเจจ เจตเฉเจฒเฉ, API เจธเจฐเจตเจฐ เจเฉฑเจคเฉ เจธเจเฉเจฐเจฟเจชเจเจพเจ เจเจฒเจพเจเจเจ เจเจพเจเจฆเฉเจเจ เจนเจจ), APIClientArgs เจเจฐเจเฉเจฎเฉเจเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ - เจ เจธเฉเจฐเฉฑเจเจฟเจ เจค_เจเจเฉ_เจธเจตเฉเจเจพเจฐ ("เจเฉเจจเฉเจเจธเจผเจจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค" เจตเจฟเฉฑเจ APIClientArgs เจฌเจพเจฐเฉ เจนเฉเจฐ เจฆเฉเจเฉ)เฅค
client_args = APIClientArgs(unsafe_auto_accept=True)API เจธเจฐเจตเจฐ เจคเฉ เจฒเฉเจเจเจจ เจเจฐเฉ
ะฃ APIClient API เจธเจฐเจตเจฐ เจตเจฟเฉฑเจ เจฒเฉเจเจเจจ เจเจฐเจจ เจฒเจ 3 เจคเจฐเฉเจเฉ เจนเจจ, เจ เจคเฉ เจเจนเจจเจพเจ เจตเจฟเฉฑเจเฉเจ เจนเจฐ เจเฉฑเจ เจฆเจพ เจฎเจคเจฒเจฌ เจธเจฎเจเจฆเจพ เจนเฉ sid(เจธเจผเฉเจธเจผเจจ-เจเจเจกเฉ), เจเฉ เจเจฟ เจธเจฟเจฐเจฒเฉเจ เจตเจฟเฉฑเจ เจนเจฐเฉเจ เจ เจเจฒเฉ API เจเจพเจฒ เจตเจฟเฉฑเจ เจเจชเจฃเฉ เจเจช เจตเจฐเจคเจฟเจ เจเจพเจเจฆเจพ เจนเฉ (เจเจธ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจฆเฉ เจธเจฟเจฐเจฒเฉเจ เจตเจฟเฉฑเจ เจจเจพเจฎ เจนเฉ X-chkp-sid), เจเจธ เจฒเจ เจเจธ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจจเฉเฉฐ เจ เฉฑเจเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจจ เจฆเฉ เจเฉเจ เจฒเฉเฉ เจจเจนเฉเจ เจนเฉเฅค
เจฒเจพเจเจเจจ เจขเฉฐเจ
เจฒเฉเจเจเจจ เจ เจคเฉ เจชเจพเจธเจตเจฐเจก เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเจพ เจตเจฟเจเจฒเจช (เจเจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจ, เจฏเฉเจเจผเจฐเจจเฉเจฎ เจเจกเจฎเจฟเจจ เจ เจคเฉ เจชเจพเจธเจตเจฐเจก 1q2w3e เจธเจฅเจฟเจคเฉ เจธเฉฐเจฌเฉฐเจงเฉ เจเจฐเจเฉเจฎเฉเจเจเจพเจ เจตเจเฉเจ เจชเจพเจธ เจเฉเจคเฉ เจเจ เจนเจจ):
login = client.login('admin', '1q2w3e') เจฒเฉเจเจเจจ เจตเจฟเจงเฉ เจตเจฟเฉฑเจ เจตเจพเจงเฉ เจตเจฟเจเจฒเจชเจฟเจ เจฎเจพเจชเจฆเฉฐเจก เจตเฉ เจเจชเจฒเจฌเจง เจนเจจ; เจเฉฑเจฅเฉ เจเจนเจจเจพเจ เจฆเฉ เจจเจพเจฎ เจ เจคเฉ เจฎเฉเจฒ เจฎเฉเฉฑเจฒ เจนเจจ:
continue_last_session=False, domain=None, read_only=False, payload=Noneเจฒเฉเจเจเจจ_เจตเจฟเจฆ_เจเจชเฉเจเจ_เจเฉ เจตเจฟเจงเฉ
เจเจชเฉเจเจ เจเฉเฉฐเจเฉ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจ เจฆเจพ เจตเจฟเจเจฒเจช (เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเฉฐเจธเจเจฐเจฃ R80.40/เจชเฉเจฐเจฌเฉฐเจงเจจ API v1.6 เจคเฉเจ เจธเจผเฉเจฐเฉ เจเจฐเจเฉ เจธเจฎเจฐเจฅเจฟเจค, "3TsbPJ8ZKjaJGvFyoFqHFA==" เจเจน API เจเฉเฉฐเจเฉ เจชเฉเจฐเจฎเจพเจฃเฉเจเจฐเจจ เจตเจฟเจงเฉ เจจเจพเจฒ เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ 'เจคเฉ เจเจชเจญเฉเจเจคเจพเจตเจพเจ เจตเจฟเฉฑเจเฉเจ เจเฉฑเจ เจฒเจ API เจเฉเฉฐเจเฉ เจฎเฉเฉฑเจฒ เจนเฉ):
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==') เจตเจฟเจงเฉ เจตเจฟเฉฑเจ login_with_api_key เจเจนเฉ เจตเจฟเจเจฒเจชเจฟเจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจเจชเจฒเจฌเจง เจนเจจ เจเจฟเจตเฉเจ เจเจฟ เจตเจฟเจงเฉ เจตเจฟเฉฑเจ เจฒเจพเจเจฟเจจ.
login_as_root เจตเจฟเจงเฉ
เจเฉฑเจ API เจธเจฐเจตเจฐ เจจเจพเจฒ เจเฉฑเจ เจธเจฅเจพเจจเจ เจฎเจธเจผเฉเจจ เจตเจฟเฉฑเจ เจฒเฉเจเจเจจ เจเจฐเจจ เจฆเจพ เจตเจฟเจเจฒเจช:
login = client.login_as_root()เจเจธ เจตเจฟเจงเฉ เจฒเจ เจธเจฟเจฐเจซเจผ เจฆเฉ เจตเจฟเจเจฒเจชเจฟเจ เจฎเจพเจชเจฆเฉฐเจก เจเจชเจฒเจฌเจง เจนเจจ:
domain=None, payload=Noneเจ เจคเฉ เจ เฉฐเจค เจตเจฟเฉฑเจ API เจเจชเจฃเฉ เจเจช เจจเฉเฉฐ เจเจพเจฒ เจเจฐเจฆเจพ เจนเฉ
เจธเจพเจกเฉ เจเฉเจฒ เจคเจฐเฉเจเจฟเจเจ เจฐเจพเจนเฉเจ API เจเจพเจฒเจพเจ เจเจฐเจจ เจฒเจ เจฆเฉ เจตเจฟเจเจฒเจช เจนเจจ api_เจเจพเจฒ ะธ api_query. เจเจ เจเจน เจชเจคเจพ เจเจฐเฉเจ เจเจฟ เจเจนเจจเจพเจ เจตเจฟเฉฑเจ เจเฉ เจ เฉฐเจคเจฐ เจนเฉ.
api_เจเจพเจฒ
เจเจน เจตเจฟเจงเฉ เจเจฟเจธเฉ เจตเฉ เจเจพเจฒ เจฒเจ เจฒเจพเจเฉ เจนเฉเฉฐเจฆเฉ เจนเฉเฅค เจเฉเจเจฐ เจฒเฉเฉ เจนเฉเจตเฉ เจคเจพเจ เจธเจพเจจเฉเฉฐ เจเจชเฉเจเจ เจเจพเจฒ เจ เจคเฉ เจชเฉเจฒเฉเจก เจฒเจ เจเจเจฐเฉ เจญเจพเจ เจจเฉเฉฐ เจฌเฉเจจเจคเฉ เจฆเฉ เจญเจพเจ เจตเจฟเฉฑเจ เจชเจพเจธ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเฅค เจเฉเจเจฐ เจชเฉเจฒเฉเจก เจเจพเจฒเฉ เจนเฉ, เจคเจพเจ เจเจธเจจเฉเฉฐ เจฌเจฟเจฒเจเฉเจฒ เจชเฉเจฐเจธเจพเจฐเจฟเจค เจจเจนเฉเจ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ:
api_versions = client.api_call('show-api-versions') เจเฉฑเจ เจฆเฉ เจนเฉเจ เจพเจ เจเจธ เจฌเฉเจจเจคเฉ เจฒเจ เจเจเจเจชเฉเฉฑเจ:
In [23]: api_versions
Out[23]:
APIResponse({
"data": {
"current-version": "1.6",
"supported-versions": [
"1",
"1.1",
"1.2",
"1.3",
"1.4",
"1.5",
"1.6"
]
},
"res_obj": {
"data": {
"current-version": "1.6",
"supported-versions": [
"1",
"1.1",
"1.2",
"1.3",
"1.4",
"1.5",
"1.6"
]
},
"status_code": 200
},
"status_code": 200,
"success": true
})
show_host = client.api_call('show-host', {'name' : 'h_8.8.8.8'})เจเฉฑเจ เจฆเฉ เจนเฉเจ เจพเจ เจเจธ เจฌเฉเจจเจคเฉ เจฒเจ เจเจเจเจชเฉเฉฑเจ:
In [25]: show_host
Out[25]:
APIResponse({
"data": {
"color": "black",
"comments": "",
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"groups": [],
"icon": "Objects/host",
"interfaces": [],
"ipv4-address": "8.8.8.8",
"meta-info": {
"creation-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"creator": "admin",
"last-modifier": "admin",
"last-modify-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"lock": "unlocked",
"validation-state": "ok"
},
"name": "h_8.8.8.8",
"nat-settings": {
"auto-rule": false
},
"read-only": false,
"tags": [],
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
},
"res_obj": {
"data": {
"color": "black",
"comments": "",
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"groups": [],
"icon": "Objects/host",
"interfaces": [],
"ipv4-address": "8.8.8.8",
"meta-info": {
"creation-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"creator": "admin",
"last-modifier": "admin",
"last-modify-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"lock": "unlocked",
"validation-state": "ok"
},
"name": "h_8.8.8.8",
"nat-settings": {
"auto-rule": false
},
"read-only": false,
"tags": [],
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
},
"status_code": 200
},
"status_code": 200,
"success": true
})
api_query
เจฎเฉเจจเฉเฉฐ เจคเฉเจฐเฉฐเจค เจเฉฑเจ เจฐเจฟเจเจผเจฐเจตเฉเจธเจผเจจ เจเจฐเจจ เจฆเจฟเจ เจเจฟ เจเจน เจตเจฟเจงเฉ เจธเจฟเจฐเจซ เจเจนเจจเจพเจ เจเจพเจฒเจพเจ เจฒเจ เจฒเจพเจเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ เจเจฟเจจเฉเจนเจพเจ เจฆเฉ เจเจเจเจชเฉเฉฑเจ เจตเจฟเฉฑเจ เจเจซเจธเฉเฉฑเจ เจธเจผเจพเจฎเจฒ เจนเฉเฉฐเจฆเจพ เจนเฉเฅค เจ เจเจฟเจนเจพ เจ เจจเฉเจฎเจพเจจ เจเจฆเฉเจ เจนเฉเฉฐเจฆเจพ เจนเฉ เจเจฆเฉเจ เจเจธ เจตเจฟเฉฑเจ เจตเฉฑเจกเฉ เจฎเจพเจคเจฐเจพ เจตเจฟเฉฑเจ เจเจพเจฃเจเจพเจฐเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ เจเจพเจ เจนเฉ เจธเจเจฆเฉ เจนเฉเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจเจน เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ 'เจคเฉ เจธเจพเจฐเฉ เจฌเจฃเจพเจ เจเจ เจนเฉเจธเจ เจเจฌเจเฉเจเจ เจฆเฉ เจธเฉเจเฉ เจฒเจ เจฌเฉเจจเจคเฉ เจนเฉ เจธเจเจฆเฉ เจนเฉเฅค เจ เจเจฟเจนเฉเจเจ เจฌเฉเจจเจคเฉเจเจ เจฒเจ, API เจฎเฉเจฒ เจฐเฉเจช เจตเจฟเฉฑเจ 50 เจตเจธเจคเฉเจเจ เจฆเฉ เจธเฉเจเฉ เจตเจพเจชเจธ เจเจฐเจฆเจพ เจนเฉ (เจคเฉเจธเฉเจ เจเจตเจพเจฌ เจตเจฟเฉฑเจ เจธเฉเจฎเจพ เจจเฉเฉฐ 500 เจเจฌเจเฉเจเจ เจคเฉฑเจ เจตเจงเจพ เจธเจเจฆเฉ เจนเฉ)เฅค เจ เจคเฉ เจเจพเจฃเจเจพเจฐเฉ เจจเฉเฉฐ เจเจ เจตเจพเจฐ เจจเจพ เจเจฟเฉฑเจเจฃ เจฒเจ, API เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจเจซเจธเฉเฉฑเจ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจจเฉเฉฐ เจฌเจฆเจฒเจฃเจพ, เจเฉฑเจ api_query เจตเจฟเจงเฉ เจนเฉ เจเฉ เจเจน เจเจชเจฃเฉ เจเจช เจเฉฐเจฎ เจเจฐเจฆเฉ เจนเฉเฅค เจเจพเจฒเจพเจ เจฆเฉเจเจ เจเจฆเจพเจนเจฐเจจเจพเจ เจเจฟเฉฑเจฅเฉ เจเจธ เจตเจฟเจงเฉ เจฆเฉ เจฒเฉเฉ เจนเฉ: เจธเจผเฉเจ -เจธเฉเจธเจผเจจ, เจธเจผเฉเจ -เจนเฉเจธเจ, เจธเจผเฉเจ -เจจเฉเฉฑเจเจตเจฐเจ, เจธเจผเฉเจ -เจตเจพเจเจฒเจกเจเจพเจฐเจก, เจธเจผเฉเจ -เจเจฐเฉเฉฑเจช, เจธเจผเฉเจ -เจเจกเจฐเฉเฉฑเจธ-เจฐเฉเจเจ, เจธเจผเฉเจ -เจธเจงเจพเจฐเจจ-เจเฉเจเจตเฉเจเจผ, เจธเจผเฉเจ -เจธเจฐเจฒ-เจเจฒเฉฑเจธเจเจฐ, เจธเจผเฉเจ -เจเจเจธเฉเฉฑเจธ-เจฐเฉเจฒ, เจธเจผเฉเจ -เจเจฐเฉฑเจธเจเฉเจก-เจเจฒเจพเจเฉฐเจเจธ, เจธเจผเฉเจ -เจชเฉเจเฉเจ. เจ เจธเจฒ เจตเจฟเฉฑเจ, เจ เจธเฉเจ เจเจนเจจเจพเจ API เจเจพเจฒเจพเจ เจฆเฉ เจจเจพเจฎ เจตเจฟเฉฑเจ เจฌเจนเฉเจตเจเจจ เจธเจผเจฌเจฆ เจฆเฉเจเจฆเฉ เจนเจพเจ, เจเจธเจฒเจ เจเจนเจจเจพเจ เจเจพเจฒเจพเจ เจจเฉเฉฐ เจธเฉฐเจญเจพเจฒเจฃเจพ เจเจธเจพเจจ เจนเฉเจตเฉเจเจพ api_query
show_hosts = client.api_query('show-hosts') เจเฉฑเจ เจฆเฉ เจนเฉเจ เจพเจ เจเจธ เจฌเฉเจจเจคเฉ เจฒเจ เจเจเจเจชเฉเฉฑเจ:
In [21]: show_hosts
Out[21]:
APIResponse({
"data": [
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "192.168.47.1",
"name": "h_192.168.47.1",
"type": "host",
"uid": "5d7d7086-d70b-4995-971a-0583b15a2bfc"
},
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "8.8.8.8",
"name": "h_8.8.8.8",
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
}
],
"res_obj": {
"data": {
"from": 1,
"objects": [
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "192.168.47.1",
"name": "h_192.168.47.1",
"type": "host",
"uid": "5d7d7086-d70b-4995-971a-0583b15a2bfc"
},
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "8.8.8.8",
"name": "h_8.8.8.8",
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
}
],
"to": 2,
"total": 2
},
"status_code": 200
},
"status_code": 200,
"success": true
})
API เจเจพเจฒเจพเจ เจฆเฉ เจจเจคเฉเจเจฟเจเจ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐ เจฐเจฟเจนเจพ เจนเฉ
เจเจธ เจคเฉเจ เจฌเจพเจ เจฆ เจคเฉเจธเฉเจ เจเจฒเจพเจธ เจฆเฉ เจตเฉเจฐเฉเจเจฌเจฒ เจ เจคเฉ เจคเจฐเฉเจเจฟเจเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐ เจธเจเจฆเฉ เจนเฉ APIเจเจตเจพเจฌ(เจฆเฉเจตเฉเจ เจธเฉฐเจฆเจฐเจญ เจชเฉเจฐเจฌเฉฐเจงเจ เจฆเฉ เจ เฉฐเจฆเจฐ เจ เจคเฉ เจฌเจพเจนเจฐ)เฅค เจเจฒเจพเจธ 'เจคเฉ APIเจเจตเจพเจฌ 4 เจตเจฟเจงเฉเจเจ เจ เจคเฉ 5 เจตเฉเจฐเฉเจเจฌเจฒ เจชเจนเจฟเจฒเจพเจ เจคเฉเจ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจนเจจ; เจ เจธเฉเจ เจตเจงเฉเจฐเฉ เจตเจฟเจธเจฅเจพเจฐ เจตเจฟเฉฑเจ เจธเจญ เจคเฉเจ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจฒเฉเจเจพเจ 'เจคเฉ เจตเจฟเจเจพเจฐ เจเจฐเจพเจเจเฉเฅค

เจธเจซเจฒเจคเจพ
เจธเจผเฉเจฐเฉ เจเจฐเจจ เจฒเจ, เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃเจพ เจเฉฑเจ เจเฉฐเจเจพ เจตเจฟเจเจพเจฐ เจนเฉเจตเฉเจเจพ เจเจฟ API เจเจพเจฒ เจธเจซเจฒ เจธเฉ เจ เจคเฉ เจจเจคเฉเจเจพ เจตเจพเจชเจธ เจเฉเจคเจพ เจเจฟเจ เจธเฉเฅค เจเจธเจฆเฉ เจฒเจ เจเฉฑเจ เจคเจฐเฉเจเจพ เจนเฉ เจธเจซเจฒเจคเจพ:
In [49]: api_versions.success
Out[49]: True
เจเฉเจเจฐ API เจเจพเจฒ เจธเจซเจฒ เจธเฉ (เจเจตเจพเจฌ เจเฉเจก - 200) เจ เจคเฉ เจเฉเจเจฐ เจธเจซเจฒ เจจเจพ เจนเฉเจ เจคเจพเจ เจเจฒเจค (เจเฉเจ เจนเฉเจฐ เจเจตเจพเจฌ เจเฉเจก) เจตเจพเจชเจธ เจเจฐเจฆเจพ เจนเฉเฅค เจเจตเจพเจฌ เจเฉเจก เจฆเฉ เจเจงเจพเจฐ 'เจคเฉ เจตเฉฑเจเจฐเฉ เจเจพเจฃเจเจพเจฐเฉ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจเจฐเจจ เจฒเจ API เจเจพเจฒ เจคเฉเจ เจคเฉเจฐเฉฐเจค เจฌเจพเจ เจฆ เจตเจฐเจคเจฃเจพ เจธเฉเจตเจฟเจงเจพเจเจจเจ เจนเฉเฅค
if api_ver.success:
print(api_versions.data)
else:
print(api_versions.err_message) เจธเจฅเจฟเจคเฉ เจเฉเจก
API เจเจพเจฒ เจเฉเจคเฉ เจเจพเจฃ เจคเฉเจ เจฌเจพเจ เจฆ เจเจตเจพเจฌ เจเฉเจก เจตเจพเจชเจธ เจเจฐเจฆเจพ เจนเฉเฅค
In [62]: api_versions.status_code
Out[62]: 400
เจธเฉฐเจญเจพเจตเฉ เจเจตเจพเจฌ เจเฉเจก: 200,400,401,403,404,409,500,501.
set_success_status
เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, เจธเจซเจฒเจคเจพ เจฆเฉ เจธเจฅเจฟเจคเฉ เจฆเฉ เจฎเฉเฉฑเจฒ เจจเฉเฉฐ เจฌเจฆเจฒเจฃเจพ เจเจผเจฐเฉเจฐเฉ เจนเฉ เจธเจเจฆเจพ เจนเฉ. เจคเจเจจเฉเจเฉ เจคเฉเจฐ 'เจคเฉ, เจคเฉเจธเฉเจ เจเฉฑเจฅเฉ เจเฉเจ เจตเฉ เจชเจพ เจธเจเจฆเฉ เจนเฉ, เจเฉฑเจฅเฉเจ เจคเฉฑเจ เจเจฟ เจเฉฑเจ เจจเจฟเจฏเจฎเจค เจธเจคเจฐ เจตเฉเฅค เจชเจฐ เจเฉฑเจ เจ เจธเจฒ เจเจฆเจพเจนเจฐเจจ เจเจธ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจจเฉเฉฐ เจเฉเจ เจเจพเจธ เจธเจผเจฐเจคเจพเจ เจ เจงเฉเจจ เจเจฒเจค 'เจคเฉ เจฐเฉเจธเฉเจ เจเจฐเจจเจพ เจนเฉเจตเฉเจเจพเฅค เจนเฉเจ เจพเจ, เจเจฆเจพเจนเจฐเจจ เจตเฉฑเจฒ เจงเจฟเจเจจ เจฆเจฟเจ เจเจฆเฉเจ เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ 'เจคเฉ เจเฉฐเจฎ เจเฉฑเจฒ เจฐเจนเฉ เจนเจจ, เจชเจฐ เจ เจธเฉเจ เจเจธ เจฌเฉเจจเจคเฉ เจจเฉเฉฐ เจ เจธเจซเจฒ เจฎเฉฐเจจเจพเจเจเฉ (เจ เจธเฉเจ เจธเจซเจฒเจคเจพ เจตเฉเจฐเฉเจเจฌเจฒ เจจเฉเฉฐ เจธเฉเฉฑเจ เจเจฐเจพเจเจเฉ เจเฉเจ เฉ, เจเจธ เจคเฉฑเจฅ เจฆเฉ เจฌเจพเจตเจเฉเจฆ เจเจฟ API เจเจพเจฒ เจธเจซเจฒ เจธเฉ เจ เจคเฉ เจเฉเจก 200 เจตเจพเจชเจธ เจเฉเจคเจพ เจเจฟเจ เจธเฉ)เฅค
for task in task_result.data["tasks"]:
if task["status"] == "failed" or task["status"] == "partially succeeded":
task_result.set_success_status(False)
breakเจเจตเจพเจฌ()
เจเจตเจพเจฌ เจตเจฟเจงเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจเจตเจพเจฌ เจเฉเจก (เจธเจเฉเจเจธ_เจเฉเจก) เจ เจคเฉ เจเจตเจพเจฌ เจฆเฉ เจญเจพเจ (เจธเจฐเฉเจฐ) เจฆเฉ เจจเจพเจฒ เจธเจผเจฌเจฆเจเฉเจธเจผ เจจเฉเฉฐ เจฆเฉเจเจฃ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเฉ เจนเฉเฅค
In [94]: api_versions.response()
Out[94]:
{'status_code': 200,
'data': {'current-version': '1.6',
'supported-versions': ['1', '1.1', '1.2', '1.3', '1.4', '1.5', '1.6']}}
เจกเจพเจเจพ
เจคเฉเจนเจพเจจเฉเฉฐ เจฌเฉเจฒเฉเฉเฉ เจเจพเจฃเจเจพเจฐเฉ เจฆเฉ เจฌเจฟเจจเจพเจ เจธเจฟเจฐเจซ เจเจตเจพเจฌ เจฆเฉ เจธเจฐเฉเจฐ (เจธเจฐเฉเจฐ) เจจเฉเฉฐ เจฆเฉเจเจฃ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเจพ เจนเฉ.
In [93]: api_versions.data
Out[93]:
{'current-version': '1.6',
'supported-versions': ['1', '1.1', '1.2', '1.3', '1.4', '1.5', '1.6']}
เจเจฒเจคเฉ เจธเฉเจจเฉเจนเจพ
เจเจน เจเจพเจฃเจเจพเจฐเฉ เจเจฆเฉเจ เจนเฉ เจเจชเจฒเจฌเจง เจนเฉเฉฐเจฆเฉ เจนเฉ เจเจฆเฉเจ API เจฌเฉเจจเจคเฉ (เจเจตเจพเจฌ เจเฉเจก) เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจฆเฉ เจธเจฎเฉเจ เจเฉเจ เจเจฒเจคเฉ เจเจ เจนเฉ เจจเจพ 200)เฅค เจเจฆเจพเจนเจฐเจจ เจเจเจเจชเฉเฉฑเจ
In [107]: api_versions.error_message
Out[107]: 'code: generic_err_invalid_parameter_namenmessage: Unrecognized parameter [1]n'
เจเจชเจฏเฉเจเฉ เจเจฆเจพเจนเจฐเจฃเจพเจ
เจนเฉเจ เจพเจ เจฆเจฟเฉฑเจคเฉเจเจ เจเจฆเจพเจนเจฐเจฃเจพเจ เจนเจจ เจเฉ API เจเจพเจฒเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉเจเจ เจนเจจ เจเฉ เจชเฉเจฐเจฌเฉฐเจงเจจ API 1.6 เจตเจฟเฉฑเจ เจธเจผเจพเจฎเจฒ เจเฉเจคเฉเจเจ เจเจเจเจ เจธเจจเฅค
เจชเจนเจฟเจฒเจพเจ, เจเจ เจฆเฉเจเฉเจ เจเจฟ เจเจพเจฒเจพเจ เจเจฟเจตเฉเจ เจเฉฐเจฎ เจเจฐเจฆเฉเจเจ เจนเจจ เจเจก-เจนเฉเจธเจ ะธ เจเจก-เจเจกเจฐเฉเฉฑเจธ-เจฐเฉเจเจ. เจฎเฉฐเจจ เจฒเจ เจเจฟ เจธเจพเจจเฉเฉฐ เจธเจฌเจจเฉเฉฑเจ 192.168.0.0/24 เจฆเฉ เจธเจพเจฐเฉ IP เจเจกเจฐเฉเฉฑเจธ เจฌเจฃเจพเจเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ, เจเจฟเจธ เจฆเจพ เจเจเจฐเฉ เจเจเจเฉเจ 5 เจนเฉ, เจนเฉเจธเจ เจเจฟเจธเจฎ เจฆเฉ เจเจฌเจเฉเจเจ เจตเจเฉเจ, เจ เจคเฉ เจนเฉเจฐ เจธเจพเจฐเฉ IP เจเจกเจฐเฉเฉฑเจธ เจจเฉเฉฐ เจเจกเจฐเฉเฉฑเจธ เจฐเฉเจเจ เจเจฟเจธเจฎ เจฆเฉ เจเจฌเจเฉเจเจ เจตเจเฉเจ เจฒเจฟเจเจฃเจพ เจนเฉเฅค เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, เจธเจฌเจจเฉเฉฑเจ เจชเจคเฉ เจ เจคเฉ เจชเฉเจฐเจธเจพเจฐเจฃ เจชเจคเฉ เจจเฉเฉฐ เจฌเจพเจนเจฐ เจฐเฉฑเจเฉเฅค
เจเจธ เจฒเจ, เจนเฉเจ เจพเจ เจเฉฑเจ เจธเจเฉเจฐเจฟเจชเจ เจนเฉ เจเฉ เจเจธ เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจนเฉฑเจฒ เจเจฐเจฆเฉ เจนเฉ เจ เจคเฉ เจนเฉเจธเจ เจเจฟเจธเจฎ เจฆเฉ 50 เจเจฌเจเฉเจเจ เจ เจคเฉ เจเจกเจฐเฉเฉฑเจธ เจฐเฉเจเจ เจเจฟเจธเจฎ เจฆเฉ 51 เจเจฌเจเฉเจเจ เจฌเจฃเจพเจเจเจฆเฉ เจนเฉเฅค เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจนเฉฑเจฒ เจเจฐเจจ เจฒเจ, 101 API เจเจพเจฒเจพเจ เจฆเฉ เจฒเฉเฉ เจนเฉเฉฐเจฆเฉ เจนเฉ (เจ เฉฐเจคเจฟเจฎ เจชเฉเจฐเจเจพเจธเจผเจฟเจค เจเจพเจฒ เจฆเฉ เจเจฟเจฃเจคเฉ เจจเจพ เจเจฐเจฆเฉ เจนเฉเจ)เฅค เจจเจพเจฒ เจนเฉ, เจเจพเจเจฎเจฟเจ เจฎเฉเจกเฉเจเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ, เจ เจธเฉเจ เจคเจฌเจฆเฉเจฒเฉเจเจ เจชเฉเจฐเจเจพเจธเจผเจฟเจค เจนเฉเจฃ เจคเฉฑเจ เจธเจเฉเจฐเจฟเจชเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฒเจ เจฒเฉฑเจเจฃ เจตเจพเจฒเฉ เจธเจฎเฉเจ เจฆเฉ เจเจฃเจจเจพ เจเจฐเจฆเฉ เจนเจพเจเฅค
เจเจก-เจนเฉเจธเจ เจ เจคเฉ เจเจก-เจเจกเจฐเฉเฉฑเจธ-เจฐเฉเจเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจธเจเฉเจฐเจฟเจชเจ
import timeit
from cpapi import APIClient, APIClientArgs
start = timeit.default_timer()
first_ip = 1
last_ip = 4
client_args = APIClientArgs(server="192.168.47.240")
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
for ip in range(5,255,5):
add_host = client.api_call("add-host", {"name" : f"h_192.168.0.{ip}", "ip-address": f'192.168.0.{ip}'})
while last_ip < 255:
add_range = client.api_call("add-address-range", {"name": f"r_192.168.0.{first_ip}-{last_ip}", "ip-address-first": f"192.168.0.{first_ip}", "ip-address-last": f"192.168.0.{last_ip}"})
first_ip+=5
last_ip+=5
stop = timeit.default_timer()
publish = client.api_call("publish")
print(f'Time to execute batch request: {stop - start} seconds')
เจฎเฉเจฐเฉ เจฒเฉเจฌ เจตเจพเจคเจพเจตเจฐเจจ เจตเจฟเฉฑเจ, เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ 'เจคเฉ เจฒเฉเจก เจฆเฉ เจเจงเจพเจฐ 'เจคเฉ, เจเจธ เจธเจเฉเจฐเจฟเจชเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฒเจ 30 เจ เจคเฉ 50 เจธเจเจฟเฉฐเจ เจฆเฉ เจตเจฟเจเจเจพเจฐ เจฒเฉฑเจเจฆเฉ เจนเจจเฅค
เจนเฉเจฃ เจเจ เจฆเฉเจเฉเจ เจเจฟ API เจเจพเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจเจธเฉ เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจนเฉฑเจฒ เจเจฐเจจเจพ เจนเฉ add-objects-batch, เจธเจฎเจฐเจฅเจจ เจเจฟเจธ เจฒเจ API เจธเฉฐเจธเจเจฐเจฃ 1.6 เจตเจฟเฉฑเจ เจเฉเฉเจฟเจ เจเจฟเจ เจธเฉเฅค เจเจน เจเจพเจฒ เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฑเจ API เจฌเฉเจจเจคเฉ เจตเจฟเฉฑเจ เจเฉฑเจ เจตเจพเจฐ เจตเจฟเฉฑเจ เจฌเจนเฉเจค เจธเจพเจฐเฉเจเจ เจตเจธเจคเฉเจเจ เจฌเจฃเจพเจเจฃ เจฆเฉ เจเจเจฟเจ เจฆเจฟเฉฐเจฆเฉ เจนเฉเฅค เจเจธ เจคเฉเจ เจเจฒเจพเจตเจพ, เจเจน เจตเฉฑเจ-เจตเฉฑเจ เจเจฟเจธเจฎเจพเจ เจฆเฉเจเจ เจตเจธเจคเฉเจเจ เจนเฉ เจธเจเจฆเฉเจเจ เจนเจจ (เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจนเฉเจธเจ, เจธเจฌเจจเฉเฉฑเจ เจ เจคเฉ เจเจกเจฐเฉเฉฑเจธ เจฐเฉเจเจ)เฅค เจเจธ เจคเจฐเฉเจนเจพเจ, เจธเจพเจกเฉ เจเฉฐเจฎ เจจเฉเฉฐ เจเฉฑเจ API เจเจพเจฒ เจฆเฉ เจขเจพเจเจเฉ เจฆเฉ เจ เฉฐเจฆเจฐ เจนเฉฑเจฒ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉเฅค
เจเจก-เจเจฌเจเฉเจเจเจธ-เจฌเฉเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจธเจเฉเจฐเจฟเจชเจ
import timeit
from cpapi import APIClient, APIClientArgs
start = timeit.default_timer()
client_args = APIClientArgs(server="192.168.47.240")
objects_list_ip = []
objects_list_range = []
for ip in range(5,255,5):
data = {"name": f'h_192.168.0.{ip}', "ip-address": f'192.168.0.{ip}'}
objects_list_ip.append(data)
first_ip = 1
last_ip = 4
while last_ip < 255:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}", "ip-address-first": f"192.168.0.{first_ip}", "ip-address-last": f"192.168.0.{last_ip}"}
objects_list_range.append(data)
first_ip+=5
last_ip+=5
data_for_batch = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip
}, {
"type" : "address-range",
"list" : objects_list_range
}]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
add_objects_batch = client.api_call("add-objects-batch", data_for_batch)
stop = timeit.default_timer()
publish = client.api_call("publish")
print(f'Time to execute batch request: {stop - start} seconds')
เจ เจคเฉ เจฎเฉเจฐเฉ เจฒเฉเจฌ เจตเจพเจคเจพเจตเจฐเจฃ เจตเจฟเฉฑเจ เจเจธ เจธเจเฉเจฐเจฟเจชเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจตเจฟเฉฑเจ 3 เจคเฉเจ 7 เจธเจเจฟเฉฐเจ เจฒเฉฑเจเจฆเฉ เจนเจจ, เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ เจคเฉ เจฒเฉเจก เจฆเฉ เจ เจงเจพเจฐ เจคเฉ. เจญเจพเจต, เจเจธเจคเจจ, 101 API เจตเจธเจคเฉเจเจ 'เจคเฉ, เจเฉฑเจ เจฌเฉเจ เจเจฟเจธเจฎ เจฆเฉ เจเจพเจฒ 10 เจเฉเจฃเจพ เจคเฉเจเจผเฉ เจจเจพเจฒ เจเฉฑเจฒเจฆเฉ เจนเฉเฅค เจตเจธเจคเฉเจเจ เจฆเฉ เจเฉฑเจ เจตเฉฑเจกเฉ เจเจฟเจฃเจคเฉ 'เจคเฉ เจ เฉฐเจคเจฐ เจนเฉเจฐ เจตเฉ เจชเฉเจฐเจญเจพเจตเจธเจผเจพเจฒเฉ เจนเฉเจตเฉเจเจพเฅค
เจนเฉเจฃ เจเจ เจฆเฉเจเฉเจ เจเจฟ เจเจฟเจตเฉเจ เจเฉฐเจฎ เจเจฐเจจเจพ เจนเฉ เจธเฉเฉฑเจ-เจเจฌเจเฉเจเจเจธ-เจฌเฉเจ. เจเจธ API เจเจพเจฒ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ, เจ เจธเฉเจ เจเจฟเจธเฉ เจตเฉ เจชเฉเจฐเจพเจฎเฉเจเจฐ เจจเฉเฉฐ เจฌเจฒเจ เจฌเจฆเจฒ เจธเจเจฆเฉ เจนเจพเจเฅค เจเจฒเฉ เจชเจฟเจเจฒเฉ เจเจฆเจพเจนเจฐเจจ (.124 เจฎเฉเจเจผเจฌเจพเจจเจพเจ เจคเฉฑเจ, เจ เจคเฉ เจฐเฉเจเจ เจตเฉ) เจคเฉเจ เจชเจคเจฟเจเจ เจฆเฉ เจชเจนเจฟเจฒเฉ เจ เฉฑเจง เจจเฉเฉฐ เจฐเฉฐเจ เจธเจฟเจเจจเจพ 'เจคเฉ เจธเฉเฉฑเจ เจเจฐเฉเจ, เจ เจคเฉ เจชเจคเจฟเจเจ เจฆเฉ เจฆเฉเจเฉ เจ เฉฑเจง เจฒเจ เจฐเฉฐเจ เจเจพเจเฉ เจจเจฟเจฐเจงเจพเจฐเจค เจเจฐเฉเจเฅค
เจชเจฟเจเจฒเฉ เจเจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจ เจฌเจฃเจพเจเจเจ เจตเจธเจคเฉเจเจ เจฆเจพ เจฐเฉฐเจ เจฌเจฆเจฒเจฃเจพ
from cpapi import APIClient, APIClientArgs
client_args = APIClientArgs(server="192.168.47.240")
objects_list_ip_first = []
objects_list_range_first = []
objects_list_ip_second = []
objects_list_range_second = []
for ip in range(5,125,5):
data = {"name": f'h_192.168.0.{ip}', "color": "sienna"}
objects_list_ip_first.append(data)
for ip in range(125,255,5):
data = {"name": f'h_192.168.0.{ip}', "color": "khaki"}
objects_list_ip_second.append(data)
first_ip = 1
last_ip = 4
while last_ip < 125:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}", "color": "sienna"}
objects_list_range_first.append(data)
first_ip+=5
last_ip+=5
while last_ip < 255:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}", "color": "khaki"}
objects_list_range_second.append(data)
first_ip+=5
last_ip+=5
data_for_batch_first = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip_first
}, {
"type" : "address-range",
"list" : objects_list_range_first
}]
}
data_for_batch_second = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip_second
}, {
"type" : "address-range",
"list" : objects_list_range_second
}]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
set_objects_batch_first = client.api_call("set-objects-batch", data_for_batch_first)
set_objects_batch_second = client.api_call("set-objects-batch", data_for_batch_second)
publish = client.api_call("publish")
เจคเฉเจธเฉเจ เจตเจฐเจค เจเฉ เจเฉฑเจ API เจเจพเจฒ เจตเจฟเฉฑเจ เจเจ เจตเจธเจคเฉเจเจ เจจเฉเฉฐ เจฎเจฟเจเจพ เจธเจเจฆเฉ เจนเฉ เจกเจฟเจฒเฉเจ-เจเจฌเจเฉเจเจเจธ-เจฌเฉเจ. เจนเฉเจฃ เจเจ เจเฉฑเจ เจเฉเจก เจเจฆเจพเจนเจฐเจจ เจตเฉเจเฉเจ เจเฉ เจชเจนเจฟเจฒเจพเจ เจฆเฉเจเจฐเจพ เจฌเจฃเจพเจ เจเจ เจธเจพเจฐเฉ เจฎเฉเจเจผเจฌเจพเจจเจพเจ เจจเฉเฉฐ เจฎเจฟเจเจพ เจฆเจฟเฉฐเจฆเจพ เจนเฉ add-objects-batch.
เจกเจฟเจฒเฉเจ-เจเจฌเจเฉเจเจเจธ-เจฌเฉเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจเฉ เจตเจธเจคเฉเจเจ เจจเฉเฉฐ เจฎเจฟเจเจพเจเจฃเจพ
from cpapi import APIClient, APIClientArgs
client_args = APIClientArgs(server="192.168.47.240")
objects_list_ip = []
objects_list_range = []
for ip in range(5,255,5):
data = {"name": f'h_192.168.0.{ip}'}
objects_list_ip.append(data)
first_ip = 1
last_ip = 4
while last_ip < 255:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}"}
objects_list_range.append(data)
first_ip+=5
last_ip+=5
data_for_batch = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip
}, {
"type" : "address-range",
"list" : objects_list_range
}]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
delete_objects_batch = client.api_call("delete-objects-batch", data_for_batch)
publish = client.api_call("publish")
print(delete_objects_batch.data)
เจเฉเฉฑเจ เจชเฉเจเจเฉฐเจ เจธเฉเจซเจเจตเฉเจ เจฐ เจฆเฉ เจจเจตเฉเจ เจฐเฉเจฒเฉเจเจผเจพเจ เจตเจฟเฉฑเจ เจฆเจฟเจเจพเจ เจฆเฉเจฃ เจตเจพเจฒเฉ เจธเจพเจฐเฉ เจซเฉฐเจเจธเจผเจจ เจคเฉเจฐเฉฐเจค API เจเจพเจฒเจพเจ เจชเฉเจฐเจพเจชเจค เจเจฐเจฆเฉ เจนเจจเฅค เจเจธ เจคเจฐเฉเจนเจพเจ, R80.40 เจตเจฟเฉฑเจ เจฐเฉเจตเจฐเจ เจเฉ เจฐเฉเจตเจฟเจเจผเจจ เจ เจคเฉ เจธเจฎเจพเจฐเจ เจเจพเจธเจ เจตเจฐเจเฉเจเจ "เจตเจฟเจธเจผเฉเจธเจผเจคเจพเจตเจพเจ" เจชเฉเจฐเจเจ เจนเฉเจเจเจ, เจ เจคเฉ เจเจนเจจเจพเจ เจฒเจ เจธเฉฐเจฌเฉฐเจงเจฟเจค API เจเจพเจฒเจพเจ เจคเฉเจฐเฉฐเจค เจคเจฟเจเจฐ เจเฉเจคเฉเจเจ เจเจเจเจเฅค เจเจธ เจคเฉเจ เจเจฒเจพเจตเจพ, เจฒเฉเจเฉเจธเฉ เจเฉฐเจธเฉเจฒ เจคเฉเจ เจฏเฉเจจเฉเจซเจพเจเจก เจชเจพเจฒเจฟเจธเฉ เจฎเฉเจก 'เจคเฉ เจเจพเจฃ เจตเฉเจฒเฉ เจธเจพเจฐเฉเจเจ เจเจพเจฐเจเจเฉเจธเจผเจฒเจคเจพเจตเจพเจ เจตเฉ API เจธเจนเจพเจเจคเจพ เจชเฉเจฐเจพเจชเจค เจเจฐเจฆเฉเจเจ เจนเจจเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจธเฉเจซเจเจตเฉเจ เจฐ เจธเฉฐเจธเจเจฐเจฃ R80.40 เจตเจฟเฉฑเจ เจฒเฉฐเจฌเฉ เจธเจฎเฉเจ เจคเฉเจ เจเจกเฉเจเจฟเจ เจเจพ เจฐเจฟเจนเจพ เจ เฉฑเจชเจกเฉเจ เจฒเฉเจเฉเจธเฉ เจฎเฉเจก เจคเฉเจ เจฏเฉเจจเฉเจซเจพเจเจก เจชเจพเจฒเจฟเจธเฉ เจฎเฉเจก เจตเจฟเฉฑเจ HTTPS เจจเจฟเจฐเฉเจเจฃ เจจเฉเจคเฉ เจจเฉเฉฐ เจฒเฉ เจเฉ เจเจพเจฃเจพ เจธเฉ, เจ เจคเฉ เจเจธ เจเจพเจฐเจเจธเจผเฉเจฒเจคเจพ เจจเฉเฉฐ เจคเฉเจฐเฉฐเจค API เจเจพเจฒเจพเจ เจชเฉเจฐเจพเจชเจค เจนเฉเจเจเจเฅค เจเฉฑเจฅเฉ เจเฉเจก เจฆเฉ เจเฉฑเจ เจเจฆเจพเจนเจฐเจจ เจนเฉ เจเฉ HTTPS เจจเจฟเจฐเฉเจเจฃ เจจเฉเจคเฉ เจฆเฉ เจธเจฟเจเจฐ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ เจเฉฑเจ เจจเจฟเจฏเจฎ เจเฉเฉเจฆเจพ เจนเฉ เจเฉ เจจเจฟเจฐเฉเจเจฃ (เจธเจฟเจนเจค, เจตเจฟเฉฑเจค, เจธเจฐเจเจพเจฐเฉ เจธเฉเจตเจพเจตเจพเจ) เจคเฉเจ 3 เจธเจผเฉเจฐเฉเจฃเฉเจเจ เจจเฉเฉฐ เจฌเจพเจนเจฐ เจฐเฉฑเจเจฆเจพ เจนเฉ, เจเจฟเจจเฉเจนเจพเจ เจจเฉเฉฐ เจเจ เจฆเฉเจธเจผเจพเจ เจตเจฟเฉฑเจ เจเจพเจจเฉเฉฐเจจ เจฆเฉ เจ เจจเฉเจธเจพเจฐ เจจเจฟเจฐเฉเจเจฃ เจคเฉเจ เจฎเจจเจพเจนเฉ เจนเฉเฅค
HTTPS เจจเจฟเจฐเฉเจเจฃ เจจเฉเจคเฉ เจตเจฟเฉฑเจ เจเฉฑเจ เจจเจฟเจฏเจฎ เจธเจผเจพเจฎเจฒ เจเจฐเฉ
from cpapi import APIClient, APIClientArgs
client_args = APIClientArgs(server="192.168.47.240")
data = {
"layer" : "Default Layer",
"position" : "top",
"name" : "Legal Requirements",
"action": "bypass",
"site-category": ["Health", "Government / Military", "Financial Services"]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
add_https_rule = client.api_call("add-https-rule", data)
publish = client.api_call("publish")
เจเฉเฉฑเจ เจชเฉเจเจเฉฐเจ เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ 'เจคเฉ เจชเจพเจเจฅเจจ เจธเจเฉเจฐเจฟเจชเจเจพเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃเจพ
เจธเจญ เจเฉเจ เจเฉฑเจเฉ เจเจฟเจนเจพ เจนเฉ เจเฉฐเจเจฐเฉเจฒ เจธเจฐเจตเจฐ เจคเฉเจ เจธเจฟเฉฑเจงเฉ เจชเจพเจเจฅเจจ เจธเจเฉเจฐเจฟเจชเจเจพเจ เจจเฉเฉฐ เจเจฟเจตเฉเจ เจเจฒเจพเจเจฃเจพ เจนเฉ เจฌเจพเจฐเฉ เจเจพเจฃเจเจพเจฐเฉ เจฐเฉฑเจเจฆเจพ เจนเฉเฅค เจเจน เจเจฆเฉเจ เจธเฉเจตเจฟเจงเจพเจเจจเจ เจนเฉ เจธเจเจฆเจพ เจนเฉ เจเจฆเฉเจ เจคเฉเจธเฉเจ เจเจฟเจธเฉ เจนเฉเจฐ เจฎเจธเจผเฉเจจ เจคเฉเจ API เจธเจฐเจตเจฐ เจจเจพเจฒ เจเฉเฉเจจ เจตเจฟเฉฑเจ เจ เจธเจฎเจฐเฉฑเจฅ เจนเฉเฉฐเจฆเฉ เจนเฉเฅค เจฎเฉเจ เจเฉ-เจฎเจฟเฉฐเจ เจฆเฉ เจตเฉเจกเฉเจ เจฐเจฟเจเจพเจฐเจก เจเฉเจคเฉ เจเจฟเจธ เจตเจฟเฉฑเจ เจฎเฉเจ เจฎเฉเจกเฉเจเจฒ เจจเฉเฉฐ เจธเจฅเจพเจชเจฟเจค เจเจฐเจฆเฉ เจนเฉเจ เจฆเฉเจเจฆเจพ เจนเจพเจ cpapi เจ เจคเฉ เจเฉฐเจเจฐเฉเจฒ เจธเจฐเจตเจฐ เจเฉฑเจคเฉ เจชเจพเจเจฅเจจ เจธเจเฉเจฐเจฟเจชเจเจพเจ เจจเฉเฉฐ เจเจฒเจพเจเจฃ เจฆเฉเจเจ เจตเจฟเจธเจผเฉเจธเจผเจคเจพเจตเจพเจเฅค เจเฉฑเจ เจเจฆเจพเจนเจฐเจจ เจฆเฉ เจคเฉเจฐ เจคเฉ, เจเฉฑเจ เจธเจเฉเจฐเจฟเจชเจ เจเจฒเจพเจ เจเจพเจเจฆเฉ เจนเฉ เจเฉ เจเฉฑเจ เจเฉฐเจฎ เจฒเจ เจเฉฑเจ เจจเจตเฉเจ เจเฉเจเจตเฉ เจฆเฉ เจธเฉฐเจฐเจเจจเจพ เจจเฉเฉฐ เจธเจตเฉเจเจพเจฒเจค เจเจฐเจฆเฉ เจนเฉ เจเจฟเจตเฉเจ เจเจฟ เจจเฉเจเจตเจฐเจ เจเจกเจฟเจเจฟเฉฐเจ เจธเฉเจฐเฉฑเจเจฟเจ เจเจพเจเจ. เจเจนเจจเจพเจ เจตเจฟเจธเจผเฉเจธเจผเจคเจพเจตเจพเจ เจตเจฟเฉฑเจเฉเจ เจเจฟเจนเจจเจพเจ เจจเจพเจฒ เจฎเฉเจจเฉเฉฐ เจจเจเจฟเฉฑเจ เจฃเจพ เจชเจฟเจ: เจซเฉฐเจเจธเจผเจจ เจ เจเฉ เจคเฉฑเจ เจชเจพเจเจฅเจจ 2.7 เจตเจฟเฉฑเจ เจชเฉเจฐเจเจ เจจเจนเฉเจ เจนเฉเจเจ เจนเฉ เจเฉฐเจชเฉเฉฑเจ, เจเจธ เจฒเจ เจเจชเจญเฉเจเจคเจพ เจฆเฉเจเจฐเจพ เจฆเจพเจเจฒ เจเฉเจคเฉ เจเจ เจเจพเจฃเจเจพเจฐเฉ เจฆเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเจฐเจจ เจฒเจ, เจเฉฑเจ เจซเฉฐเจเจธเจผเจจ เจตเจฐเจคเจฟเจ เจเจพเจเจฆเจพ เจนเฉ raw_input. เจจเจนเฉเจ เจคเจพเจ, เจเฉเจก เจฆเฉเจเฉเจเจ เจฎเจธเจผเฉเจจเจพเจ เจคเฉเจ เจฒเจพเจเจ เจเจฐเจจ เจฆเฉ เจธเจฎเจพเจจ เจนเฉ, เจธเจฟเจฐเจซ เจซเฉฐเจเจธเจผเจจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจจเจพ เจตเจงเฉเจฐเฉ เจธเฉเจตเจฟเจงเจพเจเจจเจ เจนเฉ login_as_root, เจคเจพเจ เจเจฟ เจชเฉเจฐเจฌเฉฐเจงเจจ เจธเจฐเจตเจฐ เจฆเจพ เจเจชเจฃเจพ เจเจชเจญเฉเจเจคเจพ เจจเจพเจฎ, เจชเจพเจธเจตเจฐเจก เจ เจคเฉ IP เจชเจคเจพ เจฆเฉเจฌเจพเจฐเจพ เจจเจพ เจฆเจฟเจเฅค

เจธเจเจฟเจเจฐเจฟเจเฉ เจเฉเจเจ เฉฑเจช เจฆเฉ เจคเฉเจฐเฉฐเจค เจธเฉเฉฑเจเจ เฉฑเจช เจฒเจ เจธเจเฉเจฐเจฟเจชเจ
from __future__ import print_function
import getpass
import sys, os
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
from cpapi import APIClient, APIClientArgs
def main():
with APIClient() as client:
# if client.check_fingerprint() is False:
# print("Could not get the server's fingerprint - Check connectivity with the server.")
# exit(1)
login_res = client.login_as_root()
if login_res.success is False:
print("Login failed:n{}".format(login_res.error_message))
exit(1)
gw_name = raw_input("Enter the gateway name:")
gw_ip = raw_input("Enter the gateway IP address:")
if sys.stdin.isatty():
sic = getpass.getpass("Enter one-time password for the gateway(SIC): ")
else:
print("Attention! Your password will be shown on the screen!")
sic = raw_input("Enter one-time password for the gateway(SIC): ")
version = raw_input("Enter the gateway version(like RXX.YY):")
add_gw = client.api_call("add-simple-gateway", {'name' : gw_name, 'ipv4-address' : gw_ip, 'one-time-password' : sic, 'version': version.capitalize(), 'application-control' : 'true', 'url-filtering' : 'true', 'ips' : 'true', 'anti-bot' : 'true', 'anti-virus' : 'true', 'threat-emulation' : 'true'})
if add_gw.success and add_gw.data['sic-state'] != "communicating":
print("Secure connection with the gateway hasn't established!")
exit(1)
elif add_gw.success:
print("The gateway was added successfully.")
gw_uid = add_gw.data['uid']
gw_name = add_gw.data['name']
else:
print("Failed to add the gateway - {}".format(add_gw.error_message))
exit(1)
change_policy = client.api_call("set-access-layer", {"name" : "Network", "applications-and-url-filtering": "true", "content-awareness": "true"})
if change_policy.success:
print("The policy has been changed successfully")
else:
print("Failed to change the policy- {}".format(change_policy.error_message))
change_rule = client.api_call("set-access-rule", {"name" : "Cleanup rule", "layer" : "Network", "action": "Accept", "track": {"type": "Detailed Log", "accounting": "true"}})
if change_rule.success:
print("The cleanup rule has been changed successfully")
else:
print("Failed to change the cleanup rule- {}".format(change_rule.error_message))
# publish the result
publish_res = client.api_call("publish", {})
if publish_res.success:
print("The changes were published successfully.")
else:
print("Failed to publish the changes - {}".format(install_tp_policy.error_message))
install_access_policy = client.api_call("install-policy", {"policy-package" : "Standard", "access" : 'true', "threat-prevention" : 'false', "targets" : gw_uid})
if install_access_policy.success:
print("The access policy has been installed")
else:
print("Failed to install access policy - {}".format(install_tp_policy.error_message))
install_tp_policy = client.api_call("install-policy", {"policy-package" : "Standard", "access" : 'false', "threat-prevention" : 'true', "targets" : gw_uid})
if install_tp_policy.success:
print("The threat prevention policy has been installed")
else:
print("Failed to install threat prevention policy - {}".format(install_tp_policy.error_message))
# add passwords and passphrases to dictionary
with open('additional_pass.conf') as f:
line_num = 0
for line in f:
line_num += 1
add_password_dictionary = client.api_call("run-script", {"script-name" : "Add passwords and passphrases", "script" : "printf "{}" >> $FWDIR/conf/additional_pass.conf".format(line), "targets" : gw_name})
if add_password_dictionary.success:
print("The password dictionary line {} was added successfully".format(line_num))
else:
print("Failed to add the dictionary - {}".format(add_password_dictionary.error_message))
main() เจเฉฑเจ เจชเจพเจธเจตเจฐเจก เจกเจฟเจเจธเจผเจจเจฐเฉ เจตเจพเจงเฉ_pass.conf เจตเจพเจฒเฉ เจเฉฑเจ เจเจฆเจพเจนเจฐเจจ เจซเจพเจเจฒ
{
"passwords" : ["malware","malicious","infected","Infected"],
"phrases" : ["password","Password","Pass","pass","codigo","key","pwd","ะฟะฐัะพะปั","ะะฐัะพะปั","ะะปัั","ะบะปัั","ัะธัั","ะจะธัั"]
}
เจธเจฟเฉฑเจเจพ
เจเจน เจฒเฉเจ เจเฉฐเจฎ เจฆเฉเจเจ เจธเจฟเจฐเจซเจผ เจฌเฉเจจเจฟเจเจฆเฉ เจธเฉฐเจญเจพเจตเจจเจพเจตเจพเจ เจฆเฉ เจเจพเจเจ เจเจฐเจฆเจพ เจนเฉ เจชเจพเจเจฅเจจ เจเจธ.เจกเฉ.เจเฉ. เจ เจคเฉ เจฎเฉเจกเฉเจเจฒ cpapi(เจเจฟเจตเฉเจ เจเจฟ เจคเฉเจธเฉเจ เจ เจจเฉเจฎเจพเจจ เจฒเจเจพเจเจ เจนเฉเจตเฉเจเจพ, เจเจน เจ เจธเจฒ เจตเจฟเฉฑเจ เจธเจฎเจพเจจเจพเจฐเจฅเฉ เจนเจจ), เจ เจคเฉ เจเจธ เจฎเฉเจกเฉเจเจฒ เจตเจฟเฉฑเจ เจเฉเจก เจฆเจพ เจ เจงเจฟเจเจจ เจเจฐเจจ เจจเจพเจฒ เจคเฉเจธเฉเจ เจเจธเจฆเฉ เจจเจพเจฒ เจเฉฐเจฎ เจเจฐเจจ เจฆเฉ เจนเฉเจฐ เจตเฉ เจฎเฉเจเฉ เจฒเฉฑเจญ เจธเจเฉเจเฉเฅค เจเจน เจธเฉฐเจญเจต เจนเฉ เจเจฟ เจคเฉเจธเฉเจ เจเจธเจจเฉเฉฐ เจเจชเจฃเฉเจเจ เจเจฒเจพเจธเจพเจ, เจซเฉฐเจเจธเจผเจจเจพเจ, เจตเจฟเจงเฉเจเจ เจ เจคเฉ เจตเฉเจฐเฉเจเจฌเจฒเจพเจ เจจเจพเจฒ เจชเฉเจฐเจ เจเจฐเจจเจพ เจเจพเจนเฉเจเฉเฅค เจคเฉเจธเฉเจ เจนเจฎเฉเจธเจผเจพ เจเจชเจฃเจพ เจเฉฐเจฎ เจธเจพเจเจเจพ เจเจฐ เจธเจเจฆเฉ เจนเฉ เจ เจคเฉ เจธเฉเจเจธเจผเจจ เจตเจฟเฉฑเจ เจเฉเฉฑเจ เจชเฉเจเจเฉฐเจ เจฒเจ เจนเฉเจฐ เจธเจเฉเจฐเจฟเจชเจเจพเจ เจฆเฉเจ เจธเจเจฆเฉ เจนเฉ เจญเจพเจเจเจพเจฐเฉ เจตเจฟเฉฑเจ , เจเฉ เจเจคเจชเจพเจฆ เจกเจฟเจตเฉเจฒเจชเจฐเจพเจ เจ เจคเฉ เจเจชเจญเฉเจเจคเจพเจตเจพเจ เจฆเฉเจตเจพเจ เจจเฉเฉฐ เจเจเฉฑเจ เจพ เจเจฐเจฆเจพ เจนเฉเฅค
เจนเฉเจชเฉ เจเฉเจกเจฟเฉฐเจ เจ
เจคเฉ เจ
เฉฐเจค เจคเฉฑเจ เจชเฉเฉเจนเจจ เจฒเจ เจงเฉฐเจจเจตเจพเจฆ!
เจธเจฐเฉเจค: www.habr.com
