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

# Update Data Entry

> Update the metadata of a data catalogue entry

Updates the metadata of an existing data catalogue entry. All body fields are optional, so you can update only the fields you need.

<ParamField path="data_id" type="string" required>
  The UUID of the data entry
</ParamField>

<ParamField body="char_source_type" type="string">
  Characterization source type. One of: `rheed_video`, `xps`, `sem`, `metrology`, `optical`, `raman`, `photoluminescence`, `ellipsometry`, `sims`, `oes`, `xrd`, `afm`
</ParamField>

<ParamField body="pipeline_status" type="string">
  Processing pipeline status. One of: `success`, `pending`, `error`, `running`
</ParamField>

<ParamField body="raw_name" type="string">
  Original filename of the uploaded data
</ParamField>

## Response

Returns the full data catalogue object. Key fields are shown below (the full response includes additional metadata fields).

<ResponseField name="data_id" type="string">
  Data entry UUID
</ResponseField>

<ResponseField name="raw_name" type="string">
  Original filename of the uploaded data
</ResponseField>

<ResponseField name="char_source_type" type="string">
  Characterization source type (e.g., `rheed_video`, `xps`, `sem`)
</ResponseField>

<ResponseField name="pipeline_status" type="string">
  Processing pipeline status
</ResponseField>

<ResponseField name="physical_sample_id" type="string">
  Associated physical sample UUID
</ResponseField>

<ResponseField name="upload_datetime" type="string">
  ISO 8601 timestamp of upload
</ResponseField>

<ResponseField name="last_updated" type="string">
  ISO 8601 timestamp of the last update
</ResponseField>

<ResponseField name="raw_size_gb" type="number">
  Size of the raw file in gigabytes
</ResponseField>

<ResponseField name="user_id" type="string">
  ID of the user who owns the entry
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X PATCH "https://api.atomscale.ai/data_entries/d290f1ee-6c54-4b01-90e6-d701748f0851" \
    -H "X-API-KEY: YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "char_source_type": "rheed_video",
      "pipeline_status": "success",
      "raw_name": "rheed_video_2024_01_15.mp4"
    }'
  ```

  ```python Python theme={null}
  import requests

  response = requests.patch(
      "https://api.atomscale.ai/data_entries/d290f1ee-6c54-4b01-90e6-d701748f0851",
      headers={
          "X-API-KEY": "YOUR_API_KEY",
          "Content-Type": "application/json"
      },
      json={
          "char_source_type": "rheed_video",
          "pipeline_status": "success",
          "raw_name": "rheed_video_2024_01_15.mp4"
      }
  )
  entry = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "data_id": "d290f1ee-6c54-4b01-90e6-d701748f0851",
    "raw_name": "rheed_video_2024_01_15.mp4",
    "char_source_type": "rheed_video",
    "pipeline_status": "success",
    "physical_sample_id": "a1b2c3d4-5678-90ab-cdef-1234567890ab",
    "upload_datetime": "2024-01-15T10:30:00Z",
    "last_updated": "2024-01-15T14:00:00Z",
    "raw_size_gb": 1.2,
    "user_id": "user_abc123",
    "version": "0.269.1"
  }
  ```
</ResponseExample>
