Annotates a program element (class, method, package etc) which is internal to its containing
library, not part of the public API, and should not be used by users of the library.
This annotation only makes sense on APIs that are not private. Its existence is necessary
because Java does not have a visibility level for code within a compilation unit.
Adding this annotation to an API is considered API-breaking.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThis webpage lists the different versions of the \u003ccode\u003eInternalApi\u003c/code\u003e Java library, ranging from the latest version 2.46.1 down to version 2.1.2.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eInternalApi\u003c/code\u003e annotation is used to mark program elements that are internal to the library and should not be used by external users, and is applied to classes, methods, and packages.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eInternalApi\u003c/code\u003e is considered a pre-GA library, meaning it may have limited support and could undergo non-compatible changes in future versions, as defined in the \u003ca href=\"/terms/service-terms#1\"\u003ePre-GA Offerings Terms\u003c/a\u003e.\u003c/p\u003e\n"],["\u003cp\u003eAdding the \u003ccode\u003eInternalApi\u003c/code\u003e annotation to an existing API is considered a breaking change and the interface has a method called \u003ccode\u003evalue()\u003c/code\u003e which returns additional context as a string, such as \u003ccode\u003e"internal to library"\u003c/code\u003e or \u003ccode\u003e"for testing"\u003c/code\u003e.\u003c/p\u003e\n"]]],[],null,[]]