alibaba/nacos · error · NacosApiException
10000
10000
Error message
Required parameter 'groupName' type String is not present
What it means
Thrown by ConfigFormV3.validate() when groupName is blank. Returns HTTP 400 code 10000 (PARAMETER_MISSING). ConfigFormV3 is the v3 form that uses 'groupName' (which it copies to the parent's 'group' field). This check runs before the parent validate(), so for v3 APIs groupName is the required field name.
Source
Thrown at config/src/main/java/com/alibaba/nacos/config/server/model/form/ConfigFormV3.java:46
*/
public class ConfigFormV3 extends ConfigForm {
private static final long serialVersionUID = 1105715502736280287L;
private String groupName;
public String getGroupName() {
return groupName;
}
public void setGroupName(String groupName) {
this.groupName = groupName;
}
@Override
public void validate() throws NacosApiException {
if (StringUtils.isBlank(groupName)) {
throw new NacosApiException(HttpStatus.BAD_REQUEST.value(), ErrorCode.PARAMETER_MISSING,
"Required parameter 'groupName' type String is not present");
}
super.setGroup(groupName);
super.validate();
}
/**
* Validate for blur search API, which allow user input empty groupName and dataId to search all configs.
*
* @throws NacosApiException when form parameters is invalid.
*/
public void blurSearchValidate() throws NacosApiException {
if (null == groupName) {
groupName = StringUtils.EMPTY;
super.setGroup(groupName);
}
if (null == getDataId()) {
setDataId(StringUtils.EMPTY);View on GitHub (pinned to 9b989acdf1)
Solutions
- Use the v3 field name 'groupName' (not 'group') in v3 API requests.
- Ensure groupName is non-blank.
- Update client SDKs to the v3-compatible version that sends groupName.
Example fix
// before (v1/v2 style)
POST /v3/admin/cs/config { "dataId":"app.yml", "group":"DEFAULT_GROUP" }
// after (v3)
POST /v3/admin/cs/config { "dataId":"app.yml", "groupName":"DEFAULT_GROUP" } Defensive patterns
Strategy: validation
Validate before calling
if (StringUtils.isBlank(groupName)) {
throw new IllegalArgumentException("groupName is required for v3 APIs");
} Try / catch
try { configApi.publish(form); }
catch (NacosApiException e) {
if (e.getErrCode() == ErrorCode.PARAMETER_MISSING.getCode())
{ /* supply groupName */ } else throw e;
} Prevention
- Use 'groupName' (not 'group') for all v3 API calls.
- Update client SDKs to v3-compatible versions.
When it happens
Trigger: Calling any v3 config API (under /v3/admin/cs or /v3/console/cs) without the groupName parameter. The v3 API surface renamed 'group' to 'groupName' for clarity.
Common situations: Migrating from v1/v2 where the field was 'group'; client SDK built against the old field name; form binding missing the new key.
Related errors
AI-assisted analysis of alibaba/nacos@9b989acdf1 (2026-08-14).
Data as JSON: /api/errors/33fb67ad6ed6bc63.
Report an issue: GitHub.