diff --git a/octodns/provider/gcore.py b/octodns/provider/gcore.py index a52439f..041e19f 100644 --- a/octodns/provider/gcore.py +++ b/octodns/provider/gcore.py @@ -44,15 +44,16 @@ class GCoreClient(object): api_url, auth_url, token=None, + token_type=None, login=None, password=None, ): self.log = log self._session = Session() self._api_url = api_url - if token is not None: + if token is not None and token_type is not None: self._session.headers.update( - {"Authorization": "APIKey {}".format(token)} + {"Authorization": "{} {}".format(token_type, token)} ) elif login is not None and password is not None: token = self._auth(auth_url, login, password) @@ -150,6 +151,7 @@ class GCoreProvider(BaseProvider): class: octodns.provider.gcore.GCoreProvider # Your API key token: XXXXXXXXXXXX + # token_type: APIKey # or login + password login: XXXXXXXXXXXX password: XXXXXXXXXXXX @@ -163,6 +165,7 @@ class GCoreProvider(BaseProvider): def __init__(self, id, *args, **kwargs): token = kwargs.pop("token", None) + token_type = kwargs.pop("token_type", "APIKey") login = kwargs.pop("login", None) password = kwargs.pop("password", None) api_url = kwargs.pop("url", "https://dnsapi.gcorelabs.com/v2") @@ -171,7 +174,13 @@ class GCoreProvider(BaseProvider): self.log.debug("__init__: id=%s", id) super(GCoreProvider, self).__init__(id, *args, **kwargs) self._client = GCoreClient( - self.log, api_url, auth_url, token, login, password + self.log, + api_url, + auth_url, + token=token, + token_type=token_type, + login=login, + password=password, ) def _data_for_single(self, _type, record):