---
title: "Get project DSD binding context"
method: GET
path: "/indicator_dsd/binding/{sid}"
tags: ["Indicator DSD"]
---

# Get project DSD binding context

`GET /indicator_dsd/binding/{sid}`

Binding state, metadata `data_structure_reference`, global structure header, import readiness (`import_ready`, `import_blocked_reasons`), and structure validation summary. Use before data upload to confirm `indicator_id_value` and `implied_freq_code` are set.

## Path parameters

- `sid` string, required

## Response `200`

Binding context

- IndicatorDsdBindingResponse
  - `status` 'success', required
  - `bound` boolean, required
  - `read_only` boolean — True when a global DSD is bound (structure is registry-managed)
  - `binding` object, nullable — Project DSD binding row from editor_project_dsd
  - `data_structure_reference` DataStructureReference — Canonical link to a global catalogue DSD stored on project/study metadata. Matches `data_structure_reference` in `timeseries-schema.json`.
    - `idno` string, required — Stable catalogue DSD idno
    - `agency` string, required
    - `name` string, required — SDMX maintainable id
    - `version` string, required
    - `uri` string, uri — Optional URL for documentation or discovery; not used for import
    - `notes` string — Optional free-text notes about this DSD link
  - `global_structure` object, nullable — Global data structure header when bound
  - `column_count` integer
  - `indicator_id_value` string, nullable
  - `series_idno` string, nullable
  - `default_indicator_id_value` string, nullable
  - `indicator_id_column` string, nullable — DSD column name with column_type indicator_id
  - `has_periodicity_column` boolean
  - `needs_implied_freq_code` boolean
  - `implied_freq_code` string, nullable
  - `has_published_data` boolean
  - `published_row_count` integer, nullable
  - `data_imported_at` integer, nullable — Unix timestamp when data was last imported
  - `import_ready` boolean, required
  - `import_blocked_reasons` string[]
  - `structure_validation` IndicatorDsdStructureValidationBlock
    - `valid` boolean
    - `errors` string[]
    - `warnings` string[]
    - `summary` object
    - `roles` object — Role checklist (required/recommended column counts by column_type)
  - `freq_codes` object[]
    - `code` string
    - `label` string

## Other responses

- `400` — Bad request

---

[API](https://skmtc.net/worldbank/apis/metadata-editor-api.md) · [All operations](https://skmtc.net/worldbank/apis/metadata-editor-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/worldbank/metadata-editor-api/versions/f4c8258bab5a/schema)
