def METHOD_NAME(entity_type):
    if request.method == 'GET':
        all_args = request.args.to_dict(flat=False)
        constraints = _drop_dict_keys(all_args, ['uuids'])
        uuids = request.args.getlist('uuids')
    else:
        if request.args:
            return _get_api_json_error(400, 'POST only accepts a JSON body.')
        body = request.get_json()
        if _drop_dict_keys(body, ['uuids']):
            return _get_api_json_error(400, 'POST only accepts uuids in JSON body.')
        constraints = {}
        uuids = body.get('uuids')
    entities = _get_entities(entity_type, constraints, uuids)
    descriptions_path = Path(__name__).parent.parent / \
        'ingest-validation-tools/docs/field-descriptions.yaml'
    descriptions_dict = safe_load(descriptions_path.read_text())
    tsv = _dicts_to_tsv(entities, _first_fields, descriptions_dict)
    timestamp = datetime.now().strftime('%Y-%m-%d_%H-%M-%S')
    filename = f'hubmap-{entity_type}-metadata-{timestamp}.tsv'
    return _make_tsv_response(tsv, filename)