def METHOD_NAME(self, mine_guid, permit_guid, permit_amendment_guid):
    permit_amendment = get_permit_amendment(permit_amendment_guid)
    if permit_amendment.is_generated_in_core and permit_amendment.permit_amendment_status_code != "DFT":
        raise BadRequest('Permit Conditions cannot be edited if the permit was issued in Core and is no longer a draft.')
    request.json['permit_condition'][
        'permit_amendment_id'] = permit_amendment.permit_amendment_id
    try:
        permit_condition = PermitConditions._schema().load(request.json['permit_condition'])
    except MarshmallowError as e:
        raise BadRequest(e)
    permit_condition.save()
    set_audit_metadata(permit_amendment)
    return permit_condition, 201