GitLab is an open product with a Community Edition product that is fully open-source and an Enterprise Edition product that is built on our Community Edition but with additional features that are closed-sourced. We're open to integrations with companies and tools that are interested in harnessing GitLab's platform capabilities, user flows and data with their products.
If you want to integrate with GitLab there are three possible paths you can take:
1. Utilizing webhooks - If you want to reflect information from GitLab or initiate an action based on a specific activity that occurred on GitLab you can utilize the existing infrastructure of our webhooks. To read about setting up webhooks on GitLab visit this [page](https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/web_hooks/web_hooks.md). 2. API integration - If you're seeking a richer integration with GitLab, the next best option is to utilize our ever expanding [API](https://docs.gitlab.com/ce/api/). The API contains pretty much anything you'll need, however if there's an API call that is missing we'd be happy to explore it and develop it. 3. Project Services - Project services give you the option to build your product into GitLab itself. This is the most advanced and complex method of integration but is by far the richest. It requires you to add your integration to GitLab's code base as a standard contribution. You can see the list of project services [available](http://docs.gitlab.com/ee/project_services/project_services.html), and look into this [example](https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/4930/diffs). If you're thinking of creating a project service, the steps to follow are similar to any [contribution](https://gitlab.com/gitlab-org/gitlab-test/blob/master/CONTRIBUTING.md) to the GitLab codebase.
If you've completed an integration you can have your integration listed on our applications page. To be listed you'll need to submit a Merge Request (MR) with:
Once you have those ready, go ahead and create a MR here and assign it to @scornille or @eliran.mesika.
We're always here to help you through your efforts of integration. If there's a missing API call from our current API, or you ran into other difficulties in your development please feel free to create a new issue on the Community Edition issue tracker and assign it to @eliran.mesika.
We're always looking to explore partnering with complementing integrations that are suited for large teams of developers. If you interested in exploring a partnership that fits that bill please contact us.
We love spreading the word on new integrations for GitLab to our community and followers. We're open to pursuing any of the following for co-marketing:
If you're working on an EE integration and need a GitLab EE license to develop and test on we will provide that upon request.
If you want to talk to us about a partnership you can contact Eliran Mesika, our Director of Strategic Partnerships at eliran at gitlab.com.