Skip to main content

files/{fileid}/copy (POST) (MT4)


Copy an attachment from one page to another and/or change the filename

  • REST Method: POST
  • Method Access: public

Uri Parameters

Name Type Description
fileid int identifies a file by ID

Query Parameters

Name Type Description
authenticate bool? Force authentication for request (default: false)
name string? new filename
to string? page id of target page

Return Codes

Name Value Description
OK 200 The request completed successfully
Bad Request 400 Invalid input parameter or request body
Forbidden 403 Update access to the page is required
Not Found 404 Requested file could not be found

Implementation Notes

A file cannot be copied to a template page or a destination page that already contains a file with the same name.

Curl Code Sample: Copy an Attachment

The first example copies file with id 20 to page with id 213. The second example does the same except it renames the newly created file to "newname.txt"

Sample Code (Copy)

curl -u username:password -d "" -i http://mindtouch.address/@api/deki/files/20/copy?to=213

Sample Code (Copy and rename)

curl -u username:password -d "" -i "http://mindtouch.address/@api/deki/files/20/copy?to=213&name=newname.txt"

Implementation notes 

curl flags

Basic HTTP authentication. Sends a username and password to server so it can verify whether a user is of privilege to perform specific operation.
Specifies a POST request. The parentheses ("") imply no data, since no external data is required to complete the operation.
Includes the HTTP response header in the output. Useful for debugging.


In this example we will copy an attachment (id: 20) to the destination page (id: 456) and rename the file to "hello.txt".

Sample Code

curl -u admin:password -d "" -i "http://mindtouch.address/@api/deki/files/20/copy?to=456&name=hello.odt"

HTTP Response Headers

HTTP/1.1 200 OK
Date: Wed, 16 Mar 2011 23:08:44 GMT
Server: Dream-HTTPAPI/ Microsoft-HTTPAPI/2.0
Content-Length: 997
Content-Type: application/xml; charset=utf-8
X-Data-Stats: request-time-ms=119; mysql-queries=24; mysql-time-ms=55;
X-Deki-Site: id="default"
Via: 1.1 mindtouch

HTTP Response Body

Content-Type: application/xml

<file id="31" revision="1" href="http://devvm/@api/deki/files/31/info">
            <contents type="application/vnd.oasis.opendocument.text" size="29036" href="http://devvm/@api/deki/files/31/=hello2.odt"/>
        <user.createdby id="1" href="http://devvm/@api/deki/users/1">
    <revisions count="1" totalcount="1" href="http://devvm/@api/deki/files/31/revisions"/>
    <page.parent id="456" revision="1" href="http://devvm/@api/deki/pages/456?redirects=0">
    <path type="custom">talk17</path>

  • Was this article helpful?