Skip to main content

Effective 10 September 2024, API Documentation can be found on our Equinix Product Documentation site.
The content on this page will not be updated after 1 Oct 2024 and will be inaccessible after 31st Dec 2024.


SmartHands Order

Smart Hands is an around-the-clock, on-site, operational support service for remote management, installation and troubleshooting of your data center equipment. Only an Equinix Customer Portal user with Smart Hands ordering permission may order Smart Hands.

 

See Integrate with Equinix Messaging Gateway for links on how to use the EMG Templates for ordering.

Equinix Messaging Gateway supports below SmartHands types. The below Operation Code and Service Attributes are passed in the request payload to indicate the SmartHands type.

Smarthands TypeDescriptionOperationService Details AttributeMandatory/OptionalTypeExample
Category
Request photos/documentationRequest an Equinix Data Center Technician to provide cage-related pictures or documentation0000CameraProvidedBy

Optional - If documentOnly is true

Mandatory - If documentOnly is false
StringExpected Values: Equinix, Customer
OnDateAndTime

Optional - If documentOnly is true

Mandatory - If documentOnly is false
BooleanExpected Values: true, false
DocumentOnlyOptionalBooleanExpected Values: true, false
Summary

Optional - If documentOnly is true

Mandatory - If documentOnly is false
String"Cage 10 photo requested"
SmartHand OtherRequest a Smart Hands order not listed here0001   
SmartHand Cage Clean upRequest an Equinix Data Center Technician to clean your cage0002PermissionToDiscardBoxesOptionalBooleanExpected Values: true, false
DampMoistMopRequiredOptionalBooleanExpected Values: true, false
SmartHand Shipment UnpackRequest inbound shipment unpacking and packaging disposal to an Equinix Data Center Technician0003InboundShipmentIdOptionalString

Its the Order Number for corresponding Inbound Shipment Order that customer would have placed for its incoming shipment that he/she needs to be unpacked.

RequesterId or ServicerId can be provided"
CopyOfPackingSlipNeededOptionalBoolean

Expected Values: true, false

This will result in a photo being sent to customer or copy of Packing slip stored for later customer use.
DiscardShipmentMaterialOptionalBooleanExpected Values: true, false
SmartHand Cage EscortRequest an Equinix IBX security escort for a visitor to access your cage0004DurationVisitOptionalString

Expected Value: "30 Minutes", "60 Minutes", "90 Minutes", "2 Hours", "2 Hours 30 Minutes", "3 Hours", "3 Hours 30 Minutes", "4 Hours"

For longer hours, include 4 hours in the request schema and add details in the description field.
OpenCabinetForVisitorOptionalBooleanExpected Values: true, false
SupervisionReqForVisitorOptionalBoolean

Expected Values: true, false

Equinix personnel will be present for entire stay for supervised escort
WorkVisitIdOptionalString

Its the Order Number for corresponding Work Visit Order that customer would have placed for its visitor who needs to be escorted by Equinix Data Center technician.

RequesterId or ServicerId can be provided.
Equipment InstallRequest equipment installation per your specifications by an Equinix Data Center Technician0005DeviceLocationOptionalString 
ElevationDrawingAttachedOptionalBoolean

Expected Values: true, false

Equinix Data Center Technician to review the drawings if available.
InstallationPointOptionalStringTextual definition of where to install equipment in cabinet.
InstalledEquipmentPhotoRequiredOptionalBoolean

Expected Values: true, false

Equinix Data Center Technician will send the photos via 2Way.
MountHardwareIncludedOptionalBoolean

Expected Values: true, false

Equipment specific mounting hardware provided by customer.
PatchDevicesOptionalBoolean

Expected Values: true, false

If this flag is sent as ""true""; after hardware install, patchinfo will be used for further instructions on patching device.
PatchingInfo

Optional - If PatchDevices is 'N'

Mandatory - If PatchDevices is 'Y'
StringDependent on PatchDevices for content being used in installation.
PowerItOnOptionalBoolean

Expected Values: true, false

If this flag is sent as ""true""; power will be connected to cabinet after install hardware

If this is true then PatchInfo is required.
NeedSupportFromASubmarine
CableStationEngineer
OptionalBoolean

Expected Values: true, false

