Revision as of 03:09, February 16, 2017 by Sschlich (talk | contribs)
Jump to: navigation, search

Recording Non-Deletion APIs

ENTIRE PAGE IS NEW

The following APIs are accessible at the base path /api/v2
For example, http://localhost:8080/api/v2/recordings<recid>

Pre-requisite

Set Elasticsearch schema v2 in Interaction Recording Web Services, to enable it to use labels and non-deletion features. For existing deployments, follow the migration steps here: Migrating an Existing Elasticsearch Deployment to Schema V2). New deployments after GIR version 8.5.2xx.xx (TBD) will have Elasticsearch schema v2 enabled by default.

Permissions

See: Configuring Permissions for Recording Non-Deletion

Summary

You can tag recordings for non-deletion, and doing so excludes voice and associated screen recordings from Media Life Cycle Management purge tasks. Tagged SpeechMiner recordings are also protected from non-deletion. To enable deletion, remove the non-deletion tag from the recordings.

Note: For voice recordings which have associated screen recordings, tagging or untagging the voice recording for non-deletion also tags/untags associated screen recordings.

Request URL /recordings/{id}
HTTP method POST
Required features schema-elasticsearch-v2-call-recording

schema-elasticsearch-v2-screen-recording

FUNCTION NAME

STEVE ASKS: HELP! Following is my template of the format used in other API pages. But the HLD did not present information that fits into this template. For example, no Request URL and no Parameters. Other information such as requests and responses did fit.

Overview

description +++++++++++++++++++++++++++++++++++++++++++++++++++++

Request URL /api/v2/me/calls/{id}
HTTP method POST
Required features xxxx

Parameters

Parameter Value
xxxx xxxx

Sample

Request

xxxxx

Response

xxxxxx

+++++++++++++++++++++++++++++++++++++++++++++++++++++


Apply Non-Deletion to a Recording

Mark voice recording for non-deletion

# Mark voice recording d15a8bee-a720-4def-9674-0767e6fde196 and its screen recordings(if any) for non-deletion 
POST /recordings/d15a8bee-a720-4def-9674-0767e6fde196 
{ 
     "operationName" :  "applyNonDelete" 
}


Response

HTTP Status
Status Codes Situations Notes
200 OK The recording(s) has been marked for non-deletion successfully.
400 BAD REQUEST If the operationName does not match any of the possible values described above.
403 FORBIDDEN
  • If the requesting user does not have the roles required;
  • If the requesting user does not have the recording permissions required.
404 NOT FOUND If the recording for which to mark non-deletion cannot be found;

500 INTERNAL SERVER ERROR If internal error occurs.


Payload
Attributes JSON Data Type Mandatory Possible Values Default Value Situations Notes
statusCode Integer yes
0 (Ok) N/A the recording has been marked for non-deletion.
2 (InvalidRequestParameter) if the operationName does not match the above-mentioned operations
3 (OperationForbidden) if the requesting user does not have the recording permissions required.
4 (InternalError) If internal error occurs.
5 (Unauthorized) If the requesting user does not have the roles required.
6 (ResourceNotFound) If the recording for which to mark non-deletion cannot be found.
statusMessage String no
  • not specified;
  • a message providing information
N/A The statusMessage will provide more information about a failure if statusCode is not 0.

Response when one recording is requested

200 OK 
{ 
     "statusCode" : 0 
} 
  
400 BAD REQUEST 
{ 
     "statusCode" : 2, 
     "statusMessage" :  "Parameter 'operationName' is invalid: The specified value is not within valid range" 
} 
  
403 FORBIDDEN 
{ 
     "statusCode" : 5, 
     "statusMessage" :  "Insufficient user roles." 
} 
  
403 FORBIDDEN 
{ 
     "statusCode" : 3, 
     "statusMessage" :  "Insufficient recording permissions." 
} 
  
