tap-gitlab pulls raw data from GitLab's REST API and extracts the following resources from GitLab:

It incrementally pulls data based on the input state and then outputs the schema for each resource and the extracted data. For more information you can check the documentation for tap-gitlab.



  1. Navigate to your Meltano project in the terminal
  2. Run the following command:
meltano add extractor tap-gitlab

If you are successful, you should see Added and installed extractors 'tap-gitlab' in your terminal.

  1. Get your GitLab access token
    • Login to your GitLab account
    • Navigate to your profile page
    • Create an access token


  1. Open your project's .env file in a text editor
  2. Add the following variables to your file:
export GITLAB_API_TOKEN="access token from step 3"
export GITLAB_API_GROUPS="myorg mygroup"
export GITLAB_API_PROJECTS="myorg/repo-a myorg-repo-b"
# The date uses ISO-8601 and supports time if desired

If ultimate_license is true (defaults to false), then the GitLab account used has access to the Gitlab Ultimate or Gold features. It will enable fetching Epics, Epic Issues and other entities available for Gitlab Ultimate and Gold accounts.


  • Either groups or projects need to be provided
  • Filling in 'groups' but leaving 'projects' empty will sync all group projects.
  • Filling in 'projects' but leaving 'groups' empty will sync selected projects.
  • Filling in 'groups' and 'projects' will sync selected projects of those groups.

Currently, groups don't have a date field which can be tracked

Last Updated: 10/9/2019, 8:38:57 PM