Class: Infrawrench::DigestNamespace

Inherits:
Object
  • Object
show all
Defined in:
lib/infrawrench/client.rb,
sig/infrawrench/sdk.rbs

Overview

client.digest

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(transport) ⇒ DigestNamespace

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of DigestNamespace.

Parameters:



6644
6645
6646
6647
# File 'lib/infrawrench/client.rb', line 6644

def initialize(transport)
  @transport = transport
  @recipients = DigestRecipientsNamespace.new(@transport)
end

Instance Attribute Details

#recipientsDigestRecipientsNamespace (readonly)

Returns client.digest.recipients.

Returns:



6640
6641
6642
# File 'lib/infrawrench/client.rb', line 6640

def recipients
  @recipients
end

Instance Method Details

#get(org_id: nil, request_options: nil) ⇒ Hash

Get the organization's weekly digest settings

The weekly digest is a summary of the last complete Monday-to-Sunday week's spend (with week-over-week movers), sync incidents, and resource churn, delivered to the Slack channels and Teams webhooks opted into the weeklyDigest trigger and to the organization's digest email recipients. The response also carries the outcome of the most recent delivery attempt so a silently failing digest is visible.

GET /api/org/orgId/digest

Parameters:

  • org_id (String, nil) (defaults to: nil)

    Organization id. Defaults to the org_id the client was constructed with.

  • request_options (Hash, nil) (defaults to: nil)

    Per-call :headers, :timeout and :open_timeout.

  • org_id: (String, nil) (defaults to: nil)
  • request_options: (Hash[Symbol, untyped], nil) (defaults to: nil)

Returns:

  • (Hash)

    Parsed JSON, shaped as DigestSettings — see sig/infrawrench/sdk.rbs.

Raises:



6665
6666
6667
6668
6669
6670
6671
6672
# File 'lib/infrawrench/client.rb', line 6665

def get(org_id: nil, request_options: nil)
  @transport.request(
    http_method: "GET",
    path: "/api/org/{orgId}/digest",
    path_params: { "orgId" => org_id },
    request_options: request_options
  )
end

#post_org_org_id_digest_send(org_id: nil, request_options: nil) ⇒ Hash

Compose and send last week's digest now

Ignores the schedule and the enabled flag — composes the digest for the last complete week and sends it to every opted-in channel and email recipient. This is also the manual recovery for a partial delivery, which is never retried automatically. Fails when nothing is routed to receive the digest, or when every destination rejected it.

POST /api/org/orgId/digest/send

Raises on 400: Bad request

Parameters:

  • org_id (String, nil) (defaults to: nil)

    Organization id. Defaults to the org_id the client was constructed with.

  • request_options (Hash, nil) (defaults to: nil)

    Per-call :headers, :timeout and :open_timeout.

  • org_id: (String, nil) (defaults to: nil)
  • request_options: (Hash[Symbol, untyped], nil) (defaults to: nil)

Returns:

  • (Hash)

    Parsed JSON, shaped as DigestSendResult — see sig/infrawrench/sdk.rbs.

Raises:



6691
6692
6693
6694
6695
6696
6697
6698
# File 'lib/infrawrench/client.rb', line 6691

def post_org_org_id_digest_send(org_id: nil, request_options: nil)
  @transport.request(
    http_method: "POST",
    path: "/api/org/{orgId}/digest/send",
    path_params: { "orgId" => org_id },
    request_options: request_options
  )
end

#update(org_id: nil, body: nil, request_options: nil) ⇒ Hash

Update the weekly digest settings

Every field is optional. Enabling schedules the first digest for the next configured send time rather than sending immediately — use POST /digest/send for an immediate one. The week boundary follows timezone, so the reported window is always the organization's own local Monday-to-Sunday week. Changing the schedule clears any parked failure state but never replays a week that already went out.

PUT /api/org/orgId/digest

Raises on 400: Bad request

Parameters:

  • org_id (String, nil) (defaults to: nil)

    Organization id. Defaults to the org_id the client was constructed with.

  • body (Hash, nil) (defaults to: nil)

    Request body, shaped as DigestSettingsUpdate.

  • request_options (Hash, nil) (defaults to: nil)

    Per-call :headers, :timeout and :open_timeout.

  • org_id: (String, nil) (defaults to: nil)
  • body: (digest_settings_update, nil) (defaults to: nil)
  • request_options: (Hash[Symbol, untyped], nil) (defaults to: nil)

Returns:

  • (Hash)

    Parsed JSON, shaped as DigestSettings — see sig/infrawrench/sdk.rbs.

Raises:



6719
6720
6721
6722
6723
6724
6725
6726
6727
# File 'lib/infrawrench/client.rb', line 6719

def update(org_id: nil, body: nil, request_options: nil)
  @transport.request(
    http_method: "PUT",
    path: "/api/org/{orgId}/digest",
    path_params: { "orgId" => org_id },
    body: body,
    request_options: request_options
  )
end