Create a new file with the supplied data
POST /storage/volumes/{volume.uuid}/files/{path}
Creates a new file with the supplied data, creates a new directory or creates a new symlink.
Parameters
| Name | Type | In | Required | Description | 
|---|---|---|---|---|
volume.uuid  | 
string  | 
path  | 
True  | 
Volume UUID  | 
path  | 
string  | 
path  | 
True  | 
Relative path of a new file, directory or symlink. The path field requires using "%2E" to represent "." and "%2F" to represent "/" for the path provided.  | 
byte_offset  | 
integer  | 
query  | 
False  | 
How many bytes into the file to begin writing. Use -1 to append (default).  | 
overwrite  | 
bool  | 
query  | 
False  | 
If false, and the file exists, the write will fail. Default is false.  | 
stream_name  | 
string  | 
query  | 
False  | 
Name of stream associated with the file to write data to.  | 
data  | 
string  | 
formData  | 
False  | 
Data to write to the file.  | 
Request Body
| Name | Type | Description | 
|---|---|---|
name  | 
string  | 
Name of the file.  | 
path  | 
string  | 
Path of the file.  | 
target  | 
string  | 
The relative or absolute path contained in a symlink, in the form   | 
type  | 
string  | 
Type of the file.  | 
unix_permissions  | 
integer  | 
UNIX permissions to be viewed as an octal number. It consists of 4 digits derived by adding up bits 4 (read), 2 (write), and 1 (execute). The first digit selects the set user ID(4), set group ID (2), and sticky (1) attributes. The second digit selects permissions for the owner of the file; the third selects permissions for other users in the same group; the fourth selects permissions for other users not in the group.  | 
Example request
{
  "is_empty": "",
  "is_junction": "",
  "is_snapshot": "",
  "is_vm_aligned": "",
  "name": "test_file",
  "path": "d1/d2/d3",
  "target": "some_directory/some_other_directory/some_file",
  "type": "file",
  "unix_permissions": 493
}
Response
Status: 201, Created
Error
Status: Default
ONTAP Error Response Codes
| Error Code | Description | 
|---|---|
917505  | 
The SVM does not exist.  | 
917525  | 
The volume in the symlink path does not exist in the SVM.  | 
917698  | 
The volume in the symlink path is not mounted in the namespace.  | 
6488064  | 
This command is not supported.  | 
6488065  | 
The volume in the symlink path is invalid.  | 
6488066  | 
Mounting the unjunctioned volume in the symlink path failed.  | 
6488069  | 
Internal file error.  | 
8257536  | 
This operation is not supported for the system volume specified in the symlink path.  | 
8257541  | 
Failed to compute the SVM identification from this content.  | 
8257542  | 
This operation is not supported for the administrative SVM.  | 
9437549  | 
This operation is not allowed on SVMs with Infinite Volume.  | 
13172837  | 
This operation is not permitted because the SVM is locked for a migrate operation.  | 
| Name | Type | Description | 
|---|---|---|
error  | 
Example error
{
  "error": {
    "arguments": [
      {
        "code": "string",
        "message": "string"
      }
    ],
    "code": "4",
    "message": "entry doesn't exist",
    "target": "uuid"
  }
}
Definitions
See Definitions
href
| Name | Type | Description | 
|---|---|---|
href  | 
string  | 
_links
| Name | Type | Description | 
|---|---|---|
metadata  | 
||
self  | 
_links
| Name | Type | Description | 
|---|---|---|
self  | 
qos_policy
The QoS policy for the file. Both traditional and adaptive QoS policies are supported. If both qos_policy.uuid and qos_policy.name properties are specified in the same request, they must refer to the same QoS policy. To remove the file from a QoS policy, set the property qos_policy.name in a PATCH request to an empty string "" or "none".
| 
 | 
Files which are in use as a LUN cannot be assigned to a QoS policy, instead use PATCH on /storage/luns to assign a QoS policy for such files. | 
Note that a QoS policy can be set on a file, or a file's volume, but not on both.
| Name | Type | Description | 
|---|---|---|
_links  | 
||
name  | 
string  | 
The name of the QoS policy. To remove the file from a QoS policy, set this property to an empty string "" or set it to "none" in a PATCH request.  | 
uuid  | 
string  | 
The unique identifier of the QoS policy. Valid in PATCH.  | 
volume
| Name | Type | Description | 
|---|---|---|
_links  | 
||
name  | 
string  | 
The name of the volume.  | 
uuid  | 
string  | 
Unique identifier for the volume. This corresponds to the instance-uuid that is exposed in the CLI and ONTAPI. It does not change due to a volume move. 
  | 
file_info
Information about a single file.
| Name | Type | Description | 
|---|---|---|
name  | 
string  | 
Name of the file.  | 
path  | 
string  | 
Path of the file.  | 
target  | 
string  | 
The relative or absolute path contained in a symlink, in the form   | 
type  | 
string  | 
Type of the file.  | 
unix_permissions  | 
integer  | 
UNIX permissions to be viewed as an octal number. It consists of 4 digits derived by adding up bits 4 (read), 2 (write), and 1 (execute). The first digit selects the set user ID(4), set group ID (2), and sticky (1) attributes. The second digit selects permissions for the owner of the file; the third selects permissions for other users in the same group; the fourth selects permissions for other users not in the group.  | 
error_arguments
| Name | Type | Description | 
|---|---|---|
code  | 
string  | 
Argument code  | 
message  | 
string  | 
Message argument  | 
error
| Name | Type | Description | 
|---|---|---|
arguments  | 
array[error_arguments]  | 
Message arguments  | 
code  | 
string  | 
Error code  | 
message  | 
string  | 
Error message  | 
target  | 
string  | 
The target parameter that caused the error.  |