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

# Get active superannuation funds

> Retrieves a comprehensive list of all superannuation funds currently registered and active in the Superannuation clearing house network. These funds are verified and capable of receiving electronic contributions.

> [!TIP]
>
> **Why it's useful:** Use it to populate a searchable drop-down of superannuation funds in your own product.

### Use Cases

* **Initial Setup**: Populate your system's fund dropdown/selection list
* **Periodic Refresh**: Update your local fund cache (recommended: daily)
* **Validation**: Verify a USI before attempting contribution submission
* **Member Onboarding**: Present fund options to new employees

### Response Details

The response includes each fund's:

* **USI (Unique Superannuation Identifier)**: The 14-character identifier required for contributions
* **Fund Name**: The display name for user interface purposes
* **Product Name**: The specific product name within the fund
* **Organisation Name**: The name of the superannuation organisation
* **Australian Business Number (ABN)**: The fund's ABN
* **Account Details**: Bank account information (account name, BSB, account number)
* **Contact Details**: Contact information including name, phone number, and email

### Performance

* Response is cached for 15 minutes on the server
* Average response time: \< 200ms
* Typical list size: 200-300 active funds

### Rate Limiting

This endpoint has a higher rate limit (300 requests/minute) as it's commonly used for autocomplete features.

### Responses

| Code | Description |
| - | - |
| `200` | Successfully retrieved the list of active superannuation funds. The response contains an array of fund objects, each with a USI and display name. |
| `400` | Bad request - The request could not be processed. This may occur if the request format is invalid or required headers are malformed. |
| `401` | Unauthorized - Authentication failed. Check that your X-Username and X-Password headers are correct and that your account is active. |
| `500` | Internal server error - An unexpected error occurred. If this persists, contact Superannuation clearing house support with your transaction ID. |

### Response fields

**funds** `array`

Array of active superannuation funds that can receive contributions. This list is updated regularly as funds join or leave the Superannuation clearing house network.

> [accordion] Error response fields
>
> **success** `boolean`
>
> Always false for error responses, indicating the operation did not succeed.
>
> **statusCode** `integer`
>
> HTTP status code indicating the type of error. Common values: 400 (Bad Request), 401 (Unauthorized), 404 (Not Found), 500 (Server Error)
>
> **message** `string`
>
> Human-readable error message explaining what went wrong. May include specific details about which field or value caused the error.
>
> **errorCode** `integer`
>
> Superannuation clearing house-specific error code for programmatic error handling. Refer to the error code reference documentation for a complete list of codes. Common codes: 4030 (Employer not found), 4031 (Invalid ABN), 4040 (Fund not found).

```bash cURL theme={null}
curl 'https://qa-super.mygigsters.com.au/v1/contributions/funds/active' \
    -u "apiUsername:apiPassword"
```

```javascript Node.js theme={null}
const response = await fetch("https://qa-super.mygigsters.com.au/v1/contributions/funds/active", {
  method: "GET",
  headers: {
    Authorization: "Basic " + Buffer.from("apiUsername:apiPassword").toString("base64"),
  },
});

const data = await response.json();
console.log(data);
```

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

response = requests.get(
    "https://qa-super.mygigsters.com.au/v1/contributions/funds/active",
    auth=("apiUsername", "apiPassword"),
)

print(response.json())
```

```ruby Ruby theme={null}
require "net/http"
require "json"
require "uri"

uri = URI("https://qa-super.mygigsters.com.au/v1/contributions/funds/active")
request = Net::HTTP::Get.new(uri)
request.basic_auth("apiUsername", "apiPassword")

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end

puts JSON.parse(response.body)
```

```php PHP theme={null}
<?php

$ch = curl_init("https://qa-super.mygigsters.com.au/v1/contributions/funds/active");

curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_USERPWD => "apiUsername:apiPassword",
]);

$response = curl_exec($ch);
curl_close($ch);

print_r(json_decode($response, true));
```

```java Java theme={null}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.Base64;

public class Example {
    public static void main(String[] args) throws Exception {
        String credentials = Base64.getEncoder()
            .encodeToString("apiUsername:apiPassword".getBytes());

        HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create("https://qa-super.mygigsters.com.au/v1/contributions/funds/active"))
            .header("Authorization", "Basic " + credentials)
            .method("GET", HttpRequest.BodyPublishers.noBody())
            .build();

        HttpResponse<String> response = HttpClient.newHttpClient()
            .send(request, HttpResponse.BodyHandlers.ofString());

        System.out.println(response.body());
    }
}
```

```go Go theme={null}
package main

import (
	"fmt"
	"io"
	"net/http"
)

func main() {
	req, err := http.NewRequest("GET", "https://qa-super.mygigsters.com.au/v1/contributions/funds/active", nil)
	if err != nil {
		panic(err)
	}
	req.SetBasicAuth("apiUsername", "apiPassword")

	res, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer res.Body.Close()

	data, _ := io.ReadAll(res.Body)
	fmt.Println(string(data))
}
```

```csharp .NET theme={null}
using System.Net.Http.Headers;
using System.Text;

using var client = new HttpClient();

var request = new HttpRequestMessage(HttpMethod.Get, "https://qa-super.mygigsters.com.au/v1/contributions/funds/active");
request.Headers.Authorization = new AuthenticationHeaderValue(
    "Basic", Convert.ToBase64String(Encoding.UTF8.GetBytes("apiUsername:apiPassword")));

var response = await client.SendAsync(request);
Console.WriteLine(await response.Content.ReadAsStringAsync());
```

```json 200 theme={null}
{
  "funds": [
    {
      "usi": "40328908469310",
      "fundName": "Traditional and Personal Super",
      "productName": "Traditional and Personal Super",
      "organisationName": "Super Retirement Fund",
      "australianBusinessNumber": "40328908469",
      "account": {
        "accountName": "RESOLUTION LIFE AUSTRALASIA",
        "bsb": "032021",
        "accountNumber": "103312"
      },
      "contactDetails": {
        "name": "Customer Service",
        "phoneNumber": {
          "type": "LAND_LINE",
          "value": "1800624100"
        },
        "email": {
          "value": "Au.SISSuperstream@resolutionlife.com.au"
        }
      }
    },
    {
      "usi": "51739693679001",
      "fundName": "CRONIN SUPERANNUATION FUND",
      "productName": "CRONIN SUPERANNUATION FUND",
      "organisationName": "CRONIN SUPERANNUATION FUND",
      "australianBusinessNumber": "51739693679",
      "account": {
        "accountName": "CRONIN SUPERANNUATION FUND",
        "bsb": "032021",
        "accountNumber": "103312"
      },
      "contactDetails": {
        "name": "Customer Service",
        "phoneNumber": {
          "type": "LAND_LINE",
          "value": "1800624100"
        },
        "email": {
          "value": "contact@example.com"
        }
      }
    }
  ]
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.