-
API Reference
- AcceptOrder
- AcceptQuote
- ActivateModule
- AddAnnouncement
- AddBannedIp
- AddBillableItem
- AddCancelRequest
- AddClient
- AddClientNote
- AddContact
- AddCredit
- AddInvoicePayment
- AddOrder
- AddPayMethod
- AddProduct
- AddProjectMessage
- AddProjectTask
- AddTicketNote
- AddTicketReply
- AddTransaction
- AddUser
- AffiliateActivate
- ApplyCredit
- BlockTicketSender
- CancelOrder
- CapturePayment
- CloseClient
- CreateClientInvite
- CreateInvoice
- CreateOAuthCredential
- CreateOrUpdateTLD
- CreateProject
- CreateQuote
- CreateSsoToken
- DeactivateModule
- DecryptPassword
- DeleteAnnouncement
- DeleteClient
- DeleteContact
- DeleteOAuthCredential
- DeleteOrder
- DeletePayMethod
- DeleteProjectTask
- DeleteQuote
- DeleteTicket
- DeleteTicketNote
- DeleteTicketReply
- DeleteUserClient
- DomainGetLockingStatus
- DomainGetNameservers
- DomainGetWhoisInfo
- DomainRegister
- DomainRelease
- DomainRenew
- DomainRequestEPP
- DomainToggleIdProtect
- DomainTransfer
- DomainUpdateLockingStatus
- DomainUpdateNameservers
- DomainUpdateWhoisInfo
- DomainWhois
- EncryptPassword
- EndTaskTimer
- FraudOrder
- GenInvoices
- GetActivityLog
- GetAdminDetails
- GetAdminUsers
- GetAffiliates
- GetAnnouncements
- GetAutomationLog
- GetCancelledPackages
- GetClientGroups
- GetClientPassword
- GetClients
- GetClientsAddons
- GetClientsDetails
- GetClientsDomains
- GetClientsProducts
- GetConfigurationValue
- GetContacts
- GetCredits
- GetCurrencies
- GetEmailTemplates
- GetEmails
- GetHealthStatus
- GetInvoice
- GetInvoices
- GetModuleConfigurationParameters
- GetModuleQueue
- GetOrderStatuses
- GetOrders
- GetPayMethods
- GetPaymentMethods
- GetPermissionsList
- GetProducts
- GetProject
- GetProjects
- GetPromotions
- GetQuotes
- GetRegistrars
- GetServers
- GetStaffOnline
- GetStats
- GetSupportDepartments
- GetSupportStatuses
- GetTLDPricing
- GetTicket
- GetTicketAttachment
- GetTicketCounts
- GetTicketNotes
- GetTicketPredefinedCats
- GetTicketPredefinedReplies
- GetTickets
- GetToDoItemStatuses
- GetToDoItems
- GetTransactions
- GetUserPermissions
- GetUsers
- ListOAuthCredentials
- LogActivity
- MergeTicket
- ModuleChangePackage
- ModuleChangePw
- ModuleCreate
- ModuleCustom
- ModuleSuspend
- ModuleTerminate
- ModuleUnsuspend
- OpenTicket
- OrderFraudCheck
- PendingOrder
- ResetPassword
- SendAdminEmail
- SendEmail
- SendQuote
- SetConfigurationValue
- StartTaskTimer
- TriggerNotificationEvent
- UpdateAdminNotes
- UpdateAnnouncement
- UpdateClient
- UpdateClientAddon
- UpdateClientDomain
- UpdateClientProduct
- UpdateContact
- UpdateInvoice
- UpdateModuleConfiguration
- UpdateOAuthCredential
- UpdatePayMethod
- UpdateProject
- UpdateProjectTask
- UpdateQuote
- UpdateTicket
- UpdateTicketReply
- UpdateToDoItem
- UpdateTransaction
- UpdateUser
- UpdateUserPermissions
- UpgradeProduct
- ValidateLogin
- WhmcsDetails
GetPromotions
Obtain promotions matching the passed criteria
Request Parameters
Parameter | Type | Description | Required |
---|---|---|---|
action | string | “GetPromotions” | Required |
code | string | Retrieve a specific promotion code. Do not pass to retrieve all | Optional |
Response Parameters
Parameter | Type | Description |
---|---|---|
result | string | The result of the operation: success or error |
totalresults | int | The total number of results available |
promotions | array | An array of promotional codes matching the criteria passed |
Example Request (CURL)
$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' => 'GetPromotions',
// See https://developers.whmcs.com/api/authentication
'username' => 'IDENTIFIER_OR_ADMIN_USERNAME',
'password' => 'SECRET_OR_HASHED_PASSWORD',
'responsetype' => 'json',
)
)
);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($ch);
curl_close($ch);
Example Request (Local API)
$command = 'GetPromotions';
$postData = array(
);
$adminUsername = 'ADMIN_USERNAME'; // Optional for WHMCS 7.2 and later
$results = localAPI($command, $postData, $adminUsername);
print_r($results);
Example Response JSON
{
"result": "success",
"totalresults": 1,
"promotions": {
"promotion": [
{
"id": 1,
"code": "sample",
"type": "Percentage",
"recurring": 1,
"value": 10,
"cycles": "",
"appliesto": "1,2",
"requires": "1,2",
"requiresexisting": 0,
"startdate": "0000-00-00",
"expirationdate": "0000-00-00",
"maxuses": 0,
"uses": 1,
"lifetimepromo": 0,
"applyonce": 0,
"newsignups": 0,
"existingclient": 0,
"onceperclient": 0,
"recurfor": 0,
"upgrades": 0,
"upgradeconfig": "a:4:{s:5:\"value\";s:4:\"0.00\";s:4:\"type\";s:0:\"\";s:12:\"discounttype\";s:10:\"Percentage\";s:13:\"configoptions\";s:0:\"\";}",
"notes": ""
}
]
}
}
Version History
Version | Changelog |
---|---|
1.0 | Initial Version |