GH-200: GitHub Actions

The GH-200: GitHub Actions certification validates your ability to design, implement, and manage automation solutions within GitHub Actions. It assesses your expertise in streamlining development workflows, automating repetitive tasks, and optimizing software delivery pipelines through robust CI/CD practices. Candidates are evaluated on their proficiency in creating, customizing, and maintaining workflows tailored to diverse development and deployment needs. Upon successful completion, the certification remains valid for two years.
Target Audience
This exam is intended for DevOps engineers, software developers, and IT professionals with intermediate-level proficiency in GitHub Actions. Ideal candidates should have hands-on experience in building and managing automated workflows, integrating CI/CD pipelines, and applying best practices for workflow customization and maintenance in a collaborative development environment.
Exam Details

The GH-200: GitHub Actions Exam is a proctored certification assessment designed to evaluate your skills and knowledge in automating workflows, managing CI/CD pipelines, and optimizing software development processes using GitHub Actions. Candidates are allotted 100 minutes to complete the exam, which may include interactive components that test practical, hands-on proficiency. To accommodate a global audience, the exam is available in English, Spanish, Portuguese (Brazil), Korean, and Japanese, ensuring accessibility for professionals worldwide.
Course Outline
The exam covers the following topics:
Domain 1: Learn About Author and maintain workflows (40%)
Working with events that trigger workflows
- Configuring workflows to run for one or more events
- Configuring workflows to run for scheduled events
- Configure workflows to run for manual events
- Configuring workflows to run for webhook events (e.g., check_run, check_suite, deployment, etc.)
- Demonstrating a GitHub event to trigger a workflow based on a practical use case
Using the components of a workflow
- Identifying the correct syntax for workflow jobs (e.g., indentation and encapsulation of parts of the workflow)
- Using job steps for actions and shell commands
- Use conditional keywords for steps
- Describing how actions, workflows, jobs, steps, runs, and the marketplace work together
- Identify scenarios suited for using GitHub-hosted and self-hosted runners
- Implementing workflow commands as a run step to communicate with the runner
- Demonstrating the use of dependent jobs
Using encrypted secrets and environment variables as part of a workflow
- Using encrypted secrets to store sensitive information
- Identifying the available default environment variables during the construction of the workflow
- Identifying the location to set custom environment variables in a workflow
- Identifying when to use the GITHUB_TOKEN secret
- Demonstrate how to use workflow commands to set environment variables
Creating a workflow for a particular purpose
- Adding a script to a workflow
- Demonstrate how to publish to GitHub Packages using a workflow
- Demonstrating how to publish to GitHub Container Registry using a workflow
- Using database and service containers in a GitHub Actions workflow
- Using labels to route workflows to specific runners
- Using CodeQL as a step in a workflow
- Demonstrate how to publish a component as a GitHub release using GitHub Actions
- Deploying a release to a cloud provider using a GitHub Actions workflow
Domain 2: Understand Consume workflows (20%)
Interpreting the effects of a workflow
- Identifying the event that triggered a workflow from its effects in a repository, issue, or pull request
- Describing a workflow’s effects from reading its configuration file
- Diagnose a failed workflow run (e.g., using a workflow run history and its logs, determine why a workflow run may have failed)
- Identifying ways to access the workflow logs from the user interface
- Identify ways to access the workflow logs from GitHub’s REST API
- Enabling step debug logging in a workflow
- Demonstrate how to use default environment variables in a workflow
- Demonstrating the correct syntax for passing custom environment variables in a workflow step
- Configuring caching of workflow dependencies
- Identifying steps to pass data between jobs in a workflow
- Removing workflow artifacts from GitHub
- Adding a workflow status badge
- Add environment protections
- Defining a matrix of different job configurations
- Implement workflow approval gates
Locating a workflow, its logs, and artifacts
- Describing where to locate a workflow in a repository
- Explaining the difference between disabling and deleting of workflows
- Demonstrating how to download workflow artifacts from the user interface
- Describe how to use an organization’s templated workflow
Domain 3: Learn about Author and maintain actions (25%)
- Identify the type of action required for a given problem (e.g., JavaScript, Docker container, run step)
- Demonstrating how to troubleshoot JavaScript actions
- Demonstrating how to troubleshoot Docker container actions
Describing the components of an action
- Identifying the files and directory structure needed to create an action
- Identify the metadata and syntax needed to create an action
- Implementing workflow commands within an action to communicate with the runner (Note: this includes exit codes)
Domain 4: Managing GitHub Actions in the enterprise (15%)
Distributing actions and workflows to the enterprise
- Explain reuse templates for actions and workflows
- Defining an approach for managing and leveraging reusable components (e.g., repos for storage, naming conventions for files/folders, and plans for ongoing maintenance)
- Defining how to distribute actions for an enterprise
- Define how to control access to actions within the enterprise
- Configuring organizational use policies for GitHub Actions
Managing runners for the enterprise
- Describing the effects of configuring IP allow lists on GitHub-hosted and self-hosted runners
- Describe how to select appropriate runners to support workloads (e.g., using a self-hosted versus GitHub-hosted runner, choosing supported operating systems)
- Explain the difference between GitHub-hosted and self-hosted runners
- Configuring self-hosted runners for enterprise use (e.g., including proxies, labels, networking)
- Demonstrate how to manage self-hosted runners using groups (e.g., managing access, moving runners into and between groups)
- Demonstrating how to monitor, troubleshoot, and update self-hosted runners
Managing encrypted secrets in the enterprise
- Identify the scope of encrypted secrets
- Demonstrating how to access encrypted secrets within actions and workflows
- Explaining how to manage organization-level encrypted secrets
- Explain how to manage repository-level encrypted secrets
GH-200: GitHub Actions Exam FAQs
Exam Policies
Microsoft offers various exam policies. Some of them are:
– Proctoring and Assessment Format
The GH-200: GitHub Actions Exam is a fully proctored certification assessment, ensuring a secure and reliable evaluation process. The exam may include interactive components that replicate real-world scenarios, allowing candidates to demonstrate practical skills in automating workflows, managing CI/CD pipelines, and customizing GitHub Actions environments. These interactive elements are designed to measure both theoretical understanding and hands-on problem-solving abilities.
– Exam Duration and Experience
To fully prepare for the assessment, candidates are encouraged to review the official Exam Duration and Exam Experience documentation. This resource provides detailed insights into the allotted time, question formats, and the types of interactive or task-based exercises that may be included, enabling you to approach the exam with confidence and familiarity.
– Retake Policy
If you do not pass the exam on your first attempt, you are eligible to retake it after a 24-hour waiting period. For all subsequent retakes, the waiting period will vary depending on the number of previous attempts. This structured retake policy ensures that candidates have adequate time to review and strengthen their skills before reattempting the assessment.
GH-200: GitHub Actions Study Guide

