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

# Get a test set

> Fetch one test set with its resolved criteria.

Returns a test set with its resolved criteria and conversation summaries.

## Headers

<ParamField header="Authorization" type="string" required>
  Bearer token containing your Fini workspace API key. Format: `Bearer fini_...` The key needs `read` scope.
</ParamField>

## Path parameters

<ParamField path="testSetId" type="string" required>
  Test set ID.
</ParamField>

## Response

Returns a [TestSet object](/en/api-reference/test-sets#testset-object) with a `criteria` array of [Criterion objects](/en/api-reference/test-sets#criterion-object) and a `conversations` array of conversation summaries.

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://api-prod.usefini.com/v2/test-sets/44c1f705-8e1a-4f61-8c4c-d519d37fb6b7/public' \
    --header 'Authorization: Bearer fini_your_api_key'
  ```

  ```javascript Node.js theme={null}
  const testSetId = '44c1f705-8e1a-4f61-8c4c-d519d37fb6b7';

  const response = await fetch(`https://api-prod.usefini.com/v2/test-sets/${testSetId}/public`, {
    method: 'GET',
    headers: {
      Authorization: 'Bearer fini_your_api_key'
    }
  });

  const testSet = await response.json();
  ```

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

  test_set_id = "44c1f705-8e1a-4f61-8c4c-d519d37fb6b7"

  response = requests.get(
      f"https://api-prod.usefini.com/v2/test-sets/{test_set_id}/public",
      headers={"Authorization": "Bearer fini_your_api_key"},
  )

  test_set = response.json()
  ```
</RequestExample>

<ResponseExample>
  ```json 200 OK theme={null}
  {
    "id": "44c1f705-8e1a-4f61-8c4c-d519d37fb6b7",
    "companyId": "1d2a4c9f-59f8-4f9c-bd36-6f12e0d5d927",
    "name": "Refund regression set",
    "description": "Refund-policy conversations to re-check before prompt changes.",
    "conversationIds": [
      "a5221094-72d4-4b9c-8d30-2f785b108bd9",
      "2dd2b920-f57c-4e92-8a6a-f310d4c8594d"
    ],
    "conversations": [
      {
        "id": "a5221094-72d4-4b9c-8d30-2f785b108bd9",
        "subject": "Customer asks about refund eligibility"
      },
      {
        "id": "2dd2b920-f57c-4e92-8a6a-f310d4c8594d",
        "subject": "Exchange request after delivery"
      }
    ],
    "criteria": [
      {
        "id": "96eab02d-3bc3-4b90-ae5b-1a41a1444afa",
        "testSetId": "44c1f705-8e1a-4f61-8c4c-d519d37fb6b7",
        "companyId": "1d2a4c9f-59f8-4f9c-bd36-6f12e0d5d927",
        "defaultCriterionId": null,
        "name": "Goal resolution",
        "type": "complex_judge",
        "judgePrompt": "Judge whether the conversation resolved the user's goal.",
        "passPrompt": "The user's goal was resolved.",
        "failPrompt": "The user's goal was not resolved.",
        "condition": null,
        "blocking": true,
        "isActive": true,
        "createdAt": "2026-07-28T08:56:12.000Z",
        "updatedAt": "2026-07-28T08:56:12.000Z"
      }
    ],
    "createdBy": null,
    "createdAt": "2026-07-28T08:55:32.000Z",
    "updatedAt": "2026-07-28T08:56:12.000Z"
  }
  ```
</ResponseExample>
