Skip to content
Everruns Cloud is open in early access. Run agents without operating the platform.

Verify current installation permissions without changing provider data; requires agent management access and enforces a check cooldown.

POST
/v1/health-issues/{issue_id}/check
curl --request POST \
--url https://app.everruns.com/api/v1/health-issues/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/check
issue_id
required
string format: uuid
Media typeapplication/json

An organization-scoped operational issue and its current recovery evidence.

object
agent_id
required

Public identifier of the owning agent.

string
agent_name
required

Display name of the owning agent.

string
body
required

Explanation of the impact and recovery action.

string
channel_id
required

Public identifier of the affected channel.

string
code
required

Detector code identifying the affected integration check.

string
error_code

Sanitized provider or verification error code, when available.

string | null
first_detected_at
required

Time the current issue episode was first detected.

string format: date-time
href
required

Application-relative link to the issue details.

string
id
required

Stable identifier of the canonical issue.

string format: uuid
last_checked_at
required

Time the latest accepted verification evidence was observed.

string format: date-time
missing_scopes
required

Required Slack scopes absent from the verified grant.

Array<string>
notification_id

Current user’s announcement identifier, when notifications are enabled.

string | null
snoozed_until

Current user’s reminder suppression deadline, if snoozed.

string | null format: date-time
stale
required

Whether the evidence is old, unavailable, or for a previous channel revision.

boolean
status
required

Current issue state: open, needs_check, resolved, or inapplicable.

string
title
required

Human-readable summary of the required action.

string
Example
{
"agent_id": "agent_550e8400e29b41d4a716446655440000",
"agent_name": "Support assistant",
"body": "Reconnect Slack to grant the required permissions.",
"channel_id": "appchan_550e8400e29b41d4a716446655440000",
"code": "slack.permissions",
"error_code": "missing_scope",
"first_detected_at": "2026-10-03T12:00:00Z",
"href": "/settings/health?issue=550e8400-e29b-41d4-a716-446655440000",
"id": "550e8400-e29b-41d4-a716-446655440000",
"last_checked_at": "2026-10-03T12:05:00Z",
"missing_scopes": [
"reactions:write"
],
"notification_id": "notification_550e8400e29b41d4a716446655440001",
"snoozed_until": "2026-10-04T12:00:00Z",
"stale": false,
"status": "open",
"title": "Slack permissions need updating"
}
Media typeapplication/json

Standard error response.

Wire shape is RFC 9457 Problem Details: every error response includes title and status, and may include detail, code, allowed_actions, retry_after_seconds, instance, and type. The content type is rewritten to application/problem+json by [problem_json_content_type].

object
allowed_actions

Recovery actions the caller can take next.

Array<object>

Agent-actionable link describing a follow-up the caller can take. Used in two contexts:

  • Error recovery — ErrorResponse.allowed_actions carries rels like retry, retry-later, unarchive, get-existing so the agent knows the right next call after a 4xx/429.
  • Entity hypermedia — WithUrls<T>.allowed_actions carries state-aware rels like cancel, events, self, update on the entity itself so the agent can follow links instead of reconstructing routes from prose.

The shape is intentionally identical across both contexts; the closed rel vocabulary documented in knowledge/execution/api-conventions.md distinguishes them.

object
hint

Short, agent-readable hint (e.g. “Shorten ‘name’ to <= 200 chars.”, “Cancel the active turn for this session.”).

string | null
href

Absolute (preferred) or relative URL the caller may invoke directly. Always present on entity hypermedia actions (WithUrls<T>.allowed_actions); optional on error-recovery actions (ErrorResponse.allowed_actions) where the matching operation_id is enough and the URI is implicit from the failed call.

string | null
method

HTTP method to use against href. Required for entity hypermedia actions; usually omitted on error-recovery actions where the same operation is retried with its original method.

string | null
operation_id

OpenAPI operationId the caller should invoke. Lets an MCP client resolve the call without parsing href.

string | null
rel
required

Link relation describing the action. Closed vocabulary documented in knowledge/execution/api-conventions.md — examples: self, cancel, pause, resume, events, retry, retry-later, unarchive, get-existing, delete, update.

string
schema_ref

OpenAPI $ref to the request-body schema, when the action takes one (e.g. #/components/schemas/UpdateSessionRequest). Lets a tool-calling agent fetch the input shape without scanning the whole spec.

string | null
code

Stable, machine-readable error code (snake_case).

string | null
detail

Human-readable explanation specific to this occurrence.

string | null
instance

Request URI for this occurrence.

string | null
retry_after_seconds

Seconds the caller should wait before retrying (429 / transient 503).

integer | null format: int32
status
required

HTTP status code; mirrors the response status line.

integer format: int32
title
required

Short, human-readable summary of the problem (e.g. “Not Found”).

string
type

RFC 9457 problem type URI. Optional; identifies the problem class.

string | null
Example
{
"allowed_actions": [
{
"method": "POST"
}
],
"code": "session_not_found",
"detail": "Session session_01933b5a000070008000000000000001 not found in org org_01933b5a000070008000000000000001.",
"instance": "/v1/sessions/session_01933b5a000070008000000000000001",
"retry_after_seconds": 30,
"status": 404,
"title": "Session not found",
"type": "https://docs.everruns.com/errors/session_not_found"
}