# Retrieve specific fields of contracts via API

**URL:** <https://forum.canton.network/t/retrieve-specific-fields-of-contracts-via-api/3096>\
**Category:** App Development\
**Tags:** daml, json-api, ledger-api\
**Created:** [September 10, 2021, 4:33am UTC](https://forum.canton.network/t/retrieve-specific-fields-of-contracts-via-api/3096 "2021-09-10T04:33:23Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![meet](https://yyz2.discourse-cdn.com/flex034/user_avatar/forum.canton.network/meet/32/198_2.png) [@meet](https://forum.canton.network/u/meet)\
**Post date:** [September 10, 2021, 4:33am UTC](https://forum.canton.network/t/retrieve-specific-fields-of-contracts-via-api/3096/1 "2021-09-10T04:33:23Z")

</div>

1. For large bulky contracts with lots of fields, is there a way to retrieve only certain specific fields of those contracts instead of the full contracts, via the json api, the websocket streaming api or the gRPC api? Are contracts only always returned in their entirety?

2. If a choice returns an Int or a data record instead of a contract, can the submitter of the choice exercise access this return value in any way?

---

<div class="post-metadata">

**Author:** ![cocreature](https://yyz2.discourse-cdn.com/flex034/user_avatar/forum.canton.network/cocreature/32/36_2.png) [@cocreature](https://forum.canton.network/u/cocreature)\
**Post date:** [September 10, 2021, 5:22am UTC](https://forum.canton.network/t/retrieve-specific-fields-of-contracts-via-api/3096/2 "2021-09-10T05:22:29Z")

</div>

For 1, unfortunately there is no way to retrieve only parts of a contract. You always get the full contract.

For 2, the response on submitting an exercise includes an `exerciseResult` field. That matches whatever the choice returned in Daml. See [HTTP JSON API Service — Daml SDK 1.16.0 documentation](https://docs.daml.com/json-api/index.html#exercise-response) for the docs.
