Request Logging
Writing a bamboohr tap, it uses basic auth. Trying to debug the requests that are sent out.
@aaronsteers recommended putting in an issue here. Note I'm a noob with python so there's almost certainly things I'm missing. re https://meltano.slack.com/archives/CFG3C3D1Q/p1614794618011900
$ poetry run tap-bamboohr --config .secrets/config.json
INFO Parsing env var for settings config...
DEBUG Running config validation using jsonschema: {'type': 'object', 'properties': {'auth_token': {'type': ['string'], 'required': True}, 'subdomain': {'type': ['string'], 'required': True}}, 'required': ['auth_token', 'subdomain']}
INFO Config validation passed with 0 errors and 0 warnings.
INFO Beginning FULL_TABLE sync of stream 'employees'...
{"type": "SCHEMA", "stream": "employees", "schema": {"type": "object", "properties": {"id": {"type": ["number", "null"], "required": false}, "displayName": {"type": ["string", "null"], "required": false}, "firstName": {"type": ["string", "null"], "required": false}, "lastName": {"type": ["string", "null"], "required": false}, "gender": {"type": ["string", "null"], "required": false}, "jobTitle": {"type": ["string", "null"], "required": false}, "workPhone": {"type": ["string", "null"], "required": false}, "workPhoneExtension": {"type": ["string", "null"], "required": false}, "skypeUsername": {"type": ["string", "null"], "required": false}, "facebook": {"type": ["string", "null"], "required": false}}, "required": []}, "key_properties": null}
INFO {'url': 'https://api.bamboohr.com/api/gateway.php/autoidmtest/v1/employees/directory', 'params': {}, 'request_data': None}
DEBUG Starting new HTTPS connection (1): api.bamboohr.com:443
DEBUG https://api.bamboohr.com:443 "GET /api/gateway.php/autoidmtest/v1/employees/directory HTTP/1.1" 401 None
INFO Skipping request to https://api.bamboohr.com/api/gateway.php/autoidmtest/v1/employees/directory
INFO Reason: 401 - b''
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 829, in __call__
return self.main(*args, **kwargs)
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 782, in main
rv = self.invoke(ctx)
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 1066, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/click/core.py", line 610, in invoke
return callback(*args, **kwargs)
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/tap_base.py", line 178, in cli
tap.sync_all()
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/tap_base.py", line 142, in sync_all
stream.sync()
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/core.py", line 390, in sync
self._sync_records()
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/core.py", line 307, in _sync_records
for row_dict in self.get_records(partition=partition):
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/rest.py", line 187, in get_records
for row in self.request_records(partition):
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/rest.py", line 141, in request_records
resp = self._request_with_backoff(prepared_request)
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/backoff/_sync.py", line 94, in retry
ret = target(*args, **kwargs)
File "/home/visch/git/tap_bamboohr/.venv/lib/python3.8/site-packages/singer_sdk/streams/rest.py", line 94, in _request_with_backoff
raise RuntimeError(
RuntimeError: Requested resource was unauthorized, forbidden, or not found.