Google BigQuery routine information. A Routine is an API abstraction that encapsulates several
related concepts inside the BigQuery service, including scalar user defined functions (UDFS) and
stored procedures.
[[["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-08-18 UTC."],[],[],null,["# Class RoutineInfo (2.54.1)\n\nVersion latestkeyboard_arrow_down\n\n- [2.54.1 (latest)](/java/docs/reference/google-cloud-bigquery/latest/com.google.cloud.bigquery.RoutineInfo)\n- [2.54.0](/java/docs/reference/google-cloud-bigquery/2.54.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.53.0](/java/docs/reference/google-cloud-bigquery/2.53.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.52.0](/java/docs/reference/google-cloud-bigquery/2.52.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.51.0](/java/docs/reference/google-cloud-bigquery/2.51.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.50.1](/java/docs/reference/google-cloud-bigquery/2.50.1/com.google.cloud.bigquery.RoutineInfo)\n- [2.49.0](/java/docs/reference/google-cloud-bigquery/2.49.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.48.1](/java/docs/reference/google-cloud-bigquery/2.48.1/com.google.cloud.bigquery.RoutineInfo)\n- [2.47.0](/java/docs/reference/google-cloud-bigquery/2.47.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.46.0](/java/docs/reference/google-cloud-bigquery/2.46.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.45.0](/java/docs/reference/google-cloud-bigquery/2.45.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.44.0](/java/docs/reference/google-cloud-bigquery/2.44.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.43.3](/java/docs/reference/google-cloud-bigquery/2.43.3/com.google.cloud.bigquery.RoutineInfo)\n- [2.42.3](/java/docs/reference/google-cloud-bigquery/2.42.3/com.google.cloud.bigquery.RoutineInfo)\n- [2.41.0](/java/docs/reference/google-cloud-bigquery/2.41.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.40.3](/java/docs/reference/google-cloud-bigquery/2.40.3/com.google.cloud.bigquery.RoutineInfo)\n- [2.39.1](/java/docs/reference/google-cloud-bigquery/2.39.1/com.google.cloud.bigquery.RoutineInfo)\n- [2.38.2](/java/docs/reference/google-cloud-bigquery/2.38.2/com.google.cloud.bigquery.RoutineInfo)\n- [2.37.2](/java/docs/reference/google-cloud-bigquery/2.37.2/com.google.cloud.bigquery.RoutineInfo)\n- [2.36.0](/java/docs/reference/google-cloud-bigquery/2.36.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.35.0](/java/docs/reference/google-cloud-bigquery/2.35.0/com.google.cloud.bigquery.RoutineInfo)\n- [2.34.2](/java/docs/reference/google-cloud-bigquery/2.34.2/com.google.cloud.bigquery.RoutineInfo)\n- [2.33.2](/java/docs/reference/google-cloud-bigquery/2.33.2/com.google.cloud.bigquery.RoutineInfo) \n\n public class RoutineInfo implements Serializable\n\nGoogle BigQuery routine information. A Routine is an API abstraction that encapsulates several\nrelated concepts inside the BigQuery service, including scalar user defined functions (UDFS) and\nstored procedures.\n\nFor more information about the REST representation of routines, see:\n\u003chttps://cloud.google.com/bigquery/docs/reference/rest/v2/routines\u003e\n\nFor more information about working with scalar functions, see:\n\u003chttps://cloud.google.com/bigquery/docs/reference/standard-sql/user-defined-functions\u003e \n\nInheritance\n-----------\n\n[Object](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html) \\\u003e RoutineInfo \n\nImplements\n----------\n\n[Serializable](https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html) \n\nInherited Members\n-----------------\n\n[Object.clone()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#clone--) \n[Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-) \n[Object.finalize()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#finalize--) \n[Object.getClass()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#getClass--) \n[Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--) \n[Object.notify()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notify--) \n[Object.notifyAll()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#notifyAll--) \n[Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--) \n[Object.wait()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait--) \n[Object.wait(long)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-) \n[Object.wait(long,int)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#wait-long-int-)\n\nStatic Methods\n--------------\n\n### newBuilder(RoutineId routineId)\n\n public static RoutineInfo.Builder newBuilder(RoutineId routineId)\n\nReturns a builder for a `RoutineInfo` object given routine identity.\n\n### of(RoutineId routineId)\n\n public static RoutineInfo of(RoutineId routineId)\n\nReturns a `RoutineInfo` object given routine identity.\n\nMethods\n-------\n\n### equals(Object obj)\n\n public boolean equals(Object obj)\n\n**Overrides** \n[Object.equals(Object)](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#equals-java.lang.Object-)\n\n### getArguments()\n\n public List\u003cRoutineArgument\u003e getArguments()\n\nReturns the list of arguments for the routine.\n\n### getBody()\n\n public String getBody()\n\nReturns the definition body of the routine.\n\n### getCreationTime()\n\n public Long getCreationTime()\n\nReturns the creation time of the routine, represented as milliseconds since the epoch.\n\n### getDataGovernanceType()\n\n public String getDataGovernanceType()\n\nReturns the data governance type of the routine, e.g. DATA_MASKING.\n\n### getDescription()\n\n public String getDescription()\n\nReturns the description of the routine.\n\n### getDeterminismLevel()\n\n public String getDeterminismLevel()\n\nReturns the determinism level of the JavaScript UDF if defined.\n\n### getEtag()\n\n public String getEtag()\n\nReturns the hash of the routine resource.\n\n### getImportedLibraries()\n\n public List\u003cString\u003e getImportedLibraries()\n\nReturns the list of imported libraries for the routine. Only relevant for routines implemented\nusing the JAVASCRIPT language.\n\n### getLanguage()\n\n public String getLanguage()\n\nReturns the language of the routine. Currently supported languages include SQL and JAVASCRIPT.\n\n### getLastModifiedTime()\n\n public Long getLastModifiedTime()\n\nReturns the last modification time of the routine, represented as milliseconds since the epoch.\n\n### getOtelAttributes()\n\n protected Attributes getOtelAttributes()\n\n### getRemoteFunctionOptions()\n\n public RemoteFunctionOptions getRemoteFunctionOptions()\n\nReturns the Remote function specific options.\n\n### getReturnTableType()\n\n public StandardSQLTableType getReturnTableType()\n\nIf specified, returns the table type returned from the routine.\n\n### getReturnType()\n\n public StandardSQLDataType getReturnType()\n\nIf specified, returns the data type returned from the routine.\n\n### getRoutineId()\n\n public RoutineId getRoutineId()\n\nReturns the RoutineId identified for the routine resource. \\*\n\n### getRoutineType()\n\n public String getRoutineType()\n\nReturns the type of the routine, e.g. SCALAR_FUNCTION.\n\n### hashCode()\n\n public int hashCode()\n\n**Overrides** \n[Object.hashCode()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#hashCode--)\n\n### toBuilder()\n\n public RoutineInfo.Builder toBuilder()\n\nReturns a builder pre-populated using the current values of this routine.\n\n### toString()\n\n public String toString()\n\n**Overrides** \n[Object.toString()](https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html#toString--)"]]