Apply a Line key Template
Apply a Line Key Template or reset devices to their factory Line Key settings.
Line Keys also known as Programmable Line Keys (PLK) are the keys found on either sides of a typical desk phone display. A Line Key Template is a definition of actions that will be performed by each of the Line Keys for a particular device model. This API allows users to apply a line key template or apply factory default Line Key settings to devices in a set of locations or across all locations in the organization.
Applying a Line Key Template or resetting devices to their default Line Key configuration requires a full administrator auth token with a scope of spark-admin:telephony_config_write
.
Query Parameters
Apply Line Key Template for this organization.
Body Parameters
Line key Template action to perform.
Used to apply LinekeyTemplate to devices.
Used to reset devices to its default Linekey Template configurations.
templateId
is required for APPLY_TEMPLATE
action.
Used to search for devices only in the given locations.
Indicates whether to exclude devices with custom layout.
Include devices only with these tags.
Exclude devices with these tags.
Refine search with advisories.
Refine search to apply changes to devices that contain the warning "More shared/virtual line appearances than shared/virtual lines requested".
Refine search to apply changes to devices that contain the warning "More shared/virtual lines requested than shared/virtual line appearances".
Refine search to apply changes to devices that contain the warning "More monitored line appearances than monitored lines in the user's monitoring list".
Refine search to apply changes to devices that contain the warning "More call park extension line appearances than call park extensions in user's monitoring list".
Response Properties
Job name.
Unique identifier of the job.
Unique identifier to track the flow of HTTP requests.
Unique identifier to identify which user has run the job.
Unique identifier to identify the customer who has run the job.
Unique identifier to identify the customer for which the job was run.
Unique identifier to identify the instance of the job.
Displays the most recent step's execution status. Contains execution statuses of all the steps involved in the execution of the job.
Unique identifier that identifies each instance of the job.
Step execution start time in UTC format.
Step execution end time in UTC format.
Last updated time (in UTC format) post one of the step execution completion.
Displays status for overall steps that are part of the job.
Exit Code for a job.
Job creation time in UTC format.
Time lapsed since the job execution started.
Status of each step within a job.
Unique identifier that identifies each step in a job.
Step execution start time in UTC format.
Step execution end time in UTC format.
Last updated time for a step in UTC format.
Displays the status of a step.
Exit Code for a step.
Name of different steps the job goes through.
Time lapsed since the step execution started.
Indicates the most recent status (STARTING
, STARTED
, COMPLETED
, FAILED
) of the job at the time of invocation.
Most recent exit code of the job at the time of invocation.
Job is in progress.
Job has completed successfully.
Job has failed.
Job has been stopped.
Job has completed with errors.
Indicates the progress of the job.
Number of job steps completed.
Number of job steps completed with advisories.
Response Codes
The list below describes the common success and error responses you should expect from the API:
Code | Status | Description |
---|---|---|
200 | OK | Successful request with body content. |
201 | Created | The request has succeeded and has led to the creation of a resource. |
202 | Accepted | The request has been accepted for processing. |
204 | No Content | Successful request without body content. |
400 | Bad Request | The request was invalid or cannot be otherwise served. An accompanying error message will explain further. |
401 | Unauthorized | Authentication credentials were missing or incorrect. |
403 | Forbidden | The request is understood, but it has been refused or access is not allowed. |
404 | Not Found | The URI requested is invalid or the resource requested, such as a user, does not exist. Also returned when the requested format is not supported by the requested method. |
405 | Method Not Allowed | The request was made to a resource using an HTTP request method that is not supported. |
409 | Conflict | The request could not be processed because it conflicts with some established rule of the system. For example, a person may not be added to a room more than once. |
410 | Gone | The requested resource is no longer available. |
415 | Unsupported Media Type | The request was made to a resource without specifying a media type or used a media type that is not supported. |
423 | Locked | The requested resource is temporarily unavailable. A Retry-After header may be present that specifies how many seconds you need to wait before attempting the request again. |
428 | Precondition Required | File(s) cannot be scanned for malware and need to be force downloaded. |
429 | Too Many Requests | Too many requests have been sent in a given amount of time and the request has been rate limited. A Retry-After header should be present that specifies how many seconds you need to wait before a successful request can be made. |
500 | Internal Server Error | Something went wrong on the server. If the issue persists, feel free to contact the Webex Developer Support team. |
502 | Bad Gateway | The server received an invalid response from an upstream server while processing the request. Try again later. |
503 | Service Unavailable | Server is overloaded with requests. Try again later. |
504 | Gateway Timeout | An upstream server failed to respond on time. If your query uses max parameter, please try to reduce it. |
Header
Query Parameters
- orgIdstringApply Line Key Template for this organization.
Body
- actionenumRequiredLine key Template action to perform.
- templateIdstringRequired`templateId` is required for `APPLY_TEMPLATE` action.
- locationIdsarrayUsed to search for devices only in the given locations.
- excludeDevicesWithCustomLayoutbooleanIndicates whether to exclude devices with custom layout.
- includeDeviceTagsarrayInclude devices only with these tags.
- excludeDeviceTagsarrayExclude devices with these tags.
- advisoryTypesLineKeyTemplateAdvisoryTypesRefine search with advisories.
{ "action": "APPLY_TEMPLATE", "templateId": "Y2lzY29zcGFyazovL3VzL0RFVklDRV9MSU5FX0tFWV9URU1QTEFURS81NzVhMWY3Zi03MjRkLTRmZGUtODk4NC1mNjNhNDljMzYxZmQ", "locationIds": [ "Y2lzY29zcGFyazovL3VzL0xPQ0FUSU9OL2E4Mjg5NzIyLTFiODAtNDFiNy05Njc4LTBlNzdhZThjMTA5OA" ], "excludeDevicesWithCustomLayout": "true", "includeDeviceTags": [ "accounting", "sales" ], "excludeDeviceTags": [ "admin" ], "advisoryTypes": { "moreSharedAppearancesEnabled": "true", "fewSharedAppearancesEnabled": "true", "moreMonitorAppearancesEnabled": "true", "moreCPEAppearancesEnabled": "true" } }
{ "name": "applyphonelinekeytemplates", "id": "Y2lzY29zcGFyazovL3VzL0pPQl9JRC8wZTJjNmI5NC1hNDdlLTQxZGUtODE5ZS04YTcwNTZjMTc5MDk", "trackingId": "NA_a9ef6908-60cf-40e6-b56f-461abffd6fa3", "sourceUserId": "Y2lzY29zcGFyazovL3VzL1BFT1BMRS85OThhMThhYi1kZjY5LTQ5MWYtYmViZi03MzUxMGE3ODI5N2I", "sourceCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "targetCustomerId": "Y2lzY29zcGFyazovL3VzL09SR0FOSVpBVElPTi9hNDVkNmNkYS1hZTVhLTQwYzMtYTdhZC01NjUwZmRkZGQ1M2M", "instanceId": 0, "jobExecutionStatus": [ { "id": 0, "startTime": "2023-07-05T21:36:53.749Z", "lastUpdated": "2023-07-05T21:37:06.714Z", "statusMessage": "STARTED", "exitCode": "UNKNOWN", "createdTime": "2023-07-05T21:36:53.551Z", "stepExecutionStatuses": [ { "id": 0, "startTime": "2023-07-05T21:36:54.601Z", "lastUpdated": "2023-07-05T21:37:06.078Z", "statusMessage": "STARTED", "exitCode": "UNKNOWN", "name": "applyphonelinekeytemplatesProcess", "timeElapsed": "PT11.476S" } ], "timeElapsed": "PT11.476S" } ], "latestExecutionStatus": "STARTED", "latestExecutionExitCode": "UNKNOWN", "percentageComplete": 10, "updatedCount": 1, "advisoryCount": 0 }