> ## Documentation Index
> Fetch the complete documentation index at: https://docs.runalloy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# AfterShip

> Integration details and setup guide for the AfterShip connector in Alloy Automation.

## Pre-Built Tooling

| Category                            | Details                                                                                                                                                                                                                                                                                                                                                                                          |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Authentication**                  | OAuth 2.0 (Authorization Code with refresh tokens) or Bearer Token (API Key)                                                                                                                                                                                                                                                                                                                     |
| **Two-Way Sync**                    | Yes                                                                                                                                                                                                                                                                                                                                                                                              |
| **Events Supported**                | Yes (Webhooks)                                                                                                                                                                                                                                                                                                                                                                                   |
| **Realtime**                        | Yes                                                                                                                                                                                                                                                                                                                                                                                              |
| **Supports Rate Limiting**          | Yes (600 requests per minute)                                                                                                                                                                                                                                                                                                                                                                    |
| **Authentication Scopes Supported** | `aftership:tracking:read` (read tracking), `aftership:tracking:write` (create/modify tracking), `aftership:courier:read` (read courier info), `aftership:courier:write` (detect couriers), `aftership:estimated_delivery_date:write` (predict delivery dates), `aftership:carrier_connection:read` (read carrier connections), `aftership:carrier_connection:write` (modify carrier connections) |

***

## Objects Supported

Alloy Automation supports syncing the following objects from **AfterShip**:

* **Trackings** (Shipment tracking information)
* **Couriers** (Shipping carrier information)
* **Notifications** (Tracking notifications)
* **Checkpoints** (Tracking status updates)
* **Estimated Delivery Dates**
* **Carrier Connections**
* **Webhooks**

***

## Set Up Guide

### Trial Access

| Question                                           | Answer                                                                                                                                  |
| -------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| **Offers free trial?**                             | Yes. AfterShip offers a free plan with up to 50 shipments per month. Sign up at [https://www.aftership.com](https://www.aftership.com). |
| **Requires requires paid sandbox**                 | No paid sandbox required. The free plan is suitable for development and testing.                                                        |
| **Requires partnership to obtain authentication?** | No. You can obtain API credentials directly from your AfterShip account dashboard.                                                      |

***

### Authentication (OAuth 2.0 or Bearer Token)

#### Option 1: OAuth 2.0 (Recommended for user-facing integrations)

For customers who want to completely whitelabel their OAuth experience, you can provide your own developer keys instead of using Alloy Automation's.

1. Log in to your **AfterShip account** and navigate to **Apps & Integrations** → **API & Webhooks**.
2. Click **Create App** to register a new OAuth application.
3. Configure your OAuth application:
   * Add the redirect URI: [https://api.runalloy.com/api/strategy/connector/aftership/callback](https://api.runalloy.com/api/strategy/connector/aftership/callback)
   * Select the scopes your integration requires (e.g., `aftership:tracking:read`, `aftership:tracking:write`)
4. Copy your **Client ID** and **Client Secret**.
5. Enter your **Client ID** and **Client Secret** into Alloy Automation.

#### Option 2: Bearer Token (API Key)

1. Log in to your **AfterShip account** and go to **Settings** → **API & Webhooks**.
2. Generate a new API key.
3. Copy the generated API key.
4. Enter the API key into Alloy Automation as a Bearer token.

#### OAuth Authorization URL

The authorization URL for AfterShip is: [https://apps.aftership.com/oauth/authorize](https://apps.aftership.com/oauth/authorize)

#### Scopes

AfterShip uses granular scopes for different operations:

* `aftership:tracking:read` and `aftership:tracking:write` - Access and manage shipment tracking
* `aftership:courier:read` and `aftership:courier:write` - Access courier information and detect carriers
* `aftership:estimated_delivery_date:write` - Predict delivery dates
* `aftership:carrier_connection:read` and `aftership:carrier_connection:write` - Manage carrier account connections

#### API Documentation

For detailed API documentation, visit: [https://developers.aftership.com/reference/quick-start](https://developers.aftership.com/reference/quick-start)

***

## Use Cases

### 1) Shipment tracking automation

Automatically create and update shipment tracking records in AfterShip when orders are fulfilled in your eCommerce or ERP system, providing customers with real-time delivery updates without manual data entry.

### 2) Customer notification workflows

Sync tracking checkpoints and delivery status updates from AfterShip to trigger custom notifications in your CRM or communication platform, keeping customers informed throughout the delivery journey.

### 3) Delivery analytics and reporting

Pull tracking data, estimated delivery dates, and checkpoint information into your business intelligence tools to analyze carrier performance, identify delivery bottlenecks, and optimize shipping strategies.

### 4) Multi-carrier management

Automatically detect and assign the correct courier for each shipment using AfterShip's carrier detection, and manage carrier account connections across multiple shipping providers from a centralized integration.

### 5) Returns and exception handling

Monitor tracking status for delivery exceptions, delays, or failed attempts, and automatically trigger support workflows or customer outreach when shipments require intervention.

***

## API Gotchas

* ⚠️ **Rate limiting:** AfterShip enforces a rate limit of 600 requests per minute. Requests exceeding this limit will return a 429 status code. Implement exponential backoff and request queuing.
* ⚠️ **Webhook retries:** AfterShip webhooks will retry failed deliveries up to 10 times over 48 hours. Ensure your webhook endpoint returns a 200 status code promptly to avoid duplicate processing.
* ⚠️ **Courier detection:** Automatic courier detection requires a valid tracking number format. For ambiguous tracking numbers, you may need to specify the courier slug explicitly.

> For questions or troubleshooting, contact **[support@runalloy.com](mailto:support@runalloy.com)**.
