Changelog#
Version 3#
- Breaking changes:
some function’s function arguments in the authentication module have been renamed to reflect the fact that they now accepts either an ID or a shortName.
argus_api.session
no longer points to the global session objects but instead to a module. The global session object can now be retrieved withargus_api.session.get_session()
.the contents of
argus_api.http
have been movedargus_api.session
.the global session object used in
argus_api.lib
no longer reads theargus-cli
configuration by default. Previous behavior can be emulated by construction anArgusAPISession
object withuse_cli_config=True
. that is recommended against.the
ArgusAPISession
class no longer accepts theapi_key
argument - use theauth
argument instead.
- new features:
the global session can now be controlled more reliably using
argus_api.session.get_session()
andargus_api.session.set_session()
the
ArgusAPISession
class now exposes more parameters and can be used as a context manager to override the global session.support for authentication methods beyond API keys. This release introduces LDAP and password authentication.
all
argus_api.lib
methods now accept anapi_session
argument to explicitly bypass the global session.improvements: - type annotations for common arguments of
argus_api.lib
methods have been improved.
Version 3.15#
Regenerated sampledb modules to current versions
Version 3.14#
Regenerated all API modules EXCEPT sampledb to current versions
Version 3.13#
Regenerated all API modules to current versions
3.13.x patches#
3.13.1
: Added files autodocs, dynamic version number and date to conf.py
Version 3.12#
Regenerated all API modules to reflect changes in the API
3.12.x patches#
3.12.1
: fixed a bug that caused session-based authentication to fail when issuing requests requiring a CSRF token (added CSRF token handling).
Version 3.11#
Fixed an issue causing the
argus_api.files.sampledb.upload.add_submission()
function to fail on small samples.
422
responses will now raise aargus_api.exceptions.http.ServiceUnavailableException
3.11.x patches#
3.11.2
: Added typing_extensions as a project dependency.3.11.1
: Fixed an issue causing theargus_api.files.sampledb.upload.add_submission()
function to fail on small samples when called with json=False.
Version 3.10#
Regenerated the customers v2 API modules, with multiple renames: - in the
customeradmin.v2
package,admin_
has been removed from method names - in thecustomer.v2
package,basic_
has been removed from method names - additional methods have been added, notably customer property descriptor management methods
3.10.x patches#
3.10.1
: Remove duplicate argparse registrations. argus-api now works with Python 3.113.10.2
: Fixed PyPI metadata
Version 3.9#
Regenerated the asset module to reflect changes in the API.
Version 3.8#
added support for specifying an retention time to
argus_api.files.sampledb.upload.add_submission()
Version 3.7#
regenerated all modules to reflect changes in the Argus API
3.7.x patches#
3.7.1
re-generated packages to support the latest parameter.3.7.2
re-generated assets v2 package to support the newly introduced default limit.
Version 3.6#
added the
paginated_items()
helper to iterate directly over items return by a paginated query
Version 3.5#
added a new auth method
OAuth2Auth
that reads a session token directly from an OAuth2Session session.added a new extra “oauth” to install the required dependencies to use the new auth method.
Version 3.4#
added support for token authentication :
argus_api.authentication.SessionTokenAuth
.added the
new_constrained_session()
allowing creation of a new constrained session from an existing session.
3.4.x patches#
3.4.1
fixed class:~argus_api.authentication.SessionTokenAuth using the wrong request authentication mechanism, causing authentication failure where used towards multiple endpoints.
Version 3.3#
added File management functions for upload and download of documents and samples.
Version 3.2#
added the
argus_api.session.ArgusAPISession.authenticate()
method to explicitly authenticate a session.added the
argus_api.session.ArgusAPISession.check_auth()
method to verify that a session’s credential are valid. Can be called directly or by passingcheck=True
to theauthenticate()
method.added the
ArgusAPIAuthenticationError
exception to be raised if an error occurs during the authentication process.
3.2.x patches#
3.2.1
fixed an issue where proxies set on anArgusAPISession
object would be overwritten by environment variables.
Version 3.1#
added a
proxies
option toArgusAPISession
3.1.x patches#
3.1.1
fixed time hints to indicate the that thebackfoff_factor
argument toArgusAPISession
can be afloat
.
3.0.x patches#
3.0.2
: fixed a bug that prevented the user-agent sent byargus-api
from showing the package’s version.
3.0.1
: fixed a bug where setting the API URL by other means that theapi_url
theArgusAPISession
class would be ignored when creating a session object.
Version 2#
Breaking change: some autogenerated
argus-cli
commands in theauthentication v1
module have changed name.
Version 2.8#
Updated the client to match latest versions of the API.
Version 2.7#
Updated the client to match latest versions of the API.
Swagger specifications for for all services are now bundled as resources and can be
imported as argus_api.schema.<service_name>.schema
.
2.7.x patches#
2.7.1
: added a missing alias for the movedargus_api.[lib|api].authentication.v1.user.user_apikey.get_user_methods
function
2.7.2
: fixed a bug where imports fronargus_api.api.authentication.v1.signature
would cause a crash.
2.7.3
: fixed a bug where an inaccurate result count from the API could trigger an infinite loop when fetching paginated results.
Version 2.6#
Updated the alarms
endpoints to match the latest API.
Version 2.5#
Updated the library to support new endpoints and parameters added to the API.
A number of functions have been renamed across modules. The old names will still be usable, but will emit a deprecation warning and will be removed in a future version.
Complete list of renamed functions :
- module
authentication.v1.impersonate
:
constrain_1
: renamed toimpersonate
- module
authentication.v1.apikey
:
initiate_1
: renamed toinitiate_api_key
list_1
: renamed tolist_api_keys
renew_2
: renamed torenew_api_key_by_prefix
renew_3
: renamed torenew_api_key_by_id
revoke_2
: renamed torevoke_api_key_by_id
revoke_3
: renamed torevoke_api_key_by_prefix
- module
authentication.v1.signature
:
get_webauthn_create_options_1
: renamed toget_webauthn_create_options
list_2
: renamed tolist_public_keys
- module
authentication.v1.totp
:
revoke_5
: renamed torevoke
- module
currentuser.v1.password
:
set_properties
: renamed tochange_password
- module
currentuser.v1.prefs
:
set_properties_1
: renamed toset_properties
- module
documents.v1.document
:
list_document_watchers
: renamed tolist_document_watchers_by_id
- module
documents.v1.folder_path_access
:
list_document_watchers_2
: renamed tolist_document_watchers_by_path_1
list_document_watchers_1
: renamed tolist_folder_watchers_by_path
set_current_user_folder_watch_status
: renamed toset_current_user_folder_watch_status_by_id
set_current_user_folder_watch_status_1
: renamed toset_current_user_folder_watch_status_by_path
update_document_access_settings_1
: renamed toupdate_folder_access_settings
update_document_access_settings_by_path_1
: renamed toupdate_folder_access_settings_by_path
- module
cases.v2.service
:
list_categories_1
: renamed tolist_categories_by_service
- module
datastores.v1.store
:
put_single_data_store_entry
: renamed toput_single_data_store_list_entry
put_single_data_store_entry_1
: renamed toput_single_data_store_map_entry
- module
users.v1.subject
:
list_subjects
: renamed tolist_subjects_v1
- module
users.v1.user
:
list_users
: renamed tolist_users_v1
- module
useradmin.v2.function
:
delete_user
: renamed todelete_function
- module
useradmin.v2.subject
:
get_subject_1
: renamed toget_subject
list_subjects_1
: renamed tolist_subjects
- module
useradmin.v2.user
:
delete_user_1
: renamed todelete_user
get_user_image_1
: renamed toadmin_get_user_image
list_users_1
: renamed tolist_users
- module
logging.v1.client
:
submit_log_events_bulk
: renamed tosubmit_client_log_events_bulk
- module
logging.v1.tool
:
submit_log_events_bulk_1
: renamed tosubmit_tooling_log_events_bulk
- module
componentadmin.v1.lookup
:
get_properties_2
: renamed tolookup
- module
componentadmin.v1.host.cachedconfigurations
:
reboot
: renamed toreboot_host
- module
componentadmin.v1.instance.instance_install
:
get_instance_status
: renamed toget_instance_status_v1
reboot_1
: renamed toreboot_instance
- module
componentadmin.v1.property
:
get_properties_1
: renamed toget_property
- module
componentadmin.v1.host.cachedconfigurations.clear
:
reboot
: renamed toreboot_host
- module
componentadmin.v2.status
:
get_instance_status_1
: renamed toget_instance_status
- module
configurationadmin.v1.artifact
:
create
: renamed tocreate_artifact
create_from_octet_stream
: renamed tocreate_artifact_from_octet_stream
delete_unused
: renamed todelete_unused_artifacts
download_by_g_a_v
: renamed todownload_code_artifact_by_g_a_v
download_by_id
: renamed todownload_code_artifact_by_id
get_by_g_a_v
: renamed toget_code_artifact_by_g_a_v
get_by_id
: renamed toget_code_artifcat_by_id
list
: renamed tolist_code_artifacts
list_unused
: renamed tolist_unused_code_artifacts
search
: renamed tosearch_code_artifacts
- module
configurationadmin.v1.host
:
add_comment
: renamed toadd_host_comment
create_2
: renamed tocreate_host
create_2
: renamed tocreate_host
delete_1
: renamed todelete_host
disable_monitoring
: renamed todisable_host_monitoring
duplicate_1
: renamed toduplicate_host
duplicate_2
: renamed tosetup_default_configuration
enable_monitoring
: renamed toenable_host_monitoring
list_2
: renamed tolist_hosts
schedule_monitoring
: renamed toschedule_host_monitoring
search_2
: renamed tosearch_hosts
update_1
: renamed toupdate_host
view
: renamed toview_host
- module
configurationadmin.v1.instance
:
add_comment_1
: renamed toadd_instance_comment
create_3
: renamed tocreate_instance
delete_2
: renamed todelete_instance
disable_monitoring_1
: renamed todisable_instance_monitoring
enable_monitoring_1
: renamed toenable_instance_monitoring
revisions
: renamed toinstance_revisions
list_3
: renamed tolist_instances
schedule_monitoring_1
: renamed toschedule_instance_monitoring
search_3
: renamed tosearch_instances
update_2
: renamed toupdate_instance
update_2
: renamed toupdate_instance
view_1
: renamed toview_instance
- module
configurationadmin.v1.profile
:
attach
: renamed toattach_artifact
attach_by_name
: renamed toattach_artifact_by_name
attach_detach
: renamed toattach_detach_artifacts
create_1
: renamed tocreate_code_profile
delete
: renamed todelete_code_profile
detach
: renamed todetach_artifact
detach_by_artifact_by_g_a
: renamed todetach_artifact_by_g_a
detach_by_name
: renamed todetach_artifact_by_name
duplicate
: renamed toduplicate_code_profile
get_by_id_1
: renamed toget_code_profile_by_id
get_by_name
: renamed toget_code_profile_by_name
list_1
: renamed tolist_code_profiles
search_1
: renamed tosearch_code_profiles
update
: renamed toupdate_code_profile
- module
configurationadmin.v1.template
:
add_comment_2
: renamed toadd_template_comment
create_4
: renamed tocreate_template
delete_3
: renamed todelete_template
duplicate_3
: renamed toduplicate_template
list_4
: renamed tolist_templates
search_4
: renamed tosearch_templates
revisions_1
: renamed totemplate_revisions
update_3
: renamed toupdate_template
view_2
: renamed toview_template
- module
customers.v1.customer
:
get_customer_by_shortname
: renamed toget_customer
get_customer_by_id
: renamed toget_customer
- module
notifications.v1.device
:
create_1
: renamed tolist_devices
create_2
: renamed tocreate_device
revoke
: renamed torevoke_device
- module
notifications.v1.notification
:
prepare_notification_1
: renamed tosend_notification
2.5.x patches#
2.5.1
: fixed a bug where thejson
argument to functions would be ignored and improved code formatting.
Version 2.4#
Added a deprecated alias utility to define transitive aliases of renamed methods.
Version 2.3#
2.3.x patches#
2.3.1
: added some type annotations toArgusAPISession