APIGit
2023-05-16
In Apigit, comprendiamo che semplificare la vita degli sviluppatori è essenziale. A tal fine, disponiamo di un elenco crescente di integrazioni comunemente utilizzate e i nostri webhook personalizzati consentono agli sviluppatori di personalizzare il proprio flusso di lavoro attivando azioni. In questo modo, rendiamo semplice ed efficiente l'accesso ai dati necessari e l'automazione dei loro flussi di lavoro.
I webhook personalizzati (noti anche come web callback) vengono utilizzati dalle applicazioni per connettersi con altre applicazioni e ricevere notifiche istantanee su un aggiornamento o un evento che viene monitorato. Tuttavia, a differenza delle normali chiamate API che estraggono i dati a intervalli regolari, i webhook ti consentono di ottenere aggiornamenti in tempo reale.
Per creare un webhook per il tuo repository, fai clic sull'icona delle impostazioni accanto al tuo repository. ️
Per capire come funzionano i webhook, procedi nel seguente modo:
Web Hook URL
campo con l'URL del server fittizio.Ecco il registro quando provo a pubblicare un problema.
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
}
}
© 2024 APIGit Inc.