Equinix Data Center Specific: Specially trained technician to be available for Equinix Data Centers which can directly access submarine cables
Request CablesRequest cables per your specifications0006SummaryOptionalStringAny additional details
MediaTypeMandatory - If Quantity = 1StringExpected Values : [ Multi-mode 62.5mic, Multi-mode 50mic, Single-mode, Cat-5, Cat-6, Coax, POTS, T1, E1 ]
ConnectorTypeMandatory - If Quantity = 1StringExpected Values: [ RJ45, SC, LC, BNC, Other ]
LengthMandatory - If Quantity = 1StringUser should specify units. Ex: "20 ft"
QuantityOptionalStringExpected Values: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, >10 ]
Locate PackagesRequest the location of your packages at the Equinix Data Center0007InboundShipmentIdOptionalString

Its the Order Number for corresponding Inbound Shipment Order that customer would have placed for its incoming shipment that he/she needs to be located

RequesterId or ServicerId can be provided
CarrierTrackingNumberOptionalString"323-12121"
PossibleLocationOptionalString"Near cabinet 1010"
PackageDescriptionOptionalString"It's small box with 1kg weight."
Run Patch CablesRequest cables to be run between devices by an Equinix Data Center Technician0008SummaryOptionalStringAny additional details
QuantityOptionalStringExpected Values: [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 12+ ]
JumperTypeMandatory - If Quantity = 1StringExpected Values: [ Jumper, Pre-Wiring, Patch Cable, Other ]
MediaTypeMandatory - If Quantity = 1StringExpected Values: [ Multi-mode 62.5mic, Multi-mode 50mic, Single-mode, Cat-5, Cat-6, Coax, POTS, T1, E1 ]
Expected Values: [ RJ45, SC, LC, BNC, Other ]
ConnectorMandatory - If Quantity = 1String 
CableIdOptionalStringExpected Values: [ RJ45, SC, LC, BNC, Other ]
ProvideTxRxLightLevelsMandatory - If Quantity = 1Boolean

Expected Values: true, false

When this flag is set to ""true"", Equinix will report back to customer light levels when turned on"
DeviceDetailsOptionalArray of DeviceDetails

Though DeviceDetails is optional however if supplied all fields within need to be populated

Ex:
[
 {
""Name"": ""Device Name"", ""Slot"": ""50"", ""Port"": ""50""
 }
]"
Patch Cable InstallRequest patch cable installations per your specifications by an Equinix Data Center Technician0009CrossConnectsOptionalArray of CableInstall"[
  {
""SerialNumber"": ""string"", ""DeviceCabinet"": ""string"", ""DeviceConnectorType"": ""string"", ""DeviceDetails"": ""string"", ""DevicePort"": ""string"", ""LightLinkVerification"": true, //Optional ""Description"": ""string"" //Optional
 }
]"
Move Patch CableRequest patch cables to be moved between devices by an Equinix Data Center Technician0010SummaryOptionalStringAny additional details
QuantityOptionalStringExpected Values: : [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 12+ ]
CableIdOptionalStringCableId as stored in AssetId and CrossConnect "A01-5-10"" OR ""None"" if not"
CurrentDeviceDetailsMandatory - If Quantity = 1DeviceDetails Object

Though DeviceDetails is optional however if supplied all fields within need to be populated.

Ex:
[
 {
""Name"": ""Device Name"", ""Slot"": ""50"", ""Port"": ""50""
 }
]"
NewDeviceDetailsMandatory - If Quantity = 1DeviceDetails Object

Though DeviceDetails is optional however if supplied all fields within need to be populated.

Ex:
[
 {
""Name"": ""Device Name"", ""Slot"": ""50"", ""Port"": ""50""
 }
]"
Patch Cable RemovalRequest patch cable removal per your specifications by an Equinix Data Center Technician0011CrossConnectsOptionalArray of CableDeinstallDetail"[
  {
""SerialNumber"": ""string"", ""DeviceCabinet"": ""string"", ""DeviceConnectorType"": ""string"", ""DeviceDetails"": ""string"", ""DevicePort"": ""string"", ""RemoveCableWhileLive"": true, //Optional ""Description"": ""string"" //Optional
 }
]"
Large SmartHands OrderRequest a Large_SmartHands_order.
Any cabling request greater than 24 cables. Maximum limit: 200 cables.
or Install Equipment build greater than 100 RU in total equipment size. Maximum limit: 500 RU’s.
 

