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

# Asset Governance

> Asset Governance endpoints: Create Asset Governance, Get Asset Governance By Asset, Get Asset Governance By Asset Raw, Get Asset Governance By Source, Get Asset Governance, Get Asset Governance Records, Update Asset Governance, Delete Asset Governance

<script type="application/ld+json">
  {`{
            "@context": "https://schema.org",
            "@type": "TechArticle",
            "headline": "Asset Governance",
            "description": "Asset Governance endpoints: Create Asset Governance, Get Asset Governance By Asset, Get Asset Governance By Asset Raw, Get Asset Governance By Source, Get Asset Governance, Get Asset Governance Records, Update Asset Governance, Delete Asset Governance",
            "url": "https://docs.dqlabs.ai/api-reference/governance/asset-governance",
            "publisher": {
              "@type": "Organization",
              "name": "DQLabs Inc",
              "logo": "https://media.brand.dev/332adc35-5bc4-4d2b-bf78-256aa4a5e414.svg"
            }
            }`}
</script>

<Tabs>
  <Tab title="Create Asset Governance">
    `POST /api/v1/governance`

    Create a new asset governance record

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object">The endpoint's response payload.</ResponseField>

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X POST "https://<your-workspace>.prizmdata.ai/api/v1/governance" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>" \
        -H "Content-Type: application/json" \
        -d '{}'
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Create a new asset governance record",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {}
    }
    ```
  </Tab>

  <Tab title="Get Asset Governance By Asset">
    `GET /api/v1/governance/asset/{assetId}`

    Get consolidated governance data for a specific asset (including children if it's a parent)

    **Path Parameters**

    <ParamField path="assetId" type="string" required={true}>
      Example: `3fa85f64-5717-4562-b3fc-2c963f66afa6`
    </ParamField>

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object">
      <ResponseField name="tag" type="object[]" />

      <ResponseField name="domain" type="object[]" />

      <ResponseField name="product" type="object[]" />

      <ResponseField name="application" type="object[]" />

      <ResponseField name="term" type="object[]" />

      <ResponseField name="owner" type="object[]" />

      <ResponseField name="asset_info" type="object">
        <ResponseField name="asset_id" type="string">
          Example: `"004fbf50-60b1-58d0-91fe-e49bd2738dd5"`.
        </ResponseField>

        <ResponseField name="asset_name" type="string">
          Example: `"COMPUTED_TXN_COUNT"`.
        </ResponseField>

        <ResponseField name="asset_type" type="string">
          Example: `"ATTRIBUTE"`.
        </ResponseField>

        <ResponseField name="source_id" type="string">
          Example: `"27b7f521-5991-49cd-8ca6-1adbff51038f"`.
        </ResponseField>

        <ResponseField name="source_name" type="string">
          Example: `"PowerBI_Sanity_Check"`.
        </ResponseField>
      </ResponseField>

      <ResponseField name="total_records" type="integer">
        Example: `1`.
      </ResponseField>
    </ResponseField>

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X GET "https://<your-workspace>.prizmdata.ai/api/v1/governance/asset/{assetId}" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>"
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Get consolidated governance data for a specific asset (including children if it's a parent)",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {
        "tag": [],
        "domain": [],
        "product": [],
        "application": [],
        "term": [],
        "owner": [],
        "asset_info": {
          "asset_id": "004fbf50-60b1-58d0-91fe-e49bd2738dd5",
          "asset_name": "COMPUTED_TXN_COUNT",
          "asset_type": "ATTRIBUTE",
          "source_id": "27b7f521-5991-49cd-8ca6-1adbff51038f",
          "source_name": "PowerBI_Sanity_Check"
        },
        "total_records": 1
      }
    }
    ```
  </Tab>

  <Tab title="Get Asset Governance By Asset Raw">
    `GET /api/v1/governance/asset/{assetId}/raw`

    Get raw governance records array for a specific asset (including children if it's a parent)

    **Path Parameters**

    <ParamField path="assetId" type="string" required={true}>
      Example: `3fa85f64-5717-4562-b3fc-2c963f66afa6`
    </ParamField>

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object">
      <ResponseField name="source_id" type="string">
        Example: `"27b7f521-5991-49cd-8ca6-1adbff51038f"`.
      </ResponseField>

      <ResponseField name="asset_id" type="string">
        Example: `"004fbf50-60b1-58d0-91fe-e49bd2738dd5"`.
      </ResponseField>

      <ResponseField name="asset_type" type="string">
        Example: `"ATTRIBUTE"`.
      </ResponseField>

      <ResponseField name="asset_name" type="string">
        Example: `"COMPUTED_TXN_COUNT"`.
      </ResponseField>

      <ResponseField name="source_name" type="string">
        Example: `"PowerBI_Sanity_Check"`.
      </ResponseField>

      <ResponseField name="domain" type="string" />

      <ResponseField name="application" type="string" />

      <ResponseField name="product" type="string" />

      <ResponseField name="tag" type="string" />

      <ResponseField name="term" type="object[]">
        <ResponseField name="id" type="string">
          Example: `"118cf65e-031a-4fbf-a327-b42ce4e3f868"`.
        </ResponseField>

        <ResponseField name="name" type="string">
          Example: `"Prod validation test"`.
        </ResponseField>

        <ResponseField name="type" type="string">
          Example: `"LINKED"`.
        </ResponseField>

        <ResponseField name="label" type="string">
          Example: `"Prod validation test"`.
        </ResponseField>
      </ResponseField>

      <ResponseField name="owner" type="string" />

      <ResponseField name="id" type="string">
        Example: `"6197cbc9-6c90-4ea0-9546-7046d3932db4"`.
      </ResponseField>

      <ResponseField name="created_at" type="string">
        Example: `"2026-09-19T15:12:19.393374Z"`.
      </ResponseField>

      <ResponseField name="modified_at" type="string">
        Example: `"2026-09-20T15:40:11.397744Z"`.
      </ResponseField>

      <ResponseField name="created_by" type="string" />

      <ResponseField name="modified_by" type="string">
        Example: `"e67fcce2-34f6-48e5-b53c-5c8c4a209d2b"`.
      </ResponseField>
    </ResponseField>

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X GET "https://<your-workspace>.prizmdata.ai/api/v1/governance/asset/{assetId}/raw" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>"
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Get raw governance records array for a specific asset (including children if it's a parent)",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {}
    }
    ```
  </Tab>

  <Tab title="Get Asset Governance By Source">
    `GET /api/v1/governance/source/{sourceId}`

    Get all governance records for a specific source

    **Path Parameters**

    <ParamField path="sourceId" type="string" required={true}>
      Example: `3fa85f64-5717-4562-b3fc-2c963f66afa6`
    </ParamField>

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object" />

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X GET "https://<your-workspace>.prizmdata.ai/api/v1/governance/source/{sourceId}" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>"
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Get all governance records for a specific source",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {}
    }
    ```
  </Tab>

  <Tab title="Get Asset Governance">
    `GET /api/v1/governance/{assetGovernanceId}`

    Get an asset governance record by ID

    **Path Parameters**

    <ParamField path="assetGovernanceId" type="string" required={true}>
      Example: \`\`
    </ParamField>

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object">
      <ResponseField name="source_id" type="string" />

      <ResponseField name="asset_id" type="string">
        Example: `"08c42344-f0bc-49a4-8e1e-906dd2c2af10"`.
      </ResponseField>

      <ResponseField name="asset_type" type="string" />

      <ResponseField name="asset_name" type="string" />

      <ResponseField name="source_name" type="string" />

      <ResponseField name="domain" type="object[]">
        <ResponseField name="id" type="string">
          Example: `"9fe1971d-50fd-49c1-99c8-fda6ab5bf889"`.
        </ResponseField>

        <ResponseField name="label" type="string">
          Example: `"Domain_1"`.
        </ResponseField>
      </ResponseField>

      <ResponseField name="application" type="string" />

      <ResponseField name="product" type="string" />

      <ResponseField name="tag" type="string" />

      <ResponseField name="term" type="string" />

      <ResponseField name="owner" type="string" />

      <ResponseField name="id" type="string">
        Example: `"c066a2c8-d558-421d-a1c5-a6df58987d7b"`.
      </ResponseField>

      <ResponseField name="created_at" type="string">
        Example: `"2026-08-19T13:31:47.957255Z"`.
      </ResponseField>

      <ResponseField name="modified_at" type="string">
        Example: `"2026-08-19T13:31:47.957256Z"`.
      </ResponseField>

      <ResponseField name="created_by" type="string">
        Example: `"85b88faf-5037-4de7-8a6e-ab61baed84a5"`.
      </ResponseField>

      <ResponseField name="modified_by" type="string">
        Example: `"85b88faf-5037-4de7-8a6e-ab61baed84a5"`.
      </ResponseField>
    </ResponseField>

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X GET "https://<your-workspace>.prizmdata.ai/api/v1/governance/{assetGovernanceId}" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>"
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Get an asset governance record by ID",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {
        "source_id": null,
        "asset_id": "08c42344-f0bc-49a4-8e1e-906dd2c2af10",
        "asset_type": null,
        "asset_name": null,
        "source_name": null,
        "domain": [
          {
            "id": "9fe1971d-50fd-49c1-99c8-fda6ab5bf889",
            "label": "Domain_1"
          }
        ],
        "application": null,
        "product": null,
        "tag": null,
        "term": null,
        "owner": null,
        "id": "c066a2c8-d558-421d-a1c5-a6df58987d7b",
        "created_at": "2026-08-19T13:31:47.957255Z",
        "modified_at": "2026-08-19T13:31:47.957256Z",
        "created_by": "85b88faf-5037-4de7-8a6e-ab61baed84a5",
        "modified_by": "85b88faf-5037-4de7-8a6e-ab61baed84a5"
      }
    }
    ```
  </Tab>

  <Tab title="Get Asset Governance Records">
    `POST /api/v1/governance/list`

    Get asset governance records with optional filtering

    **Request Body**

    <ParamField body="pagination" type="object">
      <ParamField body="page" type="integer">
        Example: `1`.
      </ParamField>

      <ParamField body="pageSize" type="integer">
        Example: `10`.
      </ParamField>
    </ParamField>

    <ParamField body="sorting" type="object[]" />

    <ParamField body="filters" type="object[]" />

    <ParamField body="search" type="string">
      Example: `""`.
    </ParamField>

    <ParamField body="export" type="boolean">
      Example: `false`.
    </ParamField>

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object">
      <ResponseField name="source_id" type="string" />

      <ResponseField name="asset_id" type="string" />

      <ResponseField name="asset_type" type="string" />

      <ResponseField name="asset_name" type="string" />

      <ResponseField name="source_name" type="string" />

      <ResponseField name="domain" type="string" />

      <ResponseField name="application" type="string" />

      <ResponseField name="product" type="string" />

      <ResponseField name="tag" type="string" />

      <ResponseField name="term" type="string" />

      <ResponseField name="owner" type="object[]">
        <ResponseField name="id" type="string">
          Example: `"329d2e0c-458c-43f6-9852-f0464551d528"`.
        </ResponseField>

        <ResponseField name="name" type="string">
          Example: `"version release"`.
        </ResponseField>

        <ResponseField name="email" type="string">
          Example: `"release_version@gmail.com"`.
        </ResponseField>

        <ResponseField name="label" type="string">
          Example: `"version release"`.
        </ResponseField>

        <ResponseField name="owner_type" type="string">
          Example: `"Business"`.
        </ResponseField>
      </ResponseField>

      <ResponseField name="id" type="string">
        Example: `"57031eaf-19c6-4afc-99ae-163ebd8684c8"`.
      </ResponseField>

      <ResponseField name="created_at" type="string">
        Example: `"2026-09-20T16:58:28.877559Z"`.
      </ResponseField>

      <ResponseField name="modified_at" type="string">
        Example: `"2026-09-20T18:40:37.501855Z"`.
      </ResponseField>

      <ResponseField name="created_by" type="string">
        Example: `"e67fcce2-34f6-48e5-b53c-5c8c4a209d2b"`.
      </ResponseField>

      <ResponseField name="modified_by" type="string">
        Example: `"e67fcce2-34f6-48e5-b53c-5c8c4a209d2b"`.
      </ResponseField>
    </ResponseField>

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X POST "https://<your-workspace>.prizmdata.ai/api/v1/governance/list" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>" \
        -H "Content-Type: application/json" \
        -d '{
        "pagination": {
          "page": 1,
          "pageSize": 10
        },
        "sorting": [],
        "filters": [],
        "search": "",
        "export": false
      }'
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Get asset governance records with optional filtering",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {}
    }
    ```
  </Tab>

  <Tab title="Update Asset Governance">
    `PUT /api/v1/governance/{assetGovernanceId}`

    Update an asset governance record

    **Path Parameters**

    <ParamField path="assetGovernanceId" type="string" required={true}>
      Example: \`\`
    </ParamField>

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object">The endpoint's response payload.</ResponseField>

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X PUT "https://<your-workspace>.prizmdata.ai/api/v1/governance/{assetGovernanceId}" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>" \
        -H "Content-Type: application/json" \
        -d '{}'
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Update an asset governance record",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {}
    }
    ```
  </Tab>

  <Tab title="Delete Asset Governance">
    `DELETE /api/v1/governance/{assetGovernanceId}`

    Delete an asset governance record

    **Path Parameters**

    <ParamField path="assetGovernanceId" type="string" required={true}>
      Example: \`\`
    </ParamField>

    **Response**

    <ResponseField name="success" type="boolean">Whether the request completed successfully</ResponseField>

    <ResponseField name="message" type="string">Human-readable result message</ResponseField>

    <ResponseField name="timestamp" type="string">ISO 8601 server timestamp</ResponseField>

    <ResponseField name="correlation_id" type="string">Unique ID for this request</ResponseField>

    <ResponseField name="data" type="object">The endpoint's response payload.</ResponseField>

    **Example**

    <CodeGroup>
      ```bash cURL theme={null}
      curl -X DELETE "https://<your-workspace>.prizmdata.ai/api/v1/governance/{assetGovernanceId}" \
        -H "Authorization: Bearer <YOUR_API_TOKEN>"
      ```
    </CodeGroup>

    ```json Response theme={null}
    {
      "success": true,
      "message": "Delete an asset governance record",
      "timestamp": "2026-09-21T09:43:50.316067+00:00",
      "correlation_id": "1bff0823-3db2-4b12-bf56-22ea8d38bba2",
      "data": {}
    }
    ```
  </Tab>
</Tabs>
