diff --git a/FirebaseAI/Sources/GenerativeAIService.swift b/FirebaseAI/Sources/GenerativeAIService.swift index 3807c56ea6b..078855d346e 100644 --- a/FirebaseAI/Sources/GenerativeAIService.swift +++ b/FirebaseAI/Sources/GenerativeAIService.swift @@ -211,6 +211,10 @@ struct GenerativeAIService { } } + if let bundleID = Bundle.main.bundleIdentifier { + urlRequest.setValue(bundleID, forHTTPHeaderField: "x-ios-bundle-identifier") + } + let encoder = JSONEncoder() urlRequest.httpBody = try encoder.encode(request) urlRequest.timeoutInterval = request.options.timeout diff --git a/FirebaseAI/Tests/Unit/TestUtilities/GenerativeModelTestUtil.swift b/FirebaseAI/Tests/Unit/TestUtilities/GenerativeModelTestUtil.swift index 84062c58a2a..ed07b25850d 100644 --- a/FirebaseAI/Tests/Unit/TestUtilities/GenerativeModelTestUtil.swift +++ b/FirebaseAI/Tests/Unit/TestUtilities/GenerativeModelTestUtil.swift @@ -69,6 +69,9 @@ enum GenerativeModelTestUtil { XCTAssertEqual(firebaseAppID, dataCollection ? "My app ID" : nil) XCTAssertEqual(appVersion, dataCollection ? expectedAppVersion : nil) + let bundleID = request.value(forHTTPHeaderField: "x-ios-bundle-identifier") + XCTAssertEqual(bundleID, Bundle.main.bundleIdentifier) + if let authToken { XCTAssertEqual( request.value(forHTTPHeaderField: "Authorization"),