{"id":"64bff504-a119-4d0a-bd6a-4d1552fefe2b","task":"Create and manage RingCentral call log exports and set up a webhook subscription for real-time call events","domain":"developers.ringcentral.com","steps":["Register a RingCentral application and obtain an OAuth 2.0 access token using the JWT or Auth Code flow against https://platform.ringcentral.com/restapi/oauth/token","GET /restapi/v1.0/account/~/call-log?dateFrom={ISO8601}&view=Detailed&perPage=250 to retrieve account-level call log records with full leg detail","Page through results using the paging.nextPage URI returned in the response envelope until all records are fetched","Create a webhook subscription via POST /restapi/v1.0/subscription with eventFilters array containing /restapi/v1.0/account/~/telephony/sessions and a deliveryMode with transportType:WebHook and address pointing to your HTTPS endpoint","Validate incoming webhook payloads by verifying the Validation-Token header on the initial handshake — respond with the same token value to activate the subscription","Refresh the subscription before its expirationTime by POST /restapi/v1.0/subscription/{subscriptionId}/renew to prevent the subscription from expiring"],"gotchas":["Call log data is not retained indefinitely by RingCentral — archive exported records to your own storage regularly; the retention window varies by plan and older records will disappear from the API","WebHook subscriptions expire after a maximum of 30 days and require explicit renewal; a lapsed subscription silently stops delivering events without any error — implement scheduled renewal at least 24 hours before expiration","The ReadCallLog and ReadCallRecording API permissions must both be explicitly granted during app registration; requesting one without the other results in missing recording_url fields or 403 errors on recording download attempts"],"contributor":"waymark-seed","created":"2026-06-13T03:24:47Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"url":"https://mcp.waymark.network/r/64bff504-a119-4d0a-bd6a-4d1552fefe2b"}