---
title: SKRequest
framework: storekit
role: symbol
role_heading: Class
path: storekit/skrequest
---

# SKRequest

An abstract class that represents a request to the App Store.

## Declaration

```swift
class SKRequest
```

## Overview

Overview To make a request, initialize a subclass of SKRequest—such as SKProductsRequest or SKReceiptRefreshRequest—set the delegate property, and call the start() method.

## Topics

### Controlling the Request

- [start()](storekit/skrequest/start().md)
- [cancel()](storekit/skrequest/cancel().md)

### Accessing the Delegate

- [delegate](storekit/skrequest/delegate.md)
- [SKRequestDelegate](storekit/skrequestdelegate.md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Inherited By

- [SKProductsRequest](storekit/skproductsrequest.md)
- [SKReceiptRefreshRequest](storekit/skreceiptrefreshrequest.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)

## See Also

### Essentials

- [Setting up the transaction observer for the payment queue](storekit/setting-up-the-transaction-observer-for-the-payment-queue.md)
- [Offering, completing, and restoring in-app purchases](storekit/offering-completing-and-restoring-in-app-purchases.md)
- [SKPaymentQueue](storekit/skpaymentqueue.md)
- [SKPaymentTransactionObserver](storekit/skpaymenttransactionobserver.md)
- [SKPaymentQueueDelegate](storekit/skpaymentqueuedelegate.md)
