1. Types
2. content
3. library
4. item
5. updatesession
6. file

## content library item updatesession file: add spec

The `add_spec` structure describes the properties of the file to be uploaded.

### Representations:

- JSON
- XML

{
"checksum_info": {
"algorithm": "SHA1",
"checksum": "string"
},
"name": "string",
"size": 1,
"source_endpoint": {
"ssl_certificate_thumbprint": "string",
"uri": "http://myurl.com"
},
"source_type": "NONE"
}
<?xml version="1.0" ?>
<ns0:AddSpec xmlns:ns0="http://vmware.com/content/library/item/updatesession/file" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<source_endpoint>
<ssl_certificate_thumbprint>string</ssl_certificate_thumbprint>
<uri>http://myurl.com</uri>
</source_endpoint>
<name>string</name>
<source_type>NONE</source_type>
<checksum_info>
<checksum>string</checksum>
<algorithm>SHA1</algorithm>
</checksum_info>
<size>1</size>
</ns0:AddSpec>

#### Attributes:

Name | Type | Description
--- | --- | ---
Required
name | string | The name of the file being uploaded.
source_type | string | The source type (`NONE`, `PUSH`, `PULL`) from which the file content will be retrieved. Defines how the file content is retrieved. Value is one of: NONE: No source type has been requested. PUSH: The client is uploading content using HTTP(S) PUT requests. PULL: The server is pulling content from a URL. The URL scheme can be `http`, `https`, `file`, or `ds`.
Optional
source_endpoint | transfer_endpoint | Location from which the Content Library Service will fetch the file, rather than requiring a client to upload the file. Optional. It is only relevant when source_type has value PULL. This field is optional and it is only relevant when the value of `source_type` is PULL.
size | long | The file size, in bytes. Optional. If specified the server will verify it received the correct size.
checksum_info | checksum_info | The checksum of the file. If specified, the server will verify the checksum once the file is received. If there is a mismatch, the upload will fail. Optional. If not specified the server does not verify the checksum.