404 NOT FOUND 
{ 
     "statusCode" : 6, 
     "statusMessage" :  "Requested recording [f2197c79-3304-4427-9e73-48a5a8903484] cannot be found." 
} 
  
500 INTERNAL SERVER ERROR 
{ 
     "statusCode" : 4, 
     "statusMessage" :  "Internal server error - please contact administrator." 
}

Marking a Call Recording

Marking a call recording for non-deletion will also mark its associated screen recordings as well. Either all the call and screen recordings or none of them are marked for non-delete after the operation.

Un-Apply Non-Deletion to a Recording

Unmark a Single Recording From Non-Deletion

Request

Method Path Required Roles Required Recording Permissions
POST /recordings/<recid> CC Admin N/A
  • Supervisor
  • Agent
RECORDING_PERMISSION_UNAPPLY_NON_DELETE

Create a link to https://docs.genesys.com/Documentation/CR/DRAFT/Solution/Permissions


Payload
Attributes JSON Data Type Mandatory Possible Values Default Value Situations Notes
statusCode Integer yes
0 (Ok) N/A The recording has been marked for non-deletion.
2 (InvalidRequestParameter) If the operationName does not match the any of the possible values described above.
3 (OperationForbidden) If the requesting user does not have the recording permissions required.
4 (InternalError) If internal error occurs.
5 (Unauthorized) If the requesting user does not have the roles required.
6 (ResourceNotFound) If the recording for which to mark non-deletion cannot be found.
statusMessage String no
  • not specified;
  • a message providing information
N/A The statusMessage will provide more information about a failure if statusCode is not 0.

Unmark voice recording for non-deletion=

# Unmark voice recording d15a8bee-a720-4def-9674-0767e6fde196 and its screen recordings(if any) for non-deletion 
POST /recordings/d15a8bee-a720-4def-9674-0767e6fde196 
{ 
     "operationName" :  "unapplyNonDelete" 
}

Response

HTTP Status
Status Codes Situations Notes
200 OK the recording(s) has been unmarked for non-deletion successfully.
400 BAD REQUEST the operationName does not match any of the possible values described above.
403 FORBIDDEN
  • the requesting user does not have the roles required;
  • the requesting user does not have the recording permissions required.
404 NOT FOUND the recording for which to unmark non-deletion cannot be found.
500 INTERNAL SERVER ERROR An internal error occurs.


3 (OperationForbidden)
Payload
Attributes JSON Data Type Mandatory Possible Values Default Value Situations Notes
statusCode Integer yes 0 (Ok) N/A the recording has been unmarked for non-deletion.
2 (InvalidRequestParameter) If the operationName does not match any of the possible values described above.
If the requesting user does not have the recording permissions required.
4 (InternalError) If internal error occurs.
5 (Unauthorized) If the requesting user does not have the roles required.
6 (ResourceNotFound) If the recording for which to unmark non-deletion cannot be found.
statusMessage String no
  • not specified;
  • a message providing information
N/A The statusMessage will provide more information about a failure if statusCode is not 0.


Response when one recording is requested

200 OK 
{ 
     "statusCode" : 0 
} 
  
400 BAD REQUEST 
{ 
     "statusCode" : 2, 
     "statusMessage" :  "Parameter 'operationName' is invalid: The specified value is not within valid range" 
} 
  
403 FORBIDDEN 
{ 
     "statusCode" : 5, 
     "statusMessage" :  "Insufficient user roles." 
} 
  
403 FORBIDDEN 
{ 
     "statusCode" : 3, 
     "statusMessage" :  "Insufficient recording permissions." 
} 
  
404 NOT FOUND 
{ 
     "statusCode" : 6, 
     "statusMessage" :  "Requested recording [f2197c79-3304-4427-9e73-48a5a8903484] cannot be found." 
} 
  
500 INTERNAL SERVER ERROR 
{ 
     "statusCode" : 4, 
     "statusMessage" :  "Internal server error - please contact administrator." 
}
Comments or questions about this documentation? Contact us for support!