github.com/anthropics/anthropic-sdk-go@v1.70.1/betawebhook.go (about) 1 // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. 2 3 package anthropic 4 5 import ( 6 "encoding/json" 7 "errors" 8 "net/http" 9 "slices" 10 "time" 11 12 "github.com/anthropics/anthropic-sdk-go/internal/apijson" 13 "github.com/anthropics/anthropic-sdk-go/internal/requestconfig" 14 "github.com/anthropics/anthropic-sdk-go/option" 15 "github.com/anthropics/anthropic-sdk-go/packages/respjson" 16 "github.com/anthropics/anthropic-sdk-go/shared/constant" 17 standardwebhooks "github.com/standard-webhooks/standard-webhooks/libraries/go" 18 ) 19 20 // BetaWebhookService contains methods and other services that help with 21 // interacting with the anthropic API. 22 // 23 // Note, unlike clients, this service does not read variables from the environment 24 // automatically. You should not instantiate this service directly, and instead use 25 // the [NewBetaWebhookService] method instead. 26 type BetaWebhookService struct { 27 Options []option.RequestOption 28 } 29 30 // NewBetaWebhookService generates a new service that applies the given options to 31 // each request. These options are applied after the parent client's options (if 32 // there is one), and before any request-specific options. 33 func NewBetaWebhookService(opts ...option.RequestOption) (r BetaWebhookService) { 34 r = BetaWebhookService{} 35 r.Options = opts 36 return 37 } 38 39 // Parses a webhook payload into an event without verifying its signature. Prefer 40 // `unwrap()` unless you have already verified the signature yourself. 41 func (r *BetaWebhookService) ParseUnverified(payload []byte, opts ...option.RequestOption) (*UnwrapWebhookEvent, error) { 42 res := &UnwrapWebhookEvent{} 43 err := res.UnmarshalJSON(payload) 44 if err != nil { 45 return res, err 46 } 47 return res, nil 48 } 49 50 // Verifies the webhook signature from the `webhook-id`, `webhook-timestamp` and 51 // `webhook-signature` headers using your webhook signing key, then parses the 52 // payload into an event. Fails if the signature is missing or invalid. 53 func (r *BetaWebhookService) Unwrap(payload []byte, headers http.Header, opts ...option.RequestOption) (*UnwrapWebhookEvent, error) { 54 opts = slices.Concat(r.Options, opts) 55 cfg, err := requestconfig.PreRequestOptions(opts...) 56 if err != nil { 57 return nil, err 58 } 59 key := cfg.WebhookKey 60 if key == "" { 61 return nil, errors.New("The WebhookKey option must be set in order to verify webhook headers") 62 } 63 wh, err := standardwebhooks.NewWebhook(key) 64 if err != nil { 65 return nil, err 66 } 67 err = wh.Verify(payload, headers) 68 if err != nil { 69 return nil, err 70 } 71 res := &UnwrapWebhookEvent{} 72 err = res.UnmarshalJSON(payload) 73 if err != nil { 74 return res, err 75 } 76 return res, nil 77 } 78 79 type BetaWebhookAgentArchivedEventData struct { 80 // ID of the agent that triggered the event. 81 ID string `json:"id" api:"required"` 82 OrganizationID string `json:"organization_id" api:"required"` 83 Type constant.AgentArchived `json:"type" default:"agent.archived"` 84 WorkspaceID string `json:"workspace_id" api:"required"` 85 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 86 JSON struct { 87 ID respjson.Field 88 OrganizationID respjson.Field 89 Type respjson.Field 90 WorkspaceID respjson.Field 91 ExtraFields map[string]respjson.Field 92 raw string 93 } `json:"-"` 94 } 95 96 // Returns the unmodified JSON received from the API 97 func (r BetaWebhookAgentArchivedEventData) RawJSON() string { return r.JSON.raw } 98 func (r *BetaWebhookAgentArchivedEventData) UnmarshalJSON(data []byte) error { 99 return apijson.UnmarshalRoot(data, r) 100 } 101 102 type BetaWebhookAgentCreatedEventData struct { 103 // ID of the agent that triggered the event. 104 ID string `json:"id" api:"required"` 105 OrganizationID string `json:"organization_id" api:"required"` 106 Type constant.AgentCreated `json:"type" default:"agent.created"` 107 WorkspaceID string `json:"workspace_id" api:"required"` 108 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 109 JSON struct { 110 ID respjson.Field 111 OrganizationID respjson.Field 112 Type respjson.Field 113 WorkspaceID respjson.Field 114 ExtraFields map[string]respjson.Field 115 raw string 116 } `json:"-"` 117 } 118 119 // Returns the unmodified JSON received from the API 120 func (r BetaWebhookAgentCreatedEventData) RawJSON() string { return r.JSON.raw } 121 func (r *BetaWebhookAgentCreatedEventData) UnmarshalJSON(data []byte) error { 122 return apijson.UnmarshalRoot(data, r) 123 } 124 125 type BetaWebhookAgentDeletedEventData struct { 126 // ID of the agent that triggered the event. 127 ID string `json:"id" api:"required"` 128 OrganizationID string `json:"organization_id" api:"required"` 129 Type constant.AgentDeleted `json:"type" default:"agent.deleted"` 130 WorkspaceID string `json:"workspace_id" api:"required"` 131 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 132 JSON struct { 133 ID respjson.Field 134 OrganizationID respjson.Field 135 Type respjson.Field 136 WorkspaceID respjson.Field 137 ExtraFields map[string]respjson.Field 138 raw string 139 } `json:"-"` 140 } 141 142 // Returns the unmodified JSON received from the API 143 func (r BetaWebhookAgentDeletedEventData) RawJSON() string { return r.JSON.raw } 144 func (r *BetaWebhookAgentDeletedEventData) UnmarshalJSON(data []byte) error { 145 return apijson.UnmarshalRoot(data, r) 146 } 147 148 type BetaWebhookAgentUpdatedEventData struct { 149 // ID of the agent that triggered the event. 150 ID string `json:"id" api:"required"` 151 OrganizationID string `json:"organization_id" api:"required"` 152 Type constant.AgentUpdated `json:"type" default:"agent.updated"` 153 WorkspaceID string `json:"workspace_id" api:"required"` 154 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 155 JSON struct { 156 ID respjson.Field 157 OrganizationID respjson.Field 158 Type respjson.Field 159 WorkspaceID respjson.Field 160 ExtraFields map[string]respjson.Field 161 raw string 162 } `json:"-"` 163 } 164 165 // Returns the unmodified JSON received from the API 166 func (r BetaWebhookAgentUpdatedEventData) RawJSON() string { return r.JSON.raw } 167 func (r *BetaWebhookAgentUpdatedEventData) UnmarshalJSON(data []byte) error { 168 return apijson.UnmarshalRoot(data, r) 169 } 170 171 type BetaWebhookDeploymentArchivedEventData struct { 172 // ID of the deployment that triggered the event. 173 ID string `json:"id" api:"required"` 174 OrganizationID string `json:"organization_id" api:"required"` 175 Type constant.DeploymentArchived `json:"type" default:"deployment.archived"` 176 WorkspaceID string `json:"workspace_id" api:"required"` 177 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 178 JSON struct { 179 ID respjson.Field 180 OrganizationID respjson.Field 181 Type respjson.Field 182 WorkspaceID respjson.Field 183 ExtraFields map[string]respjson.Field 184 raw string 185 } `json:"-"` 186 } 187 188 // Returns the unmodified JSON received from the API 189 func (r BetaWebhookDeploymentArchivedEventData) RawJSON() string { return r.JSON.raw } 190 func (r *BetaWebhookDeploymentArchivedEventData) UnmarshalJSON(data []byte) error { 191 return apijson.UnmarshalRoot(data, r) 192 } 193 194 type BetaWebhookDeploymentCreatedEventData struct { 195 // ID of the deployment that triggered the event. 196 ID string `json:"id" api:"required"` 197 OrganizationID string `json:"organization_id" api:"required"` 198 Type constant.DeploymentCreated `json:"type" default:"deployment.created"` 199 WorkspaceID string `json:"workspace_id" api:"required"` 200 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 201 JSON struct { 202 ID respjson.Field 203 OrganizationID respjson.Field 204 Type respjson.Field 205 WorkspaceID respjson.Field 206 ExtraFields map[string]respjson.Field 207 raw string 208 } `json:"-"` 209 } 210 211 // Returns the unmodified JSON received from the API 212 func (r BetaWebhookDeploymentCreatedEventData) RawJSON() string { return r.JSON.raw } 213 func (r *BetaWebhookDeploymentCreatedEventData) UnmarshalJSON(data []byte) error { 214 return apijson.UnmarshalRoot(data, r) 215 } 216 217 type BetaWebhookDeploymentDeletedEventData struct { 218 // ID of the deployment that triggered the event. 219 ID string `json:"id" api:"required"` 220 OrganizationID string `json:"organization_id" api:"required"` 221 Type constant.DeploymentDeleted `json:"type" default:"deployment.deleted"` 222 WorkspaceID string `json:"workspace_id" api:"required"` 223 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 224 JSON struct { 225 ID respjson.Field 226 OrganizationID respjson.Field 227 Type respjson.Field 228 WorkspaceID respjson.Field 229 ExtraFields map[string]respjson.Field 230 raw string 231 } `json:"-"` 232 } 233 234 // Returns the unmodified JSON received from the API 235 func (r BetaWebhookDeploymentDeletedEventData) RawJSON() string { return r.JSON.raw } 236 func (r *BetaWebhookDeploymentDeletedEventData) UnmarshalJSON(data []byte) error { 237 return apijson.UnmarshalRoot(data, r) 238 } 239 240 type BetaWebhookDeploymentPausedEventData struct { 241 // ID of the deployment that triggered the event. 242 ID string `json:"id" api:"required"` 243 OrganizationID string `json:"organization_id" api:"required"` 244 Type constant.DeploymentPaused `json:"type" default:"deployment.paused"` 245 WorkspaceID string `json:"workspace_id" api:"required"` 246 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 247 JSON struct { 248 ID respjson.Field 249 OrganizationID respjson.Field 250 Type respjson.Field 251 WorkspaceID respjson.Field 252 ExtraFields map[string]respjson.Field 253 raw string 254 } `json:"-"` 255 } 256 257 // Returns the unmodified JSON received from the API 258 func (r BetaWebhookDeploymentPausedEventData) RawJSON() string { return r.JSON.raw } 259 func (r *BetaWebhookDeploymentPausedEventData) UnmarshalJSON(data []byte) error { 260 return apijson.UnmarshalRoot(data, r) 261 } 262 263 type BetaWebhookDeploymentRunFailedEventData struct { 264 // ID of the deployment run that triggered the event. 265 ID string `json:"id" api:"required"` 266 OrganizationID string `json:"organization_id" api:"required"` 267 Type constant.DeploymentRunFailed `json:"type" default:"deployment_run.failed"` 268 WorkspaceID string `json:"workspace_id" api:"required"` 269 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 270 JSON struct { 271 ID respjson.Field 272 OrganizationID respjson.Field 273 Type respjson.Field 274 WorkspaceID respjson.Field 275 ExtraFields map[string]respjson.Field 276 raw string 277 } `json:"-"` 278 } 279 280 // Returns the unmodified JSON received from the API 281 func (r BetaWebhookDeploymentRunFailedEventData) RawJSON() string { return r.JSON.raw } 282 func (r *BetaWebhookDeploymentRunFailedEventData) UnmarshalJSON(data []byte) error { 283 return apijson.UnmarshalRoot(data, r) 284 } 285 286 type BetaWebhookDeploymentRunStartedEventData struct { 287 // ID of the deployment run that triggered the event. 288 ID string `json:"id" api:"required"` 289 OrganizationID string `json:"organization_id" api:"required"` 290 Type constant.DeploymentRunStarted `json:"type" default:"deployment_run.started"` 291 WorkspaceID string `json:"workspace_id" api:"required"` 292 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 293 JSON struct { 294 ID respjson.Field 295 OrganizationID respjson.Field 296 Type respjson.Field 297 WorkspaceID respjson.Field 298 ExtraFields map[string]respjson.Field 299 raw string 300 } `json:"-"` 301 } 302 303 // Returns the unmodified JSON received from the API 304 func (r BetaWebhookDeploymentRunStartedEventData) RawJSON() string { return r.JSON.raw } 305 func (r *BetaWebhookDeploymentRunStartedEventData) UnmarshalJSON(data []byte) error { 306 return apijson.UnmarshalRoot(data, r) 307 } 308 309 type BetaWebhookDeploymentRunSucceededEventData struct { 310 // ID of the deployment run that triggered the event. 311 ID string `json:"id" api:"required"` 312 OrganizationID string `json:"organization_id" api:"required"` 313 Type constant.DeploymentRunSucceeded `json:"type" default:"deployment_run.succeeded"` 314 WorkspaceID string `json:"workspace_id" api:"required"` 315 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 316 JSON struct { 317 ID respjson.Field 318 OrganizationID respjson.Field 319 Type respjson.Field 320 WorkspaceID respjson.Field 321 ExtraFields map[string]respjson.Field 322 raw string 323 } `json:"-"` 324 } 325 326 // Returns the unmodified JSON received from the API 327 func (r BetaWebhookDeploymentRunSucceededEventData) RawJSON() string { return r.JSON.raw } 328 func (r *BetaWebhookDeploymentRunSucceededEventData) UnmarshalJSON(data []byte) error { 329 return apijson.UnmarshalRoot(data, r) 330 } 331 332 type BetaWebhookDeploymentUnpausedEventData struct { 333 // ID of the deployment that triggered the event. 334 ID string `json:"id" api:"required"` 335 OrganizationID string `json:"organization_id" api:"required"` 336 Type constant.DeploymentUnpaused `json:"type" default:"deployment.unpaused"` 337 WorkspaceID string `json:"workspace_id" api:"required"` 338 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 339 JSON struct { 340 ID respjson.Field 341 OrganizationID respjson.Field 342 Type respjson.Field 343 WorkspaceID respjson.Field 344 ExtraFields map[string]respjson.Field 345 raw string 346 } `json:"-"` 347 } 348 349 // Returns the unmodified JSON received from the API 350 func (r BetaWebhookDeploymentUnpausedEventData) RawJSON() string { return r.JSON.raw } 351 func (r *BetaWebhookDeploymentUnpausedEventData) UnmarshalJSON(data []byte) error { 352 return apijson.UnmarshalRoot(data, r) 353 } 354 355 type BetaWebhookDeploymentUpdatedEventData struct { 356 // ID of the deployment that triggered the event. 357 ID string `json:"id" api:"required"` 358 OrganizationID string `json:"organization_id" api:"required"` 359 Type constant.DeploymentUpdated `json:"type" default:"deployment.updated"` 360 WorkspaceID string `json:"workspace_id" api:"required"` 361 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 362 JSON struct { 363 ID respjson.Field 364 OrganizationID respjson.Field 365 Type respjson.Field 366 WorkspaceID respjson.Field 367 ExtraFields map[string]respjson.Field 368 raw string 369 } `json:"-"` 370 } 371 372 // Returns the unmodified JSON received from the API 373 func (r BetaWebhookDeploymentUpdatedEventData) RawJSON() string { return r.JSON.raw } 374 func (r *BetaWebhookDeploymentUpdatedEventData) UnmarshalJSON(data []byte) error { 375 return apijson.UnmarshalRoot(data, r) 376 } 377 378 type BetaWebhookEnvironmentArchivedEventData struct { 379 // ID of the environment that triggered the event. 380 ID string `json:"id" api:"required"` 381 OrganizationID string `json:"organization_id" api:"required"` 382 Type constant.EnvironmentArchived `json:"type" default:"environment.archived"` 383 WorkspaceID string `json:"workspace_id" api:"required"` 384 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 385 JSON struct { 386 ID respjson.Field 387 OrganizationID respjson.Field 388 Type respjson.Field 389 WorkspaceID respjson.Field 390 ExtraFields map[string]respjson.Field 391 raw string 392 } `json:"-"` 393 } 394 395 // Returns the unmodified JSON received from the API 396 func (r BetaWebhookEnvironmentArchivedEventData) RawJSON() string { return r.JSON.raw } 397 func (r *BetaWebhookEnvironmentArchivedEventData) UnmarshalJSON(data []byte) error { 398 return apijson.UnmarshalRoot(data, r) 399 } 400 401 type BetaWebhookEnvironmentCreatedEventData struct { 402 // ID of the environment that triggered the event. 403 ID string `json:"id" api:"required"` 404 OrganizationID string `json:"organization_id" api:"required"` 405 Type constant.EnvironmentCreated `json:"type" default:"environment.created"` 406 WorkspaceID string `json:"workspace_id" api:"required"` 407 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 408 JSON struct { 409 ID respjson.Field 410 OrganizationID respjson.Field 411 Type respjson.Field 412 WorkspaceID respjson.Field 413 ExtraFields map[string]respjson.Field 414 raw string 415 } `json:"-"` 416 } 417 418 // Returns the unmodified JSON received from the API 419 func (r BetaWebhookEnvironmentCreatedEventData) RawJSON() string { return r.JSON.raw } 420 func (r *BetaWebhookEnvironmentCreatedEventData) UnmarshalJSON(data []byte) error { 421 return apijson.UnmarshalRoot(data, r) 422 } 423 424 type BetaWebhookEnvironmentDeletedEventData struct { 425 // ID of the environment that triggered the event. 426 ID string `json:"id" api:"required"` 427 OrganizationID string `json:"organization_id" api:"required"` 428 Type constant.EnvironmentDeleted `json:"type" default:"environment.deleted"` 429 WorkspaceID string `json:"workspace_id" api:"required"` 430 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 431 JSON struct { 432 ID respjson.Field 433 OrganizationID respjson.Field 434 Type respjson.Field 435 WorkspaceID respjson.Field 436 ExtraFields map[string]respjson.Field 437 raw string 438 } `json:"-"` 439 } 440 441 // Returns the unmodified JSON received from the API 442 func (r BetaWebhookEnvironmentDeletedEventData) RawJSON() string { return r.JSON.raw } 443 func (r *BetaWebhookEnvironmentDeletedEventData) UnmarshalJSON(data []byte) error { 444 return apijson.UnmarshalRoot(data, r) 445 } 446 447 type BetaWebhookEnvironmentUpdatedEventData struct { 448 // ID of the environment that triggered the event. 449 ID string `json:"id" api:"required"` 450 OrganizationID string `json:"organization_id" api:"required"` 451 Type constant.EnvironmentUpdated `json:"type" default:"environment.updated"` 452 WorkspaceID string `json:"workspace_id" api:"required"` 453 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 454 JSON struct { 455 ID respjson.Field 456 OrganizationID respjson.Field 457 Type respjson.Field 458 WorkspaceID respjson.Field 459 ExtraFields map[string]respjson.Field 460 raw string 461 } `json:"-"` 462 } 463 464 // Returns the unmodified JSON received from the API 465 func (r BetaWebhookEnvironmentUpdatedEventData) RawJSON() string { return r.JSON.raw } 466 func (r *BetaWebhookEnvironmentUpdatedEventData) UnmarshalJSON(data []byte) error { 467 return apijson.UnmarshalRoot(data, r) 468 } 469 470 type UnwrapWebhookEvent struct { 471 // Unique event identifier for idempotency. 472 ID string `json:"id" api:"required"` 473 // RFC 3339 timestamp when the event occurred. 474 CreatedAt time.Time `json:"created_at" api:"required" format:"date-time"` 475 Data BetaWebhookEventDataUnion `json:"data" api:"required"` 476 // Object type. Always `event` for webhook payloads. 477 Type constant.Event `json:"type" default:"event"` 478 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 479 JSON struct { 480 ID respjson.Field 481 CreatedAt respjson.Field 482 Data respjson.Field 483 Type respjson.Field 484 ExtraFields map[string]respjson.Field 485 raw string 486 } `json:"-"` 487 } 488 489 // Returns the unmodified JSON received from the API 490 func (r UnwrapWebhookEvent) RawJSON() string { return r.JSON.raw } 491 func (r *UnwrapWebhookEvent) UnmarshalJSON(data []byte) error { 492 return apijson.UnmarshalRoot(data, r) 493 } 494 495 // BetaWebhookEventDataUnion contains all possible properties and values from 496 // [BetaWebhookSessionCreatedEventData], [BetaWebhookSessionPendingEventData], 497 // [BetaWebhookSessionRunningEventData], [BetaWebhookSessionIdledEventData], 498 // [BetaWebhookSessionRequiresActionEventData], 499 // [BetaWebhookSessionArchivedEventData], [BetaWebhookSessionDeletedEventData], 500 // [BetaWebhookSessionStatusRescheduledEventData], 501 // [BetaWebhookSessionStatusRunStartedEventData], 502 // [BetaWebhookSessionStatusIdledEventData], 503 // [BetaWebhookSessionStatusTerminatedEventData], 504 // [BetaWebhookSessionThreadCreatedEventData], 505 // [BetaWebhookSessionThreadIdledEventData], 506 // [BetaWebhookSessionThreadTerminatedEventData], 507 // [BetaWebhookSessionOutcomeEvaluationEndedEventData], 508 // [BetaWebhookVaultCreatedEventData], [BetaWebhookVaultArchivedEventData], 509 // [BetaWebhookVaultDeletedEventData], 510 // [BetaWebhookVaultCredentialCreatedEventData], 511 // [BetaWebhookVaultCredentialArchivedEventData], 512 // [BetaWebhookVaultCredentialDeletedEventData], 513 // [BetaWebhookVaultCredentialRefreshFailedEventData], 514 // [BetaWebhookSessionUpdatedEventData], [BetaWebhookAgentCreatedEventData], 515 // [BetaWebhookAgentArchivedEventData], [BetaWebhookAgentDeletedEventData], 516 // [BetaWebhookDeploymentPausedEventData], 517 // [BetaWebhookDeploymentRunFailedEventData], 518 // [BetaWebhookDeploymentCreatedEventData], 519 // [BetaWebhookDeploymentUpdatedEventData], 520 // [BetaWebhookDeploymentUnpausedEventData], [BetaWebhookAgentUpdatedEventData], 521 // [BetaWebhookDeploymentArchivedEventData], 522 // [BetaWebhookDeploymentRunStartedEventData], 523 // [BetaWebhookDeploymentDeletedEventData], 524 // [BetaWebhookDeploymentRunSucceededEventData], 525 // [BetaWebhookEnvironmentCreatedEventData], 526 // [BetaWebhookEnvironmentUpdatedEventData], 527 // [BetaWebhookEnvironmentArchivedEventData], 528 // [BetaWebhookEnvironmentDeletedEventData], 529 // [BetaWebhookMemoryStoreCreatedEventData], 530 // [BetaWebhookMemoryStoreArchivedEventData], 531 // [BetaWebhookMemoryStoreDeletedEventData], 532 // [BetaWebhookSessionBudgetReachedEventData]. 533 // 534 // Use the [BetaWebhookEventDataUnion.AsAny] method to switch on the variant. 535 // 536 // Use the methods beginning with 'As' to cast the union to one of its variants. 537 type BetaWebhookEventDataUnion struct { 538 ID string `json:"id"` 539 OrganizationID string `json:"organization_id"` 540 // Any of "session.created", "session.pending", "session.running", "session.idled", 541 // "session.requires_action", "session.archived", "session.deleted", 542 // "session.status_rescheduled", "session.status_run_started", 543 // "session.status_idled", "session.status_terminated", "session.thread_created", 544 // "session.thread_idled", "session.thread_terminated", 545 // "session.outcome_evaluation_ended", "vault.created", "vault.archived", 546 // "vault.deleted", "vault_credential.created", "vault_credential.archived", 547 // "vault_credential.deleted", "vault_credential.refresh_failed", 548 // "session.updated", "agent.created", "agent.archived", "agent.deleted", 549 // "deployment.paused", "deployment_run.failed", "deployment.created", 550 // "deployment.updated", "deployment.unpaused", "agent.updated", 551 // "deployment.archived", "deployment_run.started", "deployment.deleted", 552 // "deployment_run.succeeded", "environment.created", "environment.updated", 553 // "environment.archived", "environment.deleted", "memory_store.created", 554 // "memory_store.archived", "memory_store.deleted", "session.budget_reached". 555 Type string `json:"type"` 556 WorkspaceID string `json:"workspace_id"` 557 SessionThreadID string `json:"session_thread_id"` 558 VaultID string `json:"vault_id"` 559 JSON struct { 560 ID respjson.Field 561 OrganizationID respjson.Field 562 Type respjson.Field 563 WorkspaceID respjson.Field 564 SessionThreadID respjson.Field 565 VaultID respjson.Field 566 raw string 567 } `json:"-"` 568 } 569 570 // anyBetaWebhookEventData is implemented by each variant of 571 // [BetaWebhookEventDataUnion] to add type safety for the return type of 572 // [BetaWebhookEventDataUnion.AsAny] 573 type anyBetaWebhookEventData interface { 574 implBetaWebhookEventDataUnion() 575 } 576 577 func (BetaWebhookSessionCreatedEventData) implBetaWebhookEventDataUnion() {} 578 func (BetaWebhookSessionPendingEventData) implBetaWebhookEventDataUnion() {} 579 func (BetaWebhookSessionRunningEventData) implBetaWebhookEventDataUnion() {} 580 func (BetaWebhookSessionIdledEventData) implBetaWebhookEventDataUnion() {} 581 func (BetaWebhookSessionRequiresActionEventData) implBetaWebhookEventDataUnion() {} 582 func (BetaWebhookSessionArchivedEventData) implBetaWebhookEventDataUnion() {} 583 func (BetaWebhookSessionDeletedEventData) implBetaWebhookEventDataUnion() {} 584 func (BetaWebhookSessionStatusRescheduledEventData) implBetaWebhookEventDataUnion() {} 585 func (BetaWebhookSessionStatusRunStartedEventData) implBetaWebhookEventDataUnion() {} 586 func (BetaWebhookSessionStatusIdledEventData) implBetaWebhookEventDataUnion() {} 587 func (BetaWebhookSessionStatusTerminatedEventData) implBetaWebhookEventDataUnion() {} 588 func (BetaWebhookSessionThreadCreatedEventData) implBetaWebhookEventDataUnion() {} 589 func (BetaWebhookSessionThreadIdledEventData) implBetaWebhookEventDataUnion() {} 590 func (BetaWebhookSessionThreadTerminatedEventData) implBetaWebhookEventDataUnion() {} 591 func (BetaWebhookSessionOutcomeEvaluationEndedEventData) implBetaWebhookEventDataUnion() {} 592 func (BetaWebhookVaultCreatedEventData) implBetaWebhookEventDataUnion() {} 593 func (BetaWebhookVaultArchivedEventData) implBetaWebhookEventDataUnion() {} 594 func (BetaWebhookVaultDeletedEventData) implBetaWebhookEventDataUnion() {} 595 func (BetaWebhookVaultCredentialCreatedEventData) implBetaWebhookEventDataUnion() {} 596 func (BetaWebhookVaultCredentialArchivedEventData) implBetaWebhookEventDataUnion() {} 597 func (BetaWebhookVaultCredentialDeletedEventData) implBetaWebhookEventDataUnion() {} 598 func (BetaWebhookVaultCredentialRefreshFailedEventData) implBetaWebhookEventDataUnion() {} 599 func (BetaWebhookSessionUpdatedEventData) implBetaWebhookEventDataUnion() {} 600 func (BetaWebhookAgentCreatedEventData) implBetaWebhookEventDataUnion() {} 601 func (BetaWebhookAgentArchivedEventData) implBetaWebhookEventDataUnion() {} 602 func (BetaWebhookAgentDeletedEventData) implBetaWebhookEventDataUnion() {} 603 func (BetaWebhookDeploymentPausedEventData) implBetaWebhookEventDataUnion() {} 604 func (BetaWebhookDeploymentRunFailedEventData) implBetaWebhookEventDataUnion() {} 605 func (BetaWebhookDeploymentCreatedEventData) implBetaWebhookEventDataUnion() {} 606 func (BetaWebhookDeploymentUpdatedEventData) implBetaWebhookEventDataUnion() {} 607 func (BetaWebhookDeploymentUnpausedEventData) implBetaWebhookEventDataUnion() {} 608 func (BetaWebhookAgentUpdatedEventData) implBetaWebhookEventDataUnion() {} 609 func (BetaWebhookDeploymentArchivedEventData) implBetaWebhookEventDataUnion() {} 610 func (BetaWebhookDeploymentRunStartedEventData) implBetaWebhookEventDataUnion() {} 611 func (BetaWebhookDeploymentDeletedEventData) implBetaWebhookEventDataUnion() {} 612 func (BetaWebhookDeploymentRunSucceededEventData) implBetaWebhookEventDataUnion() {} 613 func (BetaWebhookEnvironmentCreatedEventData) implBetaWebhookEventDataUnion() {} 614 func (BetaWebhookEnvironmentUpdatedEventData) implBetaWebhookEventDataUnion() {} 615 func (BetaWebhookEnvironmentArchivedEventData) implBetaWebhookEventDataUnion() {} 616 func (BetaWebhookEnvironmentDeletedEventData) implBetaWebhookEventDataUnion() {} 617 func (BetaWebhookMemoryStoreCreatedEventData) implBetaWebhookEventDataUnion() {} 618 func (BetaWebhookMemoryStoreArchivedEventData) implBetaWebhookEventDataUnion() {} 619 func (BetaWebhookMemoryStoreDeletedEventData) implBetaWebhookEventDataUnion() {} 620 func (BetaWebhookSessionBudgetReachedEventData) implBetaWebhookEventDataUnion() {} 621 622 // Use the following switch statement to find the correct variant 623 // 624 // switch variant := BetaWebhookEventDataUnion.AsAny().(type) { 625 // case anthropic.BetaWebhookSessionCreatedEventData: 626 // case anthropic.BetaWebhookSessionPendingEventData: 627 // case anthropic.BetaWebhookSessionRunningEventData: 628 // case anthropic.BetaWebhookSessionIdledEventData: 629 // case anthropic.BetaWebhookSessionRequiresActionEventData: 630 // case anthropic.BetaWebhookSessionArchivedEventData: 631 // case anthropic.BetaWebhookSessionDeletedEventData: 632 // case anthropic.BetaWebhookSessionStatusRescheduledEventData: 633 // case anthropic.BetaWebhookSessionStatusRunStartedEventData: 634 // case anthropic.BetaWebhookSessionStatusIdledEventData: 635 // case anthropic.BetaWebhookSessionStatusTerminatedEventData: 636 // case anthropic.BetaWebhookSessionThreadCreatedEventData: 637 // case anthropic.BetaWebhookSessionThreadIdledEventData: 638 // case anthropic.BetaWebhookSessionThreadTerminatedEventData: 639 // case anthropic.BetaWebhookSessionOutcomeEvaluationEndedEventData: 640 // case anthropic.BetaWebhookVaultCreatedEventData: 641 // case anthropic.BetaWebhookVaultArchivedEventData: 642 // case anthropic.BetaWebhookVaultDeletedEventData: 643 // case anthropic.BetaWebhookVaultCredentialCreatedEventData: 644 // case anthropic.BetaWebhookVaultCredentialArchivedEventData: 645 // case anthropic.BetaWebhookVaultCredentialDeletedEventData: 646 // case anthropic.BetaWebhookVaultCredentialRefreshFailedEventData: 647 // case anthropic.BetaWebhookSessionUpdatedEventData: 648 // case anthropic.BetaWebhookAgentCreatedEventData: 649 // case anthropic.BetaWebhookAgentArchivedEventData: 650 // case anthropic.BetaWebhookAgentDeletedEventData: 651 // case anthropic.BetaWebhookDeploymentPausedEventData: 652 // case anthropic.BetaWebhookDeploymentRunFailedEventData: 653 // case anthropic.BetaWebhookDeploymentCreatedEventData: 654 // case anthropic.BetaWebhookDeploymentUpdatedEventData: 655 // case anthropic.BetaWebhookDeploymentUnpausedEventData: 656 // case anthropic.BetaWebhookAgentUpdatedEventData: 657 // case anthropic.BetaWebhookDeploymentArchivedEventData: 658 // case anthropic.BetaWebhookDeploymentRunStartedEventData: 659 // case anthropic.BetaWebhookDeploymentDeletedEventData: 660 // case anthropic.BetaWebhookDeploymentRunSucceededEventData: 661 // case anthropic.BetaWebhookEnvironmentCreatedEventData: 662 // case anthropic.BetaWebhookEnvironmentUpdatedEventData: 663 // case anthropic.BetaWebhookEnvironmentArchivedEventData: 664 // case anthropic.BetaWebhookEnvironmentDeletedEventData: 665 // case anthropic.BetaWebhookMemoryStoreCreatedEventData: 666 // case anthropic.BetaWebhookMemoryStoreArchivedEventData: 667 // case anthropic.BetaWebhookMemoryStoreDeletedEventData: 668 // case anthropic.BetaWebhookSessionBudgetReachedEventData: 669 // default: 670 // fmt.Errorf("no variant present") 671 // } 672 func (u BetaWebhookEventDataUnion) AsAny() anyBetaWebhookEventData { 673 switch u.Type { 674 case "session.created": 675 return u.AsSessionCreated() 676 case "session.pending": 677 return u.AsSessionPending() 678 case "session.running": 679 return u.AsSessionRunning() 680 case "session.idled": 681 return u.AsSessionIdled() 682 case "session.requires_action": 683 return u.AsSessionRequiresAction() 684 case "session.archived": 685 return u.AsSessionArchived() 686 case "session.deleted": 687 return u.AsSessionDeleted() 688 case "session.status_rescheduled": 689 return u.AsSessionStatusRescheduled() 690 case "session.status_run_started": 691 return u.AsSessionStatusRunStarted() 692 case "session.status_idled": 693 return u.AsSessionStatusIdled() 694 case "session.status_terminated": 695 return u.AsSessionStatusTerminated() 696 case "session.thread_created": 697 return u.AsSessionThreadCreated() 698 case "session.thread_idled": 699 return u.AsSessionThreadIdled() 700 case "session.thread_terminated": 701 return u.AsSessionThreadTerminated() 702 case "session.outcome_evaluation_ended": 703 return u.AsSessionOutcomeEvaluationEnded() 704 case "vault.created": 705 return u.AsVaultCreated() 706 case "vault.archived": 707 return u.AsVaultArchived() 708 case "vault.deleted": 709 return u.AsVaultDeleted() 710 case "vault_credential.created": 711 return u.AsVaultCredentialCreated() 712 case "vault_credential.archived": 713 return u.AsVaultCredentialArchived() 714 case "vault_credential.deleted": 715 return u.AsVaultCredentialDeleted() 716 case "vault_credential.refresh_failed": 717 return u.AsVaultCredentialRefreshFailed() 718 case "session.updated": 719 return u.AsSessionUpdated() 720 case "agent.created": 721 return u.AsAgentCreated() 722 case "agent.archived": 723 return u.AsAgentArchived() 724 case "agent.deleted": 725 return u.AsAgentDeleted() 726 case "deployment.paused": 727 return u.AsDeploymentPaused() 728 case "deployment_run.failed": 729 return u.AsDeploymentRunFailed() 730 case "deployment.created": 731 return u.AsDeploymentCreated() 732 case "deployment.updated": 733 return u.AsDeploymentUpdated() 734 case "deployment.unpaused": 735 return u.AsDeploymentUnpaused() 736 case "agent.updated": 737 return u.AsAgentUpdated() 738 case "deployment.archived": 739 return u.AsDeploymentArchived() 740 case "deployment_run.started": 741 return u.AsDeploymentRunStarted() 742 case "deployment.deleted": 743 return u.AsDeploymentDeleted() 744 case "deployment_run.succeeded": 745 return u.AsDeploymentRunSucceeded() 746 case "environment.created": 747 return u.AsEnvironmentCreated() 748 case "environment.updated": 749 return u.AsEnvironmentUpdated() 750 case "environment.archived": 751 return u.AsEnvironmentArchived() 752 case "environment.deleted": 753 return u.AsEnvironmentDeleted() 754 case "memory_store.created": 755 return u.AsMemoryStoreCreated() 756 case "memory_store.archived": 757 return u.AsMemoryStoreArchived() 758 case "memory_store.deleted": 759 return u.AsMemoryStoreDeleted() 760 case "session.budget_reached": 761 return u.AsSessionBudgetReached() 762 } 763 return nil 764 } 765 766 func (u BetaWebhookEventDataUnion) AsSessionCreated() (v BetaWebhookSessionCreatedEventData) { 767 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 768 return 769 } 770 771 func (u BetaWebhookEventDataUnion) AsSessionPending() (v BetaWebhookSessionPendingEventData) { 772 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 773 return 774 } 775 776 func (u BetaWebhookEventDataUnion) AsSessionRunning() (v BetaWebhookSessionRunningEventData) { 777 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 778 return 779 } 780 781 func (u BetaWebhookEventDataUnion) AsSessionIdled() (v BetaWebhookSessionIdledEventData) { 782 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 783 return 784 } 785 786 func (u BetaWebhookEventDataUnion) AsSessionRequiresAction() (v BetaWebhookSessionRequiresActionEventData) { 787 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 788 return 789 } 790 791 func (u BetaWebhookEventDataUnion) AsSessionArchived() (v BetaWebhookSessionArchivedEventData) { 792 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 793 return 794 } 795 796 func (u BetaWebhookEventDataUnion) AsSessionDeleted() (v BetaWebhookSessionDeletedEventData) { 797 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 798 return 799 } 800 801 func (u BetaWebhookEventDataUnion) AsSessionStatusRescheduled() (v BetaWebhookSessionStatusRescheduledEventData) { 802 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 803 return 804 } 805 806 func (u BetaWebhookEventDataUnion) AsSessionStatusRunStarted() (v BetaWebhookSessionStatusRunStartedEventData) { 807 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 808 return 809 } 810 811 func (u BetaWebhookEventDataUnion) AsSessionStatusIdled() (v BetaWebhookSessionStatusIdledEventData) { 812 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 813 return 814 } 815 816 func (u BetaWebhookEventDataUnion) AsSessionStatusTerminated() (v BetaWebhookSessionStatusTerminatedEventData) { 817 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 818 return 819 } 820 821 func (u BetaWebhookEventDataUnion) AsSessionThreadCreated() (v BetaWebhookSessionThreadCreatedEventData) { 822 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 823 return 824 } 825 826 func (u BetaWebhookEventDataUnion) AsSessionThreadIdled() (v BetaWebhookSessionThreadIdledEventData) { 827 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 828 return 829 } 830 831 func (u BetaWebhookEventDataUnion) AsSessionThreadTerminated() (v BetaWebhookSessionThreadTerminatedEventData) { 832 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 833 return 834 } 835 836 func (u BetaWebhookEventDataUnion) AsSessionOutcomeEvaluationEnded() (v BetaWebhookSessionOutcomeEvaluationEndedEventData) { 837 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 838 return 839 } 840 841 func (u BetaWebhookEventDataUnion) AsVaultCreated() (v BetaWebhookVaultCreatedEventData) { 842 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 843 return 844 } 845 846 func (u BetaWebhookEventDataUnion) AsVaultArchived() (v BetaWebhookVaultArchivedEventData) { 847 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 848 return 849 } 850 851 func (u BetaWebhookEventDataUnion) AsVaultDeleted() (v BetaWebhookVaultDeletedEventData) { 852 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 853 return 854 } 855 856 func (u BetaWebhookEventDataUnion) AsVaultCredentialCreated() (v BetaWebhookVaultCredentialCreatedEventData) { 857 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 858 return 859 } 860 861 func (u BetaWebhookEventDataUnion) AsVaultCredentialArchived() (v BetaWebhookVaultCredentialArchivedEventData) { 862 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 863 return 864 } 865 866 func (u BetaWebhookEventDataUnion) AsVaultCredentialDeleted() (v BetaWebhookVaultCredentialDeletedEventData) { 867 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 868 return 869 } 870 871 func (u BetaWebhookEventDataUnion) AsVaultCredentialRefreshFailed() (v BetaWebhookVaultCredentialRefreshFailedEventData) { 872 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 873 return 874 } 875 876 func (u BetaWebhookEventDataUnion) AsSessionUpdated() (v BetaWebhookSessionUpdatedEventData) { 877 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 878 return 879 } 880 881 func (u BetaWebhookEventDataUnion) AsAgentCreated() (v BetaWebhookAgentCreatedEventData) { 882 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 883 return 884 } 885 886 func (u BetaWebhookEventDataUnion) AsAgentArchived() (v BetaWebhookAgentArchivedEventData) { 887 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 888 return 889 } 890 891 func (u BetaWebhookEventDataUnion) AsAgentDeleted() (v BetaWebhookAgentDeletedEventData) { 892 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 893 return 894 } 895 896 func (u BetaWebhookEventDataUnion) AsDeploymentPaused() (v BetaWebhookDeploymentPausedEventData) { 897 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 898 return 899 } 900 901 func (u BetaWebhookEventDataUnion) AsDeploymentRunFailed() (v BetaWebhookDeploymentRunFailedEventData) { 902 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 903 return 904 } 905 906 func (u BetaWebhookEventDataUnion) AsDeploymentCreated() (v BetaWebhookDeploymentCreatedEventData) { 907 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 908 return 909 } 910 911 func (u BetaWebhookEventDataUnion) AsDeploymentUpdated() (v BetaWebhookDeploymentUpdatedEventData) { 912 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 913 return 914 } 915 916 func (u BetaWebhookEventDataUnion) AsDeploymentUnpaused() (v BetaWebhookDeploymentUnpausedEventData) { 917 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 918 return 919 } 920 921 func (u BetaWebhookEventDataUnion) AsAgentUpdated() (v BetaWebhookAgentUpdatedEventData) { 922 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 923 return 924 } 925 926 func (u BetaWebhookEventDataUnion) AsDeploymentArchived() (v BetaWebhookDeploymentArchivedEventData) { 927 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 928 return 929 } 930 931 func (u BetaWebhookEventDataUnion) AsDeploymentRunStarted() (v BetaWebhookDeploymentRunStartedEventData) { 932 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 933 return 934 } 935 936 func (u BetaWebhookEventDataUnion) AsDeploymentDeleted() (v BetaWebhookDeploymentDeletedEventData) { 937 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 938 return 939 } 940 941 func (u BetaWebhookEventDataUnion) AsDeploymentRunSucceeded() (v BetaWebhookDeploymentRunSucceededEventData) { 942 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 943 return 944 } 945 946 func (u BetaWebhookEventDataUnion) AsEnvironmentCreated() (v BetaWebhookEnvironmentCreatedEventData) { 947 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 948 return 949 } 950 951 func (u BetaWebhookEventDataUnion) AsEnvironmentUpdated() (v BetaWebhookEnvironmentUpdatedEventData) { 952 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 953 return 954 } 955 956 func (u BetaWebhookEventDataUnion) AsEnvironmentArchived() (v BetaWebhookEnvironmentArchivedEventData) { 957 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 958 return 959 } 960 961 func (u BetaWebhookEventDataUnion) AsEnvironmentDeleted() (v BetaWebhookEnvironmentDeletedEventData) { 962 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 963 return 964 } 965 966 func (u BetaWebhookEventDataUnion) AsMemoryStoreCreated() (v BetaWebhookMemoryStoreCreatedEventData) { 967 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 968 return 969 } 970 971 func (u BetaWebhookEventDataUnion) AsMemoryStoreArchived() (v BetaWebhookMemoryStoreArchivedEventData) { 972 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 973 return 974 } 975 976 func (u BetaWebhookEventDataUnion) AsMemoryStoreDeleted() (v BetaWebhookMemoryStoreDeletedEventData) { 977 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 978 return 979 } 980 981 func (u BetaWebhookEventDataUnion) AsSessionBudgetReached() (v BetaWebhookSessionBudgetReachedEventData) { 982 apijson.UnmarshalRoot(json.RawMessage(u.JSON.raw), &v) 983 return 984 } 985 986 // Returns the unmodified JSON received from the API 987 func (u BetaWebhookEventDataUnion) RawJSON() string { return u.JSON.raw } 988 989 func (r *BetaWebhookEventDataUnion) UnmarshalJSON(data []byte) error { 990 return apijson.UnmarshalRoot(data, r) 991 } 992 993 type BetaWebhookMemoryStoreArchivedEventData struct { 994 // ID of the memory store that triggered the event. 995 ID string `json:"id" api:"required"` 996 OrganizationID string `json:"organization_id" api:"required"` 997 Type constant.MemoryStoreArchived `json:"type" default:"memory_store.archived"` 998 WorkspaceID string `json:"workspace_id" api:"required"` 999 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1000 JSON struct { 1001 ID respjson.Field 1002 OrganizationID respjson.Field 1003 Type respjson.Field 1004 WorkspaceID respjson.Field 1005 ExtraFields map[string]respjson.Field 1006 raw string 1007 } `json:"-"` 1008 } 1009 1010 // Returns the unmodified JSON received from the API 1011 func (r BetaWebhookMemoryStoreArchivedEventData) RawJSON() string { return r.JSON.raw } 1012 func (r *BetaWebhookMemoryStoreArchivedEventData) UnmarshalJSON(data []byte) error { 1013 return apijson.UnmarshalRoot(data, r) 1014 } 1015 1016 type BetaWebhookMemoryStoreCreatedEventData struct { 1017 // ID of the memory store that triggered the event. 1018 ID string `json:"id" api:"required"` 1019 OrganizationID string `json:"organization_id" api:"required"` 1020 Type constant.MemoryStoreCreated `json:"type" default:"memory_store.created"` 1021 WorkspaceID string `json:"workspace_id" api:"required"` 1022 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1023 JSON struct { 1024 ID respjson.Field 1025 OrganizationID respjson.Field 1026 Type respjson.Field 1027 WorkspaceID respjson.Field 1028 ExtraFields map[string]respjson.Field 1029 raw string 1030 } `json:"-"` 1031 } 1032 1033 // Returns the unmodified JSON received from the API 1034 func (r BetaWebhookMemoryStoreCreatedEventData) RawJSON() string { return r.JSON.raw } 1035 func (r *BetaWebhookMemoryStoreCreatedEventData) UnmarshalJSON(data []byte) error { 1036 return apijson.UnmarshalRoot(data, r) 1037 } 1038 1039 type BetaWebhookMemoryStoreDeletedEventData struct { 1040 // ID of the memory store that triggered the event. 1041 ID string `json:"id" api:"required"` 1042 OrganizationID string `json:"organization_id" api:"required"` 1043 Type constant.MemoryStoreDeleted `json:"type" default:"memory_store.deleted"` 1044 WorkspaceID string `json:"workspace_id" api:"required"` 1045 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1046 JSON struct { 1047 ID respjson.Field 1048 OrganizationID respjson.Field 1049 Type respjson.Field 1050 WorkspaceID respjson.Field 1051 ExtraFields map[string]respjson.Field 1052 raw string 1053 } `json:"-"` 1054 } 1055 1056 // Returns the unmodified JSON received from the API 1057 func (r BetaWebhookMemoryStoreDeletedEventData) RawJSON() string { return r.JSON.raw } 1058 func (r *BetaWebhookMemoryStoreDeletedEventData) UnmarshalJSON(data []byte) error { 1059 return apijson.UnmarshalRoot(data, r) 1060 } 1061 1062 type BetaWebhookSessionArchivedEventData struct { 1063 // ID of the session that triggered the event. 1064 ID string `json:"id" api:"required"` 1065 OrganizationID string `json:"organization_id" api:"required"` 1066 Type constant.SessionArchived `json:"type" default:"session.archived"` 1067 WorkspaceID string `json:"workspace_id" api:"required"` 1068 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1069 JSON struct { 1070 ID respjson.Field 1071 OrganizationID respjson.Field 1072 Type respjson.Field 1073 WorkspaceID respjson.Field 1074 ExtraFields map[string]respjson.Field 1075 raw string 1076 } `json:"-"` 1077 } 1078 1079 // Returns the unmodified JSON received from the API 1080 func (r BetaWebhookSessionArchivedEventData) RawJSON() string { return r.JSON.raw } 1081 func (r *BetaWebhookSessionArchivedEventData) UnmarshalJSON(data []byte) error { 1082 return apijson.UnmarshalRoot(data, r) 1083 } 1084 1085 type BetaWebhookSessionBudgetReachedEventData struct { 1086 // ID of the session that triggered the event. 1087 ID string `json:"id" api:"required"` 1088 OrganizationID string `json:"organization_id" api:"required"` 1089 Type constant.SessionBudgetReached `json:"type" default:"session.budget_reached"` 1090 WorkspaceID string `json:"workspace_id" api:"required"` 1091 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1092 JSON struct { 1093 ID respjson.Field 1094 OrganizationID respjson.Field 1095 Type respjson.Field 1096 WorkspaceID respjson.Field 1097 ExtraFields map[string]respjson.Field 1098 raw string 1099 } `json:"-"` 1100 } 1101 1102 // Returns the unmodified JSON received from the API 1103 func (r BetaWebhookSessionBudgetReachedEventData) RawJSON() string { return r.JSON.raw } 1104 func (r *BetaWebhookSessionBudgetReachedEventData) UnmarshalJSON(data []byte) error { 1105 return apijson.UnmarshalRoot(data, r) 1106 } 1107 1108 type BetaWebhookSessionCreatedEventData struct { 1109 // ID of the session that triggered the event. 1110 ID string `json:"id" api:"required"` 1111 OrganizationID string `json:"organization_id" api:"required"` 1112 Type constant.SessionCreated `json:"type" default:"session.created"` 1113 WorkspaceID string `json:"workspace_id" api:"required"` 1114 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1115 JSON struct { 1116 ID respjson.Field 1117 OrganizationID respjson.Field 1118 Type respjson.Field 1119 WorkspaceID respjson.Field 1120 ExtraFields map[string]respjson.Field 1121 raw string 1122 } `json:"-"` 1123 } 1124 1125 // Returns the unmodified JSON received from the API 1126 func (r BetaWebhookSessionCreatedEventData) RawJSON() string { return r.JSON.raw } 1127 func (r *BetaWebhookSessionCreatedEventData) UnmarshalJSON(data []byte) error { 1128 return apijson.UnmarshalRoot(data, r) 1129 } 1130 1131 type BetaWebhookSessionDeletedEventData struct { 1132 // ID of the session that triggered the event. 1133 ID string `json:"id" api:"required"` 1134 OrganizationID string `json:"organization_id" api:"required"` 1135 Type constant.SessionDeleted `json:"type" default:"session.deleted"` 1136 WorkspaceID string `json:"workspace_id" api:"required"` 1137 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1138 JSON struct { 1139 ID respjson.Field 1140 OrganizationID respjson.Field 1141 Type respjson.Field 1142 WorkspaceID respjson.Field 1143 ExtraFields map[string]respjson.Field 1144 raw string 1145 } `json:"-"` 1146 } 1147 1148 // Returns the unmodified JSON received from the API 1149 func (r BetaWebhookSessionDeletedEventData) RawJSON() string { return r.JSON.raw } 1150 func (r *BetaWebhookSessionDeletedEventData) UnmarshalJSON(data []byte) error { 1151 return apijson.UnmarshalRoot(data, r) 1152 } 1153 1154 type BetaWebhookSessionIdledEventData struct { 1155 // ID of the session that triggered the event. 1156 ID string `json:"id" api:"required"` 1157 OrganizationID string `json:"organization_id" api:"required"` 1158 Type constant.SessionIdled `json:"type" default:"session.idled"` 1159 WorkspaceID string `json:"workspace_id" api:"required"` 1160 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1161 JSON struct { 1162 ID respjson.Field 1163 OrganizationID respjson.Field 1164 Type respjson.Field 1165 WorkspaceID respjson.Field 1166 ExtraFields map[string]respjson.Field 1167 raw string 1168 } `json:"-"` 1169 } 1170 1171 // Returns the unmodified JSON received from the API 1172 func (r BetaWebhookSessionIdledEventData) RawJSON() string { return r.JSON.raw } 1173 func (r *BetaWebhookSessionIdledEventData) UnmarshalJSON(data []byte) error { 1174 return apijson.UnmarshalRoot(data, r) 1175 } 1176 1177 type BetaWebhookSessionOutcomeEvaluationEndedEventData struct { 1178 // ID of the session that triggered the event. 1179 ID string `json:"id" api:"required"` 1180 OrganizationID string `json:"organization_id" api:"required"` 1181 Type constant.SessionOutcomeEvaluationEnded `json:"type" default:"session.outcome_evaluation_ended"` 1182 WorkspaceID string `json:"workspace_id" api:"required"` 1183 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1184 JSON struct { 1185 ID respjson.Field 1186 OrganizationID respjson.Field 1187 Type respjson.Field 1188 WorkspaceID respjson.Field 1189 ExtraFields map[string]respjson.Field 1190 raw string 1191 } `json:"-"` 1192 } 1193 1194 // Returns the unmodified JSON received from the API 1195 func (r BetaWebhookSessionOutcomeEvaluationEndedEventData) RawJSON() string { return r.JSON.raw } 1196 func (r *BetaWebhookSessionOutcomeEvaluationEndedEventData) UnmarshalJSON(data []byte) error { 1197 return apijson.UnmarshalRoot(data, r) 1198 } 1199 1200 type BetaWebhookSessionPendingEventData struct { 1201 // ID of the session that triggered the event. 1202 ID string `json:"id" api:"required"` 1203 OrganizationID string `json:"organization_id" api:"required"` 1204 Type constant.SessionPending `json:"type" default:"session.pending"` 1205 WorkspaceID string `json:"workspace_id" api:"required"` 1206 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1207 JSON struct { 1208 ID respjson.Field 1209 OrganizationID respjson.Field 1210 Type respjson.Field 1211 WorkspaceID respjson.Field 1212 ExtraFields map[string]respjson.Field 1213 raw string 1214 } `json:"-"` 1215 } 1216 1217 // Returns the unmodified JSON received from the API 1218 func (r BetaWebhookSessionPendingEventData) RawJSON() string { return r.JSON.raw } 1219 func (r *BetaWebhookSessionPendingEventData) UnmarshalJSON(data []byte) error { 1220 return apijson.UnmarshalRoot(data, r) 1221 } 1222 1223 type BetaWebhookSessionRequiresActionEventData struct { 1224 // ID of the session that triggered the event. 1225 ID string `json:"id" api:"required"` 1226 OrganizationID string `json:"organization_id" api:"required"` 1227 Type constant.SessionRequiresAction `json:"type" default:"session.requires_action"` 1228 WorkspaceID string `json:"workspace_id" api:"required"` 1229 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1230 JSON struct { 1231 ID respjson.Field 1232 OrganizationID respjson.Field 1233 Type respjson.Field 1234 WorkspaceID respjson.Field 1235 ExtraFields map[string]respjson.Field 1236 raw string 1237 } `json:"-"` 1238 } 1239 1240 // Returns the unmodified JSON received from the API 1241 func (r BetaWebhookSessionRequiresActionEventData) RawJSON() string { return r.JSON.raw } 1242 func (r *BetaWebhookSessionRequiresActionEventData) UnmarshalJSON(data []byte) error { 1243 return apijson.UnmarshalRoot(data, r) 1244 } 1245 1246 type BetaWebhookSessionRunningEventData struct { 1247 // ID of the session that triggered the event. 1248 ID string `json:"id" api:"required"` 1249 OrganizationID string `json:"organization_id" api:"required"` 1250 Type constant.SessionRunning `json:"type" default:"session.running"` 1251 WorkspaceID string `json:"workspace_id" api:"required"` 1252 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1253 JSON struct { 1254 ID respjson.Field 1255 OrganizationID respjson.Field 1256 Type respjson.Field 1257 WorkspaceID respjson.Field 1258 ExtraFields map[string]respjson.Field 1259 raw string 1260 } `json:"-"` 1261 } 1262 1263 // Returns the unmodified JSON received from the API 1264 func (r BetaWebhookSessionRunningEventData) RawJSON() string { return r.JSON.raw } 1265 func (r *BetaWebhookSessionRunningEventData) UnmarshalJSON(data []byte) error { 1266 return apijson.UnmarshalRoot(data, r) 1267 } 1268 1269 type BetaWebhookSessionStatusIdledEventData struct { 1270 // ID of the session that triggered the event. 1271 ID string `json:"id" api:"required"` 1272 OrganizationID string `json:"organization_id" api:"required"` 1273 Type constant.SessionStatusIdled `json:"type" default:"session.status_idled"` 1274 WorkspaceID string `json:"workspace_id" api:"required"` 1275 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1276 JSON struct { 1277 ID respjson.Field 1278 OrganizationID respjson.Field 1279 Type respjson.Field 1280 WorkspaceID respjson.Field 1281 ExtraFields map[string]respjson.Field 1282 raw string 1283 } `json:"-"` 1284 } 1285 1286 // Returns the unmodified JSON received from the API 1287 func (r BetaWebhookSessionStatusIdledEventData) RawJSON() string { return r.JSON.raw } 1288 func (r *BetaWebhookSessionStatusIdledEventData) UnmarshalJSON(data []byte) error { 1289 return apijson.UnmarshalRoot(data, r) 1290 } 1291 1292 type BetaWebhookSessionStatusRescheduledEventData struct { 1293 // ID of the session that triggered the event. 1294 ID string `json:"id" api:"required"` 1295 OrganizationID string `json:"organization_id" api:"required"` 1296 Type constant.SessionStatusRescheduled `json:"type" default:"session.status_rescheduled"` 1297 WorkspaceID string `json:"workspace_id" api:"required"` 1298 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1299 JSON struct { 1300 ID respjson.Field 1301 OrganizationID respjson.Field 1302 Type respjson.Field 1303 WorkspaceID respjson.Field 1304 ExtraFields map[string]respjson.Field 1305 raw string 1306 } `json:"-"` 1307 } 1308 1309 // Returns the unmodified JSON received from the API 1310 func (r BetaWebhookSessionStatusRescheduledEventData) RawJSON() string { return r.JSON.raw } 1311 func (r *BetaWebhookSessionStatusRescheduledEventData) UnmarshalJSON(data []byte) error { 1312 return apijson.UnmarshalRoot(data, r) 1313 } 1314 1315 type BetaWebhookSessionStatusRunStartedEventData struct { 1316 // ID of the session that triggered the event. 1317 ID string `json:"id" api:"required"` 1318 OrganizationID string `json:"organization_id" api:"required"` 1319 Type constant.SessionStatusRunStarted `json:"type" default:"session.status_run_started"` 1320 WorkspaceID string `json:"workspace_id" api:"required"` 1321 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1322 JSON struct { 1323 ID respjson.Field 1324 OrganizationID respjson.Field 1325 Type respjson.Field 1326 WorkspaceID respjson.Field 1327 ExtraFields map[string]respjson.Field 1328 raw string 1329 } `json:"-"` 1330 } 1331 1332 // Returns the unmodified JSON received from the API 1333 func (r BetaWebhookSessionStatusRunStartedEventData) RawJSON() string { return r.JSON.raw } 1334 func (r *BetaWebhookSessionStatusRunStartedEventData) UnmarshalJSON(data []byte) error { 1335 return apijson.UnmarshalRoot(data, r) 1336 } 1337 1338 type BetaWebhookSessionStatusTerminatedEventData struct { 1339 // ID of the session that triggered the event. 1340 ID string `json:"id" api:"required"` 1341 OrganizationID string `json:"organization_id" api:"required"` 1342 Type constant.SessionStatusTerminated `json:"type" default:"session.status_terminated"` 1343 WorkspaceID string `json:"workspace_id" api:"required"` 1344 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1345 JSON struct { 1346 ID respjson.Field 1347 OrganizationID respjson.Field 1348 Type respjson.Field 1349 WorkspaceID respjson.Field 1350 ExtraFields map[string]respjson.Field 1351 raw string 1352 } `json:"-"` 1353 } 1354 1355 // Returns the unmodified JSON received from the API 1356 func (r BetaWebhookSessionStatusTerminatedEventData) RawJSON() string { return r.JSON.raw } 1357 func (r *BetaWebhookSessionStatusTerminatedEventData) UnmarshalJSON(data []byte) error { 1358 return apijson.UnmarshalRoot(data, r) 1359 } 1360 1361 type BetaWebhookSessionThreadCreatedEventData struct { 1362 // ID of the session that triggered the event. 1363 ID string `json:"id" api:"required"` 1364 OrganizationID string `json:"organization_id" api:"required"` 1365 // ID of the session thread this event refers to. 1366 SessionThreadID string `json:"session_thread_id" api:"required"` 1367 Type constant.SessionThreadCreated `json:"type" default:"session.thread_created"` 1368 WorkspaceID string `json:"workspace_id" api:"required"` 1369 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1370 JSON struct { 1371 ID respjson.Field 1372 OrganizationID respjson.Field 1373 SessionThreadID respjson.Field 1374 Type respjson.Field 1375 WorkspaceID respjson.Field 1376 ExtraFields map[string]respjson.Field 1377 raw string 1378 } `json:"-"` 1379 } 1380 1381 // Returns the unmodified JSON received from the API 1382 func (r BetaWebhookSessionThreadCreatedEventData) RawJSON() string { return r.JSON.raw } 1383 func (r *BetaWebhookSessionThreadCreatedEventData) UnmarshalJSON(data []byte) error { 1384 return apijson.UnmarshalRoot(data, r) 1385 } 1386 1387 type BetaWebhookSessionThreadIdledEventData struct { 1388 // ID of the session that triggered the event. 1389 ID string `json:"id" api:"required"` 1390 OrganizationID string `json:"organization_id" api:"required"` 1391 // ID of the session thread this event refers to. 1392 SessionThreadID string `json:"session_thread_id" api:"required"` 1393 Type constant.SessionThreadIdled `json:"type" default:"session.thread_idled"` 1394 WorkspaceID string `json:"workspace_id" api:"required"` 1395 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1396 JSON struct { 1397 ID respjson.Field 1398 OrganizationID respjson.Field 1399 SessionThreadID respjson.Field 1400 Type respjson.Field 1401 WorkspaceID respjson.Field 1402 ExtraFields map[string]respjson.Field 1403 raw string 1404 } `json:"-"` 1405 } 1406 1407 // Returns the unmodified JSON received from the API 1408 func (r BetaWebhookSessionThreadIdledEventData) RawJSON() string { return r.JSON.raw } 1409 func (r *BetaWebhookSessionThreadIdledEventData) UnmarshalJSON(data []byte) error { 1410 return apijson.UnmarshalRoot(data, r) 1411 } 1412 1413 type BetaWebhookSessionThreadTerminatedEventData struct { 1414 // ID of the session that triggered the event. 1415 ID string `json:"id" api:"required"` 1416 OrganizationID string `json:"organization_id" api:"required"` 1417 // ID of the session thread this event refers to. 1418 SessionThreadID string `json:"session_thread_id" api:"required"` 1419 Type constant.SessionThreadTerminated `json:"type" default:"session.thread_terminated"` 1420 WorkspaceID string `json:"workspace_id" api:"required"` 1421 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1422 JSON struct { 1423 ID respjson.Field 1424 OrganizationID respjson.Field 1425 SessionThreadID respjson.Field 1426 Type respjson.Field 1427 WorkspaceID respjson.Field 1428 ExtraFields map[string]respjson.Field 1429 raw string 1430 } `json:"-"` 1431 } 1432 1433 // Returns the unmodified JSON received from the API 1434 func (r BetaWebhookSessionThreadTerminatedEventData) RawJSON() string { return r.JSON.raw } 1435 func (r *BetaWebhookSessionThreadTerminatedEventData) UnmarshalJSON(data []byte) error { 1436 return apijson.UnmarshalRoot(data, r) 1437 } 1438 1439 type BetaWebhookSessionUpdatedEventData struct { 1440 // ID of the session that triggered the event. 1441 ID string `json:"id" api:"required"` 1442 OrganizationID string `json:"organization_id" api:"required"` 1443 Type constant.SessionUpdated `json:"type" default:"session.updated"` 1444 WorkspaceID string `json:"workspace_id" api:"required"` 1445 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1446 JSON struct { 1447 ID respjson.Field 1448 OrganizationID respjson.Field 1449 Type respjson.Field 1450 WorkspaceID respjson.Field 1451 ExtraFields map[string]respjson.Field 1452 raw string 1453 } `json:"-"` 1454 } 1455 1456 // Returns the unmodified JSON received from the API 1457 func (r BetaWebhookSessionUpdatedEventData) RawJSON() string { return r.JSON.raw } 1458 func (r *BetaWebhookSessionUpdatedEventData) UnmarshalJSON(data []byte) error { 1459 return apijson.UnmarshalRoot(data, r) 1460 } 1461 1462 type BetaWebhookVaultArchivedEventData struct { 1463 // ID of the vault that triggered the event. 1464 ID string `json:"id" api:"required"` 1465 OrganizationID string `json:"organization_id" api:"required"` 1466 Type constant.VaultArchived `json:"type" default:"vault.archived"` 1467 WorkspaceID string `json:"workspace_id" api:"required"` 1468 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1469 JSON struct { 1470 ID respjson.Field 1471 OrganizationID respjson.Field 1472 Type respjson.Field 1473 WorkspaceID respjson.Field 1474 ExtraFields map[string]respjson.Field 1475 raw string 1476 } `json:"-"` 1477 } 1478 1479 // Returns the unmodified JSON received from the API 1480 func (r BetaWebhookVaultArchivedEventData) RawJSON() string { return r.JSON.raw } 1481 func (r *BetaWebhookVaultArchivedEventData) UnmarshalJSON(data []byte) error { 1482 return apijson.UnmarshalRoot(data, r) 1483 } 1484 1485 type BetaWebhookVaultCreatedEventData struct { 1486 // ID of the vault that triggered the event. 1487 ID string `json:"id" api:"required"` 1488 OrganizationID string `json:"organization_id" api:"required"` 1489 Type constant.VaultCreated `json:"type" default:"vault.created"` 1490 WorkspaceID string `json:"workspace_id" api:"required"` 1491 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1492 JSON struct { 1493 ID respjson.Field 1494 OrganizationID respjson.Field 1495 Type respjson.Field 1496 WorkspaceID respjson.Field 1497 ExtraFields map[string]respjson.Field 1498 raw string 1499 } `json:"-"` 1500 } 1501 1502 // Returns the unmodified JSON received from the API 1503 func (r BetaWebhookVaultCreatedEventData) RawJSON() string { return r.JSON.raw } 1504 func (r *BetaWebhookVaultCreatedEventData) UnmarshalJSON(data []byte) error { 1505 return apijson.UnmarshalRoot(data, r) 1506 } 1507 1508 type BetaWebhookVaultCredentialArchivedEventData struct { 1509 // ID of the vault credential that triggered the event. 1510 ID string `json:"id" api:"required"` 1511 OrganizationID string `json:"organization_id" api:"required"` 1512 Type constant.VaultCredentialArchived `json:"type" default:"vault_credential.archived"` 1513 // ID of the vault that owns this credential. 1514 VaultID string `json:"vault_id" api:"required"` 1515 WorkspaceID string `json:"workspace_id" api:"required"` 1516 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1517 JSON struct { 1518 ID respjson.Field 1519 OrganizationID respjson.Field 1520 Type respjson.Field 1521 VaultID respjson.Field 1522 WorkspaceID respjson.Field 1523 ExtraFields map[string]respjson.Field 1524 raw string 1525 } `json:"-"` 1526 } 1527 1528 // Returns the unmodified JSON received from the API 1529 func (r BetaWebhookVaultCredentialArchivedEventData) RawJSON() string { return r.JSON.raw } 1530 func (r *BetaWebhookVaultCredentialArchivedEventData) UnmarshalJSON(data []byte) error { 1531 return apijson.UnmarshalRoot(data, r) 1532 } 1533 1534 type BetaWebhookVaultCredentialCreatedEventData struct { 1535 // ID of the vault credential that triggered the event. 1536 ID string `json:"id" api:"required"` 1537 OrganizationID string `json:"organization_id" api:"required"` 1538 Type constant.VaultCredentialCreated `json:"type" default:"vault_credential.created"` 1539 // ID of the vault that owns this credential. 1540 VaultID string `json:"vault_id" api:"required"` 1541 WorkspaceID string `json:"workspace_id" api:"required"` 1542 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1543 JSON struct { 1544 ID respjson.Field 1545 OrganizationID respjson.Field 1546 Type respjson.Field 1547 VaultID respjson.Field 1548 WorkspaceID respjson.Field 1549 ExtraFields map[string]respjson.Field 1550 raw string 1551 } `json:"-"` 1552 } 1553 1554 // Returns the unmodified JSON received from the API 1555 func (r BetaWebhookVaultCredentialCreatedEventData) RawJSON() string { return r.JSON.raw } 1556 func (r *BetaWebhookVaultCredentialCreatedEventData) UnmarshalJSON(data []byte) error { 1557 return apijson.UnmarshalRoot(data, r) 1558 } 1559 1560 type BetaWebhookVaultCredentialDeletedEventData struct { 1561 // ID of the vault credential that triggered the event. 1562 ID string `json:"id" api:"required"` 1563 OrganizationID string `json:"organization_id" api:"required"` 1564 Type constant.VaultCredentialDeleted `json:"type" default:"vault_credential.deleted"` 1565 // ID of the vault that owns this credential. 1566 VaultID string `json:"vault_id" api:"required"` 1567 WorkspaceID string `json:"workspace_id" api:"required"` 1568 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1569 JSON struct { 1570 ID respjson.Field 1571 OrganizationID respjson.Field 1572 Type respjson.Field 1573 VaultID respjson.Field 1574 WorkspaceID respjson.Field 1575 ExtraFields map[string]respjson.Field 1576 raw string 1577 } `json:"-"` 1578 } 1579 1580 // Returns the unmodified JSON received from the API 1581 func (r BetaWebhookVaultCredentialDeletedEventData) RawJSON() string { return r.JSON.raw } 1582 func (r *BetaWebhookVaultCredentialDeletedEventData) UnmarshalJSON(data []byte) error { 1583 return apijson.UnmarshalRoot(data, r) 1584 } 1585 1586 type BetaWebhookVaultCredentialRefreshFailedEventData struct { 1587 // ID of the vault credential that triggered the event. 1588 ID string `json:"id" api:"required"` 1589 OrganizationID string `json:"organization_id" api:"required"` 1590 Type constant.VaultCredentialRefreshFailed `json:"type" default:"vault_credential.refresh_failed"` 1591 // ID of the vault that owns this credential. 1592 VaultID string `json:"vault_id" api:"required"` 1593 WorkspaceID string `json:"workspace_id" api:"required"` 1594 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1595 JSON struct { 1596 ID respjson.Field 1597 OrganizationID respjson.Field 1598 Type respjson.Field 1599 VaultID respjson.Field 1600 WorkspaceID respjson.Field 1601 ExtraFields map[string]respjson.Field 1602 raw string 1603 } `json:"-"` 1604 } 1605 1606 // Returns the unmodified JSON received from the API 1607 func (r BetaWebhookVaultCredentialRefreshFailedEventData) RawJSON() string { return r.JSON.raw } 1608 func (r *BetaWebhookVaultCredentialRefreshFailedEventData) UnmarshalJSON(data []byte) error { 1609 return apijson.UnmarshalRoot(data, r) 1610 } 1611 1612 type BetaWebhookVaultDeletedEventData struct { 1613 // ID of the vault that triggered the event. 1614 ID string `json:"id" api:"required"` 1615 OrganizationID string `json:"organization_id" api:"required"` 1616 Type constant.VaultDeleted `json:"type" default:"vault.deleted"` 1617 WorkspaceID string `json:"workspace_id" api:"required"` 1618 // JSON contains metadata for fields, check presence with [respjson.Field.Valid]. 1619 JSON struct { 1620 ID respjson.Field 1621 OrganizationID respjson.Field 1622 Type respjson.Field 1623 WorkspaceID respjson.Field 1624 ExtraFields map[string]respjson.Field 1625 raw string 1626 } `json:"-"` 1627 } 1628 1629 // Returns the unmodified JSON received from the API 1630 func (r BetaWebhookVaultDeletedEventData) RawJSON() string { return r.JSON.raw } 1631 func (r *BetaWebhookVaultDeletedEventData) UnmarshalJSON(data []byte) error { 1632 return apijson.UnmarshalRoot(data, r) 1633 }