It usually takes 2-3 business days for Equinix to review the request order and assign the earliest available schedule date.

0012DescriptionMandatoryStringCabling request of 50 cables
The following screenshots show sample message requests to create, update, and cancel SmartHands in EMG.

Create SmartHands

Sample Request:

{
"Task": {
"Id": "bf9f2707-d612-4d63-9958-4c8b1fcf3cc0",
"Source": "3e095d30-40ff-11e9-8959-5be078353003",
"Verb": "Create",
"Resource": "SmartHands",
"ContentType": "application/json",
"Version": "1.0",
"Body": {
"RequestorId": "123456789",
"RequestorIdUnique": true,
"Operation": "0001",
"Description": "Create SmartHands Order",
"Attachments": [
{
"Name": "samplepicture.jpeg",
"Url": "https://eqixazurestorage.blob.core.windows.net/file-download-blob/samplepicture.jpeg"
}
],
"Location": "LD8:00:000000",
"CallContactBeforeStart": true,
"CallContactBeforeComplete": true,
"CustomerContact": "demo@equinix.com",
"SchedulingDetails": {
"RequestedStartDate": null,
"RequestedCompletionDate": null
}
}
},
"Signature": "RWNobwp7CiAgIklkIjogIjM1MGFlZjcwLTc4MWItMTFlOSogIH0KfQ=="
}

The description of the create request schema is as follows:

NameMandatoryTypeApplicable Value(s)Description
TaskYesObjectThe task object comprises a common set of header attributes and a unique set of body attributes. The header attributes are applicable to all order types, whereas the body attributes vary for each order.
IDYesString (Guid)The unique identifier of the message. Customers must ensure to send a unique value for each message.
SourceYesString (Guid)A unique value to identify the message sender. This value will be shared with the customer during the onboarding process.
VerbYesStringCreateIndicates the action to be performed.
ResourceYesStringSmartHandsIndicates the order type.
ContentTypeNoStringapplication/json
VersionYesString1.0The version of the request and response schema.
BodyYesObjectAn object containing the details of the order. The attributes within the object will vary based on the resource and verb.
RequestorIdConditionalStringThe customer's reference number for this SmartHands order. This attribute is only mandatory if RequestorIdUnique is true.
RequestorIdUniqueYesBooleantrue
false
Indicates whether the RequestorId is unique. The default value for this attribute is false.The RequestorId should not be referenced in any other ticket and if referenced this operation will fail with a "400 - Bad Request".
This field cannot be NULL.
OperationYesStringIndicates the SmartHands type.
For example, 0002 is a SmartHands request to clean up the customer's cage.
LocationYesStringThe location of the cage and cabinet where the SmartHands order is requested.
CallContactBeforeStartYesBooleantrue
false
When true, Equinix technician calls your designated Primary Technical Contact person before the work starts.
CallContactBeforeCompleteYesBooleantrue
false
When true, Equinix technician calls your designated Primary Technical Contact person once the work is completed (when completing and resolving the request).
CustomerContactYesString

The username or email address of the user registered with Equinix Customer Portal.

CustomerContact is mandatory if  "Verb" is create.
SchedulingDetailsConditionalObjectAn object containing the scheduling details of the SmartHands order.
RequestedStartDateConditionalString

Indicates the date and time at which the SmartHands must be started.

The date and time (UTC timezone) follow ISO 8601 format.
For example, 2019-12-18T06:20:00Z

This attribute is only mandatory if a customer is raising a ticket for a date/time > 24 hours from the current date/time.
RequestedCompletionDateConditionalString

Indicates the date and time at which the SmartHands must be completed.

The date and time (UTC timezone) follow ISO 8601 format.
For example, 2019-12-18T06:20:00Z 

This attribute is mandatory only if a customer is raising a ticket for a date/time within 24 hours or more than 24 from the current date/time.
ServiceDetailsNoStringThis attribute is common to all SmartHands types. Refer to SmartHands Operation and Service Details above.
DescriptionYesString

A detailed description of the scope of work. 
This field can only be up to 3800 characters long.

Description > 3800 characters will be added as an attachment to the order being submitted.
AttachmentsNoArray [{ String,  String }]

Includes all attachments for supporting this request.

Expected Value: [{"Name":<Attachment_Name>, "Url":<Attachment_URL>}] OR  [{"Name":<Attachment_Name>, "Id":<Attachment_Id>}]

