{"record":{"id":"6aa4bf76c5a8efc6","repo":"OpenAPITools/openapi-generator","slug":"invalid-project-name-apiname-may-only-contain-a","errorCode":null,"errorMessage":"Invalid project name {apiName}. May only contain alphanumeric characters or underscore and start with a letter.","messagePattern":"Invalid project name (.+?)\\. May only contain alphanumeric characters or underscore and start with a letter\\.","errorType":"validation","errorClass":"RuntimeException","httpStatus":null,"severity":"error","filePath":"modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpClientCodegen.java","lineNumber":1218,"sourceCode":"        this.optionalEmitDefaultValuesFlag = flag;\n    }\n\n    public void setConditionalSerialization(boolean flag) {\n        this.conditionalSerialization = flag;\n    }\n\n    public void setOptionalProjectFileFlag(boolean flag) {\n        this.optionalProjectFileFlag = flag;\n    }\n\n    /**\n     * Sets the api name. This value must be a valid class name.\n     *\n     * @param apiName The api name\n     */\n    public void setApiName(String apiName) {\n        if (!\"\".equals(apiName) && (Boolean.FALSE.equals(apiName.matches(\"^[a-zA-Z0-9_]*$\")) || Boolean.FALSE.equals(apiName.matches(\"^[a-zA-Z].*\")))) {\n            throw new RuntimeException(\"Invalid project name \" + apiName + \". May only contain alphanumeric characters or underscore and start with a letter.\");\n        }\n        this.apiName = apiName;\n    }\n\n    public void setOperationParameterSorting(String operationParameterSorting) {\n        if (operationParameterSorting == null) {\n            operationParameterSorting = \"DEFAULT\";\n        }\n\n        this.operationParameterSorting = SortingMethod.valueOf(operationParameterSorting.toUpperCase(Locale.ROOT));\n    }\n\n    public void setModelPropertySorting(String modelPropertySorting) {\n        if (modelPropertySorting == null) {\n            modelPropertySorting = \"DEFAULT\";\n        }\n\n        this.modelPropertySorting = SortingMethod.valueOf(modelPropertySorting.toUpperCase(Locale.ROOT));","sourceCodeStart":1200,"sourceCodeEnd":1236,"githubUrl":"https://github.com/OpenAPITools/openapi-generator/blob/fcec517be3cf5b7964296bcba25fbc97541484e7/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/CSharpClientCodegen.java#L1200-L1236","documentation":"Error \"Invalid project name {apiName}. May only contain alphanumeric characters or underscore and start with a letter.\" thrown in OpenAPITools/openapi-generator.","triggerScenarios":"Thrown when the C# project name (derived from apiName/packageName) contains characters other than alphanumerics or underscore, or starts with a digit. Rename the project to match C# identifier rules.","commonSituations":"See trigger scenarios.","solutions":["Rename the project so it starts with a letter and contains only alphanumeric characters or underscores, e.g. via '--additional-properties packageName=MyApi'."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"fcec517be3cf5b7964296bcba25fbc97541484e7","analyzedAt":"2026-08-22T11:13:11.613Z","schemaVersion":2},"datasetVersion":"2026-08-22T14:17:55.899Z"}