openapi: 3.1.0
info:
title: Google BigQuery Datasets Routines API
description: The BigQuery API provides programmatic access to Google BigQuery for creating, managing, and querying datasets, tables, jobs, models, and routines. It enables developers to run SQL queries over petabytes of data, load and export data, manage access control, and orchestrate analytics workloads using serverless infrastructure.
version: '2'
contact:
name: Google Cloud Support
url: https://cloud.google.com/bigquery/docs/support
termsOfService: https://cloud.google.com/terms
servers:
- url: https://bigquery.googleapis.com/bigquery/v2
description: Production Server
security:
- oauth2: []
tags:
- name: Routines
description: Operations for managing routines (functions and procedures)
paths:
/projects/{projectId}/datasets/{datasetId}/routines:
get:
operationId: listRoutines
summary: Google BigQuery List routines
description: Lists all routines in the specified dataset.
tags:
- Routines
parameters:
- $ref: '#/components/parameters/projectId'
- $ref: '#/components/parameters/datasetId'
- $ref: '#/components/parameters/maxResults'
- $ref: '#/components/parameters/pageToken'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/RoutineList'
'401':
description: Unauthorized
post:
operationId: insertRoutine
summary: Google BigQuery Create a routine
description: Creates a new routine in the specified dataset.
tags:
- Routines
parameters:
- $ref: '#/components/parameters/projectId'
- $ref: '#/components/parameters/datasetId'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Routine'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Routine'
'400':
description: Bad request
'401':
description: Unauthorized
/projects/{projectId}/datasets/{datasetId}/routines/{routineId}:
get:
operationId: getRoutine
summary: Google BigQuery Get routine
description: Gets the specified routine resource by routine ID.
tags:
- Routines
parameters:
- $ref: '#/components/parameters/projectId'
- $ref: '#/components/parameters/datasetId'
- name: routineId
in: path
required: true
description: The ID of the routine
schema:
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Routine'
'401':
description: Unauthorized
'404':
description: Routine not found
put:
operationId: updateRoutine
summary: Google BigQuery Update routine
description: Updates information in an existing routine by replacing the entire routine resource.
tags:
- Routines
parameters:
- $ref: '#/components/parameters/projectId'
- $ref: '#/components/parameters/datasetId'
- name: routineId
in: path
required: true
description: The ID of the routine
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/Routine'
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/Routine'
'401':
description: Unauthorized
'404':
description: Routine not found
delete:
operationId: deleteRoutine
summary: Google BigQuery Delete routine
description: Deletes the routine specified by routineId from the dataset.
tags:
- Routines
parameters:
- $ref: '#/components/parameters/projectId'
- $ref: '#/components/parameters/datasetId'
- name: routineId
in: path
required: true
description: The ID of the routine
schema:
type: string
responses:
'204':
description: Successfully deleted
'401':
description: Unauthorized
'404':
description: Routine not found
components:
parameters:
datasetId:
name: datasetId
in: path
required: true
description: The ID of the dataset
schema:
type: string
pageToken:
name: pageToken
in: query
description: Page token for pagination
schema:
type: string
projectId:
name: projectId
in: path
required: true
description: The ID of the project
schema:
type: string
maxResults:
name: maxResults
in: query
description: Maximum number of results to return
schema:
type: integer
format: int32
schemas:
Routine:
type: object
properties:
routineReference:
type: object
properties:
projectId:
type: string
description: The ID of the project
datasetId:
type: string
description: The ID of the dataset
routineId:
type: string
description: The ID of the routine
routineType:
type: string
description: The type of the routine
enum:
- SCALAR_FUNCTION
- PROCEDURE
- TABLE_VALUED_FUNCTION
language:
type: string
description: The language of the routine
definitionBody:
type: string
description: The body of the routine
description:
type: string
description: A user-friendly description of the routine
creationTime:
type: string
description: The time when this routine was created
RoutineList:
type: object
properties:
routines:
type: array
items:
$ref: '#/components/schemas/Routine'
description: Routines in the requested dataset
nextPageToken:
type: string
description: A token to request the next page of results
securitySchemes:
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://accounts.google.com/o/oauth2/auth
tokenUrl: https://oauth2.googleapis.com/token
scopes:
https://www.googleapis.com/auth/bigquery: Full access to BigQuery
https://www.googleapis.com/auth/bigquery.readonly: Read-only access to BigQuery
externalDocs:
description: BigQuery API Documentation
url: https://cloud.google.com/bigquery/docs/reference/rest