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

# Get Parameter Defaults

> The saved parameter defaults that apply to you on one service, and the merged result

## Overview

Parameter defaults are values Danube fills into a tool call when the call leaves them out: Vercel's `teamId`, a Sentry organization slug, a DigitalOcean app id. An explicit value in the call always wins. This endpoint returns every defaults row that applies to you on one service, your own rows and your organizations' rows, plus `effective`, the merged service-wide result.

Precedence, least to most specific:

1. Organization, whole service
2. Organization, one tool
3. You, whole service
4. You, one tool

Among organizations, the one your request acts as wins. Tool-scoped rows appear in `rows` but are merged into `effective` only when their tool matches, so `effective` here is the service-wide view. The per-tool merge is the `defaults` field of [Describe Tool](/api-reference/endpoint/describe_tool).

Reads are best-effort: when the lookup fails, `rows` is `[]` and `effective` is `{}`.

**Auth:** Required. API key (`danube-api-key` header) or JWT.

## Path Parameters

<ParamField path="service_id" type="string" required>
  The service UUID or slug. Unknown services return `404`.
</ParamField>

## Response

<ResponseField name="service_id" type="string">
  The service UUID, resolved from a slug when one was given
</ResponseField>

<ResponseField name="rows" type="array">
  Every applicable row. Each has `id`, `user_id` (set for your own rows), `org_id` (set for organization rows), `service_id`, `tool_id` (`null` for a service-wide row), `defaults` and `updated_at`.
</ResponseField>

<ResponseField name="effective" type="object">
  The service-wide rows merged in precedence order, as parameter name to value
</ResponseField>

## Example

The Python and TypeScript SDKs do not wrap this endpoint yet, and there is no MCP tool for reading defaults. `describe_tool` on MCP shows the effective defaults for one tool.

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.danubeai.com/v1/services/svc_vercel_001/parameter-defaults" \
    -H "danube-api-key: YOUR_API_KEY"
  ```
</RequestExample>

<ResponseExample>
  ```json theme={null}
  {
    "service_id": "svc_vercel_001",
    "rows": [
      {
        "id": "pd_org_001",
        "user_id": null,
        "org_id": "org_acme_001",
        "service_id": "svc_vercel_001",
        "tool_id": null,
        "defaults": {"teamId": "team_acme"},
        "updated_at": "2026-09-05T16:40:12.000000Z"
      },
      {
        "id": "pd_user_001",
        "user_id": "user_456",
        "org_id": null,
        "service_id": "svc_vercel_001",
        "tool_id": "tool_abc123",
        "defaults": {"limit": 50},
        "updated_at": "2026-09-11T09:12:03.000000Z"
      }
    ],
    "effective": {"teamId": "team_acme"}
  }
  ```
</ResponseExample>