URL - URL to download the attachment
Id - Attachment Id returned by Equinix Attachment API (https://api.equinix.com/v1/attachments/file

5 files with 5MB size each

Supported filetypes: .bmp,.jpeg,.jpg,.gif,.png,.tif,.txt,.doc,.docx,.xls,.tiff,.xlsx,.ppt,.pptx,.pdf,.vsd,.pps,.ppsx
AdditionalContactsNoArray [{ Object}]Can be used to overide details of TECHNICAL CONTACT sent as part of "CustomerContact" attribute.  You can send details of non-registered contacts with Equinix Customer Portal
ContactTypeYesString (Enum)Type of Contact. Expected value : TECHNIICAL
NameYesStringFull Name of the Contact, Eg. 'First_Name' + 'Last_Name'
Supported Regex: ^[\s.]([^\s.][\s.]){0,100}$
EmailYesStringValid email address of the contact. Should be <=100 characters
Supported Regex: ^(([^<>()\[\]\.,;:\s@"]+(\.[^<>()\[\]\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$
WorkPhoneCountryCodeYesStringCountry Code of Primary Phone of the contact. Should be within [1…6] characters
Supported Regex: ^\+[0-9]{1,6}$
WorkPhoneYesStringPrimary Phone of the contact. Should be within [1…40] characters
Supported Regex: ^[0-9\.\-() ]{2,40}(?:(x|ext)[0-9\.\-() ]{1,10})?$
WorkPhonePrefToCallNoStringExpected values are NEVER, ANYTIME, MY_BUSINESS_HOURS,IBX_BUSINESS_HOURS. Defauted to 'ANYTIME'
WorkPhoneTimeZoneNoStringExpected values are "Atlantic/Canary" "Europe/Dublin" "Europe/London" "Europe/Lisbon" "Africa/Algiers" "Europe/Berlin" "Europe/Amsterdam" "Europe/Copenhagen" "Europe/Madrid" "Europe/Paris" "Europe/Stockholm" "Europe/Zurich" "Europe/Warsaw" "Africa/Cairo" "Africa/Johannesburg" "Europe/Sofia" "Africa/Nairobi" "Asia/Jerusalem" "Europe/Istanbul" "Europe/Moscow" "Asia/Riyadh" "Asia/Dubai" "Asia/Kabul" "Asia/Tehran" "Asia/Karachi" "Indian/Maldives" "Asia/Kolkata" "Asia/Kathmandu" "Asia/Omsk" "Asia/Rangoon" "Asia/Jakarta" "Asia/Ho_Chi_Minh" "Asia/Brunei" "Asia/Hong_Kong" "Asia/Kuala_Lumpur" "Asia/Manila" "Asia/Shanghai" "Asia/Singapore" "Asia/Taipei" "Australia/Perth" "Asia/Seoul" "Asia/Tokyo" "Australia/Darwin" "Australia/Brisbane" "Pacific/Guam" "Australia/Adelaide" "Australia/Sydney" "Pacific/Auckland" "Pacific/Chatham" "Indian/Christmas" "America/Scoresbysund" "Atlantic/South_Georgia" "America/Sao_Paulo" "America/Detroit" "America/New_York" "America/Puerto_Rico" "America/Toronto" "America/Bogota" "America/Chicago" "America/Winnipeg" "America/Denver" "America/Edmonton" "America/Mexico_City" "America/Los_Angeles" "America/Vancouver" "America/Phoenix" "America/Anchorage" "Pacific/Gambier" "Pacific/Marquesas" "Pacific/Honolulu" "Pacific/Fiji" "Asia/Muscat" "America/Argentina/Buenos_Aires" "America/Caracas" "Etc/GMT+12" "UTC" "GMT" "America/Santiago" "America/St_Johns" "Asia/Almaty" "Asia/Bankgkok" "Asia/Calcutta" "Asia/Magadan" "Asia/Yekaterinburg" "Australia/Eucla" "Australia/Lord_Howe" "Europe/Bratislava" "Europe/Brussels" "Europe/Prague" "Europe/Rome" "Pacific/Kiritimati" "Pacific/Midway" "Pacific/Tongatapu"
MobilePhoneCountryCodeNoStringCountry Code of Mobile Phone of the contact. Should be within [1…6] characters
Supported Regex: ^\+[0-9]{1,6}$
MobilePhoneNoStringMobile Phone of the contact. Should be within [1…40] characters
Supported Regex: ^[0-9\.\-() ]{2,40}(?:(x|ext)[0-9\.\-() ]{1,10})?$
MobilePhonePrefToCallNoStringExpected values are NEVER, ANYTIME, MY_BUSINESS_HOURS,IBX_BUSINESS_HOURS. Defauted to 'ANYTIME'
MobilePhoneTimeZoneNoStringPlease refer to 'WorkPhoneTimeZone' for expected values
SignatureYesStringBase64 encoded signature.

Sample Response:

{
"Task": "{\"Id\":\"69352cff-4f00-4c42-9dce-a1b5e5ecc40b\",\"Source\":\"3e095d30-40ff-11e9-8959-5be078353003\",\"Verb\":\"Ack\",\"Resource\":\"SmartHands\",\"ContentType\":\"application/json\",\"CreateTimeUTC\":\"2019-12-13T15:45:04.553Z\",\"Version\":\"1.0\",\"OriginationId\":\"bf9f2707-d612-4d63-9958-4c8b1fcf3cc0\",\"OriginationVerb\":\"Create\",\"Body\":{\"RequestorId\":\"123456789\",\"ServicerId\":\"1-199912345789\",\"StatusCode\":201,\"Description\":\"Equinix SmartHands: 1-199912345789 Was created in reference to : 123456789\",\"Object\":null}}",
"Signature": "Jm2BpG/5ll6s3v0w3WWMULkRXsIEPog1e5AuYWT/kF3qW+hhNAFDZGCJ5lNmUT4Y3jUFid/3yb3diXK+Tr0hm7zwGLMDyi/mRwlc7LxYKRtbhHgHxWviQgTsLrreKlLuOJHbl81bCLxK2UEPrfRXuAOUbMyOT2mzBhidiCFg=="
}

The description of the create response schema is as follows:

NameTypeDescription
TaskObjectThe task object comprises a common set of header attributes and a unique set of body attributes. The header attributes are applicable to all order types, whereas the body attributes vary for each order.
IDString (Guid)The unique identifier of the message. Customers must ensure to send a unique value for each message.
SourceString (Guid)A unique value to identify the message sender. This value will be shared with the customer during the onboarding process.
VerbStringIndicates the action to be performed. The verb for response messages is "Ack".
ResourceStringIndicates the order type.
ContentTypeString
CreateTimeUTCStringIndicates the date and time at which the Smarthands order was created at Equinix's end.
VersionStringThe version of the request and response schema.
BodyObjectAn object containing the details of the order. The attributes within the object will vary based on the resource and verb.
RequestorIdStringThe customer's reference number for this SmartHands order.
ServicerIdStringIndicates the Smarthands order ID generated by Equinix after the order was submitted.
StatusCodeStringThe HTTP status code of the request.
DescriptionString

Additional details of the order created

Ex: "Equinix SmartHands: 1-199912345789 Was created in reference to : 123456789"
SignatureStringBase64 encoded signature.

Update SmartHands

Sample Request:

{
"Task": {
"Id": "2352c576-fab3-4856-a431-0a4b55a2babe",
"Source": "3e095d30-40ff-11e9-8959-5be078353003",
"Verb": "Update",
"Resource": "SmartHands",
"ContentType": "application/json",
"Version": "1.0",
"Body": {
"State": "ReSubmit",
"ServicerId": "1-199912345789",
"Attachments": [
{
"Name": "samplepicture.jpeg",
"Url": "https://eqixazurestorage.blob.core.windows.net/file-download-blob/samplepicture.jpeg"
}
],
"Description": "Update SmartHands Order"
}
},
"Signature": "RWNobwp7CiAgIklkIjogIjM1MGFlZjcwLTc4MWItMTFlOSogIH0KfQ=="
}

The description of the update request schema is as follows:

NameMandatoryTypeApplicable Value(s)Description
TaskYesObjectThe task object comprises a common set of header attributes and a unique set of body attributes. The header attributes are applicable to all order types, whereas the body attributes vary for each order.
IDYesString (Guid)The unique identifier of the message. Customers must ensure to send a unique value for each message.
SourceYesString (Guid)A unique value to identify the message sender. This value will be shared with the customer during the onboarding process.
VerbYesStringUpdateIndicates the action to be performed.
ResourceYesStringSmartHandsIndicates the order type.
ContentTypeNoStringapplication/json
VersionYesString1.0The version of the request and response schema.
BodyYesObjectAn object containing the details of the order. The attributes within the object will vary based on the resource and verb.
RequestorIdConditionalStringThe customer's reference number for this SmartHands order. This attribute is only mandatory if ServicerId is not provided.
StateNoStringReSubmitThis attribute is only valid when the verb is 'Update' and must only be used when re-submitting an order. This Resubmits the existing SmartHands order and creates new Child order.
ServicerIdConditionalStringIndicates the SmartHands order ID generated by Equinix after the order was submitted. This attribute is only mandatory if RequestorId is not provided.
DescriptionYesString

A detailed description of the scope of work. 
This field can only be up to 3800 characters long.

Further action may be required from Equinix or customer before order can be fulfilled.

The following values are supported when updating order descriptions related to inbox negotiations:

APPROVE - Approve order to proceed according to the proposed date and time from Equinix.

APPROVE_NON_EXPEDITE - Approve order to proceed without expedite. The order is proceed according to standard scheduling

CANCEL - Cancel order item.
AttachmentsNoArray [{ String,  String }]

Includes all attachments for supporting this request.

Expected Value: [{"Name":<Attachment_Name>, "Url":<Attachment_URL>}]

5 files with 5MB size each

Supported filetypes: .bmp,.jpeg,.jpg,.gif,.png,.tif,.txt,.doc,.docx,.xls,.tiff,.xlsx,.ppt,.pptx,.pdf,.vsd,.pps,.ppsx
SignatureYesStringBase64 encoded signature.

Sample Response:

{
"Task": "{\"Id\":\"69352cff-4f00-4c42-9dce-a1b5e5ecc40b\",\"Source\":\"3e095d30-40ff-11e9-8959-5be078353003\",\"Verb\":\"Ack\",\"Resource\":\"SmartHands\",\"ContentType\":\"application/json\",\"CreateTimeUTC\":\"2019-12-13T15:45:04.553Z\",\"Version\":\"1.0\",\"OriginationId\":\"bf9f2707-d612-4d63-9958-4c8b1fcf3cc0\",\"OriginationVerb\":\"Update\",\"Body\":{\"RequestorId\":\"123456789\",\"ServicerId\":\"1-199912345789\",\"StatusCode\":201,\"Description\":\"Equinix SmartHands: 1-199912345789 was updated\",\"Object\":null}}",
"Signature": "Jm2BpG/5ll6s3v0w3WWMULkRXsIEPog1e5AuYWT/kF3qW+hhNAFDZGCJ5lNmUT4Y3jUFid/3yb3diXK+Tr0hm7zwGLMDyi/mRwlc7LxYKRtbhHgHxWviQgTsLrreKlLuOJHbl81bCLxK2UEPrfRXuAOUbMyOT2mzBhidiCFg=="
}

The description of the update response schema is as follows:

NameTypeDescription
TaskObjectThe task object comprises a common set of header attributes and a unique set of body attributes. The header attributes are applicable to all order types, whereas the body attributes vary for each order.
IDString (Guid)The unique identifier of the message. Customers must ensure to send a unique value for each message.
SourceString (Guid)A unique value to identify the message sender. This value will be shared with the customer during the onboarding process.
VerbStringIndicates the action to be performed. The verb for response messages is "Ack".
ResourceStringIndicates the order type.
ContentTypeString
CreateTimeUTCStringIndicates the date and time at which the SmartHands order was updated at Equinix's end.
VersionStringThe version of the request and response schema.
BodyObjectAn object containing the details of the order. The attributes within the object will vary based on the resource and verb.
RequestorIdStringThe customer's reference number for this SmartHands order.
ServicerIdStringIndicates the Smarthands order ID created after the order was submitted.
StatusCodeStringThe HTTP status code of the request.
DescriptionString

Additional details of the order updated.

Ex: "Equinix SmartHands : 1-199912345789 was updated"
SignatureStringBase64 encoded signature.

Cancel SmartHands

Sample Request:

{
"Task": {
"Id": "63d7a57b-848a-4335-ab47-6c1aaee71b04",
"Source": "3e095d30-40ff-11e9-8959-5be078353003",
"Verb": "Update",
"Resource": "SmartHands",
"ContentType": "application/json",
"Version": "1.0",
"Body": {
"State": "Cancelled",
"ServicerId": "1-199912345789"
],
"Description": "Cancel SmartHands Order"
}
},
"Signature": "RWNobwp7CiAgIklkIjogIjM1MGFlZjcwLTc4MWItMTFlOSogIH0KfQ=="
}

The description of the cancel request schema is as follows:

NameMandatoryTypeApplicable Value(s)Description
TaskYesObjectThe task object comprises a common set of header attributes and a unique set of body attributes. The header attributes are applicable to all order types, whereas the body attributes vary for each order.
IDYesString (Guid)The unique identifier of the message. Customers must ensure to send a unique value for each message.
SourceYesString (Guid)A unique value to identify the message sender. This value will be shared with the customer during the onboarding process.
VerbYesStringUpdateIndicates the action to be performed.
ResourceYesStringSmartHandsIndicates the order type.
ContentTypeNoStringapplication/json
VersionYesString1.0The version of the request and response schema.
BodyYesObjectAn object containing the details of the order. The attributes within the object will vary based on the resource and verb.
StateYesStringCancelledThis attribute is only valid when the verb is 'Update' and must only be used when cancelling an order.
RequestorIdConditionalStringThe customer's reference number for this SmartHands order. This attribute is only mandatory if ServicerId is not provided.
ServicerIdConditionalStringtrue
false
Indicates the SmartHands order ID generated by Equinix after the order was submitted. This attribute is only mandatory if RequestorId is not provided.
DescriptionYesStringA detailed description of the scope of work. 
This field can only be up to 3800 characters long.
SignatureYesStringBase64 encoded signature.

Sample Response:

{
"Task": "{\"Id\":\"2f3b9c69-1446-46fa-b5c7-040421029c88\",\"Source\":\"3e095d30-40ff-11e9-8959-5be078353003\",\"Verb\":\"Ack\",\"Resource\":\"SmartHands\",\"ContentType\":\"application/json\",\"CreateTimeUTC\":\"2019-12-13T15:53:33.084Z\",\"Version\":\"1.0\",\"OriginationId\":\"63d7a57b-848a-4335-ab47-6c1aaee71b04\",\"OriginationVerb\":\"Update\",\"Body\":{\"ServicerId\":\"1-199912345789\",\"RequestorId\":\"123456789\",\"StatusCode\":200,\"Description\":\"Equinix SmartHands: 1-199912345789 Was Cancelled\",\"Object\":[{\"Name\":\"cancelticket.jpeg\",\"Id\":\"f1797cd8-4508-434d-9998-3cf4545c7ca0\"}]}}",
"Signature": "Jm2BpG/5ll6s3v0w3WWMULkRXsIEPog1e5AuYWT/kF3qW+hhNAFDZGCJ5lNmUT4Y3jUFid/3yb3diXK+Tr0hm7zwGLMDyi/mRwlc7LxYKRtbhHgHxWviQgTsLrreKlLuOJHbl81bCLxK2UEPrfRXuAOUbMyOT2mzBhidiCFg=="
}

The description of the cancel response schema is as follows:

NameTypeDescription
TaskObjectThe task object comprises a common set of header attributes and a unique set of body attributes. The header attributes are applicable to all order types, whereas the body attributes vary for each order.
IDString (Guid)The unique identifier of the message. Customers must ensure to send a unique value for each message.
SourceString (Guid)A unique value to identify the message sender. This value will be shared with the customer during the onboarding process.
VerbStringIndicates the action to be performed. The verb for response messages is "Ack".
ResourceStringIndicates the order type.
ContentTypeString
CreateTimeUTCStringIndicates the date and time at which the Smarthands order was cancelled at Equinix's end.
VersionStringThe version of the request and response schema.
BodyObjectAn object containing the details of the order. The attributes within the object will vary based on the resource and verb.
RequestorIdStringThe customer's reference number for this SmartHands order.
ServicerIdStringIndicates the SmartHands order ID generated by Equinix after the order was submitted.
StatusCodeStringThe HTTP status code of the request.
DescriptionString

Additional details of the order cancelled.

Ex: "Equinix SmartHands: 1-199912345789 Was Cancelled"
SignatureStringBase64 encoded signature.

Sample Outgoing Notification

For more information, refer to Order Notifications - SmartHands.