> For the complete documentation index, see [llms.txt](https://developer.harness.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.harness.io/ai-sre/api-reference/models.md).

# Models

## The AlertResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"AlertResponse":{"required":["prettyId","projectId","title"],"type":"object","properties":{"prettyId":{"type":"string","description":"Alert pretty id, e.g. ALERT-123"},"projectId":{"type":"string"},"title":{"type":"string"},"description":{"type":"string","description":"Alert description"},"status":{"type":"string","description":"Resolved alert status option id (e.g. triggered, resolved)"},"priority":{"$ref":"#/components/schemas/Priority"},"impactedServices":{"type":"array","description":"Harness service identifiers for impacted services","items":{"type":"string","description":"Harness service identifiers for impacted services"}},"environments":{"type":"array","description":"Environment labels (e.g. prod, qa)","items":{"type":"string","description":"Environment labels (e.g. prod, qa)"}},"monitoringLink":{"type":"string","description":"Monitoring link for the alert"},"deduplicationId":{"type":"string","description":"Deduplication / correlation key"},"quietMode":{"type":"boolean","description":"When true, suppresses notifications and on-call pages"},"keyEvents":{"type":"array","description":"Key events timeline","items":{"$ref":"#/components/schemas/KeyEventInfo"}},"relatedActivities":{"type":"array","description":"Related activities","items":{"$ref":"#/components/schemas/RelatedActivity"}},"relatedExternalEntities":{"type":"array","description":"External items (deployments, PRs, tickets, URLs) linked to this activity","items":{"$ref":"#/components/schemas/RelatedExternalEntity"}},"commsLinks":{"type":"array","description":"Communication links (includes a WEB link to the alert)","items":{"$ref":"#/components/schemas/CommsLink"}},"createdAtTimestamp":{"type":"integer","description":"Epoch timestamp when created (milliseconds)","format":"int64"},"startedAtTimestamp":{"type":"integer","description":"Epoch timestamp when the alert started (milliseconds)","format":"int64"},"acknowledgedAtTimestamp":{"type":"integer","description":"Epoch timestamp when acknowledged (milliseconds)","format":"int64"},"resolvedAtTimestamp":{"type":"integer","description":"Epoch timestamp when resolved (milliseconds)","format":"int64"},"closedAtTimestamp":{"type":"integer","description":"Epoch timestamp when closed (milliseconds)","format":"int64"}}},"Priority":{"type":"object","properties":{"id":{"type":"string","description":"Priority option id"},"label":{"type":"string","description":"Display label resolved from the activity template"}},"description":"Alert priority"},"KeyEventInfo":{"type":"object","properties":{"timestamp":{"type":"integer","description":"Epoch milliseconds when the event occurred","format":"int64"},"status":{"type":"string","description":"Status at the time of the event"},"details":{"type":"string","description":"Human-readable details"}},"description":"Key event in the incident timeline"},"RelatedActivity":{"required":["globalId","name","prettyId","templateTypeName","title"],"type":"object","properties":{"name":{"type":"string","description":"Relationship verb (e.g., \"relates to\")"},"templateTypeName":{"type":"string","description":"Template type name","enum":["INCIDENT","ALERT","DEPLOY","CHANGE"]},"prettyId":{"type":"string"},"globalId":{"type":"string"},"title":{"type":"string"}},"description":"Related activities"},"RelatedExternalEntity":{"required":["externalId","name","provider","relationshipGlobalId","type","url"],"type":"object","properties":{"relationshipGlobalId":{"type":"string","description":"Global ID of the link; pass this to the delete endpoint"},"name":{"type":"string","description":"Relationship verb with the activity as the subject (e.g., \"is caused by\")"},"type":{"type":"string","enum":["DEPLOYMENT","BUILD","PULL_REQUEST","TICKET","FEATURE_FLAG","LINK"]},"provider":{"type":"string","enum":["HARNESS","GITHUB","GITLAB","BITBUCKET","JIRA","SERVICENOW","GENERIC"]},"externalId":{"type":"string","description":"Canonical identifier within (type, provider), e.g. \"owner/repo#123\" or \"IR-3638\""},"url":{"type":"string"},"displayName":{"type":"string"}},"description":"An external item (deployment, PR, ticket, URL) linked to an activity"},"CommsLink":{"required":["linkType","url"],"type":"object","properties":{"url":{"type":"string"},"linkType":{"type":"string","enum":["WEB","SLACK"]}},"description":"Communication links"}}}}
```

## The CommsLink object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"CommsLink":{"required":["linkType","url"],"type":"object","properties":{"url":{"type":"string"},"linkType":{"type":"string","enum":["WEB","SLACK"]}},"description":"Communication links"}}}}
```

## The KeyEventInfo object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"KeyEventInfo":{"type":"object","properties":{"timestamp":{"type":"integer","description":"Epoch milliseconds when the event occurred","format":"int64"},"status":{"type":"string","description":"Status at the time of the event"},"details":{"type":"string","description":"Human-readable details"}},"description":"Key event in the incident timeline"}}}}
```

## The Priority object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"Priority":{"type":"object","properties":{"id":{"type":"string","description":"Priority option id"},"label":{"type":"string","description":"Display label resolved from the activity template"}},"description":"Alert priority"}}}}
```

## The RelatedActivity object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"RelatedActivity":{"required":["globalId","name","prettyId","templateTypeName","title"],"type":"object","properties":{"name":{"type":"string","description":"Relationship verb (e.g., \"relates to\")"},"templateTypeName":{"type":"string","description":"Template type name","enum":["INCIDENT","ALERT","DEPLOY","CHANGE"]},"prettyId":{"type":"string"},"globalId":{"type":"string"},"title":{"type":"string"}},"description":"Related activities"}}}}
```

## The RelatedExternalEntity object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"RelatedExternalEntity":{"required":["externalId","name","provider","relationshipGlobalId","type","url"],"type":"object","properties":{"relationshipGlobalId":{"type":"string","description":"Global ID of the link; pass this to the delete endpoint"},"name":{"type":"string","description":"Relationship verb with the activity as the subject (e.g., \"is caused by\")"},"type":{"type":"string","enum":["DEPLOYMENT","BUILD","PULL_REQUEST","TICKET","FEATURE_FLAG","LINK"]},"provider":{"type":"string","enum":["HARNESS","GITHUB","GITLAB","BITBUCKET","JIRA","SERVICENOW","GENERIC"]},"externalId":{"type":"string","description":"Canonical identifier within (type, provider), e.g. \"owner/repo#123\" or \"IR-3638\""},"url":{"type":"string"},"displayName":{"type":"string"}},"description":"An external item (deployment, PR, ticket, URL) linked to an activity"}}}}
```

## The OffsetPaginatedResultAlertResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"OffsetPaginatedResultAlertResponse":{"type":"object","properties":{"entities":{"type":"array","items":{"$ref":"#/components/schemas/AlertResponse"}},"totalCount":{"type":"integer","format":"int32"}}},"AlertResponse":{"required":["prettyId","projectId","title"],"type":"object","properties":{"prettyId":{"type":"string","description":"Alert pretty id, e.g. ALERT-123"},"projectId":{"type":"string"},"title":{"type":"string"},"description":{"type":"string","description":"Alert description"},"status":{"type":"string","description":"Resolved alert status option id (e.g. triggered, resolved)"},"priority":{"$ref":"#/components/schemas/Priority"},"impactedServices":{"type":"array","description":"Harness service identifiers for impacted services","items":{"type":"string","description":"Harness service identifiers for impacted services"}},"environments":{"type":"array","description":"Environment labels (e.g. prod, qa)","items":{"type":"string","description":"Environment labels (e.g. prod, qa)"}},"monitoringLink":{"type":"string","description":"Monitoring link for the alert"},"deduplicationId":{"type":"string","description":"Deduplication / correlation key"},"quietMode":{"type":"boolean","description":"When true, suppresses notifications and on-call pages"},"keyEvents":{"type":"array","description":"Key events timeline","items":{"$ref":"#/components/schemas/KeyEventInfo"}},"relatedActivities":{"type":"array","description":"Related activities","items":{"$ref":"#/components/schemas/RelatedActivity"}},"relatedExternalEntities":{"type":"array","description":"External items (deployments, PRs, tickets, URLs) linked to this activity","items":{"$ref":"#/components/schemas/RelatedExternalEntity"}},"commsLinks":{"type":"array","description":"Communication links (includes a WEB link to the alert)","items":{"$ref":"#/components/schemas/CommsLink"}},"createdAtTimestamp":{"type":"integer","description":"Epoch timestamp when created (milliseconds)","format":"int64"},"startedAtTimestamp":{"type":"integer","description":"Epoch timestamp when the alert started (milliseconds)","format":"int64"},"acknowledgedAtTimestamp":{"type":"integer","description":"Epoch timestamp when acknowledged (milliseconds)","format":"int64"},"resolvedAtTimestamp":{"type":"integer","description":"Epoch timestamp when resolved (milliseconds)","format":"int64"},"closedAtTimestamp":{"type":"integer","description":"Epoch timestamp when closed (milliseconds)","format":"int64"}}},"Priority":{"type":"object","properties":{"id":{"type":"string","description":"Priority option id"},"label":{"type":"string","description":"Display label resolved from the activity template"}},"description":"Alert priority"},"KeyEventInfo":{"type":"object","properties":{"timestamp":{"type":"integer","description":"Epoch milliseconds when the event occurred","format":"int64"},"status":{"type":"string","description":"Status at the time of the event"},"details":{"type":"string","description":"Human-readable details"}},"description":"Key event in the incident timeline"},"RelatedActivity":{"required":["globalId","name","prettyId","templateTypeName","title"],"type":"object","properties":{"name":{"type":"string","description":"Relationship verb (e.g., \"relates to\")"},"templateTypeName":{"type":"string","description":"Template type name","enum":["INCIDENT","ALERT","DEPLOY","CHANGE"]},"prettyId":{"type":"string"},"globalId":{"type":"string"},"title":{"type":"string"}},"description":"Related activities"},"RelatedExternalEntity":{"required":["externalId","name","provider","relationshipGlobalId","type","url"],"type":"object","properties":{"relationshipGlobalId":{"type":"string","description":"Global ID of the link; pass this to the delete endpoint"},"name":{"type":"string","description":"Relationship verb with the activity as the subject (e.g., \"is caused by\")"},"type":{"type":"string","enum":["DEPLOYMENT","BUILD","PULL_REQUEST","TICKET","FEATURE_FLAG","LINK"]},"provider":{"type":"string","enum":["HARNESS","GITHUB","GITLAB","BITBUCKET","JIRA","SERVICENOW","GENERIC"]},"externalId":{"type":"string","description":"Canonical identifier within (type, provider), e.g. \"owner/repo#123\" or \"IR-3638\""},"url":{"type":"string"},"displayName":{"type":"string"}},"description":"An external item (deployment, PR, ticket, URL) linked to an activity"},"CommsLink":{"required":["linkType","url"],"type":"object","properties":{"url":{"type":"string"},"linkType":{"type":"string","enum":["WEB","SLACK"]}},"description":"Communication links"}}}}
```

## The UpdateAlertRequest object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"UpdateAlertRequest":{"type":"object","properties":{"title":{"type":"string","description":"Alert title","nullable":true},"description":{"type":"string","description":"Alert description","nullable":true},"priority":{"type":"string","description":"Alert priority option id (p1_critical, p2_error, p3_warning, p4_info). To acknowledge, resolve, or dismiss an alert, use the dedicated lifecycle endpoints instead.","nullable":true},"status":{"type":"string","description":"Alert status option id. To acknowledge, resolve, or dismiss, use POST /api/v1/mc/alerts/{alertId}/acknowledge|resolve|dismiss. Reopening to triggered is allowed here.","nullable":true},"impactedServices":{"type":"array","description":"Impacted services by Harness identifier, name, or ID (replaces the full list)","nullable":true,"items":{"type":"string","description":"Impacted services by Harness identifier, name, or ID (replaces the full list)","nullable":true}},"environments":{"type":"array","description":"Harness environment identifiers (replaces the full list)","nullable":true,"items":{"type":"string","description":"Harness environment identifiers (replaces the full list)","nullable":true}},"monitoringLink":{"type":"string","description":"Monitoring link for the alert","nullable":true},"quietMode":{"type":"boolean","description":"When true, suppresses user notifications and on-call pages for this alert","nullable":true}},"description":"JSON merge-patch body for updating an alert. Omit a field to leave it unchanged; set it to null to clear it."}}}}
```

## The BuildVersionInfo object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"BuildVersionInfo":{"type":"object","properties":{"service":{"type":"string","description":"Service name"},"version":{"type":"string","description":"Deployed version"},"commitSha":{"type":"string","description":"Commit SHA"},"branch":{"type":"string","description":"Source branch"},"repositoryName":{"type":"string","description":"Build repository name"},"repositoryUrl":{"type":"string","description":"Build repository URL"}},"description":"A service and the version that was deployed"}}}}
```

## The DeployResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"DeployResponse":{"required":["id","projectId"],"type":"object","properties":{"id":{"type":"string","description":"Deploy id (activity pretty id, e.g. DEPL-24)"},"projectId":{"type":"string"},"title":{"type":"string","description":"Deploy title"},"summary":{"type":"string","description":"Deploy summary"},"status":{"type":"string","description":"Deploy status","enum":["PENDING","IN_PROGRESS","SUCCESS","FAILED","ROLLED_BACK"]},"environments":{"type":"array","description":"Environment labels the deploy targeted (e.g. prod, qa)","items":{"type":"string","description":"Environment labels the deploy targeted (e.g. prod, qa)"}},"buildVersions":{"type":"array","description":"Services and versions included in the deploy","items":{"$ref":"#/components/schemas/BuildVersionInfo"}},"deployTimestamp":{"type":"integer","description":"Epoch timestamp of the deploy (milliseconds)","format":"int64"},"webLink":{"type":"string","description":"Web link to the deploy activity"},"relatedActivities":{"type":"array","description":"Related activities","items":{"$ref":"#/components/schemas/RelatedActivity"}}}},"BuildVersionInfo":{"type":"object","properties":{"service":{"type":"string","description":"Service name"},"version":{"type":"string","description":"Deployed version"},"commitSha":{"type":"string","description":"Commit SHA"},"branch":{"type":"string","description":"Source branch"},"repositoryName":{"type":"string","description":"Build repository name"},"repositoryUrl":{"type":"string","description":"Build repository URL"}},"description":"A service and the version that was deployed"},"RelatedActivity":{"required":["globalId","name","prettyId","templateTypeName","title"],"type":"object","properties":{"name":{"type":"string","description":"Relationship verb (e.g., \"relates to\")"},"templateTypeName":{"type":"string","description":"Template type name","enum":["INCIDENT","ALERT","DEPLOY","CHANGE"]},"prettyId":{"type":"string"},"globalId":{"type":"string"},"title":{"type":"string"}},"description":"Related activities"}}}}
```

## The OffsetPaginatedResultDeployResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"OffsetPaginatedResultDeployResponse":{"type":"object","properties":{"entities":{"type":"array","items":{"$ref":"#/components/schemas/DeployResponse"}},"totalCount":{"type":"integer","format":"int32"}}},"DeployResponse":{"required":["id","projectId"],"type":"object","properties":{"id":{"type":"string","description":"Deploy id (activity pretty id, e.g. DEPL-24)"},"projectId":{"type":"string"},"title":{"type":"string","description":"Deploy title"},"summary":{"type":"string","description":"Deploy summary"},"status":{"type":"string","description":"Deploy status","enum":["PENDING","IN_PROGRESS","SUCCESS","FAILED","ROLLED_BACK"]},"environments":{"type":"array","description":"Environment labels the deploy targeted (e.g. prod, qa)","items":{"type":"string","description":"Environment labels the deploy targeted (e.g. prod, qa)"}},"buildVersions":{"type":"array","description":"Services and versions included in the deploy","items":{"$ref":"#/components/schemas/BuildVersionInfo"}},"deployTimestamp":{"type":"integer","description":"Epoch timestamp of the deploy (milliseconds)","format":"int64"},"webLink":{"type":"string","description":"Web link to the deploy activity"},"relatedActivities":{"type":"array","description":"Related activities","items":{"$ref":"#/components/schemas/RelatedActivity"}}}},"BuildVersionInfo":{"type":"object","properties":{"service":{"type":"string","description":"Service name"},"version":{"type":"string","description":"Deployed version"},"commitSha":{"type":"string","description":"Commit SHA"},"branch":{"type":"string","description":"Source branch"},"repositoryName":{"type":"string","description":"Build repository name"},"repositoryUrl":{"type":"string","description":"Build repository URL"}},"description":"A service and the version that was deployed"},"RelatedActivity":{"required":["globalId","name","prettyId","templateTypeName","title"],"type":"object","properties":{"name":{"type":"string","description":"Relationship verb (e.g., \"relates to\")"},"templateTypeName":{"type":"string","description":"Template type name","enum":["INCIDENT","ALERT","DEPLOY","CHANGE"]},"prettyId":{"type":"string"},"globalId":{"type":"string"},"title":{"type":"string"}},"description":"Related activities"}}}}
```

## The AddRootCauseTheoryResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"AddRootCauseTheoryResponse":{"type":"object","properties":{"theory":{"$ref":"#/components/schemas/RootCauseTheoryInfo"},"created":{"type":"boolean","description":"False when a theory with the same message already existed"},"notLinked":{"type":"array","description":"Cited items that weren't found, so weren't linked","items":{"$ref":"#/components/schemas/RelatedActivityIssue"}},"unverified":{"type":"array","description":"Cited items that couldn't be checked right now, have no activity in the incident's project, or whose URL isn't the cited type; they're linked as cited","items":{"$ref":"#/components/schemas/RelatedActivityIssue"}}},"description":"Result of adding a root-cause theory to an incident"},"RootCauseTheoryInfo":{"type":"object","properties":{"id":{"type":"string","description":"Theory id"},"message":{"type":"string","description":"Theory message/description"},"status":{"type":"string","description":"Theory status (e.g. CONFIRMED, RULED_OUT, INVESTIGATING)"},"confidence":{"type":"integer","description":"Confidence level (0-100)","format":"int32"},"aiGenerated":{"type":"boolean","description":"Whether the theory was AI-generated"},"relatedActivities":{"type":"array","description":"Items the theory cites","items":{"$ref":"#/components/schemas/RelatedActivityInfo"}}},"description":"Root cause theory for an incident"},"RelatedActivityInfo":{"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK"},"displayId":{"type":"string","description":"Text to show for the item"},"url":{"type":"string","description":"Link to the item"}},"description":"An item a root-cause theory cites"},"RelatedActivityIssue":{"type":"object","properties":{"reference":{"$ref":"#/components/schemas/RelatedActivityReference"},"reason":{"type":"string","description":"Why it wasn't linked or couldn't be checked"}},"description":"A cited item that couldn't be linked or checked, and why"},"RelatedActivityReference":{"required":["id","type"],"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK. For an item cited by web URL the type is a hint: the URL decides how it's stored"},"id":{"type":"string","description":"The item's public ID (e.g. DEPL-12). For a PR, its web URL or <repository identifier>#<PR number> for a repository in the incident's project's Harness Code (e.g. checkout-service#42). Anything else, such as a pipeline execution, build, feature flag, ticket or status page, by its web URL"}},"description":"An item a root-cause theory cites"}}}}
```

## The RelatedActivityInfo object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"RelatedActivityInfo":{"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK"},"displayId":{"type":"string","description":"Text to show for the item"},"url":{"type":"string","description":"Link to the item"}},"description":"An item a root-cause theory cites"}}}}
```

## The RelatedActivityIssue object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"RelatedActivityIssue":{"type":"object","properties":{"reference":{"$ref":"#/components/schemas/RelatedActivityReference"},"reason":{"type":"string","description":"Why it wasn't linked or couldn't be checked"}},"description":"A cited item that couldn't be linked or checked, and why"},"RelatedActivityReference":{"required":["id","type"],"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK. For an item cited by web URL the type is a hint: the URL decides how it's stored"},"id":{"type":"string","description":"The item's public ID (e.g. DEPL-12). For a PR, its web URL or <repository identifier>#<PR number> for a repository in the incident's project's Harness Code (e.g. checkout-service#42). Anything else, such as a pipeline execution, build, feature flag, ticket or status page, by its web URL"}},"description":"An item a root-cause theory cites"}}}}
```

## The RelatedActivityReference object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"RelatedActivityReference":{"required":["id","type"],"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK. For an item cited by web URL the type is a hint: the URL decides how it's stored"},"id":{"type":"string","description":"The item's public ID (e.g. DEPL-12). For a PR, its web URL or <repository identifier>#<PR number> for a repository in the incident's project's Harness Code (e.g. checkout-service#42). Anything else, such as a pipeline execution, build, feature flag, ticket or status page, by its web URL"}},"description":"An item a root-cause theory cites"}}}}
```

## The RootCauseTheoryInfo object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"RootCauseTheoryInfo":{"type":"object","properties":{"id":{"type":"string","description":"Theory id"},"message":{"type":"string","description":"Theory message/description"},"status":{"type":"string","description":"Theory status (e.g. CONFIRMED, RULED_OUT, INVESTIGATING)"},"confidence":{"type":"integer","description":"Confidence level (0-100)","format":"int32"},"aiGenerated":{"type":"boolean","description":"Whether the theory was AI-generated"},"relatedActivities":{"type":"array","description":"Items the theory cites","items":{"$ref":"#/components/schemas/RelatedActivityInfo"}}},"description":"Root cause theory for an incident"},"RelatedActivityInfo":{"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK"},"displayId":{"type":"string","description":"Text to show for the item"},"url":{"type":"string","description":"Link to the item"}},"description":"An item a root-cause theory cites"}}}}
```

## The AddRootCauseTheoryRequest object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"AddRootCauseTheoryRequest":{"required":["message"],"type":"object","properties":{"message":{"type":"string","description":"The root-cause theory text"},"status":{"type":"string","description":"Theory status: INVESTIGATING (default), CONFIRMED, or RULED_OUT"},"confidence":{"type":"integer","description":"Confidence level (0-100); defaults based on status when omitted","format":"int32"},"relatedActivities":{"type":"array","description":"Items the theory cites, shown as links under it. Each is checked against the incident's project; any that can't be found are returned in notLinked and the theory is still added. The items on a CONFIRMED theory are recorded as the incident's cause.","items":{"$ref":"#/components/schemas/RelatedActivityReference"}}},"description":"Request body for adding a root-cause theory"},"RelatedActivityReference":{"required":["id","type"],"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK. For an item cited by web URL the type is a hint: the URL decides how it's stored"},"id":{"type":"string","description":"The item's public ID (e.g. DEPL-12). For a PR, its web URL or <repository identifier>#<PR number> for a repository in the incident's project's Harness Code (e.g. checkout-service#42). Anything else, such as a pipeline execution, build, feature flag, ticket or status page, by its web URL"}},"description":"An item a root-cause theory cites"}}}}
```

## The IncidentResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"IncidentResponse":{"required":["prettyId","projectId","reporter","status","title"],"type":"object","properties":{"prettyId":{"type":"string"},"projectId":{"type":"string"},"title":{"type":"string"},"summary":{"type":"string","description":"Incident summary"},"status":{"type":"string","description":"Incident status","enum":["NEW","INVESTIGATING","FIXING","MONITORING","CLOSED"]},"reporter":{"$ref":"#/components/schemas/OncallUser"},"commander":{"$ref":"#/components/schemas/OncallUser"},"impactedServices":{"type":"array","description":"Harness service identifiers for impacted services","items":{"type":"string","description":"Harness service identifiers for impacted services"}},"environments":{"type":"array","description":"Environment labels (e.g. prod, qa)","items":{"type":"string","description":"Environment labels (e.g. prod, qa)"}},"severity":{"$ref":"#/components/schemas/Severity"},"keyEvents":{"type":"array","description":"Key events timeline","items":{"$ref":"#/components/schemas/KeyEventInfo"}},"relatedActivities":{"type":"array","description":"Related activities","items":{"$ref":"#/components/schemas/RelatedActivity"}},"relatedExternalEntities":{"type":"array","description":"External items (deployments, PRs, tickets, URLs) linked to this activity","items":{"$ref":"#/components/schemas/RelatedExternalEntity"}},"rootCauseTheories":{"type":"array","description":"AI-generated root cause theories","items":{"$ref":"#/components/schemas/RootCauseTheoryInfo"}},"rootCauseTheoriesSha":{"type":"string","description":"Fingerprint of rootCauseTheories. Clients send this back when confirming, ruling out, or undoing a theory so a stale write is rejected."},"commsLinks":{"type":"array","description":"Communication links","items":{"$ref":"#/components/schemas/CommsLink"}},"videoConferenceLink":{"type":"string","description":"Video conference link for the incident"},"acknowledgedAtTimestamp":{"type":"integer","description":"Epoch timestamp when acknowledged (milliseconds)","format":"int64"},"startedAtTimestamp":{"type":"integer","description":"Epoch timestamp when work started (milliseconds)","format":"int64"},"resolvedAtTimestamp":{"type":"integer","description":"Epoch timestamp when resolved (milliseconds)","format":"int64"},"closedAtTimestamp":{"type":"integer","description":"Epoch timestamp when closed (milliseconds)","format":"int64"},"reportedAtTimestamp":{"type":"integer","description":"Epoch timestamp when reported (milliseconds)","format":"int64"},"mitigatedAtTimestamp":{"type":"integer","description":"Epoch timestamp when mitigated (milliseconds)","format":"int64"},"responderAssignedAtTimestamp":{"type":"integer","description":"Epoch timestamp when responder assigned (milliseconds)","format":"int64"},"pagedResponders":{"type":"array","description":"On-call users who were paged when pageOnCall was requested at create time. Null when pageOnCall was false or no on-call user was found. These users are not automatically assigned as incident responders.","items":{"$ref":"#/components/schemas/OncallUser"}}}},"OncallUser":{"required":["displayName","email","userId"],"type":"object","properties":{"userId":{"type":"string"},"displayName":{"type":"string"},"email":{"type":"string"}},"description":"On-call users who were paged when pageOnCall was requested at create time. Null when pageOnCall was false or no on-call user was found. These users are not automatically assigned as incident responders."},"Severity":{"type":"object","properties":{"id":{"type":"string","description":"Severity option id"},"label":{"type":"string","description":"Display label resolved from the activity template"}},"description":"Incident severity"},"KeyEventInfo":{"type":"object","properties":{"timestamp":{"type":"integer","description":"Epoch milliseconds when the event occurred","format":"int64"},"status":{"type":"string","description":"Status at the time of the event"},"details":{"type":"string","description":"Human-readable details"}},"description":"Key event in the incident timeline"},"RelatedActivity":{"required":["globalId","name","prettyId","templateTypeName","title"],"type":"object","properties":{"name":{"type":"string","description":"Relationship verb (e.g., \"relates to\")"},"templateTypeName":{"type":"string","description":"Template type name","enum":["INCIDENT","ALERT","DEPLOY","CHANGE"]},"prettyId":{"type":"string"},"globalId":{"type":"string"},"title":{"type":"string"}},"description":"Related activities"},"RelatedExternalEntity":{"required":["externalId","name","provider","relationshipGlobalId","type","url"],"type":"object","properties":{"relationshipGlobalId":{"type":"string","description":"Global ID of the link; pass this to the delete endpoint"},"name":{"type":"string","description":"Relationship verb with the activity as the subject (e.g., \"is caused by\")"},"type":{"type":"string","enum":["DEPLOYMENT","BUILD","PULL_REQUEST","TICKET","FEATURE_FLAG","LINK"]},"provider":{"type":"string","enum":["HARNESS","GITHUB","GITLAB","BITBUCKET","JIRA","SERVICENOW","GENERIC"]},"externalId":{"type":"string","description":"Canonical identifier within (type, provider), e.g. \"owner/repo#123\" or \"IR-3638\""},"url":{"type":"string"},"displayName":{"type":"string"}},"description":"An external item (deployment, PR, ticket, URL) linked to an activity"},"RootCauseTheoryInfo":{"type":"object","properties":{"id":{"type":"string","description":"Theory id"},"message":{"type":"string","description":"Theory message/description"},"status":{"type":"string","description":"Theory status (e.g. CONFIRMED, RULED_OUT, INVESTIGATING)"},"confidence":{"type":"integer","description":"Confidence level (0-100)","format":"int32"},"aiGenerated":{"type":"boolean","description":"Whether the theory was AI-generated"},"relatedActivities":{"type":"array","description":"Items the theory cites","items":{"$ref":"#/components/schemas/RelatedActivityInfo"}}},"description":"Root cause theory for an incident"},"RelatedActivityInfo":{"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK"},"displayId":{"type":"string","description":"Text to show for the item"},"url":{"type":"string","description":"Link to the item"}},"description":"An item a root-cause theory cites"},"CommsLink":{"required":["linkType","url"],"type":"object","properties":{"url":{"type":"string"},"linkType":{"type":"string","enum":["WEB","SLACK"]}},"description":"Communication links"}}}}
```

## The OncallUser object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"OncallUser":{"required":["displayName","email","userId"],"type":"object","properties":{"userId":{"type":"string"},"displayName":{"type":"string"},"email":{"type":"string"}},"description":"On-call users who were paged when pageOnCall was requested at create time. Null when pageOnCall was false or no on-call user was found. These users are not automatically assigned as incident responders."}}}}
```

## The Severity object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"Severity":{"type":"object","properties":{"id":{"type":"string","description":"Severity option id"},"label":{"type":"string","description":"Display label resolved from the activity template"}},"description":"Incident severity"}}}}
```

## The RootCauseTheoryStatusRequest object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"RootCauseTheoryStatusRequest":{"required":["expectedOldRcaSha"],"type":"object","properties":{"expectedOldRcaSha":{"type":"string","description":"Fingerprint from GET incident (rootCauseTheoriesSha). A blank value is rejected."}},"description":"Request body for confirming, ruling out, or undoing a root-cause theory"}}}}
```

## The CreateIncidentRequest object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"CreateIncidentRequest":{"required":["templateShortId","title"],"type":"object","properties":{"templateShortId":{"type":"string","description":"Short id of the incident type to create from (e.g. \"INC\")."},"title":{"type":"string","description":"Incident title"},"summary":{"type":"string","description":"Incident summary"},"severity":{"type":"string","description":"Severity option id or label (e.g. \"1\" or \"SEV1: Major\"). Matched case-insensitively against the template's severity field options."},"status":{"type":"string","description":"Incident status option id or label (e.g. \"new\" or \"Investigating\"). Matched case-insensitively against the template's status field options."},"impactedServices":{"type":"array","description":"Impacted services by Harness identifier, name, or ID","items":{"type":"string","description":"Impacted services by Harness identifier, name, or ID"}},"environments":{"type":"array","description":"Environments, each a Harness environment identifier, name, or serialized HarnessEnvironmentId. Identifiers are matched before names. A reference shared by several scopes resolves to the closest: this project, then its org, then the account, then other projects in (org, project) order.","items":{"type":"string","description":"Environments, each a Harness environment identifier, name, or serialized HarnessEnvironmentId. Identifiers are matched before names. A reference shared by several scopes resolves to the closest: this project, then its org, then the account, then other projects in (org, project) order."}},"commanderHarnessUserId":{"type":"string","description":"Harness user id of the incident commander"},"videoConferenceLink":{"type":"string","description":"Video conference link for the incident"},"slackChannelUrl":{"type":"string","description":"URL of an existing Slack channel to associate with the incident"},"reportedAtTimestamp":{"type":"integer","description":"Reported-at timestamp in epoch milliseconds. Defaults to now.","format":"int64"},"labels":{"type":"array","description":"Incident labels","items":{"type":"string","description":"Incident labels"}},"customFields":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/JsonNode"},"description":"Escape hatch for template-specific custom fields keyed by field id. Each value is the same JSON shape the form-input flow expects. Keys must not collide with typed top-level fields."},"pageOnCall":{"type":"boolean","description":"When true, page the on-call owner of the primary impacted service after the incident is created. Defaults to false when omitted."},"pipelineContextTimelineMessage":{"type":"string","description":"When set, adds a timeline key event with this text after the incident is created."}},"description":"Request body for creating an incident"},"JsonNode":{"type":"object","description":"Per-key merge-patch over template-specific custom fields keyed by field id. Omit a key to leave the field unchanged; set its value to null to clear the field. Keys must not collide with typed top-level fields.","nullable":true}}}}
```

## The JsonNode object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"JsonNode":{"type":"object","description":"Per-key merge-patch over template-specific custom fields keyed by field id. Omit a key to leave the field unchanged; set its value to null to clear the field. Keys must not collide with typed top-level fields.","nullable":true}}}}
```

## The OffsetPaginatedResultIncidentResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"OffsetPaginatedResultIncidentResponse":{"type":"object","properties":{"entities":{"type":"array","items":{"$ref":"#/components/schemas/IncidentResponse"}},"totalCount":{"type":"integer","format":"int32"}}},"IncidentResponse":{"required":["prettyId","projectId","reporter","status","title"],"type":"object","properties":{"prettyId":{"type":"string"},"projectId":{"type":"string"},"title":{"type":"string"},"summary":{"type":"string","description":"Incident summary"},"status":{"type":"string","description":"Incident status","enum":["NEW","INVESTIGATING","FIXING","MONITORING","CLOSED"]},"reporter":{"$ref":"#/components/schemas/OncallUser"},"commander":{"$ref":"#/components/schemas/OncallUser"},"impactedServices":{"type":"array","description":"Harness service identifiers for impacted services","items":{"type":"string","description":"Harness service identifiers for impacted services"}},"environments":{"type":"array","description":"Environment labels (e.g. prod, qa)","items":{"type":"string","description":"Environment labels (e.g. prod, qa)"}},"severity":{"$ref":"#/components/schemas/Severity"},"keyEvents":{"type":"array","description":"Key events timeline","items":{"$ref":"#/components/schemas/KeyEventInfo"}},"relatedActivities":{"type":"array","description":"Related activities","items":{"$ref":"#/components/schemas/RelatedActivity"}},"relatedExternalEntities":{"type":"array","description":"External items (deployments, PRs, tickets, URLs) linked to this activity","items":{"$ref":"#/components/schemas/RelatedExternalEntity"}},"rootCauseTheories":{"type":"array","description":"AI-generated root cause theories","items":{"$ref":"#/components/schemas/RootCauseTheoryInfo"}},"rootCauseTheoriesSha":{"type":"string","description":"Fingerprint of rootCauseTheories. Clients send this back when confirming, ruling out, or undoing a theory so a stale write is rejected."},"commsLinks":{"type":"array","description":"Communication links","items":{"$ref":"#/components/schemas/CommsLink"}},"videoConferenceLink":{"type":"string","description":"Video conference link for the incident"},"acknowledgedAtTimestamp":{"type":"integer","description":"Epoch timestamp when acknowledged (milliseconds)","format":"int64"},"startedAtTimestamp":{"type":"integer","description":"Epoch timestamp when work started (milliseconds)","format":"int64"},"resolvedAtTimestamp":{"type":"integer","description":"Epoch timestamp when resolved (milliseconds)","format":"int64"},"closedAtTimestamp":{"type":"integer","description":"Epoch timestamp when closed (milliseconds)","format":"int64"},"reportedAtTimestamp":{"type":"integer","description":"Epoch timestamp when reported (milliseconds)","format":"int64"},"mitigatedAtTimestamp":{"type":"integer","description":"Epoch timestamp when mitigated (milliseconds)","format":"int64"},"responderAssignedAtTimestamp":{"type":"integer","description":"Epoch timestamp when responder assigned (milliseconds)","format":"int64"},"pagedResponders":{"type":"array","description":"On-call users who were paged when pageOnCall was requested at create time. Null when pageOnCall was false or no on-call user was found. These users are not automatically assigned as incident responders.","items":{"$ref":"#/components/schemas/OncallUser"}}}},"OncallUser":{"required":["displayName","email","userId"],"type":"object","properties":{"userId":{"type":"string"},"displayName":{"type":"string"},"email":{"type":"string"}},"description":"On-call users who were paged when pageOnCall was requested at create time. Null when pageOnCall was false or no on-call user was found. These users are not automatically assigned as incident responders."},"Severity":{"type":"object","properties":{"id":{"type":"string","description":"Severity option id"},"label":{"type":"string","description":"Display label resolved from the activity template"}},"description":"Incident severity"},"KeyEventInfo":{"type":"object","properties":{"timestamp":{"type":"integer","description":"Epoch milliseconds when the event occurred","format":"int64"},"status":{"type":"string","description":"Status at the time of the event"},"details":{"type":"string","description":"Human-readable details"}},"description":"Key event in the incident timeline"},"RelatedActivity":{"required":["globalId","name","prettyId","templateTypeName","title"],"type":"object","properties":{"name":{"type":"string","description":"Relationship verb (e.g., \"relates to\")"},"templateTypeName":{"type":"string","description":"Template type name","enum":["INCIDENT","ALERT","DEPLOY","CHANGE"]},"prettyId":{"type":"string"},"globalId":{"type":"string"},"title":{"type":"string"}},"description":"Related activities"},"RelatedExternalEntity":{"required":["externalId","name","provider","relationshipGlobalId","type","url"],"type":"object","properties":{"relationshipGlobalId":{"type":"string","description":"Global ID of the link; pass this to the delete endpoint"},"name":{"type":"string","description":"Relationship verb with the activity as the subject (e.g., \"is caused by\")"},"type":{"type":"string","enum":["DEPLOYMENT","BUILD","PULL_REQUEST","TICKET","FEATURE_FLAG","LINK"]},"provider":{"type":"string","enum":["HARNESS","GITHUB","GITLAB","BITBUCKET","JIRA","SERVICENOW","GENERIC"]},"externalId":{"type":"string","description":"Canonical identifier within (type, provider), e.g. \"owner/repo#123\" or \"IR-3638\""},"url":{"type":"string"},"displayName":{"type":"string"}},"description":"An external item (deployment, PR, ticket, URL) linked to an activity"},"RootCauseTheoryInfo":{"type":"object","properties":{"id":{"type":"string","description":"Theory id"},"message":{"type":"string","description":"Theory message/description"},"status":{"type":"string","description":"Theory status (e.g. CONFIRMED, RULED_OUT, INVESTIGATING)"},"confidence":{"type":"integer","description":"Confidence level (0-100)","format":"int32"},"aiGenerated":{"type":"boolean","description":"Whether the theory was AI-generated"},"relatedActivities":{"type":"array","description":"Items the theory cites","items":{"$ref":"#/components/schemas/RelatedActivityInfo"}}},"description":"Root cause theory for an incident"},"RelatedActivityInfo":{"type":"object","properties":{"type":{"type":"string","description":"DEPLOY, PR, INCIDENT, ALERT, CHANGE, BUILD, FF, FLAG_CHANGE, TICKET or LINK"},"displayId":{"type":"string","description":"Text to show for the item"},"url":{"type":"string","description":"Link to the item"}},"description":"An item a root-cause theory cites"},"CommsLink":{"required":["linkType","url"],"type":"object","properties":{"url":{"type":"string"},"linkType":{"type":"string","enum":["WEB","SLACK"]}},"description":"Communication links"}}}}
```

## The UpdateIncidentRequest object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"UpdateIncidentRequest":{"type":"object","properties":{"title":{"type":"string","description":"Incident title","nullable":true},"summary":{"type":"string","description":"Incident summary","nullable":true},"severity":{"type":"string","description":"Severity option id or label (e.g. \"1\" or \"SEV1: Major\"). Matched case-insensitively against the template's severity field options.","nullable":true},"status":{"type":"string","description":"Incident status option id or label (e.g. \"investigating\"). To close an incident, use POST /api/v1/mc/incidents/{incidentId}/close instead.","nullable":true},"impactedServices":{"type":"array","description":"Impacted services by Harness identifier, name, or ID (replaces the full list)","nullable":true,"items":{"type":"string","description":"Impacted services by Harness identifier, name, or ID (replaces the full list)","nullable":true}},"environments":{"type":"array","description":"Environments (replaces the full list), each a Harness environment identifier, name, or serialized HarnessEnvironmentId. Identifiers are matched before names. A reference shared by several scopes resolves to the closest: this project, then its org, then the account, then other projects in (org, project) order.","nullable":true,"items":{"type":"string","description":"Environments (replaces the full list), each a Harness environment identifier, name, or serialized HarnessEnvironmentId. Identifiers are matched before names. A reference shared by several scopes resolves to the closest: this project, then its org, then the account, then other projects in (org, project) order.","nullable":true}},"commanderHarnessUserId":{"type":"string","description":"Harness user id of the incident commander","nullable":true},"videoConferenceLink":{"type":"string","description":"Video conference link for the incident","nullable":true},"customFields":{"type":"object","additionalProperties":{"$ref":"#/components/schemas/JsonNode"},"description":"Per-key merge-patch over template-specific custom fields keyed by field id. Omit a key to leave the field unchanged; set its value to null to clear the field. Keys must not collide with typed top-level fields.","nullable":true}},"description":"JSON merge-patch body for updating an incident. Omit a field to leave it unchanged; set it to null to clear it."},"JsonNode":{"type":"object","description":"Per-key merge-patch over template-specific custom fields keyed by field id. Omit a key to leave the field unchanged; set its value to null to clear the field. Keys must not collide with typed top-level fields.","nullable":true}}}}
```

## The CursorPaginatedResultStringTimelineEventResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"CursorPaginatedResultStringTimelineEventResponse":{"type":"object","properties":{"nextPageCursor":{"type":"string"},"hasMoreResults":{"type":"boolean"},"results":{"type":"array","items":{"$ref":"#/components/schemas/TimelineEventResponse"}},"totalCount":{"type":"integer","format":"int64"},"totalCountApproximate":{"type":"integer","format":"int64"}}},"TimelineEventResponse":{"type":"object","properties":{"eventId":{"type":"string","description":"Unique identifier for this timeline event"},"eventType":{"type":"string","description":"The type of event, e.g. ONCALL_PAGED"},"timestamp":{"type":"integer","description":"Epoch milliseconds when the event occurred","format":"int64"},"actor":{"type":"string","description":"Display name of whoever or whatever produced the event, when known"},"message":{"type":"string","description":"The event's content, rendered as markdown"}},"description":"An event in an activity's timeline"}}}}
```

## The TimelineEventResponse object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"TimelineEventResponse":{"type":"object","properties":{"eventId":{"type":"string","description":"Unique identifier for this timeline event"},"eventType":{"type":"string","description":"The type of event, e.g. ONCALL_PAGED"},"timestamp":{"type":"integer","description":"Epoch milliseconds when the event occurred","format":"int64"},"actor":{"type":"string","description":"Display name of whoever or whatever produced the event, when known"},"message":{"type":"string","description":"The event's content, rendered as markdown"}},"description":"An event in an activity's timeline"}}}}
```

## The PostTimelineMessageRequest object

```json
{"openapi":"3.0.1","info":{"title":"Harness AI SRE API","version":"v1"},"components":{"schemas":{"PostTimelineMessageRequest":{"required":["message"],"type":"object","properties":{"message":{"type":"string","description":"Markdown note to post to the timeline"}},"description":"Request body for posting a markdown note to an activity's timeline"}}}}
```
