### Apache Airflow version

Other Airflow 2 version (please specify below)

### What happened

Airflow 2.3.4 (but actual code seems to have same behaviour).

I have mapped task with xcom value.

I want to get xcom value of particular instance or xcom values of all task instances.

I am using standard REST API method /dags/{dag_id}/dagRuns/{dag_run_id}/taskInstances/{task_id}/xcomEntries/{xcom_key}

And it throws an error
`
  File &#34;/home/airflow/.local/lib/python3.9/site-packages/sqlalchemy/orm/query.py&#34;, line 2850, in one_or_none
    return self._iter().one_or_none()
  File &#34;/home/airflow/.local/lib/python3.9/site-packages/sqlalchemy/engine/result.py&#34;, line 1510, in one_or_none
    return self._only_one_row(
  File &#34;/home/airflow/.local/lib/python3.9/site-packages/sqlalchemy/engine/result.py&#34;, line 614, in _only_one_row
    raise exc.MultipleResultsFound(
sqlalchemy.exc.MultipleResultsFound: Multiple rows were found when one or none was required
`

Is it any way of getting xcom of mapped tasks via API?

### What you think should happen instead

_No response_

### How to reproduce

Make dag with mapped task. Return xcom value in every task. Try to get xcom value via API.

### Operating System

ubuntu 20.04

### Versions of Apache Airflow Providers

_No response_

### Deployment

Other

### Deployment details

Standard

### Anything else

_No response_

### Are you willing to submit PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

id="false",
            ),
            pytest.param(
                True,
                "",
                "orm deserialized TEST_VALUE",
                id="default-irrelevant",
            ),
            pytest.param(
                False,
                "",
                "orm deserialized TEST_VALUE",
                id="default",
            ),
        ],
    )
    @conf_vars({("core", "xcom_backend"): "tests.api_connexion.endpoints.test_xcom_endpoint.CustomXCom"})
    def test_custom_xcom_deserialize(self, allowed: bool, query: str, expected_status_or_value: int | str):
        XCom = resolve_xcom_backend()
        self._create_xcom_entry("dag", "run", utcnow(), "task", "key", backend=XCom)
        url = f"/api/v1/dags/dag/dagRuns/run/taskInstances/task/xcomEntries/key{query}"
        with mock.patch("airflow.api_connexion.endpoints.xcom_endpoint.XCom", XCom):
            with conf_vars({("api", "enable_xcom_deserialize_support"): str(allowed)}):
                response = self.client.get(url, environ_overrides={"REMOTE_USER": "test"})
        if isinstance(expected_status_or_value, int):
            assert response.status_code == expected_status_or_value
        else:
            assert response.status_code == 200
            assert response.json["value"] == expected_status_or_value
class TestGetXComEntries(TestXComEndpoint):