# Goody

Goody is a platform that enables users to send gifts and physical products without handling logistics, offering APIs for commerce and automation.

- **Category:** ecommerce
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 13
- **Triggers:** 0
- **Slug:** `GOODY`
- **Version:** 20260223_00

## Tools

### Calculate Price for Order Batch

**Slug:** `GOODY_CALCULATE_PRICE_FOR_ORDER_BATCH`

Calculate price estimate for an order batch before creation. Returns per-recipient cart pricing (product, shipping, processing, tax) and total batch cost. All prices are in USD cents (e.g., 100 = $1.00). Use this to preview costs before creating an order batch.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `cart` | object | Yes | Cart details (items and quantities) |
| `recipients` | array | Yes | List of recipients to estimate pricing for |
| `send_method` | string ("email_and_link" | "link_multiple_custom_list" | "direct_send") | Yes | Sending method; 'direct_send' requires mailing_address for each recipient |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Webhook

**Slug:** `GOODY_CREATE_WEBHOOK`

Tool to create a webhook endpoint to receive notifications about order events. Use when you need to set up automated notifications for order lifecycle events like creation, shipment, or delivery.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `url` | string | Yes | The URL for the webhook to call. This endpoint will receive POST requests with event payloads. |
| `events` | array | No | Filter the events you want to receive webhooks for. Valid events include: 'order_batch.created', 'order_batch.completed', 'order.created', 'order.gift_opened', 'order.gift_accepted', 'order.thank_you_note_added', 'order.shipped', 'order.delivered'. If not specified or null, all events will be sent to the webhook. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Webhook

**Slug:** `GOODY_DELETE_WEBHOOK`

Delete a webhook endpoint to stop receiving notifications from Goody API. Use this when you need to remove a webhook endpoint that is no longer needed or needs to be reconfigured. The operation returns a 204 status code on successful deletion.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Webhook endpoint ID to delete. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List All Active Cards

**Slug:** `GOODY_LIST_ALL_ACTIVE_CARDS`

Tool to list all active digital greeting cards. Use when you need to fetch available card options before sending.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (starting from 1) |
| `per_page` | integer | No | Number of items per page for pagination (1-100) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List All Active Products

**Slug:** `GOODY_LIST_ALL_ACTIVE_PRODUCTS`

Tool to list all active products. Use when you need to fetch available active products with pagination and filters.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page index for pagination, starting from 1 |
| `per_page` | integer | No | Number of items per page, range 1-100 |
| `country_code` | string | No | Filter products by shipping country, ISO country code |
| `use_custom_catalog` | boolean | No | Limit to custom catalog only (approved partners) |
| `custom_catalog_show_inactive` | boolean | No | Show inactive products in custom catalog (Commerce API custom catalogs only) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List All Order Batches

**Slug:** `GOODY_LIST_ALL_ORDER_BATCHES`

Tool to list all order batches. Use when you need to paginate through your account's order batches.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination, starting at 1 |
| `per_page` | integer | No | Number of items per page, between 1 and 100 |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List All Orders

**Slug:** `GOODY_LIST_ALL_ORDERS`

Retrieves a paginated list of all orders across all order batches in your Goody account. Returns order details including recipient information, cart items, amounts, status, and gift links. Supports pagination with customizable page size (1-100 orders per page).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (must be >= 1). |
| `per_page` | integer | No | Number of orders to return per page (1-100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List All Payment Methods

**Slug:** `GOODY_LIST_ALL_PAYMENT_METHODS`

Retrieves all saved payment methods for the authenticated account. Payment methods include credit cards and other payment types that can be used when creating orders. No parameters required - simply call this action to get the complete list of payment methods with their IDs, names, and details.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List All Workspaces

**Slug:** `GOODY_LIST_ALL_WORKSPACES`

Tool to list all workspaces. Use when you need to retrieve all workspaces associated with the account.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Collections

**Slug:** `GOODY_LIST_COLLECTIONS`

Tool to list all collections across accessible workspaces. Use when you need to retrieve product collections available in Goody. This endpoint is limited to Automation API usage and returns paginated results.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (must be >= 1) |
| `per_page` | integer | No | Number of collections to return per page (1-100, default: 20) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Order Activities

**Slug:** `GOODY_LIST_ORDER_ACTIVITIES`

Tool to list all order activities (events) in your workspace. Returns a paginated list of order status transitions and related events. Use when you need to track order lifecycle events, monitor status changes, or audit order history.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (must be >= 1). |
| `per_page` | integer | No | Number of order activities to return per page (1-100). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Current User

**Slug:** `GOODY_RETRIEVE_CURRENT_USER`

Retrieve the current authenticated user's profile information from Goody API. This endpoint returns the email and public app ID associated with the authenticated account. Use this to verify authentication status or fetch the current user's account details. No parameters are required - authentication is handled via the Bearer token in headers.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Product

**Slug:** `GOODY_RETRIEVE_PRODUCT`

Tool to retrieve details of a specific product by its ID. Use after obtaining the product ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique ID of the product |
| `use_custom_catalog` | boolean | No | Limit to custom catalog only (approved API partners) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
