ainsi que des webhooks personnalisés

APIGit

2023-05-16

apigit-custom-webhooks

Créer des webhooks personnalisés à l'aide d'Apigit

Chez Apigit, nous comprenons qu'il est essentiel de rationaliser la vie des développeurs. À cette fin, nous avons une liste croissante d'intégrations couramment utilisées, et nos webhooks personnalisés permettent aux développeurs de personnaliser leur flux de travail en déclenchant des actions. De cette façon, nous rendons l'accès aux données nécessaires et l'automatisation de leurs flux de travail simples et efficaces.

Qu'est-ce qu'un Webhook personnalisé ?

Les webhooks personnalisés (également appelés rappels Web) sont utilisés par les applications pour se connecter à d'autres applications afin d'obtenir des notifications instantanées sur une mise à jour ou un événement surveillé. Cependant, contrairement aux appels d'API réguliers qui extraient des données à intervalles réguliers, les webhooks vous permettent d'obtenir des mises à jour en temps réel.

Préfixer les webhooks personnalisés

Pour créer un webhooks pour votre référentiel, cliquez sur l'icône de configuration à côté de votre référentiel. ️ apigit-custom-webhooks-add

Pour comprendre le fonctionnement des webhooks, procédez comme suit :

  1. Publiez un serveur fictif à l'aide d'Apigit.
  2. Rempli leWeb Hook URL champ avec l'URL du serveur fictif.
  3. Surveillez le journal du serveur fictif pour toute modification apportée à votre référentiel.

Voici le journal lorsque j'essaie de poster un problème.

Content-Type: application/json
host: service-432c52uwedzskn22
User-Agent: GogsServer
X-Amzn-Trace-Id: Root=1-646429f9-600198f81eac6574410074fe
X-Apigit-Delivery: 3fdcd42d-5bcb-45c5-b01a-27a2e5e23b00
X-Apigit-Event: issues
X-Apigit-Signature:
X-Forwarded-For: 54.203.224.187
X-Forwarded-Port: 80
X-Forwarded-Proto: http
X-Github-Delivery: 3fdcd42d-5bcb-45c5-b01a-27a2e5e23b00
X-Github-Event: issues
X-My-Request-Header: XXX

{
  "action": "opened",
  "number": 5,
  "issue": {
    "id": 126,
    "number": 5,
    "user": {
      "id": 1346,
      "username": "xxxx",
      "login": "xxxx",
      "full_name": "",
      "email": "xx@xx.com",
      "avatar_url": "https://secure.gravatar.com/avatar/xx?d=identicon",
      "is_invite_pending": false
    },
    "title": "5",
    "body": "5",
    "labels": [],
    "milestone": null,
    "assignee": null,
    "state": "open",
    "comments": 0,
    "created_at": "0001-01-01T00:00:00Z",
    "updated_at": "0001-01-01T00:00:00Z",
    "pull_request": null
  },
  "repository": {
    "id": 1210,
    "owner": {
      "id": 1346,
      "username": "tuass",
      "login": "tuass",
      "full_name": "",
      "email": "xx@xx.com",
      "avatar_url": "https://secure.gravatar.com/avatar/xx?d=identicon",
      "is_invite_pending": false
    },
    "name": "test",
    "full_name": "xx/test",
    "description": "",
    "private": true,
    "unlisted": false,
    "fork": false,
    "parent": null,
    "empty": false,
    "mirror": false,
    "size": 876544,
    "html_url": "https://app.apigit.com/repository/xxxx/test",
    "ssh_url": "git@app.apigit.com:xxxx/test.git",
    "clone_url": "https://app.apigit.com/xxxx/test.git",
    "remote_addr": "",
    "website": "",
    "stars_count": 0,
    "forks_count": 0,
    "watchers_count": 1,
    "open_issues_count": 0,
    "default_branch": "master",
    "created_unix": "2023-04-29T03:36:18Z",
    "updated_unix": "2023-05-16T22:23:21Z",
    "status": 0
  },
  "sender": {
    "id": 1346,
    "username": "xxxx",
    "login": "xxxx",
    "full_name": "",
    "email": "xx@xx.com",
    "avatar_url": "https://secure.gravatar.com/avatar/xx?d=identicon",
    "is_invite_pending": false
  }
}