Rivendell Web Interface API Fred Gleason fredg@paravelsystems.com Data Types Data Types TYPE DESCRIPTION DateTime xs:dateTime format string: YYYY-MM-DDTHH:MM:SSZ|+HH:MM|-HH:MM If no timezone information is specified, all values will be assumed to be in the local timezone of the processing system. Date xs:date format string: YYYY-MM-DDZ|+HH:MM|-HH:MM If no timezone information is specified, all values will be assumed to be in the local timezone of the processing system. Time xs:time format string: HH:MM:SSZ|+HH:MM|-HH:MM If no timezone information is specified, all values will be assumed to be in the local timezone of the processing system. String Text data, encoded
Authentication With the exception of the CreateTicket command, all commands in this API must be authenticated by one of the following two methods: Username / Password Username/Password Authentication Fields FIELD NAME MEANING REMARKS LOGIN_NAME Rivendell User Name Mandatory PASSWORD Login Password Mandatory
Ticket Ticket Authentication Fields FIELD NAME MEANING REMARKS TICKET 40 character ticket code, obtained from a previous CreateTicket call. Mandatory
Result Reporting Commands that return an error or do not return specialized data types (e.g. audio data for the Export command) will return an XML document describing the result of the command, in the following format: <RDWebResult> <ResponseCode>resp_code</ResponseCode> <ErrorString>resp_string</ErrorString> <AudioConvertError>conv_error_code</AudioConvertError> </RDWebResult> resp_code The HTTP result code, as defined in RFC2616 resp_string A text string describing the result, suitable for displaying in a UI conv_error_code An extended error code from the audio converter routines. These values are defined in the RDAudioConvert::ErrorCode enumeration in lib/rdaudioconvert.h. This parameter is optional. AddCart Add a new cart Command Code: RDXPORT_COMMAND_ADDCART Required User Permissions: Create Carts A 403 error will be returned if the requested cart number is not within the configured range for the specified group and 'Enforce Cart Range' is set in RDAdmin->ManageGroups. AddCart Call Fields FIELD NAME MEANING REMARKS COMMAND 12 Mandatory GROUP_NAME Name of Group Mandatory TYPE Cart type Valid values are "audio" or "macro" CART_NUMBER Number of Cart Optional, default is to use next available cart number for specified group
AddCut Add a new cut to an existing cart Command Code: RDXPORT_COMMAND_ADDCUT Required User Permissions: Edit Audio A 404 error will be returned if the requested cart number is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. AddCut Call Fields FIELD NAME MEANING REMARKS COMMAND 10 Mandatory CART_NUMBER Number of Cart Mandatory
AddLog Add a new log Command Code: RDXPORT_COMMAND_ADDLOG Required User Permissions: Create Log AddLog Call Fields FIELD NAME MEANING REMARKS COMMAND 29 Mandatory LOG_NAME Name of log to be created. Mandatory SERVICE_NAME Name of the service to own the new log. Mandatory
AssignSchedCode Assign a scheduler code to an existing cart Command Code: RDXPORT_COMMAND_ASSIGNSCHEDCODE Required User Permissions: Modify Carts A 404 error will be returned if the specified cart number is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. AssignSchedCode Call Fields FIELD NAME MEANING REMARKS COMMAND 25 Mandatory CART_NUMBER Number of Cart Mandatory CODE Scheduler Code to assign Mandatory
AudioInfo Get information about an entry in the audio store Command Code: RDXPORT_COMMAND_AUDIOINFO Required User Permissions: none AudioInfo Call Fields FIELD NAME MEANING REMARKS COMMAND 19 Mandatory CART_NUMBER Number of Cart Mandatory CUT_NUMBER Number of Cut Mandatory
AudioStore Get information about the audio store Command Code: RDXPORT_COMMAND_AUDIOSTORE Required User Permissions: none AudioStore Call Fields FIELD NAME MEANING REMARKS COMMAND 23 Mandatory
CreateTicket Create an authorization ticket for a given user/client IP address Command Code: RDXPORT_COMMAND_CREATETICKET Required User Permissions: none CreateTicket Call Fields FIELD NAME MEANING REMARKS COMMAND 31 Mandatory LOGIN_NAME Rivendell User Name Mandatory PASSWORD Login Password Mandatory
DeleteAudio Delete PCM/MPEG data from the audio store Command Code: RDXPORT_COMMAND_DELETEAUDIO Required User Permissions: Delete Carts DeleteAudio Call Fields FIELD NAME MEANING REMARKS COMMAND 3 Mandatory CART_NUMBER Number of Cart Mandatory CUT_NUMBER Number of Cut Mandatory
DeleteLog Delete a log Command Code: RDXPORT_COMMAND_DELETELOG Required User Permissions: Delete Log DeleteLog Call Fields FIELD NAME MEANING REMARKS COMMAND 30 Mandatory LOG_NAME Name of log to be deleted. Mandatory
EditCart Write metadata changes for an existing cart into the database Command Code: RDXPORT_COMMAND_EDITCART Required User Permissions: Modify Carts A 404 error will be returned if the requested cart belongs to a group that is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms, or if it is attempted to assign the cart to such a group. A 409 error will be returned if the requested cart's number falls outside the valid range for the requested GROUP_NAME. If the tags for an 'optional' field are omitted, then the respective parameter on the target cart will be left unchanged. EditCart Call Fields FIELD NAME MEANING REMARKS COMMAND 14 Mandatory CART_NUMBER Number of Cart Mandatory INCLUDE_CUTS Include cut data in return, 0 = no, 1 = yes Optional, default is 0 GROUP_NAME Set Rivendell group Optional TITLE Set Title Optional ARTIST Set Artist Optional ALBUM Set Album Optional YEAR Set Year Optional LABEL Set Record Label Optional CLIENT Set Client Optional AGENCY Set Agency Optional PUBLISHER Set Publisher Optional COMPOSER Set Composer Optional USER_DEFINED Set User Defined Optional USER_CODE Set User Code Optional ENFORCE_LENGTH Set Enforce Length State Optional, Numeric, 0 = No, 1 = Yes FORCED_LENGTH Set Forced Length Optional, in milliseconds ASYNCHRONOUS Set Asynchronous Optional, Numeric, 0 = No, 1 = Yes OWNER Set Owner Optional NOTES Set Notes Text Optional
EditCut Write metadata changes for an existing cut into the database Command Code: RDXPORT_COMMAND_EDITCUT Required User Permissions: Edit Audio A 404 error will be returned if the requested cart belongs to a group that is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. If the tags for an 'optional' field are omitted, then the respective parameter on the target cart will be left unchanged. EditCut Call Fields FIELD NAME MEANING REMARKS COMMAND 15 Mandatory CART_NUMBER Number of Cart Mandatory CUT_NUMBER Number of Cut Mandatory EVERGREEN Set the Evergreen Falg, valid values are 0 = no, 1 = yes Optional DESCRIPTION Set Description Optional OUTCUE Set Outcue Optional ISRC Set International Standard Recording Code Optional ISCI Set Internatinal Standardized Commercial Identifier Optional START_DATETIME Set Start Date/Time Optional, RFC-822 format END_DATETIME Set End Date/Time Optional, RFC-822 format MON Set Monday daypart flag Optional, 0 = no, 1 = yes TUE Set Tuesday daypart flag Optional, 0 = no, 1 = yes WED Set Wedensday daypart flag Optional, 0 = no, 1 = yes THU Set Thursday daypart flag Optional, 0 = no, 1 = yes FRI Set Friday daypart flag Optional, 0 = no, 1 = yes SAT Set Saturday daypart flag Optional, 0 = no, 1 = yes SUN Set Sunday daypart flag Optional, 0 = no, 1 = yes START_DAYPART Set Start daypart time Optional, RFC-822 format END_DAYPART Set End daypart time Optional, RFC-822 format WEIGHT Set rotation weight Optional, numeric START_POINT Set Start Marker position Optional, mS from absolute start of audio data END_POINT Set End Marker position Optional, mS from absolute start of audio data FADEUP_POINT Set Fadeup Marker position Optional, mS from absolute start of audio data FADEDOWN_POINT Set Fadedown Marker position Optional, mS from absolute start of audio data SEGUE_START_POINT Set Segue Start Marker position Optional, mS from absolute start of audio data SEGUE_END_POINT Set Segue End Marker position Optional, mS from absolute start of audio data HOOK_START_POINT Set Hook Start Marker position Optional, mS from absolute start of audio data HOOK_END_POINT Set Hook End Marker position Optional, mS from absolute start of audio data TALK_START_POINT Set Talk Start Marker position Optional, mS from absolute start of audio data TALK_END_POINT Set Talk End Marker position Optional, mS from absolute start of audio data
Export Export audio data from the audio store Command Code: RDXPORT_COMMAND_EXPORT Required User Permissions: none Export Call Fields FIELD NAME MEANING REMARKS COMMAND 1 Mandatory CART_NUMBER Number of Cart Mandatory CUT_NUMBER Number of Cut Mandatory FORMAT Encoding format of exported data Mandatory, 0 = PCM16 WAV, 2 = MPEG L2 native, 3 = MPEG L3 native, 4 = FLAC, 5 = OggVorbis, 6 = MPEG L2 WAV, 7 = PCM24 WAV CHANNELS Number of audio channels Mandatory SAMPLE_RATE Sample rate Mandatory, in samples/sec BIT_RATE Bit rate Mandatory, set to '0' for PCM or VBR QUALITY Quality Level Mandatory, used only by OggVorbis, set to '0' for others START_POINT Start point of audio export Mandatory, mS from absolute start of stored audio END_POINT End point of audio export Mandatory, mS from absolute start of stored audio NORMALIZATION_LEVEL Normalization leve, in dBFS Mandatory, 0 = No normalization ENABLE_METADATA Include metadata in export Mandatory, 0 = no, 1 = yes
ExportPeaks Export audio peak data from the audio store Command Code: RDXPORT_COMMAND_EXPORT Required User Permissions: none A 404 error will be returned if the requested cart is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. ExportPeaks Call Fields FIELD NAME MEANING REMARKS COMMAND 16 Mandatory CART_NUMBER Number of Cart Mandatory CUT_NUMBER Number of Cut Mandatory
Import Import audio data into the audio store Command Code: RDXPORT_COMMAND_IMPORT Required User Permissions: Edit Audio A 404 error will be returned if the requested cart is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms or if the system is configured to require unique titles and a non-unique title is provided in the TITLE field. NOTE: The method must be called with 'multipart/form-data' encoding. If the CREATE field is set to '1', a valid GROUP_NAME specified and both CART_NUMBER and CUT_NUMBER fields are set to zero, the system will attempt to create a new cart/cut in the specified group. If successful, the cart and cut numbers will be returned as part of the RDWebResult return. Import Call Fields FIELD NAME MEANING REMARKS COMMAND 2 Mandatory CART_NUMBER Number of Cart Mandatory CUT_NUMBER Number of Cut Mandatory CHANNELS Number of audio channels Mandatory NORMALIZATION_LEVEL Normalization level, in dBFS Mandatory, 0 = no normalization AUTOTRIM_LEVEL Autotrim level, in dBFS Mandatory, 0 = no autotrim USE_METADATA Apply source metadata to cart Mandatory, 0 = No, 1 = Yes CREATE Create cart/cut if it does not exist Optional, 0 = No, 1 = Yes GROUP_NAME Add newly created cart/cut to specified group. Optional TITLE The TITLE value for the imported audio. This will override any value found in in-file metadata. Optional FILENAME Binary file data Mandatory
ListCart Return information about a specified cart Command Code: RDXPORT_COMMAND_LISTCART Required User Permissions: none A 404 error will be returned if the requested cart belongs to a group that is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. ListCart Call Fields FIELD NAME MEANING REMARKS COMMAND 7 Mandatory CART_NUMBER Number of Cart Mandatory INCLUDE_CUTS Include cut information in return Optional, 0 = no, 1 = yes, default is 1
ListCarts Return information about a set of carts Command Code: RDXPORT_COMMAND_LISTCARTS Required User Permissions: none Only those carts that belong to groups authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms will be returned. ListCarts Call Fields FIELD NAME MEANING REMARKS COMMAND 6 Mandatory GROUP_NAME Limit returns to members of specified group Optional, default is to search all available carts INCLUDE_CUTS Include cut information in return Optional, 0 = no, 1 = yes, default is 1 FILTER Limit returns to carts containing specified space-separated keyword(s) Optional, default is to apply no filtering TYPE Limit returns to carts of the specified type Optional, valid values are 'audio' or 'macro'
ListCartSchedCodes Return information about all scheduler codes assigned to a cart Command Code: RDXPORT_COMMAND_LISTCARTSCHEDCODES Required User Permissions: none A 404 error will be returned if the requested cart belongs to a group that is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. ListCartSchedCodes Call Fields FIELD NAME MEANING REMARKS COMMAND 27 Mandatory CART_NUMBER Number of Cart Mandatory
ListCut Return information about a specified cut Command Code: RDXPORT_COMMAND_LISTCUT Required User Permissions: none A 404 error will be returned if the requested cart belongs to a group that is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. ListCut Call Fields FIELD NAME MEANING REMARKS COMMAND 8 Mandatory CART_NUMBER Number of Cart Mandatory CUT_NUMBER Number of Cut Mandatory
ListCuts Return information about all cuts belonging to a cart Command Code: RDXPORT_COMMAND_LISTCUTS Required User Permissions: none A 404 error will be returned if the requested cart belongs to a group that is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. ListCuts Call Fields FIELD NAME MEANING REMARKS COMMAND 9 Mandatory CART_NUMBER Number of Cart Mandatory
ListGroup Return information about a specified group Command Code: RDXPORT_COMMAND_LISTGROUP Required User Permissions: none A 404 error will be returned if the requested group is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. ListGroup Call Fields FIELD NAME MEANING REMARKS COMMAND 5 Mandatory GROUP_NAME Name of group Mandatory
ListGroups Return information about all available groups Command Code: RDXPORT_COMMAND_LISTGROUPS Required User Permissions: none The set of returned groups will be tailored according to what the specified Rivendell user is authorized to see in RDAdmin->ManageUsers->AssignGroupPerms. ListGroups Call Fields FIELD NAME MEANING REMARKS COMMAND 4 Mandatory
ListLog Return a listing of the specified log Command Code: RDXPORT_COMMAND_LISTLOG Required User Permissions: none ListLog Call Fields FIELD NAME MEANING REMARKS COMMAND 22 Mandatory NAME The name of the log Mandatory
ListLogs Return information about one or more logs Command Code: RDXPORT_COMMAND_LISTLOGS Required User Permissions: none ListLogs Call Fields FIELD NAME MEANING REMARKS COMMAND 20 Mandatory SERVICE_NAME Limit returns to logs that are owned by specified service Optional. Default is to return all logs. LOG_NAME Return the log with this name. Optional. Default is to return all logs. TRACKABLE Limit returns to logs that contain one or more voicetrack slots Optional, valid values 0=no, 1=yes. Default is to return all logs. FILTER Limit returns to logs that contain the specified string in the Name, Description or Service fields. Optional. Default is to return all logs. RECENT Limit returns to the 14 most recently created logs. Optional, valid values 0=no, 1=yes. Default is to return all logs.
ListSchedulerCodes Return information about all available scheduler codes Command Code: RDXPORT_COMMAND_LISTSCHEDCODES Required User Permissions: none ListSchedCodes Call Fields FIELD NAME MEANING REMARKS COMMAND 24 Mandatory
ListServices Return information about all available services Command Code: RDXPORT_COMMAND_LISTSERVICES Required User Permissions: none ListServices Call Fields FIELD NAME MEANING REMARKS COMMAND 21 Mandatory TRACKABLE Limits returns to services that have a valid voicetracking configuration Optional, valid values 0=no, 1=yes. Default is to return all services
ListSystemSettings Return information about system-wide settings Command Code: RDXPORT_COMMAND_LISTSYSTEMSETTINGS Required User Permissions: none ListSystemSettings Call Fields FIELD NAME MEANING REMARKS COMMAND 33 Mandatory
LockLog Set / Update / Clear a log lock Command Code: RDXPORT_COMMAND_LOCKLOG Required User Permissions: none LockLog Call Fields FIELD NAME MEANING REMARKS COMMAND 34 Mandatory OPERATION Operation to Perform Mandatory. Possible values: CREATE UPDATE CLEAR LOG_NAME Name of log Mandatory LOCK_GUID Opaque GUID string, returned by the CREATE operation. Mandatory. For CREATE, send an empty string.
Rehash Generate a SHA-1 hash for a cut and write it to the database Command Code: RDXPORT_COMMAND_REHASH Required User Permissions: None Rehash Call Fields FIELD NAME MEANING REMARKS COMMAND 32 Mandatory CART_NUMBER Number of cart Mandatory CUT_NUMBER Number of cut Mandatory
RemoveCart Remove a cart from the Library Command Code: RDXPORT_COMMAND_REMOVECART Required User Permissions: Delete Cart RemoveCart Call Fields FIELD NAME MEANING REMARKS COMMAND 13 Mandatory CART_NUMBER Number of cart Mandatory
RemoveCut Remove an existing cut from a cart Command Code: RDXPORT_COMMAND_REMOVECUT Required User Permissions: Edit Audio RemoveCut Call Fields FIELD NAME MEANING REMARKS COMMAND 11 Mandatory CART_NUMBER Number of cart Mandatory CUT_NUMBER Number of cut Mandatory
SaveFile Write a specified file to the '/tmp' directory. (Test only) Command Code: RDXPORT_COMMAND_SAVEFILE Required User Permissions: none NOTE: The method must be called with 'multipart/form-data' encoding. SaveString Call Fields FIELD NAME MEANING REMARKS COMMAND 36 Mandatory FILENAME Binary file data Mandatory
SaveLog Save a log to the Rivendell Database Command Code: RDXPORT_COMMAND_SAVELOG Required User Permissions: none ListLogs Call Fields FIELD NAME MEANING REMARKS COMMAND 28 Mandatory. LOG_NAME Save the log to this name. If it does not already exist, it will be created. Mandatory. String, 64 characters max. SERVICE_NAME The name of the Service to which the log belongs. Mandatory. String, 10 characters max. LOCK_GUID The GUID string, obtained from the LockLog API call. Optional. If not provided, the service will attempt to acquire a lock before processing the save. DESCRIPTION The Description field. Mandatory. String, 64 characters max. PURGE_DATE The date on which the log should be automatically deleted. Mandatory. Date. AUTO_REFRESH Enable/disable auto-refresh. Mandatory. Boolean. START_DATE The Start Date. Mandatory. Date. END_DATE The End Date. Mandatory. Date. LINE_QUANTITY The number of log line entries in this call. Mandatory. Positive integer. LINEnum_ID Integer Id. Mandatory. Unique positive integer. LINEnum_TYPE Event type. Mandatory. One of the following key words: Audio Chain Macro Marker Track MusicLink TrafficLink LINEnum_CART_NUMBER Cart number for Audio or Macro events. Mandatory. Positive integer in the range 0 - 999999. LINEnum_START_TIME Event start time. Mandatory. Integer, expressing milliseconds past midnight. LINEnum_GRACE_TIME Event start time. Mandatory. Integer, expressing milliseconds. LINEnum_TIME_TYPE Start time type. Mandatory. One of the following key words: Hard Relative LINEnum_TRANS_TYPE Event transition type. Mandatory. One of the following key words: Play Segue Stop LINEnum_START_POINT Start point for one-off (voice-tracked) play-outs. Mandatory. Positive integer, or -1 if not defined. LINEnum_END_POINT End point for one-off (voice-tracked) play-outs. Mandatory. Positive integer, or -1 if not defined. LINEnum_SEGUE_START_POINT Segue start point for one-off (voice-tracked) play-outs. Mandatory. Positive integer, or -1 if not defined. LINEnum_SEGUE_END_POINT Segue end point for one-off (voice-tracked) play-outs. Mandatory. Positive integer, or -1 if not defined. LINEnum_FADEUP_POINT FadeUp point for one-off (voice-tracked) play-outs. Mandatory. Positive integer, or -1 if not defined. LINEnum_FADEUP_GAIN Gain for FadeUp events. Mandatory. 1/100 dBFS. LINEnum_FADEDOWN_POINT FadeDown point for one-off (voice-tracked) play-outs. Mandatory. Positive integer, or -1 if not defined. LINEnum_FADEDOWN_GAIN Gain for FadeDown events. Mandatory. 1/100 dBFS. LINEnum_DUCK_UP_GAIN Duck Up level for one-off (voice-tracked) play-outs. Mandatory. Negative integer, or 0 if not defined. LINEnum_DUCK_DOWN_GAIN Duck Down level for one-off (voice-tracked) play-outs. Mandatory. Negative integer, or 0 if not defined. LINEnum_COMMENT Marker and Track event body text. Mandatory. String, max length 255. LINEnum_LABEL Marker and Track event label text. Mandatory. String, max length 64. LINEnum_ORIGIN_USER User name for one-off (voice-tracked) events. Mandatory. String, max length 255. LINEnum_ORIGIN_DATETIME Date/time stamp for one-off (voice-tracked) events. Mandatory. DateTime value. LINEnum_EVENT_LENGTH Link event length, in mS. Mandatory. Integer. LINEnum_LINK_EVENT_NAME Link event name. Mandatory. String, max length 64. LINEnum_LINK_START_TIME Link event start time, in mS past midnight. Mandatory. Integer. LINEnum_LINK_LENGTH Link event length, in mS. Mandatory. Integer. LINEnum_LINK_START_SLOP Link event start slop, in mS. Mandatory. Integer. LINEnum_LINK_END_SLOP Link event end slop, in mS. Mandatory. Integer. LINEnum_LINK_ID Link event id. Mandatory. Integer. LINEnum_LINK_EMBEDDED Link event embedded flag. Mandatory. Boolean. LINEnum_EXT_START_TIME External data start time. Mandatory. Time value. LINEnum_EXT_LENGTH External data length. Mandatory. Integer. LINEnum_EXT_CART_NAME External data cart name. Mandatory. String, max length 32. LINEnum_EXT_DATA External data data field. Mandatory. String, max length 32. LINEnum_EXT_EVENT_ID External data event id. Mandatory. String, max length 32. LINEnum_EXT_ANNC_TYPE External data announcement type. Mandatory. String, max length 8.
SaveString Write a specified string to the syslog. (Test only) Command Code: RDXPORT_COMMAND_SAVESTRING Required User Permissions: none SaveString Call Fields FIELD NAME MEANING REMARKS COMMAND 35 Mandatory STRING UTF-8 String Mandatory
TrimAudio Return a time pointer to the first or last instance of a particular level in a cut. Command Code: RDXPORT_COMMAND_TRIMAUDIO Required User Permissions: Edit Audio A 404 error will be returned if the requested cart is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. TrimAudio Call Fields FIELD NAME MEANING REMARKS COMMAND 17 Mandatory CART_NUMBER Number of cart Mandatory CUT_NUMBER Number of cut Mandatory TRIM_LEVEL Level in 1/100 dB, relative to Rivendell reference level (-16 dBFS) Mandatory
UnassignSchedCode Unassign a scheduler code from an existing cart Command Code: RDXPORT_COMMAND_UNASSIGNSCHEDCODE Required User Permissions: Modify Carts A 404 error will be returned if the specified cart number is not authorized for the specified Rivendell user in RDAdmin->ManageUsers->AssignGroupPerms. UnassignSchedCode Call Fields FIELD NAME MEANING REMARKS COMMAND 26 Mandatory CART_NUMBER Number of Cart Mandatory CODE Scheduler Code to assign Mandatory