> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.rebateright.com.au/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.rebateright.com.au/_mcp/server.

# Get Participants

POST https://test-api.rebateright.com.au/Medicare/getparticipants/v1
Content-Type: application/json

**Which health funds take part, and what does each one accept?**

That is the question this endpoint answers, with each fund's code and the claims and
checks it accepts.

Test environment only. Services Australia is certifying this service, and it reaches production once certified.

Send `participantType` as `F`. The response lists every participating health fund, and the
Department of Veterans' Affairs (DVA).

Several funds can share a `name`, so identify each fund by its `id`. [Fund codes](/health-fund-checks#fund-codes)
sets out where to send each code, when to refresh your list, and the `service` text for each
claim type and check a fund accepts.

The example response shows 3 of the participants the test environment returns. `TST` is the
fund the [test data](/test-data) uses.

#### Validation errors (`400`)

| Code                          | Meaning                                                                                                              |
| ----------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| `9202`                        | `participantType` is not `F`.                                                                                        |
| `5`, with `codeType` `DHSEIN` | The request does not match the expected structure, such as a missing `participantType`. `message` names the problem. |

Reference: https://docs.rebateright.com.au/api-reference/health-funds/get-participants

## Authentication

- `x-api-key` header (required) — API Key authentication via header
- `x-minor-id` header (required) — Your Minor ID is 3 uppercase letters followed by 5 digits, such as `MDE00000`. Send the Minor ID exactly as issued. A malformed value returns `400` with the text `The Minor ID is not valid.` on every endpoint.

## Servers

- `https://test-api.rebateright.com.au` (Test, default)
- `https://api.rebateright.com.au` (Production)

## Request

### Headers

- `x-minor-id` (string, required) — The Minor ID of the clinic you act for. See [Keys, Minor ID and environments](/keys-and-environments).

### Body (application/json)

This endpoint expects an object.

- `participantType` (enum, required) — Must be `F`. The response also includes DVA. | Code | Meaning | |------|---------| | `F` | Health funds |
  - Allowed values: `F`

## Response

### 200

OK

- `participant` (list of MedicareGetparticipantsV1PostResponsesContentApplicationJsonSchemaParticipantItems, required) — One entry for each participating health fund, and one for DVA.
- `correlationId` (string, required) — Unique identifier for this transaction. Use it for tracing and support.

## Errors

### 400 Bad Request Error

A submitted value broke a format or business rule. A rule error carries `serviceMessage` entries. A request that does not match the expected structure carries `code`, `codeType` and `message` instead. Both carry the `correlationId`.

- `PostMedicareGetparticipantsV1RequestBadRequestError`

## Types

### MedicareGetparticipantsV1PostResponsesContentApplicationJsonSchemaParticipantItems

- `name` (string, required) — The participant's trading name, such as `Mock Health Fund V2`, or `Department of Veterans' Affairs` for DVA.
- `id` (string, required) — The participant's fund code, 3 capital letters such as `TST`, or `DVA` for DVA. Send the fund code as `healthFund.organisation`.
- `service` (list of string, required) — What the participant accepts, in alphabetical order. [Fund codes](/health-fund-checks#fund-codes) gives the text for each claim type and check.

### Service message

- `highestSeverity` (string, required)
- `serviceMessage` (list of MedicareGetparticipantsV1PostResponsesContentApplicationJsonSchemaOneOf0ServiceMessageItems, required)
- `correlationId` (string, required)

### Structure error

- `code` (integer, required)
- `codeType` (string, required)
- `message` (string, required)
- `correlationId` (string, required)

### MedicareGetparticipantsV1PostResponsesContentApplicationJsonSchemaOneOf0ServiceMessageItems

- `code` (string, optional)
- `severity` (string, optional)
- `reason` (string, optional)

## Examples

**Request**

```json
{
  "participantType": "F"
}
```

**Response**

```json
{
  "participant": [
    {
      "name": "ITEST Subsequent WS Test Health Fund",
      "id": "ITS",
      "service": [
        "In Hospital Claim",
        "Online Eligibility Check"
      ]
    },
    {
      "name": "Mock Health Fund V2",
      "id": "TST",
      "service": [
        "In Hospital Claim",
        "In Patient Medical Claim - Agreements",
        "In Patient Medical Claim - Billing Agents",
        "In Patient Medical Claim - Patient Claims",
        "In Patient Medical Claim - Schemes",
        "Online Eligibility Check",
        "Online Eligibility Check - Fund",
        "Online Eligibility Check - Overseas",
        "Overseas Claim - Agreements",
        "Overseas Claim - Billing Agents",
        "Overseas Claim - Patient Claims",
        "Overseas Claim - Schemes"
      ]
    },
    {
      "name": "Department of Veterans' Affairs",
      "id": "DVA",
      "service": [
        "In Hospital Claim"
      ]
    }
  ],
  "correlationId": "urn:uuid:MDE00000ea492708f00148b9"
}
```

**SDK Code**

```python Health Fund List
import requests

url = "https://test-api.rebateright.com.au/Medicare/getparticipants/v1"

payload = { "participantType": "F" }
headers = {
    "x-minor-id": "<minorId>",
    "x-api-key": "<apiKey>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript Health Fund List
const url = 'https://test-api.rebateright.com.au/Medicare/getparticipants/v1';
const options = {
  method: 'POST',
  headers: {
    'x-minor-id': '<minorId>',
    'x-api-key': '<apiKey>',
    'Content-Type': 'application/json'
  },
  body: '{"participantType":"F"}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go Health Fund List
package main

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

func main() {

	url := "https://test-api.rebateright.com.au/Medicare/getparticipants/v1"

	payload := strings.NewReader("{\n  \"participantType\": \"F\"\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("x-minor-id", "<minorId>")
	req.Header.Add("x-api-key", "<apiKey>")
	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby Health Fund List
require 'uri'
require 'net/http'

url = URI("https://test-api.rebateright.com.au/Medicare/getparticipants/v1")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["x-minor-id"] = '<minorId>'
request["x-api-key"] = '<apiKey>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"participantType\": \"F\"\n}"

response = http.request(request)
puts response.read_body
```

```java Health Fund List
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://test-api.rebateright.com.au/Medicare/getparticipants/v1")
  .header("x-minor-id", "<minorId>")
  .header("x-api-key", "<apiKey>")
  .header("Content-Type", "application/json")
  .body("{\n  \"participantType\": \"F\"\n}")
  .asString();
```

```php Health Fund List
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://test-api.rebateright.com.au/Medicare/getparticipants/v1', [
  'body' => '{
  "participantType": "F"
}',
  'headers' => [
    'Content-Type' => 'application/json',
    'x-api-key' => '<apiKey>',
    'x-minor-id' => '<minorId>',
  ],
]);

echo $response->getBody();
```

```csharp Health Fund List
using RestSharp;

var client = new RestClient("https://test-api.rebateright.com.au/Medicare/getparticipants/v1");
var request = new RestRequest(Method.POST);
request.AddHeader("x-minor-id", "<minorId>");
request.AddHeader("x-api-key", "<apiKey>");
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"participantType\": \"F\"\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift Health Fund List
import Foundation

let headers = [
  "x-minor-id": "<minorId>",
  "x-api-key": "<apiKey>",
  "Content-Type": "application/json"
]
let parameters = ["participantType": "F"] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://test-api.rebateright.com.au/Medicare/getparticipants/v1")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```