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

# base-shipping

> Base Shipping & CRM - manage courier shipments, labels, and customer records

**Server path:** `/base-shipping` | **Type:** Application | **PCID required:** Yes

## Tools

| Tool                                                                            | Description                                                                                      |
| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ |
| [`base_shipping_add_crm_client`](#base_shipping_add_crm_client)                 | Add or update a CRM client record.                                                               |
| [`base_shipping_create_package`](#base_shipping_create_package)                 | Create a courier shipment for an order.                                                          |
| [`base_shipping_create_package_manual`](#base_shipping_create_package_manual)   | Add a manually-created shipment to an order (e.g., for a tracking number obtained outside Base). |
| [`base_shipping_delete_courier_package`](#base_shipping_delete_courier_package) | Delete a courier shipment package.                                                               |
| [`base_shipping_delete_crm_client`](#base_shipping_delete_crm_client)           | Delete a CRM client record.                                                                      |
| [`base_shipping_get_courier_accounts`](#base_shipping_get_courier_accounts)     | Retrieve courier accounts for a specific courier.                                                |
| [`base_shipping_get_courier_fields`](#base_shipping_get_courier_fields)         | Retrieve the shipment form fields required for a specific courier.                               |
| [`base_shipping_get_courier_services`](#base_shipping_get_courier_services)     | Retrieve additional services available for a courier shipment.                                   |
| [`base_shipping_get_couriers_list`](#base_shipping_get_couriers_list)           | Retrieve the list of available courier integrations.                                             |
| [`base_shipping_get_crm_client_data`](#base_shipping_get_crm_client_data)       | Retrieve detailed data for a specific CRM client.                                                |
| [`base_shipping_get_crm_clients`](#base_shipping_get_crm_clients)               | Retrieve CRM clients. Returns up to 100 per page.                                                |
| [`base_shipping_get_label`](#base_shipping_get_label)                           | Download a shipping label for a package.                                                         |
| [`base_shipping_get_order_packages`](#base_shipping_get_order_packages)         | Retrieve shipment packages for an order.                                                         |
| [`base_shipping_get_package_details`](#base_shipping_get_package_details)       | Retrieve detailed information about a shipment package.                                          |
| [`base_shipping_get_protocol`](#base_shipping_get_protocol)                     | Download a parcel protocol document for packages.                                                |

***

## base\_shipping\_add\_crm\_client

Add or update a CRM client record.

**Parameters:**

| Parameter              | Type   | Required | Default | Description                                       |
| ---------------------- | ------ | -------- | ------- | ------------------------------------------------- |
| `crm_client_id`        | number | No       | —       | Client ID. Omit to create new, provide to update. |
| `invoice_company`      | string | No       | —       | Company name.                                     |
| `invoice_tax_id`       | string | No       | —       | Tax identification number.                        |
| `invoice_fullname`     | string | No       | —       | Full name.                                        |
| `invoice_address`      | string | No       | —       | Address.                                          |
| `invoice_city`         | string | No       | —       | City.                                             |
| `invoice_postcode`     | string | No       | —       | Postal code.                                      |
| `invoice_country_code` | string | No       | —       | Country code.                                     |
| `email`                | string | No       | —       | Email address.                                    |
| `phone`                | string | No       | —       | Phone number.                                     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "crm_client_id": {
        "type": "number",
        "description": "Client ID. Omit to create new, provide to update."
      },
      "invoice_company": {
        "type": "string",
        "description": "Company name."
      },
      "invoice_tax_id": {
        "type": "string",
        "description": "Tax identification number."
      },
      "invoice_fullname": {
        "type": "string",
        "description": "Full name."
      },
      "invoice_address": {
        "type": "string",
        "description": "Address."
      },
      "invoice_city": {
        "type": "string",
        "description": "City."
      },
      "invoice_postcode": {
        "type": "string",
        "description": "Postal code."
      },
      "invoice_country_code": {
        "type": "string",
        "description": "Country code."
      },
      "email": {
        "type": "string",
        "description": "Email address."
      },
      "phone": {
        "type": "string",
        "description": "Phone number."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_create\_package

Create a courier shipment for an order.

**Parameters:**

| Parameter      | Type      | Required | Default | Description                                                                     |
| -------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------- |
| `order_id`     | number    | Yes      | —       | Order identifier.                                                               |
| `courier_code` | string    | Yes      | —       | Courier code (from getCouriersList).                                            |
| `account_id`   | number    | Yes      | —       | Courier account ID (from getCourierAccounts).                                   |
| `fields`       | object\[] | Yes      | —       | Array of form field objects with 'id' and 'value' keys (from getCourierFields). |
| `packages`     | object\[] | Yes      | —       | Array of package objects with weight, size\_x, size\_y, size\_z.                |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "order_id": {
        "type": "number",
        "description": "Order identifier."
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code (from getCouriersList)."
      },
      "account_id": {
        "type": "number",
        "description": "Courier account ID (from getCourierAccounts)."
      },
      "fields": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Array of form field objects with 'id' and 'value' keys (from getCourierFields)."
      },
      "packages": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Array of package objects with weight, size_x, size_y, size_z."
      }
    },
    "required": [
      "PCID",
      "order_id",
      "courier_code",
      "account_id",
      "fields",
      "packages"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_create\_package\_manual

Add a manually-created shipment to an order (e.g., for a tracking number obtained outside Base).

**Parameters:**

| Parameter         | Type    | Required | Default | Description                        |
| ----------------- | ------- | -------- | ------- | ---------------------------------- |
| `order_id`        | number  | Yes      | —       | Order identifier.                  |
| `courier_code`    | string  | Yes      | —       | Courier code.                      |
| `package_number`  | string  | Yes      | —       | Tracking number.                   |
| `pickup_date`     | number  | No       | —       | Unix timestamp for pickup date.    |
| `return_shipment` | boolean | No       | —       | Whether this is a return shipment. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "order_id": {
        "type": "number",
        "description": "Order identifier."
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code."
      },
      "package_number": {
        "type": "string",
        "description": "Tracking number."
      },
      "pickup_date": {
        "type": "number",
        "description": "Unix timestamp for pickup date."
      },
      "return_shipment": {
        "type": "boolean",
        "description": "Whether this is a return shipment."
      }
    },
    "required": [
      "PCID",
      "order_id",
      "courier_code",
      "package_number"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_delete\_courier\_package

Delete a courier shipment package.

**Parameters:**

| Parameter        | Type   | Required | Default | Description                                            |
| ---------------- | ------ | -------- | ------- | ------------------------------------------------------ |
| `courier_code`   | string | Yes      | —       | Courier code.                                          |
| `package_id`     | number | Yes      | —       | Package/shipment identifier.                           |
| `package_number` | string | No       | —       | Tracking number (optional alternative to package\_id). |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code."
      },
      "package_id": {
        "type": "number",
        "description": "Package/shipment identifier."
      },
      "package_number": {
        "type": "string",
        "description": "Tracking number (optional alternative to package_id)."
      }
    },
    "required": [
      "PCID",
      "courier_code",
      "package_id"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_delete\_crm\_client

Delete a CRM client record.

**Parameters:**

| Parameter       | Type   | Required | Default | Description        |
| --------------- | ------ | -------- | ------- | ------------------ |
| `crm_client_id` | number | Yes      | —       | Client identifier. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "crm_client_id": {
        "type": "number",
        "description": "Client identifier."
      }
    },
    "required": [
      "PCID",
      "crm_client_id"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_courier\_accounts

Retrieve courier accounts for a specific courier.

**Parameters:**

| Parameter      | Type   | Required | Default | Description   |
| -------------- | ------ | -------- | ------- | ------------- |
| `courier_code` | string | Yes      | —       | Courier code. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code."
      }
    },
    "required": [
      "PCID",
      "courier_code"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_courier\_fields

Retrieve the shipment form fields required for a specific courier.

**Parameters:**

| Parameter      | Type   | Required | Default | Description   |
| -------------- | ------ | -------- | ------- | ------------- |
| `courier_code` | string | Yes      | —       | Courier code. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code."
      }
    },
    "required": [
      "PCID",
      "courier_code"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_courier\_services

Retrieve additional services available for a courier shipment.

**Parameters:**

| Parameter      | Type      | Required | Default | Description                      |
| -------------- | --------- | -------- | ------- | -------------------------------- |
| `courier_code` | string    | Yes      | —       | Courier code.                    |
| `order_id`     | number    | Yes      | —       | Order identifier.                |
| `account_id`   | number    | Yes      | —       | Courier account ID.              |
| `fields`       | object\[] | Yes      | —       | Array of current field values.   |
| `packages`     | object\[] | Yes      | —       | Array of package specifications. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code."
      },
      "order_id": {
        "type": "number",
        "description": "Order identifier."
      },
      "account_id": {
        "type": "number",
        "description": "Courier account ID."
      },
      "fields": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Array of current field values."
      },
      "packages": {
        "type": "array",
        "items": {
          "type": "object"
        },
        "description": "Array of package specifications."
      }
    },
    "required": [
      "PCID",
      "courier_code",
      "order_id",
      "account_id",
      "fields",
      "packages"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_couriers\_list

Retrieve the list of available courier integrations.

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_crm\_client\_data

Retrieve detailed data for a specific CRM client.

**Parameters:**

| Parameter       | Type   | Required | Default | Description        |
| --------------- | ------ | -------- | ------- | ------------------ |
| `crm_client_id` | number | Yes      | —       | Client identifier. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "crm_client_id": {
        "type": "number",
        "description": "Client identifier."
      }
    },
    "required": [
      "PCID",
      "crm_client_id"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_crm\_clients

Retrieve CRM clients. Returns up to 100 per page.

**Parameters:**

| Parameter                | Type   | Required | Default | Description                         |
| ------------------------ | ------ | -------- | ------- | ----------------------------------- |
| `filter_invoice_company` | string | No       | —       | Filter by company name.             |
| `filter_invoice_tax_id`  | string | No       | —       | Filter by tax ID.                   |
| `filter_email`           | string | No       | —       | Filter by email.                    |
| `filter_phone`           | string | No       | —       | Filter by phone.                    |
| `page`                   | number | No       | —       | Page number (100 clients per page). |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "filter_invoice_company": {
        "type": "string",
        "description": "Filter by company name."
      },
      "filter_invoice_tax_id": {
        "type": "string",
        "description": "Filter by tax ID."
      },
      "filter_email": {
        "type": "string",
        "description": "Filter by email."
      },
      "filter_phone": {
        "type": "string",
        "description": "Filter by phone."
      },
      "page": {
        "type": "number",
        "description": "Page number (100 clients per page)."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_label

Download a shipping label for a package.

**Parameters:**

| Parameter      | Type   | Required | Default | Description                  |
| -------------- | ------ | -------- | ------- | ---------------------------- |
| `courier_code` | string | Yes      | —       | Courier code.                |
| `package_id`   | number | Yes      | —       | Package/shipment identifier. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code."
      },
      "package_id": {
        "type": "number",
        "description": "Package/shipment identifier."
      }
    },
    "required": [
      "PCID",
      "courier_code",
      "package_id"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_order\_packages

Retrieve shipment packages for an order.

**Parameters:**

| Parameter  | Type   | Required | Default | Description       |
| ---------- | ------ | -------- | ------- | ----------------- |
| `order_id` | number | Yes      | —       | Order identifier. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "order_id": {
        "type": "number",
        "description": "Order identifier."
      }
    },
    "required": [
      "PCID",
      "order_id"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_package\_details

Retrieve detailed information about a shipment package.

**Parameters:**

| Parameter    | Type   | Required | Default | Description                  |
| ------------ | ------ | -------- | ------- | ---------------------------- |
| `package_id` | number | Yes      | —       | Package/shipment identifier. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "package_id": {
        "type": "number",
        "description": "Package/shipment identifier."
      }
    },
    "required": [
      "PCID",
      "package_id"
    ]
  }
  ```
</Expandable>

***

## base\_shipping\_get\_protocol

Download a parcel protocol document for packages.

**Parameters:**

| Parameter      | Type      | Required | Default | Description                    |
| -------------- | --------- | -------- | ------- | ------------------------------ |
| `courier_code` | string    | Yes      | —       | Courier code.                  |
| `package_ids`  | string\[] | Yes      | —       | Array of package/shipment IDs. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "courier_code": {
        "type": "string",
        "description": "Courier code."
      },
      "package_ids": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Array of package/shipment IDs."
      }
    },
    "required": [
      "PCID",
      "courier_code",
      "package_ids"
    ]
  }
  ```
</Expandable>
