Retrieve Information On All Files And Folders

Retrieve Information on All Files and Folders:  GET /fullview

Retrieves the information about all files and folders.

Contents

Uses and Requirements

You can use GET /fullview to retrieve the metadata for files and folders in the user’s Verizon Personal Cloud Storage account as well as the changes that have been made to these files and folders. You would typically call GET /fullview if your app is capable of storing a copy of the user’s files’ metadata in a local database. You can use subsequent calls to GET /fullview to keep the local copy in sync.

GET /fullview returns a full copy of the repository to the client in a single round trip. The response is a stream of file and folder commands. If local caching is not necessary and depending on what your app is doing, you might be able to use calls to GET /metadata/{path} instead, starting at the root and going deeper into the hierarchy, as need dictates.

Each success response to GET /fullview call includes X-Header-ETag header which represents the current state of the account. You can use the X-Header-ETag to retrieve only the changes to the user’s storage account that have been made between two different calls to GET /fullview. In this case, the response includes only the metadata for files and folders that have been added, changed or deleted.

  • If you do not specify X-Header-ETag, the response includes the full listing of the files and folders in the user’s storage account. A new X-Header-ETag is also generated and included in the response.
  • If you specify X-Header-ETag from a previous call to GET /fullview in a subsequent call to GET /fullview, the response includes only the changes to the user’s Verizon Personal Cloud Storage account that have been made between these two calls. A new X-Header-ETag is also generated and included in the response.

Example

  1. Let’s assume that the user’s storage account contains ten files.
    • The first call to GET /fullview results in the response that includes the metadata for all ten files and the X-Header-ETag for the first call.
  2. Now, let’s assume that two new files have been added to the account. The result of the second call to GET /fullview can be one of the following:
    • If you omit the X-Header-ETag, you receive the metadata of all twelve files in the user’s Verizon Personal Cloud Storage account and the X-Header-ETag for the second call.
    • If you include the X-Header-ETag from the first call in the second call to GET /fullview, the response includes only the metadata for the two new files. Included in the response is the X-Header-ETag for the second call.
  3. Now, let’s assume that 3 more files have been added to the account. Your application calls GET /fullview one more time. The result of the third call to GET /fullview can be one of the following:
    • If you omit X-Header-ETag, you receive the metadata of all fifteen files in the user’s Verizon Personal Cloud Storage account and the X-Header-ETag for the third call.
    • If you include X-Header-ETag from the first call to GET /fullview, you receive the list of the changes to the user’s account since the first call, which is the metadata for the five files added since the first call. Included in the response is the X-Header-ETag for the third call.
    • If you include X-Header-ETag from the second call to GET /fullview, you receive the list of the changes to the user’s account since the second call, which is the metadata for the last three files added since the second call. Included in the response is the X-Header-ETag for the third call.

NOTES:

  1. If a file has been deleted from a user’s account, the deleted file’s metadata is included in the response.
  2. If a user has made too many changes between two subsequent calls to GET /fullview with X-Header-ETag specified, the result might be HTTP Status 205. The user will have to do a full sync.

Request Components

HTTP Request

GET https://api.cloudapi.verizon.com/cloud/1/fullview

Header Parameters

Parameter Name Data Type Description
Authorization
required
string Must contain an OAuth 2.0 access token obtained by calling the authentication API.

Path Parameters

None

Query Parameters

Parameter Name Data Type Description
virtualfolder
required
string Folder that represents various client types at the root level and contains their respective data. Defaults to VZMOBILE.

NOTE: Refer to About Virtual Folders page in API Developer Guide for more information about virtualfolder parameter.

Request Body

None

Success Responses

Status 200

Successful GET /fullview response includes the metadata for files and folders in the user’s Verizon Personal Cloud Storage account. If you specify X-Header-ETag, it also includes the information about the files and folders that have been created, modified or deleted on the local copy of the user’s storage account.

NOTE: Only empty folders are returned in folder element. Folders which include content are returned in the path of the files included in successful response.

GET /fullview response includes parameters that are used to perform these actions:

  • File:

    • If the file does not exist, the new file is created with the given metadata.
    • If the parent folders do not exist, parent folders are created in the new path (without metadata).
    • If a file exists, the existing metadata is replaced with the new metadata.
    • If the path already exists and is a folder, the folder and its contents are deleted and the metadata for the new file is stored at the given path, converting the folder into a file.
  • Folder:

    • If the folder does not exist, the new folder is created with the given metadata.
    • If the parent folders do not exist, parent folders are created in the new path (without metadata).
    • If the path already exists and is a file, the file’s metadata is deleted and replaced with the folder metadata, converting the folder into a file.
    • If the path already exists and is a folder, no changes are made.
  • Delete:

    • If the file or folder exists, it is deleted.
    • If a folder is to be deleted, the folder and its contents are deleted.
    • If the file or folder to be deleted does not exist, no changes are made.

File Metadata:

Parameter Name Data Type Description
checksum1 string The file content’s SHA-256 checksum value
clientAttributes map Contains the custom attributes defined when the file has been created.
contentAccessible boolean If set to false, the file content is protected by copywrite and is not accessible to the user.
contentToken string A unique token that identifies the file content. contentToken is automatically generated when the file is uploaded for the first time.
deleted1 boolean If set to true, indicates that the file has been deleted. Deleted files can be included in listings if showDeleted query parameter is specified.
extension string The file’s extension
name1 string The name of the file
parentPath1 string The name of the folder where the file is located
size1 integer The size of the file, in bytes.
systemAttributes map The content of this field is transformed to list a key value pair under systemAttributes element, such as "Height":2448, "Width":3264
uri string Unique identifier of the resource
version integer The version number of the file
versionCreated1 dateTime The date and time of the last change to the file, such as when the file has been added to a folder. The date and time is in ISO 8601 format.
viewUid array[viewUid] The list of unique identifiers of the share or playlist to which the file belongs.

