portainer/portainer · error
invalid payload: cannot set both public and administrators o
Error message
invalid payload: cannot set both public and administrators only flags to true
What it means
Error "invalid payload: cannot set both public and administrators only flags to true" thrown in portainer/portainer.
Source
Thrown at api/http/handler/resourcecontrols/resourcecontrol_create.go:47
}
var errResourceControlAlreadyExists = errors.New("A resource control is already applied on this resource") //http/resourceControl
func (payload *resourceControlCreatePayload) Validate(r *http.Request) error {
if len(payload.ResourceID) == 0 {
return errors.New("invalid payload: invalid resource identifier")
}
if payload.Type <= 0 || payload.Type >= 10 {
return errors.New("invalid payload: Invalid type value. Value must be one of: 1 - container, 2 - service, 3 - volume, 4 - network, 5 - secret, 6 - stack, 7 - config, 8 - custom template, 9 - azure-container-group")
}
if len(payload.Users) == 0 && len(payload.Teams) == 0 && !payload.Public && !payload.AdministratorsOnly {
return errors.New("invalid payload: must specify Users, Teams, Public or AdministratorsOnly")
}
if payload.Public && payload.AdministratorsOnly {
return errors.New("invalid payload: cannot set both public and administrators only flags to true")
}
return nil
}
// @id ResourceControlCreate
// @summary Create a new resource control
// @description Create a new resource control to restrict access to a Docker resource.
// @description **Access policy**: administrator
// @tags resource_controls
// @security ApiKeyAuth
// @security jwt
// @accept json
// @produce json
// @param body body resourceControlCreatePayload true "Resource control details"
// @success 200 {object} portainer.ResourceControl "Success"
// @failure 400 "Invalid request"
// @failure 409 "A resource control is already associated to this resource"
// @failure 500 "Server error"View on GitHub (pinned to 17e74456ff)
When it happens
Trigger: Thrown at api/http/handler/resourcecontrols/resourcecontrol_create.go:47 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of portainer/portainer@17e74456ff (2026-08-26).
Data as JSON: /api/errors/650755b6aeaaf926.
Report an issue: GitHub.