+++ title = "AddTicketNote" toc = true +++
Add a note to a ticket by Ticket ID or Ticket Number.
| Parameter | Type | Description | Required |
|---|---|---|---|
| action | string | "AddTicketNote" | Required |
| message | string | The content of the ticket note | Required |
| ticketnum | string | The Client Ticket Number ID to apply the note to | Optional |
| ticketid | int | The id of the ticket in the database. Either $ticketnum or $ticketid is required | Optional |
| markdown | bool | Should markdown be used on the ticket note output | Optional |
| attachments | array | Optional base64 json encoded array of file attachments. Can be the direct output of a multipart-form-data form submission ($_FILES superglobal in PHP) or an array of arrays consisting of both a filename and data keys (see example below). | Optional |
| created | string | The date and time the ticket note will show as created. Format: ISO8601 or YYYY-MM-DD HH:mm:ss | Optional |
| Parameter | Type | Description |
|---|---|---|
| result | string | The result of the operation: success or error |
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://www.example.com/includes/api.php');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
http_build_query(
array(
'action' => 'AddTicketNote',
// See https://developers.whmcs.com/api/authentication
'username' => 'IDENTIFIER_OR_ADMIN_USERNAME',
'password' => 'SECRET_OR_HASHED_PASSWORD',
'ticketid' => '1',
'message' => 'This is a sample ticket note',
'markdown' => true,
'attachments' => base64_encode(json_encode([['name' => 'sample_text_file.txt', 'data' => base64_encode('This is a sample text file contents')]])),
'responsetype' => 'json',
)
)
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
$command = 'AddTicketNote';
$postData = array(
'ticketid' => '1',
'message' => 'This is a sample ticket note',
'markdown' => true,
'attachments' => base64_encode(json_encode([['name' => 'sample_text_file.txt', 'data' => base64_encode('This is a sample text file contents')]])),
);
$adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later
$results = localAPI($command, $postData, $adminUsername);
print_r($results);
{
"result": "success"
}
Possible error condition responses include:
- Ticket ID not found
- Message is required
- Invalid Date Format
- Ticket creation date cannot be in the future
| Version | Changelog |
|---|---|
| 1.0 | Initial Version |
| 7.5 | Added support for attachments |
| 8.0 | Add support for note creation date |