Better docs on project_id and guard against empty properties