Open Context Protocol is live! 🚀 Read the launch post
updateConferenceRecording

updateConferenceRecording

Changes the status of the recording to paused, stopped, or in-progress. Note: To use Twilio.CURRENT, pass it as recording sid.

Details

  • Method: POST
  • Path: /2010-04-01/Accounts/{AccountSid}/Conferences/{ConferenceSid}/Recordings/{Sid}.json
  • Operation ID: UpdateConferenceRecording

Parameters

{
  "AccountSid": {
    "description": "The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Conference Recording resource to update.",
    "required": true,
    "location": "path",
    "type": "string"
  },
  "ConferenceSid": {
    "description": "The Conference SID that identifies the conference associated with the recording to update.",
    "required": true,
    "location": "path",
    "type": "string"
  },
  "Sid": {
    "description": "The Twilio-provided string that uniquely identifies the Conference Recording resource to update. Use `Twilio.CURRENT` to reference the current active recording.",
    "required": true,
    "location": "path",
    "type": "string"
  }
}

Response Schema

{
  "type": "object",
  "properties": {
    "account_sid": {
      "type": "string",
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^AC[0-9a-fA-F]{32}$",
      "nullable": true,
      "description": "The SID of the [Account](https://www.twilio.com/docs/iam/api/account) that created the Conference Recording resource."
    },
    "api_version": {
      "type": "string",
      "nullable": true,
      "description": "The API version used to create the recording."
    },
    "call_sid": {
      "type": "string",
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^CA[0-9a-fA-F]{32}$",
      "nullable": true,
      "description": "The SID of the [Call](https://www.twilio.com/docs/voice/api/call-resource) the Conference Recording resource is associated with."
    },
    "conference_sid": {
      "type": "string",
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^CF[0-9a-fA-F]{32}$",
      "nullable": true,
      "description": "The Conference SID that identifies the conference associated with the recording."
    },
    "date_created": {
      "type": "string",
      "format": "date-time-rfc-2822",
      "nullable": true,
      "description": "The date and time in GMT that the resource was created specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format."
    },
    "date_updated": {
      "type": "string",
      "format": "date-time-rfc-2822",
      "nullable": true,
      "description": "The date and time in GMT that the resource was last updated, specified in [RFC 2822](https://www.ietf.org/rfc/rfc2822.txt) format."
    },
    "start_time": {
      "type": "string",
      "format": "date-time-rfc-2822",
      "nullable": true,
      "description": "The start time of the recording in GMT and in [RFC 2822](https://www.php.net/manual/en/class.datetime.php#datetime.constants.rfc2822) format."
    },
    "duration": {
      "type": "string",
      "nullable": true,
      "description": "The length of the recording in seconds."
    },
    "sid": {
      "type": "string",
      "minLength": 34,
      "maxLength": 34,
      "pattern": "^RE[0-9a-fA-F]{32}$",
      "nullable": true,
      "description": "The unique string that that we created to identify the Conference Recording resource."
    },
    "price": {
      "type": "string",
      "nullable": true,
      "description": "The one-time cost of creating the recording in the `price_unit` currency."
    },
    "price_unit": {
      "type": "string",
      "format": "currency",
      "nullable": true,
      "description": "The currency used in the `price` property. Example: `USD`."
    },
    "status": {
      "type": "string",
      "enum": [
        "in-progress",
        "paused",
        "stopped",
        "processing",
        "completed",
        "absent"
      ],
      "description": "The status of the recording. Can be: `processing`, `completed` and `absent`. For more detailed statuses on in-progress recordings, check out how to [Update a Recording Resource](https://www.twilio.com/docs/voice/api/recording#update-a-recording-resource)."
    },
    "channels": {
      "type": "integer",
      "default": 0,
      "description": "The number of channels in the final recording file.  Can be: `1`, or `2`. Separating a two leg call into two separate channels of the recording file is supported in [Dial](https://www.twilio.com/docs/voice/twiml/dial#attributes-record) and [Outbound Rest API](https://www.twilio.com/docs/voice/make-calls) record options."
    },
    "source": {
      "type": "string",
      "enum": [
        "DialVerb",
        "Conference",
        "OutboundAPI",
        "Trunking",
        "RecordVerb",
        "StartCallRecordingAPI",
        "StartConferenceRecordingAPI"
      ],
      "description": "How the recording was created. Can be: `DialVerb`, `Conference`, `OutboundAPI`, `Trunking`, `RecordVerb`, `StartCallRecordingAPI`, `StartConferenceRecordingAPI`."
    },
    "error_code": {
      "type": "integer",
      "nullable": true,
      "description": "The error code that describes why the recording is `absent`. The error code is described in our [Error Dictionary](https://www.twilio.com/docs/api/errors). This value is null if the recording `status` is not `absent`."
    },
    "encryption_details": {
      "nullable": true,
      "description": "How to decrypt the recording if it was encrypted using [Call Recording Encryption](https://www.twilio.com/docs/voice/tutorials/voice-recording-encryption) feature."
    },
    "uri": {
      "type": "string",
      "nullable": true,
      "description": "The URI of the resource, relative to `https://api.twilio.com`."
    }
  }
}

Usage

from ocp_agent import OCPAgent

agent = OCPAgent()
await agent.register_api('twilio')

# Call this tool
result = await agent.call_tool('updateConferenceRecording', {
    # Add required parameters here
})