# GoogleRidesharingDriver Framework Reference

# GMTDCreateDeliveryTaskRequest

    @interface GMTDCreateDeliveryTaskRequest : https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTSImmutableData.html

An immutable object representing a request to create a delivery task.
- `


  ### [-init](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(im)init)


  ` Unavailable
  Use `https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest.html#/c:objc(cs)GMTDCreateDeliveryTaskRequest(im)initWithTaskID:trackingID:taskType:taskState:taskDuration:plannedWaypoint:` instead.

  #### Declaration

  Objective-C

      - (null_unspecified instancetype)init;

- `


  ### [taskID](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(py)taskID)


  ` The ID of the task.

  #### Declaration

  Swift

      var taskID: String { get }

  Objective-C

      @property (nonatomic, readonly) https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Type-Definitions/GMTDFleetEngineIDString.html *_Nonnull taskID;

- `


  ### [trackingID](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(py)trackingID)


  ` The tracking ID for the task.

  #### Declaration

  Swift

      var trackingID: String? { get }

  Objective-C

      @property (nonatomic, readonly, nullable) https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Type-Definitions/GMTDFleetEngineIDString.html *trackingID;

- `


  ### [parentID](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(py)parentID)


  ` Deprecated

  This property is obsolete and will be removed in a future release. Use the trackingID property instead.
  The tracking ID for the task.

  #### Declaration

  Swift

      var parentID: String? { get }

  Objective-C

      @property (nonatomic, readonly, nullable) NSString *parentID;

- `


  ### [taskType](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(py)taskType)


  ` The type of the task.

  #### Declaration

  Swift

      var taskType: https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskType.html { get }

  Objective-C

      @property (nonatomic, readonly) https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskType.html taskType;

- `


  ### [taskState](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(py)taskState)


  ` The state of the task.

  #### Declaration

  Swift

      var taskState: https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskState.html { get }

  Objective-C

      @property (nonatomic, readonly) https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskState.html taskState;

- `


  ### [taskDuration](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(py)taskDuration)


  ` The expected duration of the task in seconds.

  #### Declaration

  Swift

      var taskDuration: TimeInterval { get }

  Objective-C

      @property (nonatomic, readonly) NSTimeInterval taskDuration;

- `


  ### [plannedWaypoint](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(py)plannedWaypoint)


  ` Optional waypoint where the task will be performed.

  #### Declaration

  Swift

      var plannedWaypoint: GMSNavigationWaypoint? { get }

  Objective-C

      @property (nonatomic, readonly, nullable) GMSNavigationWaypoint *plannedWaypoint;

- `


  ### [-initWithTaskID:trackingID:taskType:taskState:taskDuration:plannedWaypoint:](https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Classes/GMTDCreateDeliveryTaskRequest#/c:objc(cs)GMTDCreateDeliveryTaskRequest(im)initWithTaskID:trackingID:taskType:taskState:taskDuration:plannedWaypoint:)


  ` Initializes and returns a `GMTDCreateDeliveryTaskRequest` object using the provided attributes.

  #### Declaration

  Swift

      init(taskID: String, trackingID: String?, taskType: https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskType.html, taskState: https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskState.html, taskDuration: TimeInterval, plannedWaypoint: GMSNavigationWaypoint?)

  Objective-C

      - (nonnull instancetype)
           initWithTaskID:(nonnull https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Type-Definitions/GMTDFleetEngineIDString.html *)taskID
               trackingID:(nullable https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Type-Definitions/GMTDFleetEngineIDString.html *)trackingID
                 taskType:(https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskType.html)taskType
                taskState:(https://developers.google.com/maps/documentation/mobility/driver-sdk/scheduled/reference/ios/Enums/GMTSTaskState.html)taskState
             taskDuration:(NSTimeInterval)taskDuration
          plannedWaypoint:(nullable GMSNavigationWaypoint *)plannedWaypoint;

  #### Parameters

  |---|---|
  | ` taskID ` | The ID of the task. |
  | ` trackingID ` | An abitrary ID the client may find useful in tracking the task. |
  | ` taskType ` | The type of this task. |
  | ` taskState ` | The state of this task. |
  | ` taskDuration ` | The expected duration of this task in seconds. |
  | ` plannedWaypoint ` | The location where this task will be performed. |