'Brasil', 'code' => 'BR' ] ); $brasil->save(); $client_estados = new Client(); $url_estados = 'https://servicodados.ibge.gov.br/api/v1/localidades/estados'; $response_estados = $client_estados->request('GET', $url_estados); $estados = json_decode($response_estados->getBody()); foreach ($estados as $estado) { echo "Criando estado {$estado->nome}\n"; $new_estado = State::firstOrNew( [ 'name' => $estado->nome, 'code' => $estado->sigla, 'country_id' => $brasil->id ] ); $new_estado->save(); $client_cidades = new Client(); $url_cidades = "https://servicodados.ibge.gov.br/api/v1/localidades/estados/$estado->id/municipios"; $response_cidades = $client_cidades->request('GET', $url_cidades); $cidades = json_decode($response_cidades->getBody()); $total_cidades = 0; foreach ($cidades as $cidade) { $new_cidade = City::firstOrNew( [ 'name' => $cidade->nome, 'state_id' => $new_estado->id, 'country_id' => $brasil->id ] ); $new_cidade->save(); $total_cidades++; } echo " -> Total de cidades: {$total_cidades}\n"; } } catch (\Throwable $th) { throw $th; return false; } } }