---
title: "requestSendPTPCommand(_:outData:completion:)"
framework: imagecapturecore
role: symbol
role_heading: Instance Method
path: "imagecapturecore/iccameradevice/requestsendptpcommand(_:outdata:completion:)"
---

# requestSendPTPCommand(_:outData:completion:)

Sends a Picture Transfer Protocol (PTP) command to a camera asynchronously.

## Declaration

```swift
func requestSendPTPCommand(_ ptpCommand: Data, outData ptpData: Data?, completion: @escaping @Sendable (Data, Data, (any Error)?) -> Void)
```

```swift
func requestSendPTPCommand(_ ptpCommand: Data, outData ptpData: Data?) async throws -> (Data, Data)
```

## Discussion

Discussion The block receives the response, data, and an error message, if present.

## See Also

### Taking Pictures

- [tetheredCaptureEnabled](imagecapturecore/iccameradevice/tetheredcaptureenabled.md)
- [ptpEventHandler](imagecapturecore/iccameradevice/ptpeventhandler.md)
- [requestEnableTethering()](imagecapturecore/iccameradevice/requestenabletethering().md)
- [requestTakePicture()](imagecapturecore/iccameradevice/requesttakepicture().md)
- [requestSendPTPCommand(_:outData:sendCommandDelegate:didSendCommand:contextInfo:)](imagecapturecore/iccameradevice/requestsendptpcommand(_:outdata:sendcommanddelegate:didsendcommand:contextinfo:).md)
- [requestDisableTethering()](imagecapturecore/iccameradevice/requestdisabletethering().md)
