{"record":{"id":"7add68f6f92e6bf6","repo":"RocketChat/Rocket.Chat","slug":"unable-to-generate-service-provider-metadata-when","errorCode":null,"errorMessage":"Unable to generate service provider metadata when callbackUrl option is not set","messagePattern":"Unable to generate service provider metadata when callbackUrl option is not set","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"apps/meteor/server/lib/saml/lib/generators/ServiceProviderMetadata.ts","lineNumber":42,"sourceCode":"\t\tif (!serviceProviderOptions.privateCert) {\n\t\t\tthrow new Error('Missing certificate while generating metadata for decrypting service provider');\n\t\t}\n\n\t\treturn serviceProviderOptions.metadataCertificateTemplate || defaultMetadataCertificateTemplate;\n\t}\n\n\tprivate static metadataTemplate(serviceProviderOptions: IServiceProviderOptions): string {\n\t\tconst data = {\n\t\t\tcertificateTag: this.certificateTagTemplate(serviceProviderOptions),\n\t\t};\n\n\t\tconst template = serviceProviderOptions.metadataTemplate || defaultMetadataTemplate;\n\t\treturn SAMLUtils.fillTemplateData(template, data);\n\t}\n\n\tprivate static getData(serviceProviderOptions: IServiceProviderOptions): IMetadataVariables {\n\t\tif (!serviceProviderOptions.callbackUrl) {\n\t\t\tthrow new Error('Unable to generate service provider metadata when callbackUrl option is not set');\n\t\t}\n\n\t\treturn {\n\t\t\tissuer: serviceProviderOptions.issuer,\n\t\t\tcertificate: SAMLUtils.normalizeCert(serviceProviderOptions.privateCert),\n\t\t\tidentifierFormat: serviceProviderOptions.identifierFormat || defaultIdentifierFormat,\n\t\t\tcallbackUrl: serviceProviderOptions.callbackUrl,\n\t\t\tsloLocation: `${Meteor.absoluteUrl()}_saml/logout/${serviceProviderOptions.provider}/`,\n\t\t};\n\t}\n}\n","sourceCodeStart":24,"sourceCodeEnd":54,"githubUrl":"https://github.com/RocketChat/Rocket.Chat/blob/b2c16d5842cbe6b69b59bdf6fc5e5f1afcd1f0b0/apps/meteor/server/lib/saml/lib/generators/ServiceProviderMetadata.ts#L24-L54","documentation":"Error \"Unable to generate service provider metadata when callbackUrl option is not set\" thrown in RocketChat/Rocket.Chat.","triggerScenarios":"Thrown when generating service provider metadata while the SAML callbackUrl option is not set.","commonSituations":"See trigger scenarios.","solutions":["Set the SAML callback URL (site URL / callbackUrl option) in the service provider settings before generating metadata."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b2c16d5842cbe6b69b59bdf6fc5e5f1afcd1f0b0","analyzedAt":"2026-08-18T15:26:39.429Z","contentChangedAt":"2026-08-18T15:26:39.429Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}