{"id":15055522,"url":"https://github.com/lawvs/gitlab-event-types","last_synced_at":"2025-09-16T20:55:02.419Z","repository":{"id":57686556,"uuid":"474388247","full_name":"lawvs/gitlab-event-types","owner":"lawvs","description":"TypeScript definitions for GitLab Webhook Event.","archived":false,"fork":false,"pushed_at":"2025-08-21T19:10:51.000Z","size":53,"stargazers_count":3,"open_issues_count":0,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-21T19:45:55.001Z","etag":null,"topics":["definitions","gitlab","types","typescript","webhook"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lawvs.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-03-26T15:30:16.000Z","updated_at":"2025-08-21T19:10:55.000Z","dependencies_parsed_at":"2025-04-10T03:53:05.633Z","dependency_job_id":"f5031941-ebd0-475c-aa27-1646f805c58d","html_url":"https://github.com/lawvs/gitlab-event-types","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/lawvs/gitlab-event-types","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lawvs%2Fgitlab-event-types","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lawvs%2Fgitlab-event-types/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lawvs%2Fgitlab-event-types/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lawvs%2Fgitlab-event-types/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lawvs","download_url":"https://codeload.github.com/lawvs/gitlab-event-types/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lawvs%2Fgitlab-event-types/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":275483715,"owners_count":25473115,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-16T02:00:10.229Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["definitions","gitlab","types","typescript","webhook"],"created_at":"2024-09-24T21:43:41.492Z","updated_at":"2025-09-16T20:55:02.413Z","avatar_url":"https://github.com/lawvs.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# GitLab Event Types\n\n[![Build](https://github.com/lawvs/gitlab-event-types/actions/workflows/build.yml/badge.svg)](https://github.com/lawvs/gitlab-event-types/actions/workflows/build.yml)\n[![npm](https://img.shields.io/npm/v/gitlab-event-types)](https://www.npmjs.com/package/gitlab-event-types)\n\nTypeScript definitions for [GitLab Webhook Event](https://docs.gitlab.com/ee/user/project/integrations/webhook_events.html).\n\n## Install\n\n```sh\n# Use npm\nnpm install -D gitlab-event-types\n\n# Use yarn\nyarn add -D gitlab-event-types\n\n# Use pnpm\npnpm add -D gitlab-event-types\n```\n\n## Usages\n\n```ts\nimport type { WebhookEvents, PushEvent } from \"gitlab-event-types\";\n\nconst isPushEvent = (event: WebhookEvents): event is PushEvent =\u003e\n  \"object_kind\" in event \u0026\u0026 event.object_kind === \"push\";\n\nconst hookHandler = async (event: WebhookEvents) =\u003e {\n  if (isPushEvent(event)) {\n    console.log(event.commits);\n  }\n};\n```\n\nOr\n\n```ts\nimport type * as GitlabEventTypes from \"gitlab-event-types\";\n\nconst pushEventHandler = async (event: GitlabEventTypes.PushEvent) =\u003e {\n  console.log(event.object_kind);\n};\n```\n\n## Definitions\n\n```ts\nexport type WebhookEvents =\n  | PushEvent\n  | TagPushEvent\n  | IssueEvent\n  | CommentEvent\n  | MergeRequestEvent\n  | WikiPageEvent\n  | PipelineEvent\n  | JobEvent\n  | DeploymentEvent\n  | GroupMemberEvent\n  | ProjectEvent\n  | SubgroupEvent\n  | FeatureFlagEvent\n  | ReleaseEvent\n  | MilestoneEvent\n  | EmojiEvent\n  | AccessTokenEvent\n  | VulnerabilityEvent;\n```\n\n## Credits\n\nThanks to [excaliburhan/node-gitlab-webhook](https://github.com/excaliburhan/node-gitlab-webhook)(MIT License).\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flawvs%2Fgitlab-event-types","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flawvs%2Fgitlab-event-types","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flawvs%2Fgitlab-event-types/lists"}