Set a variable from a json file and get a second API json

I’m a total newb when it comes to javascript and json. As it will soon show. I had some experience with javascript back 12 or so years ago. But it was minimal. So, go easy on me.

It’s difficult to explain exactly what the issue is that I am having. So, I’ll make an example here. I have an API url that I need to get another API URL from and then use that json file to create my html page. I can fetch the first json file just fine at, lets say, http://www.thiscarsite.com/API/thecars And it’s set up similar to the following example.

{ "manufacturer": "Cheverolet",
  "model": "Camaro",
  "year": "1990",
  "styles": {
        "top": "convertible",
        "engine"; "v8",
        "address": "http://www.somesite.com/api/90ChevCamConvV8"
        }
}

As I said, I can get the first json information just fine with fetch/await. Or something as simple as this.

const startUrl = 'http://www.thiscarsite.com/API/thecars';
fetch(startUrl)
  .then(response => {
    return response.json();
    console.log(data);
  })
  .catch(error => {
    console.error(error);
  });

I have seen examples where one gets the URL by const newURL = data.styles.address; But how do I go about getting the address from the example above AND requesting the 2nd json file? I failed to mention that the URL in the first json file can change 3 or 4 times per week. Thus, the need to get it from the first one every time I need to access it.

I know this information is probably easy to find. I’m just not smart enough on the subject to be able to use the proper search terms.

I appreciate anyone taking the time to point me in the right direction.

WHAT I TRIED, With No luck

Tried something like this, my edits to insert the 2nd URL resulted in a failure

fetch('https://example.com/endpoint1')
  .then(response => {
    return response.json();
  })
  .then(data1 => {
    return fetch(`https://example.com/endpoint2?data=${data1}`);
  })
  .then(response => {
    return response.json();
  })
  .then(data2 => {
    console.log(data2);
  })
  .catch(error => {
    console.error(error);
  });

Also, tried using 2 async functions but kept getting errors like “response already called” (or something to the effect)