# Fetching Table

To fetch a table in zeus is easy, setup with:

<pre class="language-javascript"><code class="lang-javascript">const deployer = requireBox('seed-eos/tools/eos/deployer');
<strong>
</strong><strong>describe(`${contractCode} Contract`, () => {
</strong>    const code = 'oracle';
    let tableHelper;
    before(done => {
        (async () => {
            try {
                tableHelper = await deployer.deploy(ctrt, code);
                
...

const res = await tableHelper.eos.getTableRows({
    code: code,
    scope: code,
    table: 'table',
    json: true
});
console.log(res.rows[0])
</code></pre>

## Secondary index example

This is an example of using the [`getTableRowsSec`](https://github.com/liquidapps-io/zeus-sdk/blob/master/boxes/groups/dapp-network/dapp-services/services/dapp-services-node/common.js#L279) function to return a secondary index. This function takes the following arguments:

* rpc — rpc for leap instance
* code —The account who owns the table
* table — The name of the table as specified by the contract abi
* scope — The scope within the contract in which the table is found
* keys —Keys to satisfy secondary index query
* limit = 1 — limit of amount of rows to return
* key\_type — secondary index type, `i64, i128, i256, float64, float128, ripemd160, sha256`
* index\_position — Index number, 1 — primary (first), 2 — secondary index (in order defined by multi\_index), 3 — third index, etc

```javascript
const { getTableRowsSec } = requireBox('dapp-services/services/dapp-services-node/common');
...
let table = await getTableRowsSec(eos.rpc, dappServicesContract, "accountext", "DAPP", [null, testContractAccount, "ipfsservice1", "pprovider1"], 1, 'sha256', 2);
let first = Number(table[0].quota.replace(" QUOTA", ""));
```

More details available in this article: <https://medium.com/@NatPDeveloper/intro-to-antelope-smart-contract-unit-testing-with-zeus-50a6c1d7efce>.
