> For the complete documentation index, see [llms.txt](https://brixxbox.gitbook.io/brixxbox-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://brixxbox.gitbook.io/brixxbox-documentation/client-api-reference/functions/querystoredprocedure.md).

# queryStoredProcedure

Executes a stored procedure and returns the query result.

### Parameters

1. procedureName - The name of the stored procedure
2. procedure parameters - If you need to add parameters, you can use this json object to set them
3. queryOptions - (optional) a json object with options for the request
   * timeout - (optional) timeout for the request. Default is 30 seconds
   * connectionKey - (optional) a key to a custom settings entry with the connection string to an external MSSQL database

### Example Usages

1\. Simple (pay attention to the **await** keyword)

```javascript
   let myResult = await brixxApi.queryStoredProcedure("procedureName");
```

2\. With parameters (pay attention to the **await** keyword)

```javascript
   let parameterJson = {
      myCustomSqlParameter: 12345
   };
   let myResult = await brixxApi.queryStoredProcedure("procedureName", parameterJson);
```

3\. Short version (pay attention to the **await** keyword)

```javascript
   let myResult = await brixxApi.queryStoredProcedure("procedureName", {
      myCustomSqlParameter: 12345
   });
```

4\. Using a timeout

```javascript
   let myResult = await brixxApi.queryStoredProcedure("procedureName", {
      myCustomSqlParameter: 12345
   },{
      timeout: 45
   });
```
