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

# Update account reporting bucket

> Set or clear offline delivery on a linked partner account

`PUT /api/v2/buyer/advertisers/{advertiserId}/accounts/{linkId}/reporting-bucket`

Sets or clears the offline `reporting_bucket` configuration on a linked partner account, then notifies the seller via `sync_accounts`. The bucket is where sales agents write offline delivery reports.

## Request

<CodeGroup>
  ```bash curl theme={null}
  curl -X PUT https://api.interchange.io/api/v2/buyer/advertisers/12345/accounts/42/reporting-bucket \
    -H "Authorization: Bearer $SCOPE3_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "reporting_bucket": {
        "protocol": "gcs",
        "bucket": "acme-adcp-reports",
        "prefix": "reports/",
        "region": "us-east-1",
        "format": "jsonl",
        "compression": "gzip",
        "file_retention_days": 30
      }
    }'
  ```

  ```json Clear the bucket theme={null}
  {
    "reporting_bucket": null
  }
  ```
</CodeGroup>

## Parameters

| Field                                  | Type           | Required | Notes                                                                                |
| -------------------------------------- | -------------- | -------- | ------------------------------------------------------------------------------------ |
| `advertiserId`                         | string (path)  | Yes      | Unique identifier for the advertiser                                                 |
| `linkId`                               | string (path)  | Yes      | Numeric ID of the advertiser-account link row                                        |
| `reporting_bucket`                     | object \| null | Yes      | Bucket config, or `null` to clear                                                    |
| `reporting_bucket.protocol`            | enum           | Yes\*    | `s3`, `gcs`, or `azure_blob`                                                         |
| `reporting_bucket.bucket`              | string         | Yes\*    | Bucket name (3–63 chars; lowercase alphanumerics, dots, hyphens)                     |
| `reporting_bucket.file_retention_days` | integer        | Yes\*    | Days the buyer retains report files (min 1)                                          |
| `reporting_bucket.prefix`              | string         | No       | Object key prefix within the bucket                                                  |
| `reporting_bucket.region`              | string         | No       | Storage region (e.g. `us-east-1`)                                                    |
| `reporting_bucket.format`              | enum           | No       | `jsonl` (default), `csv`, `parquet`, `avro`, or `orc`                                |
| `reporting_bucket.compression`         | enum           | No       | `gzip` (default) or `none`                                                           |
| `reporting_bucket.setup_instructions`  | string (URL)   | No       | HTTPS URL pointing to setup instructions for granting the agent access to the bucket |

\* Required only when `reporting_bucket` is an object.

## Response

```json theme={null}
{
  "linkId": "42",
  "accountId": "acc_example_pinnacle",
  "name": "Example Corp c/o Pinnacle",
  "advertiser": "Example Corp",
  "billingProxy": null,
  "house": null,
  "billing": "advertiser",
  "sources": [{ "storefrontId": 42, "storefrontName": "Example Publisher", "sourceId": "src_main", "sourceName": "Main Feed" }],
  "advertiserId": "12345",
  "status": "active",
  "createdAt": "2025-01-15T10:30:00Z",
  "updatedAt": "2025-01-20T14:45:00Z"
}
```

Returns the updated linked account. The seller is notified of the bucket change automatically.

## Errors

* `400 VALIDATION_ERROR` — malformed `bucket` name, unsupported `protocol`, or missing `file_retention_days`.
* `404 NOT_FOUND` — `advertiserId` or `linkId` does not exist or is not visible.

See [Errors](/v2/reference/errors) for the full error contract.

## Related

<CardGroup cols={2}>
  <Card title="Advertiser tasks" href="/v2/buyer/advertisers/tasks" icon="list-check">
    All advertiser operations
  </Card>

  <Card title="Advertiser overview" href="/v2/object-guides/advertiser#linked-accounts" icon="user-tie">
    Linked accounts model
  </Card>

  <Card title="List available accounts" href="/v2/buyer/advertisers/tasks/list-available-accounts" icon="link">
    Find the account to configure
  </Card>

  <Card title="Revalidate delivery credential" href="/v2/buyer/advertisers/tasks/revalidate-data-delivery-credential" icon="rotate">
    Re-probe delivery access
  </Card>
</CardGroup>