Step 1: Understand the Exam Objectives
Begin your preparation by reviewing the official GH-200: GitHub Actions exam page on Microsoft’s certification portal. This page outlines the core skills measured, topic areas, and weightage given to each domain, providing a clear picture of what you need to study. Understanding these objectives ensures you focus on the right areas, from workflow creation and automation to CI/CD integration and optimization. Break down each objective into smaller subtopics, and create a personalized study plan that covers them systematically.
Step 2: Follow the Official Learning Path
Microsoft offers a dedicated learning path for GitHub Actions, designed to guide you through the concepts in a logical sequence. This self-paced resource includes tutorials, examples, and guided exercises that help reinforce your understanding. By progressing through the modules in order, you’ll gain both theoretical knowledge and practical skills that directly align with the exam content. Set milestones for completing each module, and revisit any sections that feel challenging before moving forward.
Step 3: Use Knowledge Assessments to Gauge Progress
Periodically test your understanding by taking the knowledge checks provided in Microsoft Learn modules or related training resources. These assessments highlight your strengths and reveal areas needing improvement, allowing you to adjust your study approach. Treat incorrect answers as opportunities to revisit the relevant material and close any gaps in your knowledge.
Step 4: Join Study Groups and Communities
Collaborating with peers can significantly enhance your preparation. Join online study groups, discussion forums, or GitHub-focused professional communities where you can share insights, ask questions, and learn from others’ experiences. Engaging in group discussions often exposes you to problem-solving techniques and use cases you might not encounter when studying alone.
Step 5: Take GH-200: GitHub Actions Exam Practice Tests
Practice exams are an essential part of effective preparation. They help you become familiar with the exam format, time constraints, and question types—especially scenario-based and interactive components. After completing a practice test, review each answer thoroughly, even the correct ones, to ensure you understand the reasoning behind them. This process strengthens retention and improves your ability to apply concepts under exam conditions.
Step 6: Refine Your Weak Areas and Revise
In the final stage of your preparation, focus on revisiting the topics that you found most challenging. Rework hands-on exercises in GitHub Actions, experiment with workflow configurations, and test different CI/CD pipeline setups. This applied practice will build confidence and ensure you are ready for both the theoretical and practical aspects of the exam.



