History module
Endpoints for managing Call Details Reports, Call Recordings, Chats and Voicemessages
GET
/chats Returns collection of Chat resources
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/chats HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 3362, "created_at": "2021-11-21 03:40:48", "customer_id": 4124, "duration": 1070, "operator_id": 2829, "operator_ua": "value", "state": 2, "visitor_city": "value", "visitor_country": "value", "visitor_email": "value", "visitor_geo": "value", "visitor_id": "value", "visitor_ip": "value", "visitor_name": "value", "visitor_referer": "value", "visitor_ua": "value", "website_id": 16 } ], "total": 59 }
GET
/chats/{id} Returns Chat resource for given Id
Parameters
Endpoint URL:
{id} integerChat identifier
Example Request
GET /v1.1/voipstudio/chats/20 HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 6980, "created_at": "2023-04-28 01:35:56", "customer_id": 2366, "duration": 1938, "operator_id": 4587, "operator_ua": "value", "state": 0, "visitor_city": "value", "visitor_country": "value", "visitor_email": "value", "visitor_geo": "value", "visitor_id": "value", "visitor_ip": "value", "visitor_name": "value", "visitor_referer": "value", "visitor_ua": "value", "website_id": 5999 }, "links": {} }
DELETE
/chatmsgs/{ids} Deletes given chat message resources
Parameters
Endpoint URL:
{ids} comma separated list of integersResource identifiers
Example Request
DELETE /v1.1/voipstudio/chatmsgs/96,118,482 HTTP/1.1 Host: l7api.com
Responses
204 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 204 OK
DELETE
/chatmsgs Deletes collection of ChatMsg resources
Parameters
No parameters
Example Request
DELETE /v1.1/voipstudio/chatmsgs HTTP/1.1 Host: l7api.com
Responses
204 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 204 OK
GET
/cdrs Returns collection of Cdr resources
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/cdrs HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 2907, "billsec": 4531, "calldate": "2021-01-05 05:42:22", "charge": 8.13, "clid": "value", "context": "value", "destination": 2, "disposition": 2, "dst": "44203844711", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 8573, "info": "value", "live_id": 9674, "parent_live_id": 116, "rate": 4.1, "server_id": 1567, "sip_endpoint_id": 4506, "src": "44203844711", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 1, "user_id": 4683 } ], "total": 59 }
PATCH
/cdrs [BULK] Updates existing Cdr resources
Parameters
Example Request
PATCH /v1.1/voipstudio/cdrs HTTP/1.1 Host: l7api.com [ [], { "id": 8483 } ]
Responses
200 Success
400 Validation error
401 Unauthorized
403 Access denied
404 Resource not found
400 Validation error
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 9029, "billsec": 8810, "calldate": "2021-11-22 19:18:13", "charge": 7.25, "clid": "value", "context": "value", "destination": 2, "disposition": 1, "dst": "12124537768", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 1375, "info": "value", "live_id": 6922, "parent_live_id": 1225, "rate": 5.11, "server_id": 6868, "sip_endpoint_id": 6787, "src": "12124537768", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 3, "user_id": 5270 }, "links": {} }
DELETE
/cdrs Deletes collection of Cdr resources
Parameters
No parameters
Example Request
DELETE /v1.1/voipstudio/cdrs HTTP/1.1 Host: l7api.com
Responses
204 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 204 OK
GET
/cdrs/{id}.trace Returns Cdr resource as SIP Trace for given Id
Parameters
Endpoint URL:
{id} integerCdr identifier
Example Request
GET /v1.1/voipstudio/cdrs/94.trace HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 2327, "billsec": 3899, "calldate": "2017-06-10 04:43:23", "charge": 5.17, "clid": "value", "context": "value", "destination": 2, "disposition": 2, "dst": "12124537768", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 7453, "info": "value", "live_id": 9418, "parent_live_id": 8279, "rate": 5.33, "server_id": 2096, "sip_endpoint_id": 3762, "src": "44203846719", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 3, "user_id": 8021 }, "links": {} }
GET
/cdrs/{id}.pcap Returns Cdr resource as PCAP file for given Id
Parameters
Endpoint URL:
{id} integerCdr identifier
Example Request
GET /v1.1/voipstudio/cdrs/48.pcap HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 2914, "billsec": 7452, "calldate": "2022-04-04 06:30:06", "charge": 3.5, "clid": "value", "context": "value", "destination": 2, "disposition": 1, "dst": "12124537768", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 1192, "info": "value", "live_id": 5992, "parent_live_id": 688, "rate": 4.14, "server_id": 5321, "sip_endpoint_id": 7855, "src": "12124537768", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 0, "user_id": 6148 }, "links": {} }
GET
/cdrs/calltracking Returns collection of Call Tracking Cdr resources
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/cdrs/calltracking HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 2153, "billsec": 7345, "calldate": "2020-06-24 06:47:19", "charge": 6.5, "clid": "value", "context": "value", "destination": 0, "disposition": 2, "dst": "32179243705", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 2874, "info": "value", "live_id": 6202, "parent_live_id": 9933, "rate": 5.13, "server_id": 1222, "sip_endpoint_id": 7598, "src": "12124537768", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 3, "user_id": 1811 } ], "total": 59 }
GET
/cdrs/{id} Returns Cdr resource for given Id
Parameters
Endpoint URL:
{id} integerCdr identifier
Example Request
GET /v1.1/voipstudio/cdrs/61 HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 8797, "billsec": 7671, "calldate": "2022-06-08 19:30:33", "charge": 9.5, "clid": "value", "context": "value", "destination": 2, "disposition": 0, "dst": "13103345244", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 6586, "info": "value", "live_id": 3263, "parent_live_id": 1551, "rate": 7.11, "server_id": 9801, "sip_endpoint_id": 1427, "src": "44203846719", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 3, "user_id": 6468 }, "links": {} }
GET
/cdrs/dictionaries Returns Dictionary for Cdr resource
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/cdrs/dictionaries HTTP/1.1 Host: l7api.com
Responses
200 Unknown
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 8778, "billsec": 2748, "calldate": "2023-07-14 05:59:53", "charge": 5.14, "clid": "value", "context": "value", "destination": 1, "disposition": 3, "dst": "44203846719", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 2187, "info": "value", "live_id": 7327, "parent_live_id": 6984, "rate": 3.33, "server_id": 6939, "sip_endpoint_id": 9964, "src": "44779243705", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 2, "user_id": 8053 } ], "total": 59 }
GET
/cdrs/{id}/notes Returns Notes for give CDR resource
Parameters
Endpoint URL:
{id} integerCdr identifier
Example Request
GET /v1.1/voipstudio/cdrs/42/notes HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 5672, "billsec": 7016, "calldate": "2019-11-27 07:51:30", "charge": 2.17, "clid": "value", "context": "value", "destination": 1, "disposition": 2, "dst": "44203846719", "dst_codec": "value", "dst_id": "value", "dst_name": "value", "dst_ua": "value", "duration": 9799, "info": "value", "live_id": 6597, "parent_live_id": 2673, "rate": 9.5, "server_id": 5598, "sip_endpoint_id": 5076, "src": "44203846719", "src_codec": "value", "src_id": "value", "src_name": "value", "src_ua": "value", "t_cause": "value", "type": 3, "user_id": 3915 }, "links": {} }
GET
/monitors/{id}.mp3 Returns Monitor resource for given Id as MP3 audio file
Parameters
Endpoint URL:
{id} integerMonitor identifier
Example Request
GET /v1.1/voipstudio/monitors/33.mp3 HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 9809, "called": "13103345244", "caller": "44779243705", "context": "value", "dst_id": "value", "duration": 233, "live_id": 4678, "sip_endpoint_id": 4807, "size": 4314, "src_id": "value", "timestamp": "2017-07-17 23:05:43", "type": "value", "user_id": 1732 }, "links": {} }
GET
/monitors Returns collection of Monitor resources
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/monitors HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 9391, "called": "12124537768", "caller": "44779243705", "context": "value", "dst_id": "value", "duration": 8538, "live_id": 7819, "sip_endpoint_id": 9587, "size": 6461, "src_id": "value", "timestamp": "2023-10-04 00:54:15", "type": "value", "user_id": 3650 } ], "total": 59 }
DELETE
/monitors Deletes all Monitor resources for given customer
Parameters
No parameters
Example Request
DELETE /v1.1/voipstudio/monitors HTTP/1.1 Host: l7api.com
Responses
202 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 202 OK
GET
/monitors/{id} Returns Monitor resource for given Id
Parameters
Endpoint URL:
{id} integerMonitor identifier
Example Request
GET /v1.1/voipstudio/monitors/88 HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 7301, "called": "44779243705", "caller": "44203844711", "context": "value", "dst_id": "value", "duration": 6521, "live_id": 9836, "sip_endpoint_id": 353, "size": 481, "src_id": "value", "timestamp": "2021-04-30 04:02:09", "type": "value", "user_id": 5860 }, "links": {} }
DELETE
/monitors/{ids} Deletes given Monitor resources
Parameters
Endpoint URL:
{ids} comma separated list of integersMonitor identifiers
Example Request
DELETE /v1.1/voipstudio/monitors/36,198,498 HTTP/1.1 Host: l7api.com
Responses
204 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 204 OK
GET
/msdrs/{id}.trace Returns Msdr resource as SIP Trace for given Id
Parameters
Endpoint URL:
{id} integerMsdr identifier
Example Request
GET /v1.1/voipstudio/msdrs/33.trace HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 9894, "call_id": "value", "created_at": "2017-05-16 08:41:02", "dst": "12124537768", "dst_id": "value", "dst_ua": "value", "duration": 2995, "media_session_id": 6738, "src": "44779243705", "src_id": "value", "src_ua": "value", "t_cause": "value", "type": "value", "user_id": 235 }, "links": {} }
GET
/msdrs/{id}.pcap Returns Msdr resource as PCAP file for given Id
Parameters
Endpoint URL:
{id} integerMsdr identifier
Example Request
GET /v1.1/voipstudio/msdrs/51.pcap HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 2110, "call_id": "value", "created_at": "2017-06-25 02:23:54", "dst": "44203846719", "dst_id": "value", "dst_ua": "value", "duration": 4942, "media_session_id": 2975, "src": "12124537768", "src_id": "value", "src_ua": "value", "t_cause": "value", "type": "value", "user_id": 1068 }, "links": {} }
GET
/msdrs Returns collection of Msdr resources
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/msdrs HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 9682, "call_id": "value", "created_at": "2018-09-29 16:45:41", "dst": "13103345244", "dst_id": "value", "dst_ua": "value", "duration": 9760, "media_session_id": 4513, "src": "44779243705", "src_id": "value", "src_ua": "value", "t_cause": "value", "type": "value", "user_id": 1711 } ], "total": 59 }
GET
/msdrs/{id} Returns Msdr resource for given Id
Parameters
Endpoint URL:
{id} integerMsdr identifier
Example Request
GET /v1.1/voipstudio/msdrs/5 HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 5883, "call_id": "value", "created_at": "2016-10-26 16:53:51", "dst": "13103345244", "dst_id": "value", "dst_ua": "value", "duration": 2965, "media_session_id": 1551, "src": "44203844711", "src_id": "value", "src_ua": "value", "t_cause": "value", "type": "value", "user_id": 342 }, "links": {} }
GET
/msdrs/dictionaries Returns Dictionary for Msdr resource
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/msdrs/dictionaries HTTP/1.1 Host: l7api.com
Responses
200 Unknown
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 2450, "call_id": "value", "created_at": "2018-10-16 05:40:28", "dst": "32179243705", "dst_id": "value", "dst_ua": "value", "duration": 5094, "media_session_id": 5676, "src": "12124537768", "src_id": "value", "src_ua": "value", "t_cause": "value", "type": "value", "user_id": 7042 } ], "total": 59 }
DELETE
/statements Deletes collection of Statement resources
Parameters
No parameters
Example Request
DELETE /v1.1/voipstudio/statements HTTP/1.1 Host: l7api.com
Responses
204 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 204 OK
GET
/voicemessages/{id}.mp3 Returns Voicemessage MP3 file for given Id
Parameters
Endpoint URL:
{id} integerVoicemessage identifier
Example Request
GET /v1.1/voipstudio/voicemessages/74.mp3 HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 7235, "caller": "12124537768", "callerid": "44779243705", "dialled": "44203844711", "duration": 2024, "extension_id": 993, "folder": 0, "is_new": true, "live_id": 6983, "origtime": "2021-07-01 16:32:16", "parent_live_id": 5623, "transcript": "value" }, "links": {} }
GET
/voicemessages Returns collection of Voicemessage resources
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/voicemessages HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 4258, "caller": "44779243705", "callerid": "32179243705", "dialled": "32179243705", "duration": 7934, "extension_id": 7609, "folder": 1, "is_new": true, "live_id": 6869, "origtime": "2020-04-28 09:01:03", "parent_live_id": 1479, "transcript": "value" } ], "total": 59 }
PATCH
/voicemessages [BULK] Updates folder of existing Voicemessage resources
Parameters
JSON body attributes:
id integer
folder string
Example Request
PATCH /v1.1/voipstudio/voicemessages HTTP/1.1 Host: l7api.com [ { "id": 446, "folder": "abcd" }, { "id": 9371, "folder": "abcd" } ]
Responses
200 Success
400 Validation error
401 Unauthorized
403 Access denied
404 Resource not found
400 Validation error
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 179, "caller": "44203844711", "callerid": "12124537768", "dialled": "13103345244", "duration": 1435, "extension_id": 8166, "folder": 2, "is_new": true, "live_id": 9345, "origtime": "2021-04-18 11:16:31", "parent_live_id": 9033, "transcript": "value" }, "links": {} }
DELETE
/voicemessages Deletes collection of Voicemessage resources
Parameters
No parameters
Example Request
DELETE /v1.1/voipstudio/voicemessages HTTP/1.1 Host: l7api.com
Responses
202 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 202 OK
GET
/voicemessages/{id} Returns Voicemessage resource for given Id
Parameters
Endpoint URL:
{id} integerVoicemessage identifier
Example Request
GET /v1.1/voipstudio/voicemessages/34 HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 2296, "caller": "44203844711", "callerid": "44203846719", "dialled": "44779243705", "duration": 859, "extension_id": 2672, "folder": 2, "is_new": true, "live_id": 4086, "origtime": "2020-07-26 02:35:26", "parent_live_id": 9952, "transcript": "value" }, "links": {} }
DELETE
/voicemessages/{ids} Deletes given voicemessage resources
Parameters
Endpoint URL:
{ids} comma separated list of integersVoicemessage identifiers
Example Request
DELETE /v1.1/voipstudio/voicemessages/72,142,447 HTTP/1.1 Host: l7api.com
Responses
204 Success
401 Unauthorized
403 Access denied
404 Resource not found
401 Unauthorized
403 Access denied
404 Resource not found
Example Response
HTTP/1.1 204 OK
GET
/sms/dictionaries Returns Dictionary for SMS resource
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/sms/dictionaries HTTP/1.1 Host: l7api.com
Responses
200 Unknown
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 2900, "created_at": "2019-10-30 08:55:56", "from": "44203846719", "message": "value", "result": "value", "to": "12124537768", "type": "value", "user_id": 8017 } ], "total": 59 }
GET
/calltracking/cdrs Returns collection of Call Tracking Cdr resources
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/calltracking/cdrs HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": "value", "channels": 5678, "cli_hide": true, "cli_prefix": 2285, "created_at": "2021-10-08 09:51:29", "e164": "value", "esc_enabled": true, "fax_email": "value", "fax_enabled": true, "flag": 6, "has_fax_password": true, "info": "value", "name": "value", "rate": 2.13, "sms_email": "value", "sms_enabled": true, "status": 2, "target_id": 3160, "target_type": 8, "tel_verified": true, "uri": "value" } ], "total": 59 }
GET
/users/{id}/cdrs.csv Exports collection of Cdr resources to .csv file for given user
Parameters
Endpoint URL:
{id} integerUser identifier
Example Request
GET /v1.1/voipstudio/users/80/cdrs.csv HTTP/1.1 Host: l7api.com
Responses
200 Success
401 Unauthorized
401 Unauthorized
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": { "id": 2328, "active": true, "created_at": "2019-12-27 07:44:03", "customer": 3597, "email": "value", "first_name": "value", "is_initial": true, "is_root": true, "last_name": "value", "roles": "value", "two_factor_auth": 0, "visited_apps": "value" }, "links": {} }
GET
/mediasessions/dictionaries Returns Dictionary for Media Session resource
Parameters
No parameters
Example Request
GET /v1.1/voipstudio/mediasessions/dictionaries HTTP/1.1 Host: l7api.com
Responses
200 Unknown
Example Response
HTTP/1.1 200 OK Content-Type: application/json { "data": [ { "id": 7635, "call_id": "value", "created_at": "2020-01-11 18:03:46", "dst_id": "value", "dst_ua": "value", "duration": 2170, "src_id": "value", "src_ua": "value", "status": "value", "type": "value", "updated_at": "2020-01-11 18:02:06", "user": 4708 } ], "total": 59 }