{
  "description": "Admin SDK lets administrators of enterprise domains to view and manage resources like user, groups etc. It also provides audit and usage reports of domain.",
  "name": "admin",
  "id": "admin:datatransfer_v1",
  "fullyEncodeReservedExpansion": true,
  "parameters": {
    "key": {
      "type": "string",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query"
    },
    "$.xgafv": {
      "type": "string",
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "enum": [
        "1",
        "2"
      ],
      "description": "V1 error format.",
      "location": "query"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "callback": {
      "type": "string",
      "description": "JSONP",
      "location": "query"
    },
    "upload_protocol": {
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "type": "string",
      "description": "OAuth access token.",
      "location": "query"
    },
    "prettyPrint": {
      "type": "boolean",
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "type": "string",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "default": "json",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "description": "Data format for response.",
      "location": "query"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "version": "datatransfer_v1",
  "documentationLink": "https://developers.google.com/workspace/admin/",
  "protocol": "rest",
  "rootUrl": "https://admin.googleapis.com/",
  "resources": {
    "applications": {
      "methods": {
        "get": {
          "flatPath": "admin/datatransfer/v1/applications/{applicationId}",
          "path": "admin/datatransfer/v1/applications/{applicationId}",
          "description": "Retrieves information about an application for the given application ID.",
          "response": {
            "$ref": "Application"
          },
          "id": "datatransfer.applications.get",
          "scopes": [
            "https://www.googleapis.com/auth/admin.datatransfer",
            "https://www.googleapis.com/auth/admin.datatransfer.readonly"
          ],
          "parameters": {
            "applicationId": {
              "type": "string",
              "description": "ID of the application resource to be retrieved.",
              "location": "path",
              "format": "int64",
              "required": true
            }
          },
          "parameterOrder": [
            "applicationId"
          ],
          "httpMethod": "GET"
        },
        "list": {
          "parameterOrder": [],
          "parameters": {
            "customerId": {
              "description": "Immutable ID of the Google Workspace account.",
              "location": "query",
              "type": "string"
            },
            "maxResults": {
              "maximum": "500",
              "type": "integer",
              "description": "Maximum number of results to return. Default is 100.",
              "minimum": "1",
              "location": "query",
              "format": "int32"
            },
            "pageToken": {
              "description": "Token to specify next page in the list.",
              "location": "query",
              "type": "string"
            }
          },
          "httpMethod": "GET",
          "description": "Lists the applications available for data transfer for a customer.",
          "path": "admin/datatransfer/v1/applications",
          "flatPath": "admin/datatransfer/v1/applications",
          "id": "datatransfer.applications.list",
          "scopes": [
            "https://www.googleapis.com/auth/admin.datatransfer",
            "https://www.googleapis.com/auth/admin.datatransfer.readonly"
          ],
          "response": {
            "$ref": "ApplicationsListResponse"
          }
        }
      }
    },
    "transfers": {
      "methods": {
        "get": {
          "path": "admin/datatransfer/v1/transfers/{dataTransferId}",
          "description": "Retrieves a data transfer request by its resource ID.",
          "flatPath": "admin/datatransfer/v1/transfers/{dataTransferId}",
          "id": "datatransfer.transfers.get",
          "scopes": [
            "https://www.googleapis.com/auth/admin.datatransfer",
            "https://www.googleapis.com/auth/admin.datatransfer.readonly"
          ],
          "response": {
            "$ref": "DataTransfer"
          },
          "parameters": {
            "dataTransferId": {
              "required": true,
              "type": "string",
              "description": "ID of the resource to be retrieved. This is returned in the response from the insert method.",
              "location": "path"
            }
          },
          "parameterOrder": [
            "dataTransferId"
          ],
          "httpMethod": "GET"
        },
        "list": {
          "httpMethod": "GET",
          "parameters": {
            "newOwnerUserId": {
              "description": "Destination user's profile ID.",
              "location": "query",
              "type": "string"
            },
            "oldOwnerUserId": {
              "description": "Source user's profile ID.",
              "location": "query",
              "type": "string"
            },
            "customerId": {
              "description": "Immutable ID of the Google Workspace account.",
              "location": "query",
              "type": "string"
            },
            "maxResults": {
              "description": "Maximum number of results to return. Default is 100.",
              "minimum": "1",
              "location": "query",
              "format": "int32",
              "maximum": "500",
              "type": "integer"
            },
            "pageToken": {
              "description": "Token to specify the next page in the list.",
              "location": "query",
              "type": "string"
            },
            "status": {
              "type": "string",
              "description": "Status of the transfer.",
              "location": "query"
            }
          },
          "parameterOrder": [],
          "id": "datatransfer.transfers.list",
          "scopes": [
            "https://www.googleapis.com/auth/admin.datatransfer",
            "https://www.googleapis.com/auth/admin.datatransfer.readonly"
          ],
          "response": {
            "$ref": "DataTransfersListResponse"
          },
          "path": "admin/datatransfer/v1/transfers",
          "description": "Lists the transfers for a customer by source user, destination user, or status.",
          "flatPath": "admin/datatransfer/v1/transfers"
        },
        "insert": {
          "id": "datatransfer.transfers.insert",
          "scopes": [
            "https://www.googleapis.com/auth/admin.datatransfer"
          ],
          "response": {
            "$ref": "DataTransfer"
          },
          "description": "Inserts a data transfer request. See the [Transfer parameters](https://developers.google.com/workspace/admin/data-transfer/v1/parameters) reference for specific application requirements.",
          "path": "admin/datatransfer/v1/transfers",
          "request": {
            "$ref": "DataTransfer"
          },
          "flatPath": "admin/datatransfer/v1/transfers",
          "httpMethod": "POST",
          "parameterOrder": [],
          "parameters": {}
        }
      }
    }
  },
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/admin.datatransfer.readonly": {
          "description": "View data transfers between users in your organization"
        },
        "https://www.googleapis.com/auth/admin.datatransfer": {
          "description": "View and manage data transfers between users in your organization"
        }
      }
    }
  },
  "servicePath": "",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "kind": "discovery#restDescription",
  "ownerDomain": "google.com",
  "discoveryVersion": "v1",
  "canonicalName": "DataTransfer",
  "packagePath": "admin",
  "baseUrl": "https://admin.googleapis.com/",
  "basePath": "",
  "revision": "20260811",
  "mtlsRootUrl": "https://admin.mtls.googleapis.com/",
  "schemas": {
    "Application": {
      "description": "Application resources represent applications installed on the domain that support transferring ownership of user data.",
      "properties": {
        "kind": {
          "description": "Identifies the resource as a DataTransfer Application Resource.",
          "default": "admin#datatransfer#ApplicationResource",
          "type": "string"
        },
        "etag": {
          "description": "Etag of the resource.",
          "type": "string"
        },
        "name": {
          "description": "The application's name.",
          "type": "string"
        },
        "id": {
          "description": "The application's ID. Retrievable by using the [`applications.list()`](https://developers.google.com/workspace/admin/data-transfer/reference/rest/v1/applications/list) method.",
          "format": "int64",
          "type": "string"
        },
        "transferParams": {
          "description": "The list of all possible transfer parameters for this application. These parameters select which categories of the user's data to transfer.",
          "items": {
            "$ref": "ApplicationTransferParam"
          },
          "type": "array"
        }
      },
      "id": "Application",
      "type": "object"
    },
    "ApplicationsListResponse": {
      "type": "object",
      "description": "Template for a collection of Applications.",
      "properties": {
        "kind": {
          "description": "Identifies the resource as a collection of Applications.",
          "default": "admin#datatransfer#applicationsList",
          "type": "string"
        },
        "etag": {
          "description": "ETag of the resource.",
          "type": "string"
        },
        "applications": {
          "description": "The list of applications that support data transfer and are also installed for the customer.",
          "items": {
            "$ref": "Application"
          },
          "type": "array"
        },
        "nextPageToken": {
          "description": "Token to specify the next page in the list.",
          "type": "string"
        }
      },
      "id": "ApplicationsListResponse"
    },
    "ApplicationDataTransfer": {
      "type": "object",
      "id": "ApplicationDataTransfer",
      "description": "Template to map fields of ApplicationDataTransfer resource.",
      "properties": {
        "applicationTransferStatus": {
          "description": "Read-only. Current status of transfer for this application.",
          "type": "string"
        },
        "applicationId": {
          "description": "The application's ID.",
          "format": "int64",
          "type": "string"
        },
        "applicationTransferParams": {
          "description": "The transfer parameters for the application. These parameters are used to select the data which will get transferred in context of this application. For more information about the specific values available for each application, see the [Transfer parameters](https://developers.google.com/workspace/admin/data-transfer/v1/parameters) reference.",
          "items": {
            "$ref": "ApplicationTransferParam"
          },
          "type": "array"
        }
      }
    },
    "DataTransfersListResponse": {
      "type": "object",
      "description": "Template for a collection of DataTransfer resources.",
      "properties": {
        "nextPageToken": {
          "description": "Token to specify the next page in the list.",
          "type": "string"
        },
        "kind": {
          "default": "admin#datatransfer#dataTransfersList",
          "type": "string",
          "description": "Identifies the resource as a collection of data transfer requests."
        },
        "etag": {
          "description": "ETag of the resource.",
          "type": "string"
        },
        "dataTransfers": {
          "type": "array",
          "description": "List of data transfer requests.",
          "items": {
            "$ref": "DataTransfer"
          }
        }
      },
      "id": "DataTransfersListResponse"
    },
    "ApplicationTransferParam": {
      "id": "ApplicationTransferParam",
      "description": "Template for application transfer parameters.",
      "properties": {
        "key": {
          "description": "The type of the transfer parameter, such as `PRIVACY_LEVEL`.",
          "type": "string"
        },
        "value": {
          "type": "array",
          "description": "The value of the transfer parameter, such as `PRIVATE` or `SHARED`.",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object"
    },
    "DataTransfer": {
      "type": "object",
      "description": "A Transfer resource represents the transfer of the ownership of user data between users.",
      "properties": {
        "kind": {
          "default": "admin#datatransfer#DataTransfer",
          "type": "string",
          "description": "Identifies the resource as a DataTransfer request."
        },
        "etag": {
          "description": "ETag of the resource.",
          "type": "string"
        },
        "overallTransferStatusCode": {
          "description": "Read-only. Overall transfer status.",
          "type": "string"
        },
        "requestTime": {
          "type": "string",
          "description": "Read-only. The time at which the data transfer was requested.",
          "format": "date-time"
        },
        "applicationDataTransfers": {
          "description": "The list of per-application data transfer resources. It contains details of the applications associated with this transfer resource, and also specifies the applications for which data transfer has to be done at the time of the transfer resource creation.",
          "items": {
            "$ref": "ApplicationDataTransfer"
          },
          "type": "array"
        },
        "id": {
          "description": "Read-only. The transfer's ID.",
          "type": "string"
        },
        "oldOwnerUserId": {
          "description": "ID of the user whose data is being transferred.",
          "type": "string"
        },
        "newOwnerUserId": {
          "description": "ID of the user to whom the data is being transferred.",
          "type": "string"
        }
      },
      "id": "DataTransfer"
    }
  },
  "batchPath": "batch",
  "ownerName": "Google",
  "title": "Admin SDK API"
}
