## Re-run verification `client.Webhooks.Verify(ctx, webhookID, body) (*WebhookVerifyResponse, error)` **post** `/v2/webhooks/{teamId}/{webhookId}/verify` Re-runs the GET challenge/echo handshake against the webhook's url and updates its verified state. ### Parameters - `webhookID string` - `body WebhookVerifyParams` - `TeamID param.Field[string]` ### Returns - `type WebhookVerifyResponse struct{…}` A webhook plus the status of a verification handshake enqueued by this request. - `Verification WebhookVerifyResponseVerification` Status of the verification handshake enqueued by this request. The handshake runs asynchronously in the dispatcher; poll the webhook (its `verified` flag flips to true on success) to observe the outcome. - `Status WebhookVerifyResponseVerificationStatus` Always `pending` at the moment of the response — the dispatcher has been asked to run the handshake but has not reported back yet. - `const WebhookVerifyResponseVerificationStatusPending WebhookVerifyResponseVerificationStatus = "pending"` ### Example ```go package main import ( "context" "fmt" "github.com/micro-so/micro-sdk-go" "github.com/micro-so/micro-sdk-go/option" ) func main() { client := micro.NewClient( option.WithAPIKey("My API Key"), option.WithTeamID("My Team ID"), ) response, err := client.Webhooks.Verify( context.TODO(), "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", micro.WebhookVerifyParams{ }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", response) } ``` #### Response ```json { "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "created_at": "2019-12-27T18:11:19.117Z", "enabled": true, "name": "name", "team_id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e", "url": "https://example.com", "verified": true, "description": "description", "updated_at": "2019-12-27T18:11:19.117Z", "verification_token": "verification_token", "verified_at": "2019-12-27T18:11:19.117Z", "verification": { "status": "pending" } } ```