Source code for api.authentication.v1.methods

"""Autogenerated API"""

from argus_cli.plugin import register_command



[docs]@register_command(extending=("authentication","v1","methods")) def get_methods( argus_last_method: str = None, json: bool = True, verify: bool = True, apiKey: str = None, authentication: dict = {} ) -> dict: """List authentication methods available on this server (PUBLIC) Returns a list of authentication methods available on the server. The last successful authentication performed on the client will be returned asmetaData.lastUsedAuthenticationMethod :param str argus_last_method: :returns: {} """ from requests import get from argus_api.exceptions import http url = "https://portal.mnemonic.no/web/api/authentication/v1/methods".format() headers = { 'Content-Type': 'application/json', 'User-Agent': 'ArgusToolbelt/' } if apiKey: headers["Argus-API-Key"] = apiKey elif authentication and isinstance(authentication, dict): headers.update(authentication) elif callable(authentication): headers.update(authentication(url)) body = { "argus_last_method": argus_last_method } response = get(url, json=body if body else None, verify=verify, headers=headers ) if response.status_code == 401: raise http.AuthenticationFailedException(response) elif response.status_code == 403: raise http.AccessDeniedException(response) elif response.status_code == 412: raise http.ValidationErrorException(response) elif response.status_code == 404: raise http.ObjectNotFoundException(response) return response.json() if json else response