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

# vercel-infrastructure

> Vercel Infrastructure - manage observability, artifacts, billing, logs, and webhooks

**Server path:** `/vercel-infrastructure` | **Type:** Application | **PCID required:** Yes

## Tools

| Tool                                                                                                                                    | Description                                                           |
| --------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| [`vercel_infrastructure_artifact_query`](#vercel_infrastructure_artifact_query)                                                         | Query information about an artifact                                   |
| [`vercel_infrastructure_buy_credits`](#vercel_infrastructure_buy_credits)                                                               | Purchase credits                                                      |
| [`vercel_infrastructure_create_configurable_log_drain`](#vercel_infrastructure_create_configurable_log_drain)                           | Creates a Configurable Log Drain (deprecated)                         |
| [`vercel_infrastructure_create_drain`](#vercel_infrastructure_create_drain)                                                             | Create a new Drain                                                    |
| [`vercel_infrastructure_create_log_drain`](#vercel_infrastructure_create_log_drain)                                                     | Creates a new Integration Log Drain (deprecated)                      |
| [`vercel_infrastructure_create_webhook`](#vercel_infrastructure_create_webhook)                                                         | Creates a webhook                                                     |
| [`vercel_infrastructure_delete_configurable_log_drain`](#vercel_infrastructure_delete_configurable_log_drain)                           | Deletes a Configurable Log Drain (deprecated)                         |
| [`vercel_infrastructure_delete_drain`](#vercel_infrastructure_delete_drain)                                                             | Delete a drain                                                        |
| [`vercel_infrastructure_delete_integration_log_drain`](#vercel_infrastructure_delete_integration_log_drain)                             | Deletes the Integration log drain with the provided `id` (deprecated) |
| [`vercel_infrastructure_delete_webhook`](#vercel_infrastructure_delete_webhook)                                                         | Deletes a webhook                                                     |
| [`vercel_infrastructure_download_artifact`](#vercel_infrastructure_download_artifact)                                                   | Download a cache artifact                                             |
| [`vercel_infrastructure_get_all_log_drains`](#vercel_infrastructure_get_all_log_drains)                                                 | Retrieves a list of all the Log Drains (deprecated)                   |
| [`vercel_infrastructure_get_configurable_log_drain`](#vercel_infrastructure_get_configurable_log_drain)                                 | Retrieves a Configurable Log Drain (deprecated)                       |
| [`vercel_infrastructure_get_drain`](#vercel_infrastructure_get_drain)                                                                   | Find a Drain by id                                                    |
| [`vercel_infrastructure_get_drains`](#vercel_infrastructure_get_drains)                                                                 | Retrieve a list of all Drains                                         |
| [`vercel_infrastructure_get_integration_log_drains`](#vercel_infrastructure_get_integration_log_drains)                                 | Retrieves a list of Integration log drains (deprecated)               |
| [`vercel_infrastructure_get_observability_configuration_projects`](#vercel_infrastructure_get_observability_configuration_projects)     | Lists disabled Observability Plus projects                            |
| [`vercel_infrastructure_get_runtime_logs`](#vercel_infrastructure_get_runtime_logs)                                                     | Get logs for a deployment                                             |
| [`vercel_infrastructure_get_webhook`](#vercel_infrastructure_get_webhook)                                                               | Get a webhook                                                         |
| [`vercel_infrastructure_get_webhooks`](#vercel_infrastructure_get_webhooks)                                                             | Get a list of webhooks                                                |
| [`vercel_infrastructure_list_billing_charges`](#vercel_infrastructure_list_billing_charges)                                             | List FOCUS billing charges                                            |
| [`vercel_infrastructure_list_contract_commitments`](#vercel_infrastructure_list_contract_commitments)                                   | List FOCUS contract commitments                                       |
| [`vercel_infrastructure_record_events`](#vercel_infrastructure_record_events)                                                           | Record an artifacts cache usage event                                 |
| [`vercel_infrastructure_status`](#vercel_infrastructure_status)                                                                         | Get status of Remote Caching for this principal                       |
| [`vercel_infrastructure_test_drain`](#vercel_infrastructure_test_drain)                                                                 | Validate Drain delivery configuration                                 |
| [`vercel_infrastructure_update_drain`](#vercel_infrastructure_update_drain)                                                             | Update an existing Drain                                              |
| [`vercel_infrastructure_update_observability_configuration_project`](#vercel_infrastructure_update_observability_configuration_project) | Updates a disabled Observability Plus project setting                 |
| [`vercel_infrastructure_update_static_ips`](#vercel_infrastructure_update_static_ips)                                                   | Configures Static IPs for a project                                   |
| [`vercel_infrastructure_upload_artifact`](#vercel_infrastructure_upload_artifact)                                                       | Upload a cache artifact                                               |

***

## vercel\_infrastructure\_artifact\_query

Query information about an artifact

**Parameters:**

| Parameter | Type      | Required | Default | Description                                              |
| --------- | --------- | -------- | ------- | -------------------------------------------------------- |
| `teamId`  | string    | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string    | No       | —       | The Team slug to perform the request on behalf of.       |
| `hashes`  | string\[] | Yes      | —       | artifact hashes                                          |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "hashes": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "artifact hashes"
      }
    },
    "required": [
      "PCID",
      "hashes"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_buy\_credits

Purchase credits

**Parameters:**

| Parameter | Type   | Required | Default | Description                                                             |
| --------- | ------ | -------- | ------- | ----------------------------------------------------------------------- |
| `source`  | string | No       | —       | The source of the purchase request. Defaults to `api` if not specified. |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of.                |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.                      |
| `item`    | object | Yes      | —       | The item value                                                          |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "source": {
        "type": "string",
        "description": "The source of the purchase request. Defaults to `api` if not specified."
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "item": {
        "type": "object",
        "description": "The item value",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of item to purchase.",
            "enum": [
              "credits"
            ]
          },
          "creditType": {
            "type": "string",
            "description": "The type of credits to purchase.",
            "enum": [
              "v0",
              "gateway",
              "agent"
            ]
          },
          "amount": {
            "type": "integer",
            "description": "The amount of credits to purchase."
          }
        },
        "required": [
          "type",
          "creditType",
          "amount"
        ]
      }
    },
    "required": [
      "PCID",
      "item"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_create\_configurable\_log\_drain

Creates a Configurable Log Drain (deprecated)

**Parameters:**

| Parameter        | Type      | Required | Default | Description                                                                                                       |
| ---------------- | --------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------- |
| `teamId`         | string    | No       | —       | The Team identifier to perform the request on behalf of.                                                          |
| `slug`           | string    | No       | —       | The Team slug to perform the request on behalf of.                                                                |
| `deliveryFormat` | object    | Yes      | —       | The delivery log format                                                                                           |
| `environments`   | string\[] | No       | —       | The environments value                                                                                            |
| `headers`        | object    | No       | —       | Headers to be sent together with the request                                                                      |
| `name`           | string    | No       | —       | The custom name of this log drain.                                                                                |
| `projectIds`     | string\[] | No       | —       | Project Ids                                                                                                       |
| `samplingRate`   | number    | No       | —       | The sampling rate for this log drain. It should be a percentage rate between 0 and 100. With max 2 decimal points |
| `secret`         | string    | No       | —       | Custom secret of log drain                                                                                        |
| `sources`        | string\[] | Yes      | —       | The sources value                                                                                                 |
| `url`            | string    | Yes      | —       | The log drain url                                                                                                 |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "deliveryFormat": {
        "description": "The delivery log format",
        "enum": [
          "json",
          "ndjson"
        ]
      },
      "environments": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "preview",
            "production"
          ]
        },
        "description": "The environments value"
      },
      "headers": {
        "type": "object",
        "description": "Headers to be sent together with the request"
      },
      "name": {
        "type": "string",
        "description": "The custom name of this log drain."
      },
      "projectIds": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Project Ids"
      },
      "samplingRate": {
        "type": "number",
        "description": "The sampling rate for this log drain. It should be a percentage rate between 0 and 100. With max 2 decimal points"
      },
      "secret": {
        "type": "string",
        "description": "Custom secret of log drain"
      },
      "sources": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "static",
            "lambda",
            "build",
            "edge",
            "external",
            "firewall"
          ]
        },
        "description": "The sources value"
      },
      "url": {
        "type": "string",
        "description": "The log drain url"
      }
    },
    "required": [
      "PCID",
      "deliveryFormat",
      "sources",
      "url"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_create\_drain

Create a new Drain

**Parameters:**

| Parameter    | Type      | Required | Default | Description                                              |
| ------------ | --------- | -------- | ------- | -------------------------------------------------------- |
| `teamId`     | string    | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`       | string    | No       | —       | The Team slug to perform the request on behalf of.       |
| `delivery`   | object    | No       | —       | The delivery value                                       |
| `filter`     | object    | No       | —       | The filter value                                         |
| `name`       | string    | Yes      | —       | The name value                                           |
| `projectIds` | string\[] | No       | —       | Project Ids                                              |
| `projects`   | string    | Yes      | —       | The projects value                                       |
| `sampling`   | object\[] | No       | —       | The sampling value                                       |
| `schemas`    | object    | Yes      | —       | The schemas value                                        |
| `source`     | object    | No       | —       | The source value                                         |
| `transforms` | object\[] | No       | —       | The transforms value                                     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "delivery": {
        "type": "object",
        "description": "The delivery value"
      },
      "filter": {
        "description": "The filter value"
      },
      "name": {
        "type": "string",
        "description": "The name value"
      },
      "projectIds": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Project Ids"
      },
      "projects": {
        "type": "string",
        "description": "The projects value",
        "enum": [
          "some",
          "all"
        ]
      },
      "sampling": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "description": "The type value"
            },
            "rate": {
              "type": "number",
              "description": "Sampling rate from 0 to 1 (e.g., 0.1 for 10%)"
            },
            "env": {
              "type": "string",
              "enum": [
                "production",
                "preview"
              ],
              "description": "Environment to apply sampling to"
            },
            "requestPath": {
              "type": "string",
              "description": "Request path prefix to apply the sampling rule to"
            }
          },
          "required": [
            "type",
            "rate"
          ]
        },
        "description": "The sampling value"
      },
      "schemas": {
        "type": "object",
        "description": "The schemas value"
      },
      "source": {
        "type": "object",
        "description": "The source value"
      },
      "transforms": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "description": "The id value"
            }
          },
          "required": [
            "id"
          ]
        },
        "description": "The transforms value"
      }
    },
    "required": [
      "PCID",
      "name",
      "projects",
      "schemas"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_create\_log\_drain

Creates a new Integration Log Drain (deprecated)

**Parameters:**

| Parameter        | Type      | Required | Default | Description                                                                                                         |
| ---------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------- |
| `teamId`         | string    | No       | —       | The Team identifier to perform the request on behalf of.                                                            |
| `slug`           | string    | No       | —       | The Team slug to perform the request on behalf of.                                                                  |
| `deliveryFormat` | object    | No       | —       | The delivery log format                                                                                             |
| `environments`   | string\[] | No       | —       | The environments value                                                                                              |
| `headers`        | object    | No       | —       | Headers to be sent together with the request                                                                        |
| `name`           | string    | Yes      | —       | The name of the log drain                                                                                           |
| `projectIds`     | string\[] | No       | —       | Project Ids                                                                                                         |
| `secret`         | string    | No       | —       | A secret to sign log drain notification headers so a consumer can verify their authenticity                         |
| `sources`        | string\[] | No       | —       | The sources value                                                                                                   |
| `url`            | string    | Yes      | —       | The url where you will receive logs. The protocol must be `https://` or `http://` when type is `json` and `ndjson`. |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "deliveryFormat": {
        "description": "The delivery log format",
        "enum": [
          "json",
          "ndjson"
        ]
      },
      "environments": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "preview",
            "production"
          ]
        },
        "description": "The environments value"
      },
      "headers": {
        "type": "object",
        "description": "Headers to be sent together with the request"
      },
      "name": {
        "type": "string",
        "description": "The name of the log drain"
      },
      "projectIds": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Project Ids"
      },
      "secret": {
        "type": "string",
        "description": "A secret to sign log drain notification headers so a consumer can verify their authenticity"
      },
      "sources": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "static",
            "lambda",
            "build",
            "edge",
            "external",
            "firewall"
          ]
        },
        "description": "The sources value"
      },
      "url": {
        "type": "string",
        "description": "The url where you will receive logs. The protocol must be `https://` or `http://` when type is `json` and `ndjson`."
      }
    },
    "required": [
      "PCID",
      "name",
      "url"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_create\_webhook

Creates a webhook

**Parameters:**

| Parameter    | Type      | Required | Default | Description                                              |
| ------------ | --------- | -------- | ------- | -------------------------------------------------------- |
| `teamId`     | string    | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`       | string    | No       | —       | The Team slug to perform the request on behalf of.       |
| `events`     | string\[] | Yes      | —       | The events value                                         |
| `projectIds` | string\[] | No       | —       | Project Ids                                              |
| `url`        | string    | Yes      | —       | The url value                                            |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "events": {
        "type": "array",
        "items": {
          "type": "string",
          "enum": [
            "budget.reached",
            "domain.created",
            "domain.dns.records.changed",
            "domain.transfer-in.started",
            "domain.transfer-in.completed",
            "domain.transfer-in.failed",
            "domain.certificate.add",
            "domain.certificate.add.failed",
            "domain.certificate.renew",
            "domain.certificate.renew.failed",
            "domain.certificate.deleted",
            "domain.renewal",
            "domain.renewal.failed",
            "domain.auto-renew.changed",
            "deployment.created",
            "deployment.cleanup",
            "deployment.error",
            "deployment.canceled",
            "deployment.succeeded",
            "deployment.ready",
            "deployment.check-rerequested",
            "deployment.promoted",
            "deployment.rollback",
            "deployment.integration.action.start",
            "deployment.integration.action.cancel",
            "deployment.integration.action.cleanup",
            "deployment.checkrun.start",
            "deployment.checkrun.cancel",
            "edge-config.created",
            "edge-config.deleted",
            "edge-config.items.updated",
            "firewall.attack",
            "firewall.system-rule-anomaly",
            "firewall.custom-rule-anomaly",
            "alerts.triggered",
            "integration-configuration.permission-upgraded",
            "integration-configuration.removed",
            "integration-configuration.scope-change-confirmed",
            "integration-configuration.transferred",
            "integration-resource.project-connected",
            "integration-resource.project-disconnected",
            "project.created",
            "project.removed",
            "project.renamed",
            "project.env-variable.created",
            "project.env-variable.updated",
            "project.env-variable.deleted",
            "project.domain.created",
            "project.domain.updated",
            "project.domain.deleted",
            "project.domain.verified",
            "project.domain.unverified",
            "project.domain.moved",
            "project.rolling-release.started",
            "project.rolling-release.aborted",
            "project.rolling-release.completed",
            "project.rolling-release.approved",
            "deployment.checks.failed",
            "deployment.checks.succeeded",
            "deployment-checks-completed",
            "deployment-ready",
            "deployment-prepared",
            "deployment-error",
            "deployment-check-rerequested",
            "deployment-canceled",
            "project-created",
            "project-removed",
            "domain-created",
            "deployment",
            "integration-configuration-permission-updated",
            "integration-configuration-removed",
            "integration-configuration-scope-change-confirmed",
            "marketplace.member.changed",
            "marketplace.invoice.created",
            "marketplace.invoice.paid",
            "marketplace.invoice.notpaid",
            "marketplace.invoice.overdue",
            "marketplace.invoice.refunded",
            "ai-gateway.balance-depleted",
            "ai-gateway.auto-reload.limit-reached",
            "observability.anomaly",
            "observability.anomaly-error",
            "observability.usage-anomaly",
            "observability.error-anomaly",
            "botid.anomaly",
            "flag.created",
            "flag.updated",
            "flag.deleted",
            "flag.segment.created",
            "flag.segment.updated",
            "flag.segment.deleted",
            "test-webhook",
            "message.created",
            "message.updated",
            "message.deleted",
            "thread.resolved",
            "thread.unresolved",
            "message.reaction-added",
            "message.reaction-removed",
            "message.mentioned",
            "comment.created",
            "comment.updated",
            "comment.deleted",
            "comment.resolved",
            "comment.unresolved",
            "comment.reaction-added",
            "comment.reaction-removed",
            "comment.mentioned"
          ]
        },
        "description": "The events value"
      },
      "projectIds": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Project Ids"
      },
      "url": {
        "type": "string",
        "description": "The url value"
      }
    },
    "required": [
      "PCID",
      "events",
      "url"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_delete\_configurable\_log\_drain

Deletes a Configurable Log Drain (deprecated)

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `id`      | string | Yes      | —       | The id value                                             |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "The id value"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_delete\_drain

Delete a drain

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `id`      | string | Yes      | —       | The id value                                             |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "The id value"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_delete\_integration\_log\_drain

Deletes the Integration log drain with the provided `id` (deprecated)

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `id`      | string | Yes      | —       | ID of the log drain to be deleted                        |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "ID of the log drain to be deleted"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_delete\_webhook

Deletes a webhook

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `id`      | string | Yes      | —       | The id value                                             |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "The id value"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_download\_artifact

Download a cache artifact

**Parameters:**

| Parameter                       | Type    | Required | Default | Description                                                                           |
| ------------------------------- | ------- | -------- | ------- | ------------------------------------------------------------------------------------- |
| `x-artifact-client-ci`          | string  | No       | —       | The continuous integration or delivery environment where this artifact is downloaded. |
| `x-artifact-client-interactive` | integer | No       | —       | 1 if the client is an interactive shell. Otherwise 0                                  |
| `hash`                          | string  | Yes      | —       | The artifact hash                                                                     |
| `teamId`                        | string  | No       | —       | The Team identifier to perform the request on behalf of.                              |
| `slug`                          | string  | No       | —       | The Team slug to perform the request on behalf of.                                    |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "x-artifact-client-ci": {
        "type": "string",
        "description": "The continuous integration or delivery environment where this artifact is downloaded."
      },
      "x-artifact-client-interactive": {
        "type": "integer",
        "description": "1 if the client is an interactive shell. Otherwise 0"
      },
      "hash": {
        "type": "string",
        "description": "The artifact hash"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "hash"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_all\_log\_drains

Retrieves a list of all the Log Drains (deprecated)

**Parameters:**

| Parameter         | Type    | Required | Default | Description                                              |
| ----------------- | ------- | -------- | ------- | -------------------------------------------------------- |
| `projectId`       | string  | No       | —       | Project Id                                               |
| `projectIdOrName` | string  | No       | —       | Project Id Or Name                                       |
| `includeMetadata` | boolean | No       | —       | Include Metadata                                         |
| `teamId`          | string  | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`            | string  | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "projectId": {
        "type": "string",
        "description": "Project Id"
      },
      "projectIdOrName": {
        "type": "string",
        "description": "Project Id Or Name"
      },
      "includeMetadata": {
        "type": "boolean",
        "description": "Include Metadata"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_configurable\_log\_drain

Retrieves a Configurable Log Drain (deprecated)

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `id`      | string | Yes      | —       | The id value                                             |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "The id value"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_drain

Find a Drain by id

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `id`      | string | Yes      | —       | The id value                                             |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "The id value"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_drains

Retrieve a list of all Drains

**Parameters:**

| Parameter         | Type    | Required | Default | Description                                              |
| ----------------- | ------- | -------- | ------- | -------------------------------------------------------- |
| `projectId`       | string  | No       | —       | Project Id                                               |
| `includeMetadata` | boolean | No       | —       | Include Metadata                                         |
| `teamId`          | string  | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`            | string  | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "projectId": {
        "type": "string",
        "description": "Project Id"
      },
      "includeMetadata": {
        "type": "boolean",
        "description": "Include Metadata"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_integration\_log\_drains

Retrieves a list of Integration log drains (deprecated)

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_observability\_configuration\_projects

Lists disabled Observability Plus projects

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_runtime\_logs

Get logs for a deployment

**Parameters:**

| Parameter      | Type   | Required | Default | Description                                              |
| -------------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `projectId`    | string | Yes      | —       | Project Id                                               |
| `deploymentId` | string | Yes      | —       | Deployment Id                                            |
| `teamId`       | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`         | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "projectId": {
        "type": "string",
        "description": "Project Id"
      },
      "deploymentId": {
        "type": "string",
        "description": "Deployment Id"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "projectId",
      "deploymentId"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_webhook

Get a webhook

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `id`      | string | Yes      | —       | The id value                                             |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "The id value"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_get\_webhooks

Get a list of webhooks

**Parameters:**

| Parameter   | Type   | Required | Default | Description                                              |
| ----------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `projectId` | string | No       | —       | Project Id                                               |
| `teamId`    | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`      | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "projectId": {
        "type": "string",
        "description": "Project Id"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_list\_billing\_charges

List FOCUS billing charges

**Parameters:**

| Parameter | Type   | Required | Default | Description                                                               |
| --------- | ------ | -------- | ------- | ------------------------------------------------------------------------- |
| `from`    | string | Yes      | —       | Inclusive start of the date range as an ISO 8601 date-time string in UTC. |
| `to`      | string | Yes      | —       | Exclusive end of the date range as an ISO 8601 date-time string in UTC.   |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of.                  |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.                        |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "from": {
        "type": "string",
        "description": "Inclusive start of the date range as an ISO 8601 date-time string in UTC."
      },
      "to": {
        "type": "string",
        "description": "Exclusive end of the date range as an ISO 8601 date-time string in UTC."
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID",
      "from",
      "to"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_list\_contract\_commitments

List FOCUS contract commitments

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_record\_events

Record an artifacts cache usage event

**Parameters:**

| Parameter                       | Type      | Required | Default | Description                                                                           |
| ------------------------------- | --------- | -------- | ------- | ------------------------------------------------------------------------------------- |
| `x-artifact-client-ci`          | string    | No       | —       | The continuous integration or delivery environment where this artifact is downloaded. |
| `x-artifact-client-interactive` | integer   | No       | —       | 1 if the client is an interactive shell. Otherwise 0                                  |
| `teamId`                        | string    | No       | —       | The Team identifier to perform the request on behalf of.                              |
| `slug`                          | string    | No       | —       | The Team slug to perform the request on behalf of.                                    |
| `body`                          | object\[] | Yes      | —       | Request body                                                                          |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "x-artifact-client-ci": {
        "type": "string",
        "description": "The continuous integration or delivery environment where this artifact is downloaded."
      },
      "x-artifact-client-interactive": {
        "type": "integer",
        "description": "1 if the client is an interactive shell. Otherwise 0"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "body": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "sessionId": {
              "type": "string",
              "description": "A UUID (universally unique identifer) for the session that generated this event."
            },
            "source": {
              "type": "string",
              "enum": [
                "LOCAL",
                "REMOTE"
              ],
              "description": "One of `LOCAL` or `REMOTE`. `LOCAL` specifies that the cache event was from the user's filesystem cache. `REMOTE` specifies that the cache event is from a remote cache."
            },
            "event": {
              "type": "string",
              "enum": [
                "HIT",
                "MISS"
              ],
              "description": "One of `HIT` or `MISS`. `HIT` specifies that a cached artifact for `hash` was found in the cache. `MISS` specifies that a cached artifact with `hash` was not found."
            },
            "hash": {
              "type": "string",
              "description": "The artifact hash"
            },
            "duration": {
              "type": "number",
              "description": "The time taken to generate the artifact. This should be sent as a body parameter on `HIT` events."
            }
          },
          "required": [
            "sessionId",
            "source",
            "hash",
            "event"
          ]
        },
        "description": "Request body"
      }
    },
    "required": [
      "PCID",
      "body"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_status

Get status of Remote Caching for this principal

**Parameters:**

| Parameter | Type   | Required | Default | Description                                              |
| --------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `teamId`  | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`    | string | No       | —       | The Team slug to perform the request on behalf of.       |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      }
    },
    "required": [
      "PCID"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_test\_drain

Validate Drain delivery configuration

**Parameters:**

| Parameter  | Type   | Required | Default | Description                                              |
| ---------- | ------ | -------- | ------- | -------------------------------------------------------- |
| `teamId`   | string | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`     | string | No       | —       | The Team slug to perform the request on behalf of.       |
| `delivery` | object | Yes      | —       | The delivery value                                       |
| `schemas`  | object | Yes      | —       | The schemas value                                        |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "delivery": {
        "type": "object",
        "description": "The delivery value"
      },
      "schemas": {
        "type": "object",
        "description": "The schemas value"
      }
    },
    "required": [
      "PCID",
      "delivery",
      "schemas"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_update\_drain

Update an existing Drain

**Parameters:**

| Parameter    | Type      | Required | Default | Description                                              |
| ------------ | --------- | -------- | ------- | -------------------------------------------------------- |
| `id`         | string    | Yes      | —       | The id value                                             |
| `teamId`     | string    | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`       | string    | No       | —       | The Team slug to perform the request on behalf of.       |
| `delivery`   | object    | No       | —       | The delivery value                                       |
| `filter`     | object    | No       | —       | The filter value                                         |
| `name`       | string    | No       | —       | The name value                                           |
| `projectIds` | string\[] | No       | —       | Project Ids                                              |
| `projects`   | string    | No       | —       | The projects value                                       |
| `sampling`   | object\[] | No       | —       | The sampling value                                       |
| `schemas`    | object    | No       | —       | The schemas value                                        |
| `source`     | object    | No       | —       | The source value                                         |
| `status`     | string    | No       | —       | The status value                                         |
| `transforms` | object\[] | No       | —       | The transforms value                                     |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "id": {
        "type": "string",
        "description": "The id value"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "delivery": {
        "type": "object",
        "description": "The delivery value"
      },
      "filter": {
        "description": "The filter value"
      },
      "name": {
        "type": "string",
        "description": "The name value"
      },
      "projectIds": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "Project Ids"
      },
      "projects": {
        "type": "string",
        "description": "The projects value",
        "enum": [
          "some",
          "all"
        ]
      },
      "sampling": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "type": {
              "type": "string",
              "description": "The type value"
            },
            "rate": {
              "type": "number",
              "description": "Sampling rate from 0 to 1 (e.g., 0.1 for 10%)"
            },
            "env": {
              "type": "string",
              "enum": [
                "production",
                "preview"
              ],
              "description": "Environment to apply sampling to"
            },
            "requestPath": {
              "type": "string",
              "description": "Request path prefix to apply the sampling rule to"
            }
          },
          "required": [
            "type",
            "rate"
          ]
        },
        "description": "The sampling value"
      },
      "schemas": {
        "type": "object",
        "description": "The schemas value"
      },
      "source": {
        "type": "object",
        "description": "The source value"
      },
      "status": {
        "type": "string",
        "description": "The status value",
        "enum": [
          "enabled",
          "disabled"
        ]
      },
      "transforms": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "id": {
              "type": "string",
              "description": "The id value"
            }
          },
          "required": [
            "id"
          ]
        },
        "description": "The transforms value"
      }
    },
    "required": [
      "PCID",
      "id"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_update\_observability\_configuration\_project

Updates a disabled Observability Plus project setting

**Parameters:**

| Parameter         | Type    | Required | Default | Description                                                   |
| ----------------- | ------- | -------- | ------- | ------------------------------------------------------------- |
| `projectIdOrName` | string  | Yes      | —       | The ID or name of the project to update                       |
| `teamId`          | string  | No       | —       | The Team identifier to perform the request on behalf of.      |
| `slug`            | string  | No       | —       | The Team slug to perform the request on behalf of.            |
| `disabled`        | boolean | Yes      | —       | Whether Observability Plus should be disabled for the project |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "projectIdOrName": {
        "type": "string",
        "description": "The ID or name of the project to update"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "disabled": {
        "type": "boolean",
        "description": "Whether Observability Plus should be disabled for the project"
      }
    },
    "required": [
      "PCID",
      "projectIdOrName",
      "disabled"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_update\_static\_ips

Configures Static IPs for a project

**Parameters:**

| Parameter  | Type      | Required | Default | Description                                              |
| ---------- | --------- | -------- | ------- | -------------------------------------------------------- |
| `idOrName` | string    | Yes      | —       | The unique project identifier or the project name        |
| `teamId`   | string    | No       | —       | The Team identifier to perform the request on behalf of. |
| `slug`     | string    | No       | —       | The Team slug to perform the request on behalf of.       |
| `builds`   | boolean   | No       | —       | Whether to use Static IPs for builds.                    |
| `regions`  | string\[] | No       | —       | The regions value                                        |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "idOrName": {
        "type": "string",
        "description": "The unique project identifier or the project name"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "builds": {
        "type": "boolean",
        "description": "Whether to use Static IPs for builds."
      },
      "regions": {
        "type": "array",
        "items": {
          "type": "string"
        },
        "description": "The regions value"
      }
    },
    "required": [
      "PCID",
      "idOrName"
    ]
  }
  ```
</Expandable>

***

## vercel\_infrastructure\_upload\_artifact

Upload a cache artifact

**Parameters:**

| Parameter                       | Type    | Required | Default | Description                                                                                                                                |
| ------------------------------- | ------- | -------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------ |
| `Content-Length`                | number  | Yes      | —       | The artifact size in bytes                                                                                                                 |
| `x-artifact-duration`           | number  | No       | —       | The time taken to generate the uploaded artifact in milliseconds.                                                                          |
| `x-artifact-client-ci`          | string  | No       | —       | The continuous integration or delivery environment where this artifact was generated.                                                      |
| `x-artifact-client-interactive` | integer | No       | —       | 1 if the client is an interactive shell. Otherwise 0                                                                                       |
| `x-artifact-tag`                | string  | No       | —       | The base64 encoded tag for this artifact. The value is sent back to clients when the artifact is downloaded as the header `x-artifact-tag` |
| `x-artifact-sha`                | string  | No       | —       | The SHA of the source control revision that generated this artifact.                                                                       |
| `x-artifact-dirty-hash`         | string  | No       | —       | A hash representing uncommitted changes in the working directory when this artifact was generated.                                         |
| `hash`                          | string  | Yes      | —       | The artifact hash                                                                                                                          |
| `teamId`                        | string  | No       | —       | The Team identifier to perform the request on behalf of.                                                                                   |
| `slug`                          | string  | No       | —       | The Team slug to perform the request on behalf of.                                                                                         |
| `body`                          | string  | Yes      | —       | Request body                                                                                                                               |

<Expandable title="inputSchema">
  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "PCID": {
        "type": "string",
        "description": "Pink Connect ID for the authenticated connection"
      },
      "Content-Length": {
        "type": "number",
        "description": "The artifact size in bytes"
      },
      "x-artifact-duration": {
        "type": "number",
        "description": "The time taken to generate the uploaded artifact in milliseconds."
      },
      "x-artifact-client-ci": {
        "type": "string",
        "description": "The continuous integration or delivery environment where this artifact was generated."
      },
      "x-artifact-client-interactive": {
        "type": "integer",
        "description": "1 if the client is an interactive shell. Otherwise 0"
      },
      "x-artifact-tag": {
        "type": "string",
        "description": "The base64 encoded tag for this artifact. The value is sent back to clients when the artifact is downloaded as the header `x-artifact-tag`"
      },
      "x-artifact-sha": {
        "type": "string",
        "description": "The SHA of the source control revision that generated this artifact."
      },
      "x-artifact-dirty-hash": {
        "type": "string",
        "description": "A hash representing uncommitted changes in the working directory when this artifact was generated."
      },
      "hash": {
        "type": "string",
        "description": "The artifact hash"
      },
      "teamId": {
        "type": "string",
        "description": "The Team identifier to perform the request on behalf of."
      },
      "slug": {
        "type": "string",
        "description": "The Team slug to perform the request on behalf of."
      },
      "body": {
        "type": "string",
        "description": "Request body"
      }
    },
    "required": [
      "PCID",
      "Content-Length",
      "hash",
      "body"
    ]
  }
  ```
</Expandable>
