Skip to main content
Index

Attachments

Attachments APIs allows a user to upload an attachment and to include this attachment in any order or request. These attachments may also be deleted.

POST Attachments File

POST /attachments/file

 Method  POST
 URL or End Point  /v1/attachments/file
 Headers  Authorization, Content-Type
 Query Parameters  purpose

 Form Data

 file
 Body  Not applicable

 

This method creates an attachment to be uploaded. The returned attachment ID and attachment name will be used with other POST APIs that require an attachment, such as letter of agreement file for cross connect POST APIs or purchase order attachment for order POST APIs. 

 

The attachment size limit per file is 10 MB in the following formats: bmp, jpg, jpeg, gif, png, tif, tiff, txt, doc, docx, xls, xlsx, ppt, pps, ppsx, pdf, and vsd.

 

However, depending on the order or attachment type, the size of the file and the number of files that can be attached with a POST API may vary. Refer to the description of the attachment object in the request body parameter for the specific POST API.

 

Each attachment will only be stored for up to 40 days from the day of creation. The returned attachment ID number will no longer be valid after this time.

 

The attachment ID is exclusive to the original user who uploaded the attachment, and cannot be used by other users.

 

When using a GET call to retrieve order or ticket details, the attachment ID returned may appear different than the ID submitted. This is expected behaviour, so you may ignore this. However, the attachment name returned should match the original attachment name in this POST call. We recommend that you avoid having hard dependency on attachment ID from this method.

 

The authorization token and content-type are the only headers that are passed to this API and a response is received based on the values passed.

 

If you are unaware of how to obtain an authorization token, refer to Requesting Access and Refresh tokens under the Getting Started section.

 

The following screenshots show a sample curl request and JSON response for this API. The response indicates that a user can upload a file, 'letter_of_agreement294850.docx'.

 

curl -X

POST "https://api.equinix.com/v1/attachments/file?purpose=LOA"

-H "content-type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW"

-H "authorization: Bearer qwErtY8zyW1abcdefGHI"

-F 'uploadFile=@/C:/Users/johndoe/Desktop/letter_of_agreement294850.docx'

 

The description of the request parameters is as follows:

 

When 'Conditional' is indicated for a request parameter, refer to Description for further details. 

 

Form Parameter Name Mandatory Type Example Description
uploadFile  Yes file letter_of_agreement294850.docx

The name of the file to be uploaded.

 

 

This original name of the file will be saved as the attachment name in Equinix's system. Once uploaded, the attachment name cannot be changed.

 

Query Parameter Name Mandatory Type Example Applicable values Description
purpose Conditional string LOA

LOA,

PO_DOCUMENT

Purpose of the file to be uploaded.

 

E.g. Letter of Authorization (LOA) for Cross Connect, Purchase Order (PO) document.

 

When an LOA or PO document is uploaded, this is a mandatory query parameter for background validation purposes.

 

{
  "attachmentId": "abc1fd2e-345f-67g4-hi89-01jk234l5m6n",
  "attachmentName": "letter_of_agreement294850.docx",
  "attachmentType": "docx",
  "attachmentSize": 35242,
  "createdDate": "2019-07-02T02:46:27.105Z",
  "createdBy": "johnDoe",
  "lastUpdatedDate": "2019-07-02T02:46:27.105Z"
}

 

The description of the response payload is as follows:

 

Field name Type Example Description
attachmentId string abc1fd2e-345f-67g4-hi89-01jk234l5m6n

ID of the file uploaded (attachment). This is a fixed identifier unique to the attachment.

 

 

This is mandatory to include in other POST APIs with attachments. 

 

This is mandatory to include when deleting or retrieving this attachment.

attachmentName string letter_of_agreement294850.docx

Name of the file uploaded (attachment). 

 

 

This attachment name will remain unchanged in Equinix's system. 


When including this attachment in other POST API request bodies, the attachment name may be changed by the user for their reference. However, this original attachment name will remain unchanged and linked to the attachment ID number in Equinix's system.

 

For example, the attachment name is registered in the system as 'letter_of_agreement294850.docx', but while including this in a cross connect order, it may be named as 'letter_of_agreement294850.docx' or be changed to '2019-LOAforAkamai1.docx', based on user's preference. However, when using a GET call to retrieve order or ticket details, the original attachment name 'letter_of_agreement294850.docx' will be the only name linked to this attachment. 

attachmentType string

docx

Type of file uploaded.

attachmentSize string 35242

Size of file uploaded in bytes.

createdDate string 2019-07-02T02:46:27.105Z

Date and time (UTC timezone) that file was uploaded (following ISO 8601 Datetime format).

createdBy string johnDoe

UserName of user who uploaded the file. 

 

The file will only be stored for up to 40 days from this date before being deleted. After this, the file would have to be uploaded again and the new attachmentId and attachmentName would have to be used.

lastUpdatedDate string 2019-07-02T02:46:27.105Z

Date and time (UTC timezone) that file was last accessed (following ISO 8601 Datetime format).

 

If you get “Insufficient permissions” error, contact your Master Administrator. 

DELETE Attachments {attachmentId}

DELETE /attachments/{attachmentId}

 Method  DELETE
 URL or End Point

 /v1/attachments/{attachmentId}

 Headers  Authorization, Content-Type
 Query Parameters  Not applicable
 Body  Not applicable

 

This API deletes a specific attachment file. The authorization token and content-type are the only headers that are passed to this API and a response is received based on the values passed.

 

If you are unaware of how to obtain an authorization key, refer to Requesting Access and Refresh tokens under the Getting Started section.

 

The following screenshots show a sample curl request and JSON response to delete a connection with attachment ID, ce123d45-1f23-1ca2-1e23-12345f67890a. 

 

curl -X

DEL "https://api.equinix.com/v1/attachments/abc1fd2e-345f-67g4-hi89-01jk234l5m6n"

-H "content-type: application/json"

-H "authorization: Bearer qwErtY8zyW1abcdefGHI"

 

The description of the URL parameter is as follows:

 

URL Parameter Name Mandatory Type Example values Description
attachmentId  Yes string abc1fd2e-345f-67g4-hi89-01jk234l5m6n

Attachment ID number.

 

This is an identifier unique to each attachment. This is exclusive to the original user who created the attachment, and can only be used by the original user.

 

{
  "status": true
}

 

The description of the response payload is as follows:

 

Field Name Type Example values Description
status string true

Indicates the status of the Delete API call.

 

If 'true', attachment was successfully deleted.

 

If attachment was not succesfully deleted, error message will be returned.

 

If you get “Insufficient permissions” error, contact your Master Administrator.