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

# Retrain Sources

> Retrain multiple URL data sources to fetch the latest content from them.

### Body

<ParamField body="uuids" type="string[]">
  The list of URL uuid sources that need to be retrained.
</ParamField>

### Response

<ResponseField name="Source List" type="array">
  Updated Source List with Statuses

  <Expandable title="Item">
    <ResponseField name="uuid" type="string">
      Source UUID
    </ResponseField>

    <ResponseField name="status" type="string">
      Retrain Status
    </ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash Curl theme={null}
  curl --location --request POST 'https://app.gpt-trainer.com/api/v1/data-sources/url/re-scrape' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer <token>' \
  --data-raw '{
    "uuids": ["source_uuid_one", "source_uuid_two"]
  }'
  ```

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

  url = 'https://app.gpt-trainer.com/api/v1/data-sources/url/re-scrape'
  headers = {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer <token>'
  }

  data = {
    "uuids": ["source_uuid_one", "source_uuid_two"]
  }

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

  if response.status_code == 200:
      print("Request successful!")
      print(response.json())
  else:
      print("Request failed with status code:", response.status_code)
      print(response.text)
  ```

  ```ts JavaScript theme={null}
  const axios = require("axios");

  const url = "https://app.gpt-trainer.com/api/v1/data-sources/url/re-scrape";
  const headers = {
    "Content-Type": "application/json",
    Authorization: "Bearer <token>",
  };

  const data = {
    uuids: ["source_uuid_one", "source_uuid_two"],
  };

  axios
    .post(url, data, { headers })
    .then((response) => {
      console.log("Request successful!");
      console.log(response.data);
    })
    .catch((error) => {
      console.error("Request failed:", error);
    });
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={null}
  [
    {
      "status": "restarted scraping",
      "uuid": "source_uuid_one"
    },
    {
      "error": "invalid data source",
      "uuid": "source_uuid_two"
    }
  ]
  ```
</ResponseExample>
