"""Logic for ows-assets.""" from content_utils.exceptions import IneligibleEventError from owsrequest import request from src import config from src import constants def get_asset_by_id(asset_final_id): """Get asset by asset_final_id.""" response = request.process( config.APPLICATION_NAME, config.ENVIRONMENT, 'GET', constants.OWS_ASSETS, path=f'/v2/asset/info?asset_final_id={asset_final_id}' ) if response.status_code == 404: raise IneligibleEventError(f'Asset not found for asset_final_id {asset_final_id}') elif response.status_code != 200: raise Exception(f'Retrieval failed for asset_final_id {asset_final_id}\n{response.text}') return response.json()