{"id":2289,"date":"2025-07-17T20:28:38","date_gmt":"2025-07-17T20:28:38","guid":{"rendered":"https:\/\/www.devopsconsulting.in\/blog\/?p=2289"},"modified":"2025-07-19T08:43:46","modified_gmt":"2025-07-19T08:43:46","slug":"laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles","status":"publish","type":"post","link":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/","title":{"rendered":"Laravel Socialite: A Full Tutorial for Google Sign-In and User Roles"},"content":{"rendered":"\n<p><strong>A Complete Guide to Google Sign-In with Laravel: From Setup to Role-Based Redirects<\/strong><\/p>\n\n\n\n<p>Adding social login options can significantly improve the user experience of your application. Google Sign-In is a popular choice, offering a quick and secure way for users to register and log in. This guide provides a complete, step-by-step walkthrough for integrating Google Sign-In and Sign-Up into your Laravel project, including handling role-based redirection for different user types like admins, managers, and standard users.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 1: Install Laravel Socialite and Get Google Credentials<\/h2>\n\n\n\n<p>First, you need to add Laravel&#8217;s official package for social authentication and configure it with your API keys from Google.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Install Socialite<\/h2>\n\n\n\n<p>Open your project&#8217;s terminal and run the following Composer command to install the package:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>composer require laravel\/socialite<br><\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Get Google API Credentials<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Navigate to the <a href=\"https:\/\/console.cloud.google.com\/\" target=\"_blank\" rel=\"noreferrer noopener\">Google Cloud Console<\/a>.<\/li>\n\n\n\n<li>From the navigation menu, go to <strong>APIs &amp; Services &gt; Credentials<\/strong>.<\/li>\n\n\n\n<li>Click <strong>Create Credentials<\/strong> and select <strong>OAuth client ID<\/strong>.<\/li>\n\n\n\n<li>Choose <strong>Web application<\/strong> as the application type.<\/li>\n\n\n\n<li>Under <strong>Authorized redirect URIs<\/strong>, click <strong>ADD URI<\/strong> and enter the callback URL for your application. This must match the route you will create later. For example: <code>http:\/\/127.0.0.1:8000\/auth\/google\/callback<\/code>.<\/li>\n\n\n\n<li>Click <strong>Create<\/strong>. Copy the generated <strong>Client ID<\/strong> and <strong>Client Secret<\/strong> for the next step.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\">Configure Laravel<\/h2>\n\n\n\n<p>Open your project&#8217;s <code>.env<\/code> file and add your Google credentials:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">text<code>GOOGLE_CLIENT_ID=your-google-client-id\nGOOGLE_CLIENT_SECRET=your-google-client-secret\n<\/code><\/pre>\n\n\n\n<p>Next, open <code>config\/services.php<\/code> and add the configuration for the <code>google<\/code> driver:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">php<code>'google' =&gt; [\n    'client_id' =&gt; env('GOOGLE_CLIENT_ID'),\n    'client_secret' =&gt; env('GOOGLE_CLIENT_SECRET'),\n    'redirect' =&gt; env('APP_URL', 'http:\/\/127.0.0.1:8000') . '\/auth\/google\/callback',\n],\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 2: Update the <code>users<\/code> Table<\/h2>\n\n\n\n<p>You need to modify your <code>users<\/code> table to store a unique Google ID for each user. It&#8217;s also best practice to make the <code>password<\/code> field optional, as users signing in via Google won&#8217;t have a traditional password.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Create a Migration<\/h2>\n\n\n\n<p>Generate a new migration file to alter the <code>users<\/code> table:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bash<code>php artisan make:migration add_google_id_to_users_table --table=users\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Edit the Migration File<\/h2>\n\n\n\n<p>Open the new migration file located in <code>database\/migrations\/<\/code>. Modify the <code>up()<\/code> and <code>down()<\/code> methods to add the <code>google_id<\/code> column and make the <code>password<\/code> nullable.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">php<code>public function up(): void\n{\n    Schema::table('users', function (Blueprint $table) {\n        $table-&gt;string('google_id')-&gt;nullable()-&gt;after('id');\n        $table-&gt;string('password')-&gt;nullable()-&gt;change(); <em>\/\/ Make password nullable<\/em>\n    });\n}\n\npublic function down(): void\n{\n    Schema::table('users', function (Blueprint $table) {\n        $table-&gt;dropColumn('google_id');\n        $table-&gt;string('password')-&gt;nullable(false)-&gt;change(); <em>\/\/ Revert on rollback<\/em>\n    });\n}\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Run the Migration<\/h2>\n\n\n\n<p>Apply the changes to your database by running the migrate command:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bash<code>php artisan migrate\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 3: Create the Controller and Routes<\/h2>\n\n\n\n<p>The controller will manage the authentication flow: redirecting the user to Google and handling the callback data once the user approves the request.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Add the Routes<\/h2>\n\n\n\n<p>Open <code>routes\/web.php<\/code> and add the two routes required for the redirect and callback logic.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">php<code>use App\\Http\\Controllers\\Auth\\GoogleAuthController;\n\nRoute::get('\/auth\/google', [GoogleAuthController::class, 'redirect'])-&gt;name('google.auth');\nRoute::get('\/auth\/google\/callback', [GoogleAuthController::class, 'callback']);\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Create the Controller<\/h2>\n\n\n\n<p>Generate the controller using this Artisan command:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">bash<code>php artisan make:controller Auth\/GoogleAuthController\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Add the Controller Logic<\/h2>\n\n\n\n<p>Open the newly created file at <code>app\/Http\/Controllers\/Auth\/GoogleAuthController.php<\/code> and add the following code. This logic handles new user creation, linking existing accounts, and redirecting users based on their assigned role.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">php<code>&lt;?php\n\nnamespace App\\Http\\Controllers\\Auth;\n\nuse App\\Http\\Controllers\\Controller;\nuse App\\Models\\User;\nuse Illuminate\\Support\\Facades\\Auth;\nuse Illuminate\\Support\\Facades\\Hash;\nuse Illuminate\\Support\\Facades\\Log;\nuse Illuminate\\Support\\Str;\nuse Laravel\\Socialite\\Facades\\Socialite;\n\nclass GoogleAuthController extends Controller\n{\n    <em>\/**\n<\/em><em>     * Redirect the user to the Google authentication page.\n<\/em><em>     *\/<\/em>\n    public function redirect()\n    {\n        return Socialite::driver('google')-&gt;redirect();\n    }\n\n    <em>\/**\n<\/em><em>     * Obtain the user information from Google.\n<\/em><em>     *\/<\/em>\n    public function callback()\n    {\n        try {\n            $googleUser = Socialite::driver('google')-&gt;user();\n\n            <em>\/\/ Check if a user with this email already exists<\/em>\n            $user = User::where('email', $googleUser-&gt;getEmail())-&gt;first();\n\n            if ($user) {\n                <em>\/\/ If the user exists, link their Google ID if it's not already set<\/em>\n                $user-&gt;update(['google_id' =&gt; $googleUser-&gt;getId()]);\n            } else {\n                <em>\/\/ If the user does not exist, create a new one with all required fields<\/em>\n                $user = User::create([\n                    'name' =&gt; $googleUser-&gt;getName(),\n                    'username' =&gt; strtolower(explode(' ', $googleUser-&gt;getName())[0]),\n                    'email' =&gt; $googleUser-&gt;getEmail(),\n                    'google_id' =&gt; $googleUser-&gt;getId(),\n                    'email_verified_at' =&gt; now(),\n                    'password' =&gt; Hash::make(Str::random(24)),\n                    'role' =&gt; 'user', <em>\/\/ Default role for new sign-ups<\/em>\n                    'status' =&gt; 'active' <em>\/\/ Default status<\/em>\n                ]);\n            }\n\n            <em>\/\/ Log the user in<\/em>\n            Auth::login($user);\n\n            <em>\/\/ Role-based redirection logic<\/em>\n            $role = Auth::user()-&gt;role;\n\n            if ($role === 'admin') {\n                return redirect('\/admin\/dashboard');\n            } elseif ($role === 'manager') {\n                return redirect('\/manager\/dashboard');\n            } else { <em>\/\/ Handles 'user' and any other roles<\/em>\n                return redirect('\/user\/dashboard');\n            }\n\n        } catch (\\Exception $e) {\n            Log::error('Google Sign-In Error: ' . $e-&gt;getMessage());\n            return redirect('\/login')-&gt;with('error', 'Something went wrong during Google Sign-In.');\n        }\n    }\n}\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 4: Update the User Model<\/h2>\n\n\n\n<p>To allow the controller to create users without running into mass assignment exceptions, you need to update the <code>$fillable<\/code> property in the <code>User<\/code> model.<\/p>\n\n\n\n<p>Open <code>app\/Models\/User.php<\/code> and ensure the <code>$fillable<\/code> array includes all the fields you are setting in the controller.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">php<code>protected $fillable = [\n    'name',\n    'username',\n    'email',\n    'password',\n    'google_id',\n    'role',\n    'status',\n    'email_verified_at'\n];\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Step 5: Add the &#8220;Sign in with Google&#8221; Button<\/h2>\n\n\n\n<p>Finally, add a link or button to your login page that directs users to the Google authentication route you created.<\/p>\n\n\n\n<p>In your <code>login.blade.php<\/code> file, or wherever your login form is located, add the following link:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">xml<code><em>&lt;!-- In your login.blade.php file --&gt;<\/em>\n&lt;div&gt;\n    &lt;button type=\"submit\" class=\"btn btn-primary me-2 mb-2 mb-md-0 text-white\"&gt;\n        {{ __('Log in') }}\n    &lt;\/button&gt;\n    \n    <em>&lt;!-- SIGN IN WITH GOOGLE BUTTON --&gt;<\/em>\n    &lt;a href=\"{{ route('google.auth') }}\" class=\"btn btn-outline-danger\"&gt;\n        &lt;i data-feather=\"link\" class=\"me-2\"&gt;&lt;\/i&gt; Sign in with Google\n    &lt;\/a&gt;\n&lt;\/div&gt;\n<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>That&#8217;s it! Your Laravel application is now fully configured to allow users to sign up and log in with their Google accounts. This implementation gracefully handles both new and existing users and automatically redirects them to the correct dashboard based on their role, creating a seamless and secure authentication flow.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A Complete Guide to Google Sign-In with Laravel: From Setup to Role-Based Redirects Adding social login options can significantly improve [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":2292,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[87],"tags":[1398,1391,1387,1385,1392,1394,1388,1389,1396,1395],"class_list":["post-2289","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-laravel","tag-add-google-sign-in-to-laravel","tag-handle-new-user-socialite-laravel-specific-long-tail-keyword-for-a-common-problem-you-solved","tag-implement-google-authentication-laravel-action-oriented","tag-laravel-google-login-high-volume","tag-laravel-google-sign-up-catches-users-focused-on-new-registrations","tag-laravel-oauth-tutorial-targets-developers-familiar-with-the-underlying-technology","tag-laravel-role-based-redirection-captures-users-with-a-more-advanced-need","tag-laravel-socialite-google-targets-users-familiar-with-the-package","tag-laravel-socialite-tutorial-for-developers-looking-for-a-step-by-step-guide","tag-problem-focused-keyword"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v25.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Laravel Socialite: A Full Tutorial for Google Sign-In and User Roles - DevOps Consulting<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Laravel Socialite: A Full Tutorial for Google Sign-In and User Roles - DevOps Consulting\" \/>\n<meta property=\"og:description\" content=\"A Complete Guide to Google Sign-In with Laravel: From Setup to Role-Based Redirects Adding social login options can significantly improve [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/\" \/>\n<meta property=\"og:site_name\" content=\"DevOps Consulting\" \/>\n<meta property=\"article:published_time\" content=\"2025-07-17T20:28:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-19T08:43:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1240\" \/>\n\t<meta property=\"og:image:height\" content=\"812\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Abhishek Singh\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Abhishek Singh\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/\",\"name\":\"Laravel Socialite: A Full Tutorial for Google Sign-In and User Roles - DevOps Consulting\",\"isPartOf\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png\",\"datePublished\":\"2025-07-17T20:28:38+00:00\",\"dateModified\":\"2025-07-19T08:43:46+00:00\",\"author\":{\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/#primaryimage\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png\",\"contentUrl\":\"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png\",\"width\":1240,\"height\":812},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#website\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/\",\"name\":\"DevOps Consulting\",\"description\":\"DevOps Consulting | SRE Consulting | DevSecOps Consulting | MLOps Consulting\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.devopsconsulting.in\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f\",\"name\":\"Abhishek Singh\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g\",\"caption\":\"Abhishek Singh\"},\"description\":\"I\u2019m Abhishek, a DevOps, SRE, DevSecOps, and Cloud expert with a passion for sharing knowledge and real-world experiences. I\u2019ve had the opportunity to work with Cotocus and continue to contribute to multiple platforms where I share insights across different domains: \u2022 DevOps School \u2013 Tech blogs and tutorials \u2022 Holiday Landmark \u2013 Travel stories and guides \u2022 Stocks Mantra \u2013 Stock market strategies and tips \u2022 My Medic Plus \u2013 Health and fitness guidance \u2022 TrueReviewNow \u2013 Honest product reviews \u2022 Wizbrand \u2013 SEO and digital tools for businesses I\u2019m also exploring the fascinating world of Quantum Computing.\",\"url\":\"https:\/\/www.devopsconsulting.in\/blog\/author\/abhishek\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Laravel Socialite: A Full Tutorial for Google Sign-In and User Roles - DevOps Consulting","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/","og_locale":"en_US","og_type":"article","og_title":"Laravel Socialite: A Full Tutorial for Google Sign-In and User Roles - DevOps Consulting","og_description":"A Complete Guide to Google Sign-In with Laravel: From Setup to Role-Based Redirects Adding social login options can significantly improve [&hellip;]","og_url":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/","og_site_name":"DevOps Consulting","article_published_time":"2025-07-17T20:28:38+00:00","article_modified_time":"2025-07-19T08:43:46+00:00","og_image":[{"width":1240,"height":812,"url":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png","type":"image\/png"}],"author":"Abhishek Singh","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Abhishek Singh","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/","url":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/","name":"Laravel Socialite: A Full Tutorial for Google Sign-In and User Roles - DevOps Consulting","isPartOf":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/#primaryimage"},"image":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/#primaryimage"},"thumbnailUrl":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png","datePublished":"2025-07-17T20:28:38+00:00","dateModified":"2025-07-19T08:43:46+00:00","author":{"@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.devopsconsulting.in\/blog\/laravel-socialite-a-full-tutorial-for-google-sign-in-and-user-roles\/#primaryimage","url":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png","contentUrl":"https:\/\/www.devopsconsulting.in\/blog\/wp-content\/uploads\/2025\/07\/image-1.png","width":1240,"height":812},{"@type":"WebSite","@id":"https:\/\/www.devopsconsulting.in\/blog\/#website","url":"https:\/\/www.devopsconsulting.in\/blog\/","name":"DevOps Consulting","description":"DevOps Consulting | SRE Consulting | DevSecOps Consulting | MLOps Consulting","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.devopsconsulting.in\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/fc397ba8be42f9fdd53450edfc73006f","name":"Abhishek Singh","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.devopsconsulting.in\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/790feefe779852cdf344ca7318bf6c13832223c9b3c6bf4d217658412041026d?s=96&d=mm&r=g","caption":"Abhishek Singh"},"description":"I\u2019m Abhishek, a DevOps, SRE, DevSecOps, and Cloud expert with a passion for sharing knowledge and real-world experiences. I\u2019ve had the opportunity to work with Cotocus and continue to contribute to multiple platforms where I share insights across different domains: \u2022 DevOps School \u2013 Tech blogs and tutorials \u2022 Holiday Landmark \u2013 Travel stories and guides \u2022 Stocks Mantra \u2013 Stock market strategies and tips \u2022 My Medic Plus \u2013 Health and fitness guidance \u2022 TrueReviewNow \u2013 Honest product reviews \u2022 Wizbrand \u2013 SEO and digital tools for businesses I\u2019m also exploring the fascinating world of Quantum Computing.","url":"https:\/\/www.devopsconsulting.in\/blog\/author\/abhishek\/"}]}},"_links":{"self":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/2289","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/comments?post=2289"}],"version-history":[{"count":3,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/2289\/revisions"}],"predecessor-version":[{"id":2297,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/posts\/2289\/revisions\/2297"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/media\/2292"}],"wp:attachment":[{"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/media?parent=2289"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/categories?post=2289"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.devopsconsulting.in\/blog\/wp-json\/wp\/v2\/tags?post=2289"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}