А это принципиально или просто хочется сделать как можно более «правильно»?)
Я бы выбрал 403 и для если не передан и для неверного. Если действительно параметр требуемый на уровне API, то для отсутствующего можно и 400, но это спорный вопрос. А 401 всё же для другого задуман.