> ## 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.

# harvest-invoicing

> Invoices & Estimates

**Server path:** `/harvest-invoicing` | **Type:** Application | **PCID required:** Yes

## Tools

| Tool                                                                                                                                                                    | Description                                                    |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| [`harvest_invoicing_create_estimate`](#harvest_invoicing_create_estimate)                                                                                               | Create an estimate                                             |
| [`harvest_invoicing_create_estimate_item_category`](#harvest_invoicing_create_estimate_item_category)                                                                   | Create an estimate item category                               |
| [`harvest_invoicing_create_estimate_message`](#harvest_invoicing_create_estimate_message)                                                                               | Create an estimate message or change estimate status           |
| [`harvest_invoicing_create_invoice`](#harvest_invoicing_create_invoice)                                                                                                 | Create an invoice                                              |
| [`harvest_invoicing_create_invoice_item_category`](#harvest_invoicing_create_invoice_item_category)                                                                     | Create an invoice item category                                |
| [`harvest_invoicing_create_invoice_message`](#harvest_invoicing_create_invoice_message)                                                                                 | Create and send an invoice message                             |
| [`harvest_invoicing_create_invoice_payment`](#harvest_invoicing_create_invoice_payment)                                                                                 | Create an invoice payment                                      |
| [`harvest_invoicing_delete_estimate`](#harvest_invoicing_delete_estimate)                                                                                               | Delete an estimate                                             |
| [`harvest_invoicing_delete_estimate_item_category`](#harvest_invoicing_delete_estimate_item_category)                                                                   | Delete an estimate item category                               |
| [`harvest_invoicing_delete_estimate_message`](#harvest_invoicing_delete_estimate_message)                                                                               | Delete an estimate message                                     |
| [`harvest_invoicing_delete_invoice`](#harvest_invoicing_delete_invoice)                                                                                                 | Delete an invoice                                              |
| [`harvest_invoicing_delete_invoice_item_category`](#harvest_invoicing_delete_invoice_item_category)                                                                     | Delete an invoice item category                                |
| [`harvest_invoicing_delete_invoice_message`](#harvest_invoicing_delete_invoice_message)                                                                                 | Delete an invoice message                                      |
| [`harvest_invoicing_delete_invoice_payment`](#harvest_invoicing_delete_invoice_payment)                                                                                 | Delete an invoice payment                                      |
| [`harvest_invoicing_list_estimate_item_categories`](#harvest_invoicing_list_estimate_item_categories)                                                                   | List all estimate item categories                              |
| [`harvest_invoicing_list_estimates`](#harvest_invoicing_list_estimates)                                                                                                 | List all estimates                                             |
| [`harvest_invoicing_list_invoice_item_categories`](#harvest_invoicing_list_invoice_item_categories)                                                                     | List all invoice item categories                               |
| [`harvest_invoicing_list_invoices`](#harvest_invoicing_list_invoices)                                                                                                   | List all invoices                                              |
| [`harvest_invoicing_list_messages_for_estimate`](#harvest_invoicing_list_messages_for_estimate)                                                                         | List all messages for an estimate                              |
| [`harvest_invoicing_list_messages_for_invoice`](#harvest_invoicing_list_messages_for_invoice)                                                                           | List all messages for an invoice                               |
| [`harvest_invoicing_list_payments_for_invoice`](#harvest_invoicing_list_payments_for_invoice)                                                                           | List all payments for an invoice                               |
| [`harvest_invoicing_retrieve_estimate`](#harvest_invoicing_retrieve_estimate)                                                                                           | Retrieve an estimate                                           |
| [`harvest_invoicing_retrieve_estimate_item_category`](#harvest_invoicing_retrieve_estimate_item_category)                                                               | Retrieve an estimate item category                             |
| [`harvest_invoicing_retrieve_invoice`](#harvest_invoicing_retrieve_invoice)                                                                                             | Retrieve an invoice                                            |
| [`harvest_invoicing_retrieve_invoice_item_category`](#harvest_invoicing_retrieve_invoice_item_category)                                                                 | Retrieve an invoice item category                              |
| [`harvest_invoicing_retrieve_invoice_message_subject_and_body_for_specific_invoice`](#harvest_invoicing_retrieve_invoice_message_subject_and_body_for_specific_invoice) | Retrieve invoice message subject and body for specific invoice |
| [`harvest_invoicing_update_estimate`](#harvest_invoicing_update_estimate)                                                                                               | Update an estimate                                             |
| [`harvest_invoicing_update_estimate_item_category`](#harvest_invoicing_update_estimate_item_category)                                                                   | Update an estimate item category                               |
| [`harvest_invoicing_update_invoice`](#harvest_invoicing_update_invoice)                                                                                                 | Update an invoice                                              |
| [`harvest_invoicing_update_invoice_item_category`](#harvest_invoicing_update_invoice_item_category)                                                                     | Update an invoice item category                                |

***

## harvest\_invoicing\_create\_estimate

Create an estimate

**Parameters:**

| Parameter        | Type      | Required | Default | Description                   |                                                                                                                            |
| ---------------- | --------- | -------- | ------- | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `client_id`      | integer   | null     | Yes     | —                             | The ID of the client this estimate belongs to.                                                                             |
| `currency`       | string    | null     | No      | —                             | The currency used by the estimate. If not provided, the client’s currency will be used. See a list of supported currencies |
| `discount`       | number    | null     | No      | —                             | This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%.                                              |
| `issue_date`     | string    | null     | No      | —                             | Date the estimate was issued. Defaults to today’s date.                                                                    |
| `line_items`     | object\[] | No       | —       | Array of line item parameters |                                                                                                                            |
| `notes`          | string    | null     | No      | —                             | Any additional notes to include on the estimate.                                                                           |
| `number`         | string    | null     | No      | —                             | If no value is set, the number will be automatically generated.                                                            |
| `purchase_order` | string    | null     | No      | —                             | The purchase order number.                                                                                                 |
| `subject`        | string    | null     | No      | —                             | The estimate subject.                                                                                                      |
| `tax`            | number    | null     | No      | —                             | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.               |
| `tax2`           | number    | null     | No      | —                             | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.               |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "client_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the client this estimate belongs to."
      },
      "currency": {
        "type": [
          "string",
          "null"
        ],
        "description": "The currency used by the estimate. If not provided, the client’s currency will be used. See a list of supported currencies"
      },
      "discount": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%."
      },
      "issue_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date the estimate was issued. Defaults to today’s date."
      },
      "line_items": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "kind": {
              "type": "string",
              "description": "The name of an estimate item category."
            },
            "description": {
              "type": "string",
              "description": "Text description of the line item."
            },
            "quantity": {
              "type": "integer",
              "format": "int32",
              "description": "The unit quantity of the item. Defaults to 1."
            },
            "unit_price": {
              "type": "number",
              "format": "float",
              "description": "The individual price per unit."
            },
            "taxed": {
              "type": "boolean",
              "description": "Whether the estimate’s tax percentage applies to this line item. Defaults to false."
            },
            "taxed2": {
              "type": "boolean",
              "description": "Whether the estimate’s tax2 percentage applies to this line item. Defaults to false."
            }
          },
          "required": [
            "kind",
            "unit_price"
          ]
        },
        "description": "Array of line item parameters"
      },
      "notes": {
        "type": [
          "string",
          "null"
        ],
        "description": "Any additional notes to include on the estimate."
      },
      "number": {
        "type": [
          "string",
          "null"
        ],
        "description": "If no value is set, the number will be automatically generated."
      },
      "purchase_order": {
        "type": [
          "string",
          "null"
        ],
        "description": "The purchase order number."
      },
      "subject": {
        "type": [
          "string",
          "null"
        ],
        "description": "The estimate subject."
      },
      "tax": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      },
      "tax2": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      }
    },
    "required": [
      "PCID",
      "client_id"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_create\_estimate\_item\_category

Create an estimate item category

**Parameters:**

| Parameter | Type   | Required | Default | Description |                                         |
| --------- | ------ | -------- | ------- | ----------- | --------------------------------------- |
| `name`    | string | null     | Yes     | —           | The name of the estimate item category. |

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

***

## harvest\_invoicing\_create\_estimate\_message

Create an estimate message or change estimate status

**Parameters:**

| Parameter        | Type      | Required | Default | Description                                           |                                                                                                      |
| ---------------- | --------- | -------- | ------- | ----------------------------------------------------- | ---------------------------------------------------------------------------------------------------- |
| `estimateId`     | string    | Yes      | —       | Estimate Id                                           |                                                                                                      |
| `body`           | string    | null     | No      | —                                                     | The message body.                                                                                    |
| `event_type`     | string    | null     | No      | —                                                     | If provided, runs an event against the estimate. Options: “accept”, “decline”, “re-open”, or “send”. |
| `recipients`     | object\[] | No       | —       | Array of recipient parameters. See below for details. |                                                                                                      |
| `send_me_a_copy` | boolean   | null     | No      | —                                                     | If set to true, a copy of the message email will be sent to the current user. Defaults to false.     |
| `subject`        | string    | null     | No      | —                                                     | The message subject.                                                                                 |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "estimateId": {
        "type": "string",
        "description": "Estimate Id"
      },
      "body": {
        "type": [
          "string",
          "null"
        ],
        "description": "The message body."
      },
      "event_type": {
        "type": [
          "string",
          "null"
        ],
        "description": "If provided, runs an event against the estimate. Options: “accept”, “decline”, “re-open”, or “send”."
      },
      "recipients": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "description": "Name of the message recipient."
            },
            "email": {
              "type": "string",
              "format": "email",
              "description": "Email of the message recipient."
            }
          },
          "required": [
            "email"
          ]
        },
        "description": "Array of recipient parameters. See below for details."
      },
      "send_me_a_copy": {
        "type": [
          "boolean",
          "null"
        ],
        "description": "If set to true, a copy of the message email will be sent to the current user. Defaults to false."
      },
      "subject": {
        "type": [
          "string",
          "null"
        ],
        "description": "The message subject."
      }
    },
    "required": [
      "PCID",
      "estimateId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_create\_invoice

Create an invoice

**Parameters:**

| Parameter           | Type      | Required | Default | Description                                                                                                                                                                                                         |                                                                                                                                                                                                                                                                                                                            |
| ------------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `client_id`         | integer   | null     | Yes     | —                                                                                                                                                                                                                   | The ID of the client this invoice belongs to.                                                                                                                                                                                                                                                                              |
| `currency`          | string    | null     | No      | —                                                                                                                                                                                                                   | The currency used by the invoice. If not provided, the client’s currency will be used. See a list of supported currencies                                                                                                                                                                                                  |
| `discount`          | number    | null     | No      | —                                                                                                                                                                                                                   | This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%.                                                                                                                                                                                                                                              |
| `due_date`          | string    | null     | No      | —                                                                                                                                                                                                                   | Date the invoice is due. Defaults to the issue\_date if no payment\_term is specified. To set a custom due\_date the payment\_term must also be set to custom, otherwise the value supplied in the request for due\_date will be ignored and the due\_date will be calculated using the issue\_date and the payment\_term. |
| `estimate_id`       | integer   | null     | No      | —                                                                                                                                                                                                                   | The ID of the estimate associated with this invoice.                                                                                                                                                                                                                                                                       |
| `issue_date`        | string    | null     | No      | —                                                                                                                                                                                                                   | Date the invoice was issued. Defaults to today’s date.                                                                                                                                                                                                                                                                     |
| `line_items`        | object\[] | No       | —       | Array of line item parameters                                                                                                                                                                                       |                                                                                                                                                                                                                                                                                                                            |
| `line_items_import` | object    | No       | —       | An line items import object                                                                                                                                                                                         |                                                                                                                                                                                                                                                                                                                            |
| `notes`             | string    | null     | No      | —                                                                                                                                                                                                                   | Any additional notes to include on the invoice.                                                                                                                                                                                                                                                                            |
| `number`            | string    | null     | No      | —                                                                                                                                                                                                                   | If no value is set, the number will be automatically generated.                                                                                                                                                                                                                                                            |
| `payment_options`   | string\[] | No       | —       | The payment options available to pay the invoice. Your account must be configured with the appropriate options under Settings > Integrations > Online payment to assign them. Options: \[ach, credit\_card, paypal] |                                                                                                                                                                                                                                                                                                                            |
| `payment_term`      | string    | null     | No      | —                                                                                                                                                                                                                   | The timeframe in which the invoice should be paid. Defaults to custom. Options: upon receipt, net 15, net 30, net 45, net 60, or custom.                                                                                                                                                                                   |
| `purchase_order`    | string    | null     | No      | —                                                                                                                                                                                                                   | The purchase order number.                                                                                                                                                                                                                                                                                                 |
| `retainer_id`       | integer   | null     | No      | —                                                                                                                                                                                                                   | The ID of the retainer you want to add funds to with this invoice. Note: retainers cannot be fully used (created, drawn against, closed, etc.) via the API at this time. The only available action is to add funds.                                                                                                        |
| `subject`           | string    | null     | No      | —                                                                                                                                                                                                                   | The invoice subject.                                                                                                                                                                                                                                                                                                       |
| `tax`               | number    | null     | No      | —                                                                                                                                                                                                                   | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.                                                                                                                                                                                                               |
| `tax2`              | number    | null     | No      | —                                                                                                                                                                                                                   | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.                                                                                                                                                                                                               |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "client_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the client this invoice belongs to."
      },
      "currency": {
        "type": [
          "string",
          "null"
        ],
        "description": "The currency used by the invoice. If not provided, the client’s currency will be used. See a list of supported currencies"
      },
      "discount": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%."
      },
      "due_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date the invoice is due. Defaults to the issue_date if no payment_term is specified. To set a custom due_date the payment_term must also be set to custom, otherwise the value supplied in the request for due_date will be ignored and the due_date will be calculated using the issue_date and the payment_term."
      },
      "estimate_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the estimate associated with this invoice."
      },
      "issue_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date the invoice was issued. Defaults to today’s date."
      },
      "line_items": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "project_id": {
              "type": "integer",
              "format": "int32",
              "description": "The ID of the project associated with this line item."
            },
            "kind": {
              "type": "string",
              "description": "The name of an invoice item category."
            },
            "description": {
              "type": "string",
              "description": "Text description of the line item."
            },
            "quantity": {
              "type": "number",
              "format": "float",
              "description": "The unit quantity of the item. Defaults to 1."
            },
            "unit_price": {
              "type": "number",
              "format": "float",
              "description": "The individual price per unit."
            },
            "taxed": {
              "type": "boolean",
              "description": "Whether the invoice’s tax percentage applies to this line item. Defaults to false."
            },
            "taxed2": {
              "type": "boolean",
              "description": "Whether the invoice’s tax2 percentage applies to this line item. Defaults to false."
            }
          },
          "required": [
            "kind",
            "unit_price"
          ]
        },
        "description": "Array of line item parameters"
      },
      "line_items_import": {
        "type": "object",
        "description": "An line items import object",
        "properties": {
          "project_ids": {
            "type": "array",
            "items": {
              "type": "integer"
            },
            "description": "An array of the client’s project IDs you’d like to include time/expenses from."
          },
          "time": {
            "type": "object",
            "description": "An time import object."
          },
          "expenses": {
            "type": "object",
            "description": "An expense import object."
          }
        },
        "required": [
          "project_ids"
        ]
      },
      "notes": {
        "type": [
          "string",
          "null"
        ],
        "description": "Any additional notes to include on the invoice."
      },
      "number": {
        "type": [
          "string",
          "null"
        ],
        "description": "If no value is set, the number will be automatically generated."
      },
      "payment_options": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "ach",
            "credit_card",
            "paypal"
          ]
        },
        "description": "The payment options available to pay the invoice. Your account must be configured with the appropriate options under Settings > Integrations > Online payment to assign them. Options: [ach, credit_card, paypal]"
      },
      "payment_term": {
        "type": [
          "string",
          "null"
        ],
        "description": "The timeframe in which the invoice should be paid. Defaults to custom. Options: upon receipt, net 15, net 30, net 45, net 60, or custom."
      },
      "purchase_order": {
        "type": [
          "string",
          "null"
        ],
        "description": "The purchase order number."
      },
      "retainer_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the retainer you want to add funds to with this invoice. Note: retainers cannot be fully used (created, drawn against, closed, etc.) via the API at this time. The only available action is to add funds."
      },
      "subject": {
        "type": [
          "string",
          "null"
        ],
        "description": "The invoice subject."
      },
      "tax": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      },
      "tax2": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      }
    },
    "required": [
      "PCID",
      "client_id"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_create\_invoice\_item\_category

Create an invoice item category

**Parameters:**

| Parameter | Type   | Required | Default | Description |                                        |
| --------- | ------ | -------- | ------- | ----------- | -------------------------------------- |
| `name`    | string | null     | Yes     | —           | The name of the invoice item category. |

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

***

## harvest\_invoicing\_create\_invoice\_message

Create and send an invoice message

**Parameters:**

| Parameter                        | Type      | Required | Default | Description                                                |                                                                                                                                                                                                                                                                                                             |
| -------------------------------- | --------- | -------- | ------- | ---------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invoiceId`                      | string    | Yes      | —       | Invoice Id                                                 |                                                                                                                                                                                                                                                                                                             |
| `attach_pdf`                     | boolean   | null     | No      | —                                                          | If set to true, a PDF of the invoice will be attached to the message email. Defaults to false.                                                                                                                                                                                                              |
| `body`                           | string    | null     | No      | —                                                          | The message body.                                                                                                                                                                                                                                                                                           |
| `event_type`                     | string    | null     | No      | —                                                          | Omit when intending to create and send a message. If omitted, the default value is null and the message will be sent. See other sections below for including this parameter with the following options: close, draft, re-open, or send (which marks a draft invoice as sent, it does not send the message). |
| `include_link_to_client_invoice` | boolean   | null     | No      | —                                                          | DEPRECATED A link to the client invoice URL will be automatically included in the message email if payment\_options have been assigned to the invoice. Setting to true will be ignored. Setting to false will clear all payment\_options on the invoice.                                                    |
| `recipients`                     | object\[] | No       | —       | Array of recipient parameters. See below for more details. |                                                                                                                                                                                                                                                                                                             |
| `send_me_a_copy`                 | boolean   | null     | No      | —                                                          | If set to true, a copy of the message email will be sent to the current user. Defaults to false.                                                                                                                                                                                                            |
| `subject`                        | string    | null     | No      | —                                                          | The message subject.                                                                                                                                                                                                                                                                                        |
| `thank_you`                      | boolean   | null     | No      | —                                                          | If set to true, a thank you message email will be sent. Defaults to false.                                                                                                                                                                                                                                  |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "invoiceId": {
        "type": "string",
        "description": "Invoice Id"
      },
      "attach_pdf": {
        "type": [
          "boolean",
          "null"
        ],
        "description": "If set to true, a PDF of the invoice will be attached to the message email. Defaults to false."
      },
      "body": {
        "type": [
          "string",
          "null"
        ],
        "description": "The message body."
      },
      "event_type": {
        "type": [
          "string",
          "null"
        ],
        "description": "Omit when intending to create and send a message. If omitted, the default value is null and the message will be sent. See other sections below for including this parameter with the following options: close, draft, re-open, or send (which marks a draft invoice as sent, it does not send the message)."
      },
      "include_link_to_client_invoice": {
        "type": [
          "boolean",
          "null"
        ],
        "description": "DEPRECATED A link to the client invoice URL will be automatically included in the message email if payment_options have been assigned to the invoice. Setting to true will be ignored. Setting to false will clear all payment_options on the invoice."
      },
      "recipients": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "name": {
              "type": "string",
              "description": "Name of the message recipient."
            },
            "email": {
              "type": "string",
              "format": "email",
              "description": "Email of the message recipient."
            }
          },
          "required": [
            "email"
          ]
        },
        "description": "Array of recipient parameters. See below for more details."
      },
      "send_me_a_copy": {
        "type": [
          "boolean",
          "null"
        ],
        "description": "If set to true, a copy of the message email will be sent to the current user. Defaults to false."
      },
      "subject": {
        "type": [
          "string",
          "null"
        ],
        "description": "The message subject."
      },
      "thank_you": {
        "type": [
          "boolean",
          "null"
        ],
        "description": "If set to true, a thank you message email will be sent. Defaults to false."
      }
    },
    "required": [
      "PCID",
      "invoiceId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_create\_invoice\_payment

Create an invoice payment

**Parameters:**

| Parameter        | Type    | Required | Default | Description |                                                                                                                                                                                                                 |
| ---------------- | ------- | -------- | ------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invoiceId`      | string  | Yes      | —       | Invoice Id  |                                                                                                                                                                                                                 |
| `amount`         | number  | null     | Yes     | —           | The amount of the payment.                                                                                                                                                                                      |
| `notes`          | string  | null     | No      | —           | Any notes to be associated with the payment.                                                                                                                                                                    |
| `paid_at`        | string  | null     | No      | —           | Date and time the payment was made. Pass either paid\_at or paid\_date, but not both.                                                                                                                           |
| `paid_date`      | string  | null     | No      | —           | Date the payment was made. Pass either paid\_at or paid\_date, but not both.                                                                                                                                    |
| `send_thank_you` | boolean | null     | No      | —           | Whether or not to send a thank you email (if enabled for your account in Invoices > Configure > Messages). Only sends an email if the invoice will be fully paid after creating this payment. Defaults to true. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "invoiceId": {
        "type": "string",
        "description": "Invoice Id"
      },
      "amount": {
        "type": [
          "number",
          "null"
        ],
        "description": "The amount of the payment."
      },
      "notes": {
        "type": [
          "string",
          "null"
        ],
        "description": "Any notes to be associated with the payment."
      },
      "paid_at": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date and time the payment was made. Pass either paid_at or paid_date, but not both."
      },
      "paid_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date the payment was made. Pass either paid_at or paid_date, but not both."
      },
      "send_thank_you": {
        "type": [
          "boolean",
          "null"
        ],
        "description": "Whether or not to send a thank you email (if enabled for your account in Invoices > Configure > Messages). Only sends an email if the invoice will be fully paid after creating this payment. Defaults to true."
      }
    },
    "required": [
      "PCID",
      "invoiceId",
      "amount"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_delete\_estimate

Delete an estimate

**Parameters:**

| Parameter    | Type   | Required | Default | Description |
| ------------ | ------ | -------- | ------- | ----------- |
| `estimateId` | string | Yes      | —       | Estimate Id |

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

***

## harvest\_invoicing\_delete\_estimate\_item\_category

Delete an estimate item category

**Parameters:**

| Parameter                | Type   | Required | Default | Description               |
| ------------------------ | ------ | -------- | ------- | ------------------------- |
| `estimateItemCategoryId` | string | Yes      | —       | Estimate Item Category Id |

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

***

## harvest\_invoicing\_delete\_estimate\_message

Delete an estimate message

**Parameters:**

| Parameter    | Type   | Required | Default | Description |
| ------------ | ------ | -------- | ------- | ----------- |
| `estimateId` | string | Yes      | —       | Estimate Id |
| `messageId`  | string | Yes      | —       | Message Id  |

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

***

## harvest\_invoicing\_delete\_invoice

Delete an invoice

**Parameters:**

| Parameter   | Type   | Required | Default | Description |
| ----------- | ------ | -------- | ------- | ----------- |
| `invoiceId` | string | Yes      | —       | Invoice Id  |

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

***

## harvest\_invoicing\_delete\_invoice\_item\_category

Delete an invoice item category

**Parameters:**

| Parameter               | Type   | Required | Default | Description              |
| ----------------------- | ------ | -------- | ------- | ------------------------ |
| `invoiceItemCategoryId` | string | Yes      | —       | Invoice Item Category Id |

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

***

## harvest\_invoicing\_delete\_invoice\_message

Delete an invoice message

**Parameters:**

| Parameter   | Type   | Required | Default | Description |
| ----------- | ------ | -------- | ------- | ----------- |
| `invoiceId` | string | Yes      | —       | Invoice Id  |
| `messageId` | string | Yes      | —       | Message Id  |

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

***

## harvest\_invoicing\_delete\_invoice\_payment

Delete an invoice payment

**Parameters:**

| Parameter   | Type   | Required | Default | Description |
| ----------- | ------ | -------- | ------- | ----------- |
| `invoiceId` | string | Yes      | —       | Invoice Id  |
| `paymentId` | string | Yes      | —       | Payment Id  |

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

***

## harvest\_invoicing\_list\_estimate\_item\_categories

List all estimate item categories

**Parameters:**

| Parameter       | Type    | Required | Default | Description                                                                                                                                                                                                     |
| --------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `updated_since` | string  | No       | —       | Only return estimate item categories that have been updated since the given date and time.                                                                                                                      |
| `page`          | integer | No       | —       | DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1) |
| `cursor`        | string  | No       | —       | Pagination cursor                                                                                                                                                                                               |
| `per_page`      | integer | No       | —       | The number of records to return per page. Can range between 1 and 2000. (Default: 2000)                                                                                                                         |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "updated_since": {
        "type": "string",
        "description": "Only return estimate item categories that have been updated since the given date and time."
      },
      "page": {
        "type": "integer",
        "description": "DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)"
      },
      "cursor": {
        "type": "string",
        "description": "Pagination cursor"
      },
      "per_page": {
        "type": "integer",
        "description": "The number of records to return per page. Can range between 1 and 2000. (Default: 2000)"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_list\_estimates

List all estimates

**Parameters:**

| Parameter       | Type    | Required | Default | Description                                                                                                                                                                                          |
| --------------- | ------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `client_id`     | integer | No       | —       | Only return estimates belonging to the client with the given ID.                                                                                                                                     |
| `updated_since` | string  | No       | —       | Only return estimates that have been updated since the given date and time.                                                                                                                          |
| `from`          | string  | No       | —       | Only return estimates with an issue\_date on or after the given date.                                                                                                                                |
| `to`            | string  | No       | —       | Only return estimates with an issue\_date on or before the given date.                                                                                                                               |
| `state`         | string  | No       | —       | Only return estimates with a state matching the value provided. Options: draft, sent, accepted, or declined.                                                                                         |
| `page`          | integer | No       | —       | The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1) |
| `per_page`      | integer | No       | —       | The number of records to return per page. Can range between 1 and 2000. (Default: 2000)                                                                                                              |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "client_id": {
        "type": "integer",
        "description": "Only return estimates belonging to the client with the given ID."
      },
      "updated_since": {
        "type": "string",
        "description": "Only return estimates that have been updated since the given date and time."
      },
      "from": {
        "type": "string",
        "description": "Only return estimates with an issue_date on or after the given date."
      },
      "to": {
        "type": "string",
        "description": "Only return estimates with an issue_date on or before the given date."
      },
      "state": {
        "type": "string",
        "description": "Only return estimates with a state matching the value provided. Options: draft, sent, accepted, or declined."
      },
      "page": {
        "type": "integer",
        "description": "The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)"
      },
      "per_page": {
        "type": "integer",
        "description": "The number of records to return per page. Can range between 1 and 2000. (Default: 2000)"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_list\_invoice\_item\_categories

List all invoice item categories

**Parameters:**

| Parameter       | Type    | Required | Default | Description                                                                                                                                                                                                     |
| --------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `updated_since` | string  | No       | —       | Only return invoice item categories that have been updated since the given date and time.                                                                                                                       |
| `page`          | integer | No       | —       | DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1) |
| `cursor`        | string  | No       | —       | Pagination cursor                                                                                                                                                                                               |
| `per_page`      | integer | No       | —       | The number of records to return per page. Can range between 1 and 2000. (Default: 2000)                                                                                                                         |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "updated_since": {
        "type": "string",
        "description": "Only return invoice item categories that have been updated since the given date and time."
      },
      "page": {
        "type": "integer",
        "description": "DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)"
      },
      "cursor": {
        "type": "string",
        "description": "Pagination cursor"
      },
      "per_page": {
        "type": "integer",
        "description": "The number of records to return per page. Can range between 1 and 2000. (Default: 2000)"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_list\_invoices

List all invoices

**Parameters:**

| Parameter       | Type    | Required | Default | Description                                                                                                                                                                                         |
| --------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `client_id`     | integer | No       | —       | Only return invoices belonging to the client with the given ID.                                                                                                                                     |
| `project_id`    | integer | No       | —       | Only return invoices associated with the project with the given ID.                                                                                                                                 |
| `updated_since` | string  | No       | —       | Only return invoices that have been updated since the given date and time.                                                                                                                          |
| `from`          | string  | No       | —       | Only return invoices with an issue\_date on or after the given date.                                                                                                                                |
| `to`            | string  | No       | —       | Only return invoices with an issue\_date on or before the given date.                                                                                                                               |
| `state`         | string  | No       | —       | Only return invoices with a state matching the value provided. Options: draft, open, paid, or closed.                                                                                               |
| `page`          | integer | No       | —       | The page number to use in pagination. For instance, if you make a list request and receive 100 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1) |
| `per_page`      | integer | No       | —       | The number of records to return per page. Can range between 1 and 2000. (Default: 100)                                                                                                              |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "client_id": {
        "type": "integer",
        "description": "Only return invoices belonging to the client with the given ID."
      },
      "project_id": {
        "type": "integer",
        "description": "Only return invoices associated with the project with the given ID."
      },
      "updated_since": {
        "type": "string",
        "description": "Only return invoices that have been updated since the given date and time."
      },
      "from": {
        "type": "string",
        "description": "Only return invoices with an issue_date on or after the given date."
      },
      "to": {
        "type": "string",
        "description": "Only return invoices with an issue_date on or before the given date."
      },
      "state": {
        "type": "string",
        "description": "Only return invoices with a state matching the value provided. Options: draft, open, paid, or closed."
      },
      "page": {
        "type": "integer",
        "description": "The page number to use in pagination. For instance, if you make a list request and receive 100 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)"
      },
      "per_page": {
        "type": "integer",
        "description": "The number of records to return per page. Can range between 1 and 2000. (Default: 100)"
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_list\_messages\_for\_estimate

List all messages for an estimate

**Parameters:**

| Parameter       | Type    | Required | Default | Description                                                                                                                                                                                                     |
| --------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `estimateId`    | string  | Yes      | —       | Estimate Id                                                                                                                                                                                                     |
| `updated_since` | string  | No       | —       | Only return estimate messages that have been updated since the given date and time.                                                                                                                             |
| `page`          | integer | No       | —       | DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1) |
| `cursor`        | string  | No       | —       | Pagination cursor                                                                                                                                                                                               |
| `per_page`      | integer | No       | —       | The number of records to return per page. Can range between 1 and 2000. (Default: 2000)                                                                                                                         |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "estimateId": {
        "type": "string",
        "description": "Estimate Id"
      },
      "updated_since": {
        "type": "string",
        "description": "Only return estimate messages that have been updated since the given date and time."
      },
      "page": {
        "type": "integer",
        "description": "DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)"
      },
      "cursor": {
        "type": "string",
        "description": "Pagination cursor"
      },
      "per_page": {
        "type": "integer",
        "description": "The number of records to return per page. Can range between 1 and 2000. (Default: 2000)"
      }
    },
    "required": [
      "PCID",
      "estimateId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_list\_messages\_for\_invoice

List all messages for an invoice

**Parameters:**

| Parameter       | Type    | Required | Default | Description                                                                                                                                                                                                     |
| --------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invoiceId`     | string  | Yes      | —       | Invoice Id                                                                                                                                                                                                      |
| `updated_since` | string  | No       | —       | Only return invoice messages that have been updated since the given date and time.                                                                                                                              |
| `page`          | integer | No       | —       | DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1) |
| `cursor`        | string  | No       | —       | Pagination cursor                                                                                                                                                                                               |
| `per_page`      | integer | No       | —       | The number of records to return per page. Can range between 1 and 2000. (Default: 2000)                                                                                                                         |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "invoiceId": {
        "type": "string",
        "description": "Invoice Id"
      },
      "updated_since": {
        "type": "string",
        "description": "Only return invoice messages that have been updated since the given date and time."
      },
      "page": {
        "type": "integer",
        "description": "DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)"
      },
      "cursor": {
        "type": "string",
        "description": "Pagination cursor"
      },
      "per_page": {
        "type": "integer",
        "description": "The number of records to return per page. Can range between 1 and 2000. (Default: 2000)"
      }
    },
    "required": [
      "PCID",
      "invoiceId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_list\_payments\_for\_invoice

List all payments for an invoice

**Parameters:**

| Parameter       | Type    | Required | Default | Description                                                                                                                                                                                                     |
| --------------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `invoiceId`     | string  | Yes      | —       | Invoice Id                                                                                                                                                                                                      |
| `updated_since` | string  | No       | —       | Only return invoice payments that have been updated since the given date and time.                                                                                                                              |
| `page`          | integer | No       | —       | DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1) |
| `cursor`        | string  | No       | —       | Pagination cursor                                                                                                                                                                                               |
| `per_page`      | integer | No       | —       | The number of records to return per page. Can range between 1 and 2000. (Default: 2000)                                                                                                                         |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "invoiceId": {
        "type": "string",
        "description": "Invoice Id"
      },
      "updated_since": {
        "type": "string",
        "description": "Only return invoice payments that have been updated since the given date and time."
      },
      "page": {
        "type": "integer",
        "description": "DEPRECATED The page number to use in pagination. For instance, if you make a list request and receive 2000 records, your subsequent call can include page=2 to retrieve the next page of the list. (Default: 1)"
      },
      "cursor": {
        "type": "string",
        "description": "Pagination cursor"
      },
      "per_page": {
        "type": "integer",
        "description": "The number of records to return per page. Can range between 1 and 2000. (Default: 2000)"
      }
    },
    "required": [
      "PCID",
      "invoiceId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_retrieve\_estimate

Retrieve an estimate

**Parameters:**

| Parameter    | Type   | Required | Default | Description |
| ------------ | ------ | -------- | ------- | ----------- |
| `estimateId` | string | Yes      | —       | Estimate Id |

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

***

## harvest\_invoicing\_retrieve\_estimate\_item\_category

Retrieve an estimate item category

**Parameters:**

| Parameter                | Type   | Required | Default | Description               |
| ------------------------ | ------ | -------- | ------- | ------------------------- |
| `estimateItemCategoryId` | string | Yes      | —       | Estimate Item Category Id |

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

***

## harvest\_invoicing\_retrieve\_invoice

Retrieve an invoice

**Parameters:**

| Parameter   | Type   | Required | Default | Description |
| ----------- | ------ | -------- | ------- | ----------- |
| `invoiceId` | string | Yes      | —       | Invoice Id  |

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

***

## harvest\_invoicing\_retrieve\_invoice\_item\_category

Retrieve an invoice item category

**Parameters:**

| Parameter               | Type   | Required | Default | Description              |
| ----------------------- | ------ | -------- | ------- | ------------------------ |
| `invoiceItemCategoryId` | string | Yes      | —       | Invoice Item Category Id |

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

***

## harvest\_invoicing\_retrieve\_invoice\_message\_subject\_and\_body\_for\_specific\_invoice

Retrieve invoice message subject and body for specific invoice

**Parameters:**

| Parameter   | Type    | Required | Default | Description                                                                                         |
| ----------- | ------- | -------- | ------- | --------------------------------------------------------------------------------------------------- |
| `invoiceId` | string  | Yes      | —       | Invoice Id                                                                                          |
| `thank_you` | boolean | No       | —       | Set to true to return the subject and body of a thank-you invoice message for the specific invoice. |
| `reminder`  | boolean | No       | —       | Set to true to return the subject and body of a reminder invoice message for the specific invoice.  |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "invoiceId": {
        "type": "string",
        "description": "Invoice Id"
      },
      "thank_you": {
        "type": "boolean",
        "description": "Set to true to return the subject and body of a thank-you invoice message for the specific invoice."
      },
      "reminder": {
        "type": "boolean",
        "description": "Set to true to return the subject and body of a reminder invoice message for the specific invoice."
      }
    },
    "required": [
      "PCID",
      "invoiceId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_update\_estimate

Update an estimate

**Parameters:**

| Parameter        | Type      | Required | Default | Description                   |                                                                                                                            |
| ---------------- | --------- | -------- | ------- | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `estimateId`     | string    | Yes      | —       | Estimate Id                   |                                                                                                                            |
| `client_id`      | integer   | null     | No      | —                             | The ID of the client this estimate belongs to.                                                                             |
| `currency`       | string    | null     | No      | —                             | The currency used by the estimate. If not provided, the client’s currency will be used. See a list of supported currencies |
| `discount`       | number    | null     | No      | —                             | This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%.                                              |
| `issue_date`     | string    | null     | No      | —                             | Date the estimate was issued.                                                                                              |
| `line_items`     | object\[] | No       | —       | Array of line item parameters |                                                                                                                            |
| `notes`          | string    | null     | No      | —                             | Any additional notes to include on the estimate.                                                                           |
| `number`         | string    | null     | No      | —                             | If no value is set, the number will be automatically generated.                                                            |
| `purchase_order` | string    | null     | No      | —                             | The purchase order number.                                                                                                 |
| `subject`        | string    | null     | No      | —                             | The estimate subject.                                                                                                      |
| `tax`            | number    | null     | No      | —                             | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.               |
| `tax2`           | number    | null     | No      | —                             | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.               |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "estimateId": {
        "type": "string",
        "description": "Estimate Id"
      },
      "client_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the client this estimate belongs to."
      },
      "currency": {
        "type": [
          "string",
          "null"
        ],
        "description": "The currency used by the estimate. If not provided, the client’s currency will be used. See a list of supported currencies"
      },
      "discount": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%."
      },
      "issue_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date the estimate was issued."
      },
      "line_items": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "integer",
              "format": "int32",
              "description": "Unique ID for the line item."
            },
            "kind": {
              "type": "string",
              "description": "The name of an estimate item category."
            },
            "description": {
              "type": "string",
              "description": "Text description of the line item."
            },
            "quantity": {
              "type": "integer",
              "format": "int32",
              "description": "The unit quantity of the item. Defaults to 1."
            },
            "unit_price": {
              "type": "number",
              "format": "float",
              "description": "The individual price per unit."
            },
            "taxed": {
              "type": "boolean",
              "description": "Whether the estimate’s tax percentage applies to this line item. Defaults to false."
            },
            "taxed2": {
              "type": "boolean",
              "description": "Whether the estimate’s tax2 percentage applies to this line item. Defaults to false."
            }
          }
        },
        "description": "Array of line item parameters"
      },
      "notes": {
        "type": [
          "string",
          "null"
        ],
        "description": "Any additional notes to include on the estimate."
      },
      "number": {
        "type": [
          "string",
          "null"
        ],
        "description": "If no value is set, the number will be automatically generated."
      },
      "purchase_order": {
        "type": [
          "string",
          "null"
        ],
        "description": "The purchase order number."
      },
      "subject": {
        "type": [
          "string",
          "null"
        ],
        "description": "The estimate subject."
      },
      "tax": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      },
      "tax2": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      }
    },
    "required": [
      "PCID",
      "estimateId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_update\_estimate\_item\_category

Update an estimate item category

**Parameters:**

| Parameter                | Type   | Required | Default | Description               |                                         |
| ------------------------ | ------ | -------- | ------- | ------------------------- | --------------------------------------- |
| `estimateItemCategoryId` | string | Yes      | —       | Estimate Item Category Id |                                         |
| `name`                   | string | null     | No      | —                         | The name of the estimate item category. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "estimateItemCategoryId": {
        "type": "string",
        "description": "Estimate Item Category Id"
      },
      "name": {
        "type": [
          "string",
          "null"
        ],
        "description": "The name of the estimate item category."
      }
    },
    "required": [
      "PCID",
      "estimateItemCategoryId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_update\_invoice

Update an invoice

**Parameters:**

| Parameter         | Type      | Required | Default | Description                                                                                                                                                                                                         |                                                                                                                           |
| ----------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| `invoiceId`       | string    | Yes      | —       | Invoice Id                                                                                                                                                                                                          |                                                                                                                           |
| `client_id`       | integer   | null     | No      | —                                                                                                                                                                                                                   | The ID of the client this invoice belongs to.                                                                             |
| `currency`        | string    | null     | No      | —                                                                                                                                                                                                                   | The currency used by the invoice. If not provided, the client’s currency will be used. See a list of supported currencies |
| `discount`        | number    | null     | No      | —                                                                                                                                                                                                                   | This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%.                                             |
| `due_date`        | string    | null     | No      | —                                                                                                                                                                                                                   | Date the invoice is due.                                                                                                  |
| `estimate_id`     | integer   | null     | No      | —                                                                                                                                                                                                                   | The ID of the estimate associated with this invoice.                                                                      |
| `issue_date`      | string    | null     | No      | —                                                                                                                                                                                                                   | Date the invoice was issued.                                                                                              |
| `line_items`      | object\[] | No       | —       | Array of line item parameters                                                                                                                                                                                       |                                                                                                                           |
| `notes`           | string    | null     | No      | —                                                                                                                                                                                                                   | Any additional notes to include on the invoice.                                                                           |
| `number`          | string    | null     | No      | —                                                                                                                                                                                                                   | If no value is set, the number will be automatically generated.                                                           |
| `payment_options` | string\[] | No       | —       | The payment options available to pay the invoice. Your account must be configured with the appropriate options under Settings > Integrations > Online payment to assign them. Options: \[ach, credit\_card, paypal] |                                                                                                                           |
| `payment_term`    | string    | null     | No      | —                                                                                                                                                                                                                   | The timeframe in which the invoice should be paid. Options: upon receipt, net 15, net 30, net 45, or net 60.              |
| `purchase_order`  | string    | null     | No      | —                                                                                                                                                                                                                   | The purchase order number.                                                                                                |
| `retainer_id`     | integer   | null     | No      | —                                                                                                                                                                                                                   | The ID of the retainer associated with this invoice.                                                                      |
| `subject`         | string    | null     | No      | —                                                                                                                                                                                                                   | The invoice subject.                                                                                                      |
| `tax`             | number    | null     | No      | —                                                                                                                                                                                                                   | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.              |
| `tax2`            | number    | null     | No      | —                                                                                                                                                                                                                   | This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%.              |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "invoiceId": {
        "type": "string",
        "description": "Invoice Id"
      },
      "client_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the client this invoice belongs to."
      },
      "currency": {
        "type": [
          "string",
          "null"
        ],
        "description": "The currency used by the invoice. If not provided, the client’s currency will be used. See a list of supported currencies"
      },
      "discount": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is subtracted from the subtotal. Example: use 10.0 for 10.0%."
      },
      "due_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date the invoice is due."
      },
      "estimate_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the estimate associated with this invoice."
      },
      "issue_date": {
        "type": [
          "string",
          "null"
        ],
        "description": "Date the invoice was issued."
      },
      "line_items": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "integer",
              "format": "int32",
              "description": "Unique ID for the line item."
            },
            "project_id": {
              "type": "integer",
              "format": "int32",
              "description": "The ID of the project associated with this line item."
            },
            "kind": {
              "type": "string",
              "description": "The name of an invoice item category."
            },
            "description": {
              "type": "string",
              "description": "Text description of the line item."
            },
            "quantity": {
              "type": "number",
              "format": "float",
              "description": "The unit quantity of the item. Defaults to 1."
            },
            "unit_price": {
              "type": "number",
              "format": "float",
              "description": "The individual price per unit."
            },
            "taxed": {
              "type": "boolean",
              "description": "Whether the invoice’s tax percentage applies to this line item. Defaults to false."
            },
            "taxed2": {
              "type": "boolean",
              "description": "Whether the invoice’s tax2 percentage applies to this line item. Defaults to false."
            }
          }
        },
        "description": "Array of line item parameters"
      },
      "notes": {
        "type": [
          "string",
          "null"
        ],
        "description": "Any additional notes to include on the invoice."
      },
      "number": {
        "type": [
          "string",
          "null"
        ],
        "description": "If no value is set, the number will be automatically generated."
      },
      "payment_options": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "ach",
            "credit_card",
            "paypal"
          ]
        },
        "description": "The payment options available to pay the invoice. Your account must be configured with the appropriate options under Settings > Integrations > Online payment to assign them. Options: [ach, credit_card, paypal]"
      },
      "payment_term": {
        "type": [
          "string",
          "null"
        ],
        "description": "The timeframe in which the invoice should be paid. Options: upon receipt, net 15, net 30, net 45, or net 60."
      },
      "purchase_order": {
        "type": [
          "string",
          "null"
        ],
        "description": "The purchase order number."
      },
      "retainer_id": {
        "type": [
          "integer",
          "null"
        ],
        "description": "The ID of the retainer associated with this invoice."
      },
      "subject": {
        "type": [
          "string",
          "null"
        ],
        "description": "The invoice subject."
      },
      "tax": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      },
      "tax2": {
        "type": [
          "number",
          "null"
        ],
        "description": "This percentage is applied to the subtotal, including line items and discounts. Example: use 10.0 for 10.0%."
      }
    },
    "required": [
      "PCID",
      "invoiceId"
    ]
  }
  ```
</Expandable>

***

## harvest\_invoicing\_update\_invoice\_item\_category

Update an invoice item category

**Parameters:**

| Parameter               | Type   | Required | Default | Description              |                                        |
| ----------------------- | ------ | -------- | ------- | ------------------------ | -------------------------------------- |
| `invoiceItemCategoryId` | string | Yes      | —       | Invoice Item Category Id |                                        |
| `name`                  | string | null     | No      | —                        | The name of the invoice item category. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "invoiceItemCategoryId": {
        "type": "string",
        "description": "Invoice Item Category Id"
      },
      "name": {
        "type": [
          "string",
          "null"
        ],
        "description": "The name of the invoice item category."
      }
    },
    "required": [
      "PCID",
      "invoiceItemCategoryId"
    ]
  }
  ```
</Expandable>