1 This parameter is returned in each response.

Folder Metadata:

Parameter Name Data Type Description
clientAttributes string Contains the custom attributes defined when the folder has been created.
deletionDate dateTime The date and time (in ISO 8601 format) when the folder has been deleted, for example ``2010-11-19T16:37:29.000Z``.
name1 string The name of the folder
parentPath1 string The path of the parent folder in the user’s Verizon Personal Cloud Storage account
systemAttributes map The content of this field is transformed to list a key value pair under systemAttributes element, such as "Timeline-Date":"2010-11-19T16:37:29.000Z"
versionCreated dateTime The date and time of the last change to the folder, such as when a new file has been added to the folder. The date and time is in ISO 8601 format.

1 This parameter is returned in each response.

NOTE: Only empty folders are retuned in folder element. Folders which include content are returned in the path of the files included in successful response.

Example Success Response

{
  "data": {
    "file": [
      {
        "parentPath": "/VZMOBILE/My Samsung xxx-xxxx",
        "name": "Screenshot_2016-02-10-13-31-35.png",
        "size": 110288,
        "checksum": "5672c88740bcd9c961ffea3689924a89f15b8b8c94180b5fd8112c0f85e4c08e",
        "contentToken": "xxxxxxx_xxxxxxxxxxxxx_xxxxxxx-xxxxxxxxxxxxxxxxxxxxxxxxxxxx_x_xxxxxxxxxxxxxxxxxxxxx_xxxx~",
        "versionCreated": "2016-02-10T19:00:53.762Z",
        "version": 1,
        "systemAttributes": {
          "MimeType": "image/png",
          "RealNetworkImageQuality": "{\"ss\":1.6961438655853271,\"ver\":\"1c\",\"nds\":\"PT7hGIEA-uA=\",\"fds\":0,\"iqs\":-0.14070601761341095}"
        }
      },
      {
        "parentPath": "/VZMOBILE/My Samsung xxx-xxxx",
        "name": "22046765053_4fa0e8e096_b.jpg",
        "size": 197176,
        "checksum": "ab31640ee2033a0943142014715e20ec38e3052720305ccf90e94f12765f225b",
        "contentToken": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxxxxxxxx_xxxxxxxxxxxxxxxxxx~",
        "versionCreated": "2015-11-18T19:02:10.256Z",
        "version": 1,
        "systemAttributes": {
          "MimeType": "image/jpeg",
          "RealNetworkImageQuality": "{\"ss\":-0.4097208082675934,\"ver\":\"1c\",\"nds\":\"VO5ev7i-_qw=\",\"fds\":0,\"iqs\":-0.8748995661735535}"
        }
      },
...
      

Failure Responses

  • Status 205
  • Status 400
  • Status 401
  • Status 403
  • Status 404
  • Status 412 (precondition failed - an X-Header-ETag header was included in the request and there are no changes to report)
  • Status 503

SEE ALSO:

{
	"swagger": "2.0",
	"info": {
		"title": "Personal Cloud Storage APIs",
		"version": "1"
	},
	"host": "api.cloudapi.verizon.com",
	"schemes": [
		"https"
	],
	"basePath": "/cloud/1",
	"paths": {
		"/fullview": {
			"get": {
				"operationId": "get_fullview",
				"summary": "Retrieve information on all file and folder content.",
				"description": "",
				"produces": [
					"application/json"
				],
				"parameters": [
					{
						"$ref": "#/parameters/virtualfolderFullview"
					},
					{
						"$ref": "#/parameters/etag"
					}
				],
				"responses": {
					"200": {
						"description": "OK",
						"schema": {
							"$ref": "#/definitions/fullview_response"
						},
						"headers": {
							"X-Header-ETag": {
								"description": "A string value representing the current state of the user's cloud account.  Can be used in subsequent calls to /fullview, to obtain a list of changes to a user's cloud account.",
								"type": "string"
							}
						}
					},
					"205": {
						"description": "[OK] The client's repository is too far out of sync with the Cloud"
					},
					"400": {
						"description": "[Bad Request] Query parameters missing or invalid.",
						"schema": {
							"$ref": "#/definitions/error_response"
						}
					},
					"401": {
						"description": "[Unauthorized] Bearer token is missing, expired, or invalid.",
						"schema": {
							"$ref": "#/definitions/error_response"
						}
					},
					"403": {
						"description": "[Forbidden] User is not authorized to access storage APIs.",
						"schema": {
							"$ref": "#/definitions/error_response"
						}
					},
					"404": {
						"description": "[Not Found] File was not found.",
						"schema": {
							"$ref": "#/definitions/error_response"
						}
					},
					"412": {
						"description": "[Precondition Failed] An X-Header-ETag header was included in the request, and there are no changes to report.",
						"schema": {
							"$ref": "#/definitions/error_response"
						}
					},
					"503": {
						"description": "[Service Unavailable] See response body for more detail.",
						"schema": {
							"$ref": "#/definitions/error_response"
						}
					}
				},
				"tags": [
					"Try it Out"
				],
				"security": [
					{
						"files_auth": []
					}
				]
			}
		}
	},
	"parameters": {
		"uploadid": {
			"name": "uploadid",
			"in": "path",
			"description": "Unique id to upload file binary content and to create the file. Uploadid is obtained via a call to the /fileupload/intent API (it is embedded in the URLs included in the response).",
			"required": true,
			"type": "string"
		},
		"filepath": {
			"name": "path",
			"in": "query",
			"description": "The path to the folder where file has to be uploaded.",
			"required": true,
			"type": "string"
		},
		"filename": {
			"name": "name",
			"in": "query",
			"description": "Name of the file to be uploaded.",
			"required": true,
			"type": "string"
		},
		"filesize": {
			"name": "size",
			"in": "query",
			"description": "Size of the file to be uploaded.",
			"required": true,
			"type": "integer"
		},
		"offset": {
			"name": "offset",
			"in": "query",
			"description": "Required when chunk parameter value is set to true. Represents sequence of the uploaded chunk data.",
			"required": false,
			"type": "integer"
		},
		"etag": {
			"name": "X-Header-ETag",
			"in": "header",
			"description": "Omit this header to request a full response.  To request only changes since a previous call to fullview, include this header as copied from your previous /fullview response.",
			"required": false,
			"type": "string"
		},
		"path": {
			"name": "path",
			"in": "path",
			"description": "The path to the file or folder.",
			"required": true,
			"type": "string"
		},
		"purge": {
			"name": "purge",
			"in": "query",
			"description": "If 'true', permanently deletes the file/folder.",
			"required": false,
			"type": "boolean",
			"default": false
		},
		"content-token": {
			"name": "content-token",
			"in": "path",
			"description": "The file's content token (obtained from a call to /metadata or /fullview).",
			"required": true,
			"type": "string"
		},
		"size": {
			"name": "size",
			"in": "query",
			"type": "string",
			"description": "Thumbnail size: 'xs' (24x24), 's' (64x64), or 'm' (128x128). Either 'size' or 'th' and 'tw' are required."
		},
		"th": {
			"name": "th",
			"in": "query",
			"type": "integer",
			"description": "Thumbnail height (in pixels). Either 'size' or 'th' and 'tw' are required."
		},
		"tw": {
			"name": "tw",
			"in": "query",
			"type": "integer",
			"description": "Thumbnail width (in pixels). Either 'size' or 'th' and 'tw' are required."
		},
		"include_deleted": {
			"name": "include_deleted",
			"in": "query",
			"description": "if true, response will include deleted files and folders. Default is false.",
			"required": false,
			"type": "boolean",
			"default": false
		},
		"query": {
			"name": "query",
			"in": "query",
			"description": "Contains the text to be searched and supports a number of query fields that allow clients to restrict the search to particular parts of a file's or folder's metadata",
			"required": true,
			"type": "string"
		},
		"sort": {
			"name": "sort",
			"in": "query",
			"description": "Specify sort order for response. Syntax is :'{field}+{asc|desc}'.  Valid values for 'field' are: name, versionCreated, size, extension, album, artist, captureDate, compilation, contentType, creationDate, favorite, genre, height, modificationDate, priority, source, tags, title, timelineDate",
			"required": false,
			"type": "string"
		},
		"page": {
			"name": "page",
			"in": "query",
			"description": "Page number to return, for paginated responses. Default is 1.",
			"required": false,
			"type": "integer"
		},
		"count": {
			"name": "count",
			"in": "query",
			"description": "Maximum children to include in a paginated response.  Required if page is specified.",
			"required": false,
			"type": "integer"
		},
		"count_share": {
			"name": "count",
			"in": "query",
			"description": "Maximum items to include in a paginated response, for share requests.Value must be between 1 and 200. Default is 20",
			"required": false,
			"type": "integer"
		},
		"filter": {
			"name": "filter",
			"in": "query",
			"description": "Set to 'file' or 'folder', to include only those types of items in the response.",
			"required": false,
			"type": "string"
		},
		"type": {
			"name": "type",
			"in": "query",
			"description": "The type of the playlist. Can be one of 'image', 'music', 'video' or 'image-video'.",
			"required": false,
			"type": "string"
		},
		"playlistUid": {
			"name": "playlistUid",
			"in": "path",
			"description": "Unique id related to a specific playlist.",
			"required": true,
			"type": "string"
		},
		"itemUid": {
			"name": "itemUid",
			"in": "path",
			"description": "Unique id related to a specific item in a playlist.",
			"required": true,
			"type": "string"
		},
		"deep": {
			"name": "deep",
			"in": "query",
			"description": "Specifies whether the search should stop at the topmost deleted item in the tree (deep=false), or navigate into it and list all the deleted contents    (deep=true).",
			"required": false,
			"type": "boolean",
			"default": false
		},
		"virtualfolder": {
			"name": "virtualfolder",
			"in": "query",
			"description": "Folder that represents various client types at the root level and contains their respective data.",
			"required": true,
			"type": "string"
		},
		"virtualfolderFullview": {
			"name": "virtualfolder",
			"in": "query",
			"description": "Folder that represents various client types at the root level and contains their respective data.",
			"required": false,
			"type": "string"
		},
		"filter_share": {
			"name": "filter",
			"in": "query",
			"description": "Filters the returned shares. Currently the value can only be 'outbound' (shared by the user).",
			"required": false,
			"default": "outbound",
			"type": "string"
		},
		"since": {
			"name": "since",
			"in": "query",
			"description": "The date and time, expressed in the W3C date and time format, after which messages should be returned.",
			"required": false,
			"type": "string"
		},
		"until": {
			"name": "until",
			"in": "query",
			"description": "The date and time, expressed in the W3C date and time format, up to which messages should be returned.",
			"required": false,
			"type": "string"
		},
		"cursor": {
			"name": "cursor",
			"in": "query",
			"description": "A cursor used in paginating the response. Cursors are returned in 'next' and 'prev' links in the response body. When cursor parameter is present other parameter values are ignored",
			"required": false,
			"type": "string"
		},
		"shareUid": {
			"name": "shareUid",
			"in": "path",
			"description": "The unique ID of the share.",
			"required": true,
			"type": "string"
		},
		"type_favorite": {
			"name": "type",
			"in": "query",
			"description": "Allow clients to restrict the listing favorites to files, folders or both",
			"required": false,
			"type": "string",
			"enum": [
				"file",
				"folder",
				"filefolder"
			],
			"default": "filefolder"
		},
		"filetype_favorite": {
			"name": "filetype",
			"in": "query",
			"description": "Allow clients to restrict the listing favorites to file of a single type - 'image', 'music', 'video', 'documents' or ‘all’",
			"required": false,
			"type": "string",
			"enum": [
				"image",
				"music",
				"video",
				"documents",
				"all"
			],
			"default": "all"
		},
		"createVirtualFolderName": {
			"name": "name",
			"in": "path",
			"description": "Name of the virtual folder",
			"required": true,
			"type": "string"
		}
	},
	"definitions": {
		"base_file_metadata": {
			"required": [
				"name",
				"parentPath",
				"checksum",
				"contentAccessible",
				"contentToken",
				"deleted",
				"extension",
				"size",
				"systemAttributes",
				"version",
				"versionCreated",
				"viewUid",
				"uri"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "The name of the file"
				},
				"parentPath": {
					"type": "string",
					"description": "The folder where the file is located"
				},
				"checksum": {
					"type": "string",
					"description": "The file content's SHA-256 checksum value"
				},
				"contentAccessible": {
					"type": "boolean",
					"description": "If false, the file content is protected by copywrite and is not accessible to the user"
				},
				"contentToken": {
					"type": "string",
					"description": "A unique string representing the file. Will change if file content is updated.  Required for certain APIs, such as /thumbnails"
				},
				"deleted": {
					"type": "boolean",
					"description": "If true, the file has been logically deleted"
				},
				"extension": {
					"type": "string",
					"description": "The file's extension, as extracted from the filename"
				},
				"size": {
					"type": "integer",
					"format": "int64",
					"description": "The size of the file, in bytes"
				},
				"systemAttributes": {
					"description": "A set of file attributes.  The attribute set will vary depending on file type"
				},
				"version": {
					"type": "integer",
					"description": "File version.  This number increases when the file is updated"
				},
				"versionCreated": {
					"type": "string",
					"description": "Creation timestamp for the file's current version, in ISO-8601 format"
				},
				"viewUid": {
					"type": "array",
					"description": "Array of viewUid",
					"items": {
						"$ref": "#/definitions/viewUid"
					}
				},
				"uri": {
					"type": "string",
					"description": "Unique identifier of the resource"
				}
			}
		},
		"file_metadata": {
			"allOf": [
				{
					"$ref": "#/definitions/base_file_metadata"
				},
				{
					"properties": {
						"shareAssociation": {
							"type": "array",
							"description": "Array of shareAssociation",
							"items": {
								"$ref": "#/definitions/shareAssociation"
							}
						}
					}
				}
			]
		},
		"file_metadata_list": {
			"type": "array",
			"items": {
				"$ref": "#/definitions/file_metadata"
			}
		},
		"base_file_metadata_list": {
			"type": "array",
			"items": {
				"$ref": "#/definitions/base_file_metadata"
			}
		},
		"base_folder_metadata": {
			"required": [
				"name",
				"parentPath",
				"size",
				"version",
				"versionCreated",
				"count",
				"deleted",
				"viewUid",
				"uri"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "The name of the folder"
				},
				"parentPath": {
					"type": "string",
					"description": "The name of the folder's parent folder"
				},
				"size": {
					"type": "integer",
					"format": "int64",
					"description": "The size of the folder, in bytes"
				},
				"version": {
					"type": "integer",
					"description": "Folder version.  This number increases when the folder content changes"
				},
				"versionCreated": {
					"type": "string",
					"description": "Creation timestamp for the folder's current version, in ISO-8601 format"
				},
				"count": {
					"type": "integer",
					"description": "The number of items the folder contains"
				},
				"deleted": {
					"type": "boolean",
					"description": "If true, the folder has been logically deleted"
				},
				"viewUid": {
					"type": "array",
					"description": "Array of viewUid",
					"items": {
						"required": [
							"type",
							"viewType",
							"uid"
						],
						"properties": {
							"type": {
								"type": "string",
								"description": "Shared Type"
							},
							"viewType": {
								"type": "string",
								"description": "Type of view"
							},
							"uid": {
								"type": "string",
								"description": "Unique id of view"
							}
						}
					}
				},
				"uri": {
					"type": "string",
					"description": "Unique identifier of the resource"
				}
			}
		},
		"folder_metadata": {
			"allOf": [
				{
					"$ref": "#/definitions/base_folder_metadata"
				},
				{
					"properties": {
						"shareAssociation": {
							"type": "array",
							"description": "Array of shareAssociation",
							"items": {
								"required": [
									"uid",
									"visibility",
									"name",
									"type"
								],
								"properties": {
									"uid": {
										"type": "string",
										"description": "Unique id"
									},
									"visibility": {
										"type": "string",
										"description": "Visibility of share association"
									},
									"name": {
										"type": "string",
										"description": "Name"
									},
									"type": {
										"type": "string",
										"description": "Type of share association"
									}
								}
							}
						}
					}
				}
			]
		},
		"viewUid": {
			"required": [
				"type",
				"viewType",
				"uid"
			],
			"properties": {
				"type": {
					"type": "string",
					"description": "Shared Type"
				},
				"viewType": {
					"type": "string",
					"description": "Type of view"
				},
				"uid": {
					"type": "string",
					"description": "Unique id of view"
				}
			}
		},
		"shareAssociation": {
			"required": [
				"uid",
				"visibility",
				"name",
				"type"
			],
			"properties": {
				"uid": {
					"type": "string",
					"description": "Unique id"
				},
				"visibility": {
					"type": "string",
					"description": "Visibility of share association"
				},
				"name": {
					"type": "string",
					"description": "Name"
				},
				"type": {
					"type": "string",
					"description": "Type of share association"
				}
			}
		},
		"folder_metadata_list": {
			"type": "array",
			"items": {
				"$ref": "#/definitions/folder_metadata"
			}
		},
		"base_folder_metadata_list": {
			"type": "array",
			"items": {
				"$ref": "#/definitions/base_folder_metadata"
			}
		},
		"deleted_list": {
			"required": [
				"path"
			],
			"properties": {
				"path": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "An array of deleted file and folder paths."
				}
			}
		},
		"parent_folder_metadata": {
			"allOf": [
				{
					"$ref": "#/definitions/folder_metadata"
				},
				{
					"properties": {
						"file": {
							"$ref": "#/definitions/file_metadata_list"
						},
						"folder": {
							"$ref": "#/definitions/folder_metadata_list"
						}
					}
				}
			]
		},
		"metadata_response": {
			"properties": {
				"file": {
					"$ref": "#/definitions/file_metadata"
				},
				"folder": {
					"$ref": "#/definitions/parent_folder_metadata"
				}
			}
		},
		"fullview_response": {
			"required": [
				"data"
			],
			"properties": {
				"data": {
					"$ref": "#/definitions/fullview_data"
				}
			}
		},
		"virtualfolder_response": {
			"required": [
				"name",
				"parentPath",
				"size",
				"versionCreated",
				"immutable"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "The name of the virtual folder"
				},
				"parentPath": {
					"type": "string",
					"description": "The name of the parent folder"
				},
				"size": {
					"type": "integer",
					"format": "int64",
					"description": "The size of the virtual folder, in bytes"
				},
				"immutable": {
					"type": "boolean",
					"default": false,
					"description": "Whether virtual folder is immutable"
				},
				"versionCreated": {
					"type": "string",
					"description": "Creation timestamp for the virtual folder's current version, in ISO-8601 format"
				}
			}
		},
		"renameVirtualFolderRequest": {
			"required": [
				"src",
				"target"
			],
			"properties": {
				"src": {
					"type": "string",
					"description": "Name of the virtual folder."
				},
				"target": {
					"type": "string",
					"description": "Changed name of the virtual folder."
				}
			}
		},
		"fullview_data": {
			"properties": {
				"file": {
					"$ref": "#/definitions/base_file_metadata_list"
				},
				"folder": {
					"$ref": "#/definitions/base_folder_metadata_list"
				},
				"deleted": {
					"$ref": "#/definitions/deleted_list"
				}
			}
		},
		"trash_response": {
			"required": [
				"count",
				"data"
			],
			"properties": {
				"count": {
					"type": "integer",
					"format": "int64",
					"description": "Total number of search matches"
				},
				"data": {
					"$ref": "#/definitions/trash_data"
				}
			}
		},
		"trash_data": {
			"properties": {
				"file": {
					"$ref": "#/definitions/base_file_metadata_list"
				},
				"folder": {
					"$ref": "#/definitions/base_folder_metadata_list"
				}
			}
		},
		"searchresult_response": {
			"required": [
				"count"
			],
			"properties": {
				"count": {
					"type": "integer",
					"format": "int64",
					"description": "Total number of search matches"
				},
				"file": {
					"$ref": "#/definitions/file_metadata_list"
				},
				"folder": {
					"$ref": "#/definitions/folder_metadata_list"
				}
			}
		},
		"account_response": {
			"required": [
				"usage",
				"id"
			],
			"properties": {
				"id": {
					"type": "string",
					"description": "The user identifier."
				},
				"alias": {
					"type": "string",
					"description": "Username. Available only for MDN accounts."
				},
				"usage": {
					"required": [
						"quota",
						"quotaUsed"
					],
					"properties": {
						"quota": {
							"type": "integer",
							"format": "int64",
							"description": "Total quota space available to the user on the cloud in bytes"
						},
						"quotaUsed": {
							"type": "integer",
							"format": "int64",
							"description": "Total quota space used in bytes"
						}
					}
				}
			}
		},
		"playlist": {
			"required": [
				"uid",
				"name",
				"type",
				"mimeTypeRegex",
				"creationDate",
				"lastModifiedDate",
				"uri"
			],
			"properties": {
				"uid": {
					"type": "string",
					"description": "The uid of the playlist"
				},
				"name": {
					"type": "string",
					"description": "The name of the playlist"
				},
				"type": {
					"type": "string",
					"description": "The type of playlist"
				},
				"mimeTypeRegex": {
					"type": "string",
					"description": "Regex pattern for playlist"
				},
				"paths": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "Array of paths"
				},
				"creationDate": {
					"type": "string",
					"description": "Timestamp for creation date of playlist"
				},
				"lastModifiedDate": {
					"type": "string",
					"description": "Timestamp for last modified date of playlist"
				},
				"uri": {
					"type": "string",
					"description": "Unique identifier of the resource"
				},
				"shareAssociation": {
					"type": "array",
					"description": "Array of shareAssociation",
					"items": {
						"$ref": "#/definitions/shareAssociation"
					}
				}
			}
		},
		"playlist_item": {
			"required": [
				"filename",
				"path",
				"mimeType",
				"size",
				"versionCreated",
				"fileAttribute",
				"contentToken",
				"checksum",
				"contentAccessible",
				"extension",
				"tags",
				"uri"
			],
			"properties": {
				"filename": {
					"type": "string",
					"description": "Name of the file"
				},
				"path": {
					"type": "string",
					"description": "Path of the file"
				},
				"mimeType": {
					"type": "string",
					"description": "Type of content"
				},
				"size": {
					"type": "integer",
					"description": "Size of the item"
				},
				"versionCreated": {
					"type": "string",
					"description": "Timestamp of version created date"
				},
				"fileAttribute": {
					"$ref": "#/definitions/playlist_item"
				},
				"contentToken": {
					"type": "string",
					"description": "Unique token for content"
				},
				"checksum": {
					"type": "string",
					"description": "Checksum detail"
				},
				"contentAccessible": {
					"type": "boolean",
					"description": "Show accessibility of the content"
				},
				"extension": {
					"type": "string",
					"description": "File extension"
				},
				"tags": {
					"type": "object"
				},
				"uri": {
					"type": "string",
					"description": "Unique identifier of the resource"
				}
			}
		},
		"playlist_add_request": {
			"required": [
				"add"
			],
			"properties": {
				"add": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "An array of paths to items."
				}
			}
		},
		"restore_trash_request": {
			"required": [
				"path"
			],
			"properties": {
				"path": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "An array of paths of trashed items."
				}
			}
		},
		"updateTags_request": {
			"required": [
				"uri",
				"Tags"
			],
			"properties": {
				"uri": {
					"type": "string",
					"description": "URI of the resource. This is a URI value obtained from a fullview or metadata response"
				},
				"Tags": {
					"type": "string",
					"description": "A set of Tags"
				},
				"createVersion": {
					"type": "boolean",
					"description": "If 'true', creates a new version of the file or folder. Defaults to 'false'.",
					"default": false
				}
			}
		},
		"updateFavorite_request": {
			"required": [
				"uri"
			],
			"properties": {
				"uri": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "URI of the resource. This is a URI value obtained from a fullview or metadata response"
				},
				"createVersion": {
					"type": "boolean",
					"description": "If 'true', creates a new version of the file or folder. Defaults to 'false'.",
					"default": false
				}
			}
		},
		"playlist_add_response": {
			"required": [
				"paths"
			],
			"properties": {
				"paths": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "List of paths"
				}
			}
		},
		"playlist_request": {
			"required": [
				"name",
				"type",
				"paths"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of the playlist."
				},
				"paths": {
					"type": "array",
					"items": {
						"type": "string"
					},
					"description": "An array of paths to items."
				},
				"type": {
					"type": "string",
					"description": "The type of the playlist. Can be one of 'image', 'music', 'video' or 'image-video'"
				}
			}
		},
		"playlist_base": {
			"required": [
				"name",
				"type"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "The name of the playlist"
				},
				"type": {
					"type": "string",
					"description": "The type of the playlist. Can be one of 'image', 'music', 'video' or 'image-video'"
				}
			}
		},
		"folder_request": {
			"required": [
				"name",
				"path",
				"override"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Folder name to be created."
				},
				"path": {
					"type": "string",
					"description": "Path where the folder has to be created."
				},
				"override": {
					"type": "string",
					"description": "Specifies what happens if a folder of the same name exists at the target path. Set to 'overwrite' to overwrite the existing folder. Set to 'modify' to treat the new folder as a modification of the old folder. If the 'override' parameter is not set, the following algorithm is applied if the existing folder has a 'deleted' attribute set to 'true', the folder is overwritten; if the old folder's 'deleted' attribute is false or not set, the folder is modified."
				}
			}
		},
		"fops_copy_request": {
			"required": [
				"src",
				"target",
				"safe",
				"conflictsolve",
				"override"
			],
			"properties": {
				"src": {
					"type": "string",
					"description": "Full path of the file/folder for copy/move/rename operations."
				},
				"target": {
					"type": "string",
					"description": "Full path of the target file/folder for copy/move/rename operations. In case of files the full/changed name should be included in the target."
				},
				"safe": {
					"type": "boolean",
					"default": false,
					"description": "If 'true', ensures that name conflicts are resolved according to the value of the 'conflictsolve' parameter. Defaults to 'false', in which case the operation will overwrite an existing file/folder of the same name."
				},
				"conflictsolve": {
					"type": "string",
					"description": "Defines how name conflicts are resolved, if the 'safe' parameter is set to 'true'. If set to 'copy', a new file is written to the destination folder with a non-conflicting name. If not set, the operation is rolled back and operation returns '409 Conflict'."
				},
				"override": {
					"type": "string",
					"description": "Specifies what happens if a file of the same name exists at the target path and the 'safe' parameter is not set. Set to 'overwrite' to treat the copied file as completely new. Set to 'modify' to treat the new file as a modification of the old one. If the 'override' parameter is not set, the following algorithm is used: if the existing file has a 'deleted' attribute set to 'true', the file is overwritten; if the old file's 'deleted' attribute is false or not set, the file is modified."
				}
			}
		},
		"metadata_update_request": {
			"required": [
				"name",
				"value",
				"uri"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "The name of the system attribute to be updated"
				},
				"value": {
					"type": "string",
					"description": "The value of the system attribute"
				},
				"uri": {
					"type": "string",
					"description": "The URI to the file which needs to be updated"
				}
			}
		},
		"fops_change_request": {
			"required": [
				"src",
				"target",
				"safe",
				"conflictsolve"
			],
			"properties": {
				"src": {
					"type": "string",
					"description": "Full path of the file/folder for copy/move/rename operations."
				},
				"target": {
					"type": "string",
					"description": "Full path of the target file/folder for copy/move/rename operations. In case of files the full/changed name should be included in the target."
				},
				"safe": {
					"type": "boolean",
					"default": false,
					"description": "If 'true', ensures that name conflicts are resolved according to the value of the 'conflictsolve' parameter. Defaults to 'false', in which case the operation will overwrite an existing file/folder of the same name."
				},
				"conflictsolve": {
					"type": "string",
					"description": "Defines how name conflicts are resolved, if the 'safe' parameter is set to 'true'. If set to 'copy', a new file is written to the destination folder with a non-conflicting name. If not set, the operation is rolled back and operation returns '409 Conflict'."
				}
			}
		},
		"contacts": {
			"required": [
				"contactsResponse"
			],
			"properties": {
				"contactsResponse": {
					"$ref": "#/definitions/contacts_response"
				}
			}
		},
		"contacts_response": {
			"required": [
				"account"
			],
			"properties": {
				"account": {
					"$ref": "#/definitions/contacts_account"
				}
			}
		},
		"contacts_account": {
			"required": [
				"userid",
				"addrbook"
			],
			"properties": {
				"userid": {
					"type": "string",
					"description": "Unique identifier for the current user"
				},
				"addrbook": {
					"$ref": "#/definitions/contacts_addrbook"
				}
			}
		},
		"contacts_addrbook": {
			"required": [
				"updated",
				"contacts"
			],
			"properties": {
				"updated": {
					"type": "string",
					"description": "Timestamp of latest update"
				},
				"contacts": {
					"$ref": "#/definitions/contacts_contacts"
				}
			}
		},
		"contacts_contacts": {
			"required": [
				"itemcount",
				"contact"
			],
			"properties": {
				"itemcount": {
					"type": "integer",
					"description": "Number of contacts"
				},
				"contact": {
					"type": "array",
					"description": "Array of contacts",
					"items": {
						"$ref": "#/definitions/contact"
					}
				}
			}
		},
		"contact": {
			"properties": {
				"firstname": {
					"type": "string",
					"description": "Contact's given name"
				},
				"lastname": {
					"type": "string",
					"description": "Contact's surname"
				},
				"source": {
					"type": "string",
					"description": "Origin of the contact"
				},
				"note": {
					"type": "string",
					"description": "Arbitrary text associated with this contact"
				},
				"created": {
					"type": "string",
					"description": "Timestamp the contact was created"
				},
				"modified": {
					"type": "string",
					"description": "Timestamp the contact was last updated"
				},
				"incaseofemergency": {
					"type": "boolean",
					"description": "Marked true for emergency contacts"
				},
				"favorite": {
					"type": "boolean",
					"description": "Marked true for favorite contacts"
				},
				"tel": {
					"type": "array",
					"description": "List of contact's telephone numbers",
					"items": {
						"$ref": "#/definitions/contacts_tel"
					}
				},
				"email": {
					"type": "array",
					"description": "List of contact's email addresses",
					"items": {
						"$ref": "#/definitions/contacts_email"
					}
				},
				"address": {
					"type": "array",
					"description": "List of contact's addresses",
					"items": {
						"$ref": "#/definitions/contacts_address"
					}
				},
				"im": {
					"type": "array",
					"description": "List of contact's IM addresses",
					"items": {
						"$ref": "#/definitions/contacts_im"
					}
				},
				"dedupe": {
					"type": "string",
					"description": ""
				},
				"version": {
					"type": "integer",
					"description": "Contact version.  This number increases when the contact is updated"
				},
				"id": {
					"type": "string",
					"description": "Unique identifier for this contact"
				}
			}
		},
		"contacts_tel": {
			"required": [
				"type",
				"indx",
				"number",
				"preference"
			],
			"properties": {
				"type": {
					"type": "string",
					"description": "Type of telephone number, e.g. home, mobile, etc"
				},
				"indx": {
					"type": "integer",
					"description": "When combined with 'type', provides a unique identifier for the entry"
				},
				"number": {
					"type": "string",
					"description": "Telephone number"
				},
				"preference": {
					"type": "string",
					"description": "When sorting, lower numbers indicate a higher preference"
				}
			}
		},
		"contacts_email": {
			"required": [
				"type",
				"indx",
				"address",
				"preference"
			],
			"properties": {
				"type": {
					"type": "string",
					"description": "Type of email address, e.g. personal, business, etc"
				},
				"indx": {
					"type": "integer",
					"description": "When combined with 'type', provides a unique identifier for the entry"
				},
				"address": {
					"type": "string",
					"description": "Email address"
				},
				"preference": {
					"type": "string",
					"description": "For sorting. Lower numbers indicate a higher preference"
				}
			}
		},
		"contacts_address": {
			"required": [
				"type",
				"indx",
				"preference"
			],
			"properties": {
				"type": {
					"type": "string",
					"description": "Type of address, e.g. home, business, etc"
				},
				"indx": {
					"type": "integer",
					"description": "When combined with 'type', provides a unique identifier for the entry"
				},
				"pobox": {
					"type": "string"
				},
				"street": {
					"type": "string"
				},
				"city": {
					"type": "string"
				},
				"zipcode": {
					"type": "string"
				},
				"country": {
					"type": "string"
				},
				"preference": {
					"type": "string",
					"description": "For sorting. Lower numbers indicate a higher preference"
				}
			}
		},
		"contacts_im": {
			"required": [
				"address",
				"preference",
				"type"
			],
			"properties": {
				"type": {
					"type": "string",
					"description": "Type of address, e.g. home, business, etc"
				},
				"address": {
					"type": "string",
					"description": "IM contact string"
				},
				"preference": {
					"type": "string",
					"description": "For sorting. Lower numbers indicate a higher preference"
				}
			}
		},
		"createShare_request": {
			"required": [
				"resources"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "The name of the share."
				},
				"resources": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/resource_request"
					},
					"description": "An array of resource request object."
				},
				"expiresIn": {
					"type": "integer",
					"description": "The time to live of the share in seconds. The value 0 signifies the share will never expire. Minimum value is 300. If not provided, defaults to 86400."
				}
			}
		},
		"share_response_list": {
			"properties": {
				"count": {
					"type": "integer",
					"description": "The total number of shares"
				},
				"links": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/link_response"
					}
				},
				"share": {
					"type": "array",
					"items": {
						"$ref": "#/definitions/share_response"
					}
				}
			}
		},
		"link_response": {
			"required": [
				"rel",
				"link"
			],
			"properties": {
				"rel": {
					"type": "string",
					"description": "The link identifier."
				},
				"link": {
					"type": "string",
					"description": "The URI of the link."
				}
			}
		},
		"share_response": {
			"required": [
				"name"
			],
			"properties": {
				"links": {
					"type": "array",
					"items": {
						"required": [
							"rel",
							"link"
						],
						"properties": {
							"rel": {
								"type": "string",
								"description": "The link identifier."
							},
							"link": {
								"type": "string",
								"description": "The URI of the link."
							}
						}
					}
				},
				"uid": {
					"type": "string",
					"description": "The resource identifier."
				},
				"name": {
					"type": "string",
					"description": "The name of the share."
				},
				"owner": {
					"description": "The owner of the share"
				},
				"sharer": {
					"description": "The sharer of the share"
				},
				"totalResourceCount": {
					"type": "integer",
					"description": "The total count of shared resources."
				},
				"expiresIn": {
					"type": "integer",
					"description": "The time to live of the share in seconds."
				},
				"expirationDate": {
					"type": "string",
					"description": "Expiration date on the share."
				},
				"creationDate": {
					"type": "string",
					"description": "The date and time the share was created."
				},
				"lastModifiedDate": {
					"type": "string",
					"description": "The date and time the share was last modified from the perspective of the owner."
				},
				"inboundLastModifiedDate": {
					"type": "string",
					"description": "The date and time the share was last modified from the perspective of a member."
				},
				"publicInviteKey": {
					"type": "string",
					"description": "The invite key of a public share."
				}
			}
		},
		"createShare_response": {
			"allOf": [
				{
					"$ref": "#/definitions/share_response"
				},
				{
					"properties": {
						"resources": {
							"type": "array",
							"description": "Array of resources",
							"items": {
								"$ref": "#/definitions/resource_response"
							}
						}
					}
				}
			]
		},
		"resource_request": {
			"required": [
				"name",
				"location"
			],
			"properties": {
				"name": {
					"type": "string",
					"description": "Name of the resource."
				},
				"type": {
					"type": "string",
					"description": "Type of the resource: file/folder/playlist"
				},
				"subType": {
					"type": "string",
					"description": "(Optional) subtype of the resource: image/video/audio.  Used to aid playback of the file when viewed in a browser"
				},
				"location": {
					"type": "string",
					"description": "Location of the resource. This is a URI value obtained from a fullview, metadata, or playlist response"
				},
				"size": {
					"type": "integer",
					"description": "Size of the resource. Mandatory in case of file share only."
				}
			}
		},
		"resource_response": {
			"required": [
				"name",
				"type"
			],
			"properties": {
				"uid": {
					"type": "string",
					"description": "The resource identifier."
				},
				"name": {
					"type": "string",
					"description": "Name of the resource."
				},
				"type": {
					"type": "string",
					"description": "Type of the resource."
				},
				"subType": {
					"type": "string",
					"description": "SubType of the resource."
				},
				"location": {
					"type": "string",
					"description": "Location of the resource."
				},
				"size": {
					"type": "integer",
					"description": "Size of the resource."
				},
				"resourceId": {
					"type": "string",
					"description": "Id of the resource."
				},
				"contentToken": {
					"type": "string",
					"description": "ContentToken of the resource."
				},
				"checksum": {
					"type": "string",
					"description": "Checksum of the resource."
				},
				"lastModifiedDate": {
					"type": "string",
					"description": "LastModifiedDate of the resource."
				}
			}
		},
		"uploadurls": {
			"required": [
				"uploadurl"
			],
			"properties": {
				"uploadurl": {
					"type": "string",
					"description": "The upload url with the uploadid to upload the binary content of the file."
				},
				"commiturl": {
					"type": "string",
					"description": "The commit url to create the file after binary content is uploaded in chunks."
				}
			}
		},
		"error_response": {
			"required": [
				"error_code",
				"error_description"
			],
			"properties": {
				"error_code": {
					"type": "string",
					"description": "A unique code identifying the error"
				},
				"error_description": {
					"type": "string",
					"description": "A detailed description of the error"
				}
			}
		},
		"tags_response": {
			"required": [
				"Tags"
			],
			"properties": {
				"Tags": {
					"type": "string",
					"description": "A set of Tags"
				}
			}
		}
	},
	"securityDefinitions": {
		"files_auth": {
			"type": "oauth2",
			"flow": "accessCode",
			"authorizationUrl": "https://api.cloudapi.verizon.com/cloud/1/oauth2/authorize",
			"tokenUrl": "https://api.cloudapi.verizon.com/cloud/1/oauth2/token",
			"scopes": {
				"full_access": "I agree to allow this website to access my application account to try out the API."
			}
		}
	}
}

Copyright © 2015-2017, Verizon and/or its Licensors. All rights reserved.