> For the complete documentation index, see [llms.txt](https://help.refractbot.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.refractbot.com/modules/apple.md).

# Apple

Refract's Apple module runs Apple releases (iPhone launches and restocks) across regions, with shipping or in-store pickup. Apple uses your profiles for checkout, and accounts are optional for most regions.

## One queued drop a year

Apple is not a weekly site. There is one queued drop a year, the new iPhone launch, and everything after it is restocks. That shapes how you should think about the whole module.

{% hint style="info" %}
**We find out what Apple changed on the day, the same as you.** Because it happens once a year, there is no drop-to-drop pattern to learn from and no way to know in advance whether Apple has added something new to their flow. In theory the module works as well this year as it did last year. If Apple does change something, we work through it live and post updates in Discord.
{% endhint %}

Practically, that means: get everything set up well ahead of time, expect the queue, and watch announcements on the day.

## Get the full product URL

Apple's monitor input is the full product URL of the exact spec you want. Here is how to get it:

{% stepper %}
{% step %}

#### Spec out the product

Head to [apple.com/iphone](https://www.apple.com/iphone/) (or the product's page) and fully spec out the device: size, color, storage, carrier, and so on. Be sure to do this on the Apple domain for your region.

<figure><img src="https://2861066425-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjdmk3RduT9OdU2B3zFmG%2Fuploads%2Fgit-blob-dfddc92f95d366fafb63785e1a32d38755cde1b0%2Fapple-product-spec-iphone-18.png?alt=media" alt="The iPhone 18 Pro Max spec page on apple.com, fully configured"><figcaption><p>Spec the device all the way out. The URL of this final page is what goes in your monitor input.</p></figcaption></figure>
{% endstep %}

{% step %}

#### Copy the final URL

Once you reach the final spec page, copy the URL from the address bar. A full URL looks like:

```
https://www.apple.com/shop/buy-iphone/iphone-18-pro/6.9-inch-display-256gb-burgundy-unlocked
```

{% endstep %}

{% step %}

#### Paste it as the monitor input

That full URL is your task group's monitor input. Anything less than the final spec-page URL will not work.
{% endstep %}
{% endstepper %}

{% hint style="danger" %}
**Get your URLs and stores set before the queue goes up.** Once Apple's queue is live, apple.com stops serving what you need: you cannot spec out a product page to get a URL, and stores cannot be fetched either. Anything you have not collected by then, you are not getting until the queue clears. Build your task groups and tasks ahead of time.
{% endhint %}

## Task Group Setup

Create a task group for the Apple region you are running (see [Task Group Creation](/general-setup/task-creation/task-group-creation.md)). Apple's group settings are the simplest of any site:

<figure><img src="https://2861066425-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjdmk3RduT9OdU2B3zFmG%2Fuploads%2Fgit-blob-3bc7dc922b88814034dc9165a8b40cfb6de9f1c9%2Fapple-task-group.png?alt=media" alt="An Apple US task group settings panel" width="380"><figcaption><p>Apple's group settings: the full product URL, a proxy list, and the delay.</p></figcaption></figure>

| Setting            | Value                | Notes     |
| ------------------ | -------------------- | --------- |
| Monitor Input      | The full product URL | See above |
| Monitor Proxy List | Your proxy list      |           |
| Monitor Delay      | `3500` (default)     |           |

## Task Creation

Click **+** in the task group to open Create Tasks.

<figure><img src="https://2861066425-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fjdmk3RduT9OdU2B3zFmG%2Fuploads%2Fgit-blob-054b5c0d893532bacb83174b2f5238635f5c2635%2Fapple-create-tasks.png?alt=media" alt="The Apple Create Tasks window" width="420"><figcaption><p>Restart on Failure stays ON. Accounts are optional for Apple US.</p></figcaption></figure>

| Setting                              | Value              | Notes                                                                                                                                                                            |
| ------------------------------------ | ------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Profiles                             | Your Profile Group |                                                                                                                                                                                  |
| Task Proxy List                      | Your proxy list    | Leave blank for localhost                                                                                                                                                        |
| Match account to profiles (by email) | Optional           | Pairs accounts to profiles with the same email                                                                                                                                   |
| Accounts                             | Optional           | Required for some regions, not recommended for Apple US                                                                                                                          |
| Restart on Failure                   | ON (default)       | Tasks automatically restart after a failure instead of stopping                                                                                                                  |
| Use Account Shipping                 | OFF                | Ships to the address saved inside the Apple account                                                                                                                              |
| Use Account Billing                  | OFF                | Uses the billing address saved inside the Apple account                                                                                                                          |
| Apply Account Balance                | OFF                | Uses the gift card balance on the account                                                                                                                                        |
| Use Fastest Delivery ($$)            | OFF                | Checks out with the fastest delivery option, often at a premium charge                                                                                                           |
| In-Store Pickup                      | OFF                | Purchases for in-store pickup. See below                                                                                                                                         |
| Business Name (optional)             | Blank              | Only if you are registered with Apple as an official business                                                                                                                    |
| Retry Delay                          | `3500` (default)   |                                                                                                                                                                                  |
| Task Qty                             | `1`                | Tasks per profile                                                                                                                                                                |
| Item Quantity                        | `1`                | A ceiling, not an exact number: the task goes for the max it can get, up to what you set. See [How Item Quantity works](/general-setup/task-creation.md#how-item-quantity-works) |

### In-Store Pickup options

With In-Store Pickup on, you configure where the bot looks for stores:

* **Max Distance:** how many miles from the ZIP code the bot searches for stores.
* **Use Store From Profile Zip:** searches for stores within the max distance of the profile's ZIP code.
* **Choose Store:** enter a custom ZIP and manually pick individual stores. Useful when running out of state or targeting specific stores.

{% hint style="warning" %}
**You cannot choose the pickup time or the pickup person.** Apple takes the next available pickup slot at the store that hits, and there is no option in the bot to set a custom time or name someone else to collect the order. That is the case at this time, for every region.
{% endhint %}

{% hint style="info" %}
**Stores not populating?** Either your local IP is banned or it is just slow to load; give it 30 seconds. If the Apple waiting room page is live, store data cannot be fetched at all, which is why stores need picking before the queue goes up. If you are already in that window, use the billing ZIP and search radius to determine stores when creating tasks.
{% endhint %}

## Accounts (optional)

Add Apple accounts via the [Accounts guide](/general-setup/accounts.md) if your region needs them. The first time you start a task with an account, Apple sends a code to your Apple devices. Enter it in the [2FA codes window](/general-setup/settings.md#2fa-codes) when it pops up, or set up [IMAP](/misc./imap.md) to submit codes automatically.

## Running an Apple release

* **Have your URLs and stores locked in before the queue goes up.** Once the queue is live, product pages and store data cannot be fetched, so nothing can be added or changed that depends on apple.com. See [Get the full product URL](#get-the-full-product-url).
* **The bot handles Apple's queue.** Tasks may enter Apple's waiting room, and that is expected. Seeing "Rate Limit" while Apple gradually lets users in over the first 5-10 minutes of a release is normal.
* **Start tasks 10-15 seconds before drop time.**
* **Shipping tasks are the reliable play on launch day.** They are not subject to the same out-of-stock issues as pickup and typically check out successfully around the clock during a release. The variable is the delivery date, which slips further out as stock depletes.
* **Pickup tasks keep working after the drop.** Restocks occur over the days following an initial drop, so keep pickup tasks running.

### Forced Delivery

"Forced Delivery" means Apple's fraud detection blocked your pickup option. The cause varies (profiles, accounts, or proxy IPs) and there is no definitive way to determine the exact reason for each setup. You can keep running pickup tasks anyway and catch the restocks over the following days.

## Proxies

**Diversify. Do not run one proxy type across the whole setup.** ISP/DC proxies are generally recommended for Apple, but Apple temporarily bans or rate-limits them when they are used for extended periods, so run a mix of ISP/DC and residential rather than committing everything to one.

How hard Apple comes down on proxies varies and there is no predicting it: some releases they flag and ban IPs hard, other times barely at all. Spreading across types and providers means a heavy ban wave takes out part of your setup instead of all of it. Expect an increase in proxy bans either way, and see [Why we do not recommend providers](/introduction-to-botting/proxies.md#why-we-do-not-recommend-providers).

## FAQ

<details>

<summary>What are the recommended steps for a new user running Apple?</summary>

1. Add profiles.
2. Add proxies, mixing ISP/DC and residential rather than one type.
3. Optional: add accounts.
4. Create a task group with the full product URL and create tasks. Do this before the queue goes up: once it is live, URLs and stores cannot be fetched.
5. Start tasks 10-15 seconds before drop time.
6. Monitor announcements for updates.

</details>

<details>

<summary>Can I choose my in-store pickup time or have someone else collect the order?</summary>

No. Apple takes the next available pickup slot at the store that hits. There is no way to set a custom pickup time or name a different pickup person in the bot at this time.

</details>

<details>

<summary>How often does Apple have a queued drop?</summary>

Once a year, for the new iPhone launch. Everything after that is restocks. Because it only happens annually, there is no way to know in advance whether Apple has changed their flow; in theory the module performs as well this year as it did last year, and anything new gets worked through live with updates in Discord.

</details>

<details>

<summary>Will the bot adjust quantity if Apple's max is lower than what I set?</summary>

Yes. If you request 4 units and Apple allows 2, the bot automatically goes for 2.

</details>

<details>

<summary>Can I still run pickup tasks if I see Forced Delivery?</summary>

Yes. Keep them running; restocks occur over the days after the initial drop. Just be aware that ISP proxies often get blocked after extended use.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.refractbot.com/modules/apple.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
