Attachment Information

Attachments can be added to a ticket to provide more information or help a Cisco TAC engineer troubleshoot an issue. Attachments can include screenshots, log files, documentation, etc.

Adhere to the following guidelines when sending files to Cisco:

  • Attachments can be added to a ticket at any point after receiving the upload credentials after ticket creation.
  • Do not send duplicate attachments.
  • Once sent, attachments cannot be modified in any way. Additional attachments can be sent, if necessary.

Cisco TAC will never send attachments directly to a customer. Instead, a link to the file will be generated and sent via the case notes. The customer engineer attempting to view the file must have access to the case.

Automated Upload

Each TAC ticket has its own unique set of credentials that are automatically provided at the time of creation. These come in the form of a Username (the Cisco ticket number) and a Password (token). The expiration date of the token is 72 days from when the case was created but can be refreshed every 72 days until case closure.

Receiving Upload information

After creating a ticket to Cisco TAC the following message will be returned from Smart Bonding:

{
    "Calls": {
        "SDCallID": "9876543210",
        "CustCallID": "CustomerTicket001",
        "SPCallID": "123456789",
        "Remarks": "CaseCreate successful!\nCSOne Case ID: 123456789"
    },
    "ExtTableValues": {
        "Field80": "cxd.cisco.com",             // Domain for Uploading Attachments 
        "Field81": "ASDF-TokenPassword-ASDF",   // Token (Password)
        "Field82": 1694192780,                  // Token expiration timestamp
        "Field83": "/",                         // Path for FTP
        "Field84": 21,                          // Port for FTP
        "Field85": "/",                         // Path for FTPS
        "Field86": 990,                         // Port for FTPS
        "Field87": "/home/",                    // Path for HTTPS 
        "Field88": 443,                         // Port for HTTPS
        "Field89": "/",                         // Path for SCP
        "Field90": 22,                          // Port for SCP
        "Field91": "/",                         // Path for SFTP
        "Field92": 22                           // Port for SFTP
    },
    "CallStates": {
        "ShortName": "OPEN_INFO"
    }
}

Customers need to store the value in Field 81 as the token for this case. This token combined with the Ticket number make up the credentials used for file upload.

The Upload URL is given in Field 80 with path and port information depending on protocol.

Sending a file

Ensure the following steps have been reviewed in order to use automated attachment uploads:

  • Add and map the fields in the respective ITSM system to store the new data.
  • Write file upload script specific to protocols using the credentials that were discussed above in your programming language.

Refer to the following example for sample pseudocode for http protocol:

  import requests 
  from requests.auth import HTTPBasicAuth 

  url = 'https://cxd.cisco.com/home/' 
  username = 'SR Number' 
  password = 'Upload Token' 
  auth = HTTPBasicAuth(username, password) 
  filename = 'showtech.txt' 

  f = open(filename, 'rb') 
  r = requests.put(url + filename, f, auth=auth, verify=False) 
  r.close() 
  f.close() 
  if r.status_code == 201: 
  error.log("File Uploaded Successfully")
  else
  error.log(“File upload failed”)

Testing with Postman

To test the connection to CXD and file upload capabilities postman can be used.

Below an example to upload a text file "Filename.txt" via HTTPS:

Paramater Value
Method PUT
URL Production: https://cxd.cisco.com/home/Filename.txt, Test: https://cxd-stage1.cxapps-nprd.cisco.com/home/Filename.txt
Body Raw Content of File
Authentication Basic Authentication with Username = Cisco Ticket Number, Password = Token from Field81

If successful an HTTP Response 201 - Created will be returned. Otherwise errors will be sent with the appropriate HTTP Error Codes (such as 401, 403, etc.)