PPanel Edge

status

由 openapi.json 自动生成的 12 个端点及其请求、响应和权限元数据。

此参考由已发布 API 契约生成。字段、请求头和权限要求如下。

下载完整 OpenAPI 文档 · SHA-256: ccaa20cec11fad96e369b88073ce3608a5b071ce55d6dc03fa31df7b0f08c525

标识符和数据结构与公开契约一致,说明直接给出调用规则。共享模型见 数据模型.

GET /api/v1/admin/status

GET /api/v1/admin/status

{
  "parameters": [
    {
      "in": "query",
      "name": "before",
      "required": false,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
        "default": 20,
        "maximum": 100,
        "minimum": 1,
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "components": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "id": {
                      "format": "uuid",
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "state": {
                      "enum": [
                        "operational",
                        "degraded",
                        "partial_outage",
                        "major_outage",
                        "maintenance"
                      ],
                      "type": "string"
                    },
                    "version": {
                      "type": "integer"
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "state",
                    "version"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "events": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "component_ids": {
                      "items": {
                        "format": "uuid",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "ends_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "id": {
                      "format": "uuid",
                      "type": "string"
                    },
                    "kind": {
                      "enum": [
                        "incident",
                        "maintenance"
                      ],
                      "type": "string"
                    },
                    "phase": {
                      "enum": [
                        "draft",
                        "published",
                        "active",
                        "resolved"
                      ],
                      "type": "string"
                    },
                    "published_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "resolved_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "starts_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "state": {
                      "enum": [
                        "degraded",
                        "partial_outage",
                        "major_outage",
                        "maintenance"
                      ],
                      "type": "string"
                    },
                    "title": {
                      "type": "string"
                    },
                    "version": {
                      "type": "integer"
                    }
                  },
                  "required": [
                    "id",
                    "kind",
                    "title",
                    "state",
                    "phase",
                    "component_ids",
                    "starts_at",
                    "ends_at",
                    "published_at",
                    "resolved_at",
                    "version"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "has_more": {
                "type": "boolean"
              },
              "next_cursor": {
                "type": [
                  "string",
                  "null"
                ]
              },
              "suggestions": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "component_id": {
                      "format": "uuid",
                      "type": "string"
                    },
                    "observed_at": {
                      "format": "date-time",
                      "type": "string"
                    },
                    "samples": {
                      "type": "integer"
                    },
                    "state": {
                      "enum": [
                        "operational",
                        "degraded",
                        "partial_outage",
                        "major_outage",
                        "maintenance"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "component_id",
                    "state",
                    "observed_at",
                    "samples"
                  ],
                  "type": "object"
                },
                "type": "array"
              }
            },
            "required": [
              "components",
              "events",
              "has_more",
              "next_cursor",
              "suggestions"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    }
  },
  "tags": [
    "status"
  ],
  "x-body": "none",
  "x-body-limit": 0,
  "x-idempotency": "none",
  "x-permission": "support.announcement.manage",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

POST /api/v1/admin/status/components

POST /api/v1/admin/status/components

{
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "additionalProperties": false,
          "properties": {
            "name": {
              "maxLength": 4000,
              "minLength": 1,
              "type": "string"
            },
            "state": {
              "enum": [
                "operational",
                "degraded",
                "partial_outage",
                "major_outage",
                "maintenance"
              ],
              "type": "string"
            }
          },
          "required": [
            "name",
            "state"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "id": {
                "format": "uuid",
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "state": {
                "enum": [
                  "operational",
                  "degraded",
                  "partial_outage",
                  "major_outage",
                  "maintenance"
                ],
                "type": "string"
              },
              "version": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "name",
              "state",
              "version"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "404": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "409": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "422": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "428": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-audit": "support.status.component_create",
  "x-body": "json",
  "x-body-limit": 65536,
  "x-idempotency": "required",
  "x-permission": "support.announcement.manage",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

PUT /api/v1/admin/status/components/{id}

PUT /api/v1/admin/status/components/{id}

{
  "parameters": [
    {
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Resource ETag; missing 428, malformed 412, stale 409.",
      "in": "header",
      "name": "If-Match",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "additionalProperties": false,
          "properties": {
            "name": {
              "maxLength": 4000,
              "minLength": 1,
              "type": "string"
            },
            "state": {
              "enum": [
                "operational",
                "degraded",
                "partial_outage",
                "major_outage",
                "maintenance"
              ],
              "type": "string"
            }
          },
          "required": [
            "name",
            "state"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "id": {
                "format": "uuid",
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "state": {
                "enum": [
                  "operational",
                  "degraded",
                  "partial_outage",
                  "major_outage",
                  "maintenance"
                ],
                "type": "string"
              },
              "version": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "name",
              "state",
              "version"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success",
      "headers": {
        "ETag": {
          "description": "Current resource version for If-Match.",
          "schema": {
            "type": "string"
          }
        }
      }
    },
    "404": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "409": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "422": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "428": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-audit": "support.status.component_update",
  "x-body": "json",
  "x-body-limit": 65536,
  "x-concurrency": {
    "etag": true,
    "ifMatch": true
  },
  "x-idempotency": "required",
  "x-permission": "support.announcement.manage",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

POST /api/v1/admin/status/incidents

POST /api/v1/admin/status/incidents

{
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "additionalProperties": false,
          "properties": {
            "body": {
              "maxLength": 4000,
              "minLength": 1,
              "type": "string"
            },
            "component_ids": {
              "items": {
                "format": "uuid",
                "type": "string"
              },
              "maxItems": 100,
              "minItems": 1,
              "type": "array"
            },
            "ends_at": {
              "format": "date-time",
              "type": [
                "string",
                "null"
              ]
            },
            "kind": {
              "enum": [
                "incident",
                "maintenance"
              ],
              "type": "string"
            },
            "starts_at": {
              "format": "date-time",
              "type": [
                "string",
                "null"
              ]
            },
            "state": {
              "enum": [
                "degraded",
                "partial_outage",
                "major_outage",
                "maintenance"
              ],
              "type": "string"
            },
            "title": {
              "maxLength": 4000,
              "minLength": 1,
              "type": "string"
            }
          },
          "required": [
            "kind",
            "title",
            "state",
            "component_ids",
            "starts_at",
            "ends_at",
            "body"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "201": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "component_ids": {
                "items": {
                  "format": "uuid",
                  "type": "string"
                },
                "type": "array"
              },
              "ends_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "id": {
                "format": "uuid",
                "type": "string"
              },
              "kind": {
                "enum": [
                  "incident",
                  "maintenance"
                ],
                "type": "string"
              },
              "phase": {
                "enum": [
                  "draft",
                  "published",
                  "active",
                  "resolved"
                ],
                "type": "string"
              },
              "published_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "resolved_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "starts_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "state": {
                "enum": [
                  "degraded",
                  "partial_outage",
                  "major_outage",
                  "maintenance"
                ],
                "type": "string"
              },
              "title": {
                "type": "string"
              },
              "version": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "kind",
              "title",
              "state",
              "phase",
              "component_ids",
              "starts_at",
              "ends_at",
              "published_at",
              "resolved_at",
              "version"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "404": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "409": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "422": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "428": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-audit": "support.status.event_create",
  "x-body": "json",
  "x-body-limit": 65536,
  "x-idempotency": "required",
  "x-permission": "support.announcement.manage",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

GET /api/v1/admin/status/incidents/{id}

GET /api/v1/admin/status/incidents/{id}

{
  "parameters": [
    {
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "before",
      "required": false,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
        "default": 20,
        "maximum": 100,
        "minimum": 1,
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "component_ids": {
                "items": {
                  "format": "uuid",
                  "type": "string"
                },
                "type": "array"
              },
              "ends_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "id": {
                "format": "uuid",
                "type": "string"
              },
              "kind": {
                "enum": [
                  "incident",
                  "maintenance"
                ],
                "type": "string"
              },
              "phase": {
                "enum": [
                  "draft",
                  "published",
                  "active",
                  "resolved"
                ],
                "type": "string"
              },
              "published_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "resolved_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "starts_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "state": {
                "enum": [
                  "degraded",
                  "partial_outage",
                  "major_outage",
                  "maintenance"
                ],
                "type": "string"
              },
              "title": {
                "type": "string"
              },
              "updates": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "body": {
                      "type": "string"
                    },
                    "created_at": {
                      "format": "date-time",
                      "type": "string"
                    },
                    "id": {
                      "format": "uuid",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "body",
                    "created_at"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "updates_has_more": {
                "type": "boolean"
              },
              "updates_next_cursor": {
                "format": "uuid",
                "type": [
                  "string",
                  "null"
                ]
              },
              "version": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "kind",
              "title",
              "state",
              "phase",
              "component_ids",
              "starts_at",
              "ends_at",
              "published_at",
              "resolved_at",
              "version",
              "updates",
              "updates_has_more",
              "updates_next_cursor"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "404": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-body": "none",
  "x-body-limit": 0,
  "x-idempotency": "none",
  "x-permission": "support.announcement.manage",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

POST /api/v1/admin/status/incidents/{id}/updates

POST /api/v1/admin/status/incidents/{id}/updates

{
  "parameters": [
    {
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "description": "Resource ETag; missing 428, malformed 412, stale 409.",
      "in": "header",
      "name": "If-Match",
      "required": true,
      "schema": {
        "type": "string"
      }
    }
  ],
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "additionalProperties": false,
          "properties": {
            "action": {
              "enum": [
                "publish",
                "update",
                "resolve"
              ],
              "type": "string"
            },
            "body": {
              "maxLength": 4000,
              "minLength": 1,
              "type": "string"
            },
            "state": {
              "enum": [
                "degraded",
                "partial_outage",
                "major_outage",
                "maintenance"
              ],
              "type": "string"
            }
          },
          "required": [
            "action",
            "body"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "component_ids": {
                "items": {
                  "format": "uuid",
                  "type": "string"
                },
                "type": "array"
              },
              "ends_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "id": {
                "format": "uuid",
                "type": "string"
              },
              "kind": {
                "enum": [
                  "incident",
                  "maintenance"
                ],
                "type": "string"
              },
              "phase": {
                "enum": [
                  "draft",
                  "published",
                  "active",
                  "resolved"
                ],
                "type": "string"
              },
              "published_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "resolved_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "starts_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "state": {
                "enum": [
                  "degraded",
                  "partial_outage",
                  "major_outage",
                  "maintenance"
                ],
                "type": "string"
              },
              "title": {
                "type": "string"
              },
              "version": {
                "type": "integer"
              }
            },
            "required": [
              "id",
              "kind",
              "title",
              "state",
              "phase",
              "component_ids",
              "starts_at",
              "ends_at",
              "published_at",
              "resolved_at",
              "version"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success",
      "headers": {
        "ETag": {
          "description": "Current resource version for If-Match.",
          "schema": {
            "type": "string"
          }
        }
      }
    },
    "404": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "409": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "422": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "428": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-audit": "support.status.event_update",
  "x-body": "json",
  "x-body-limit": 65536,
  "x-concurrency": {
    "etag": true,
    "ifMatch": true
  },
  "x-idempotency": "required",
  "x-permission": "support.announcement.manage",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

GET /api/v1/me/status-subscriptions

GET /api/v1/me/status-subscriptions

{
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "items": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "component_id": {
                      "format": "uuid",
                      "type": "string"
                    },
                    "enabled": {
                      "type": "boolean"
                    }
                  },
                  "required": [
                    "component_id",
                    "enabled"
                  ],
                  "type": "object"
                },
                "type": "array"
              }
            },
            "required": [
              "items"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    }
  },
  "tags": [
    "status"
  ],
  "x-body": "none",
  "x-body-limit": 0,
  "x-idempotency": "none",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

PUT /api/v1/me/status-subscriptions

PUT /api/v1/me/status-subscriptions

{
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "additionalProperties": false,
          "properties": {
            "component_id": {
              "format": "uuid",
              "type": "string"
            },
            "enabled": {
              "type": "boolean"
            }
          },
          "required": [
            "component_id",
            "enabled"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "component_id": {
                "format": "uuid",
                "type": "string"
              },
              "enabled": {
                "type": "boolean"
              }
            },
            "required": [
              "component_id",
              "enabled"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "404": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "409": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "422": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    },
    "428": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-audit": "support.status.subscribe",
  "x-body": "json",
  "x-body-limit": 65536,
  "x-idempotency": "required",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

GET /api/v1/public/status

GET /api/v1/public/status

{
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "components": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "id": {
                      "format": "uuid",
                      "type": "string"
                    },
                    "name": {
                      "type": "string"
                    },
                    "state": {
                      "enum": [
                        "operational",
                        "degraded",
                        "partial_outage",
                        "major_outage",
                        "maintenance"
                      ],
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "name",
                    "state"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "events": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "component_ids": {
                      "items": {
                        "format": "uuid",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "ends_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "id": {
                      "format": "uuid",
                      "type": "string"
                    },
                    "kind": {
                      "enum": [
                        "incident",
                        "maintenance"
                      ],
                      "type": "string"
                    },
                    "phase": {
                      "enum": [
                        "published",
                        "active",
                        "resolved"
                      ],
                      "type": "string"
                    },
                    "published_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "resolved_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "starts_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "state": {
                      "enum": [
                        "degraded",
                        "partial_outage",
                        "major_outage",
                        "maintenance"
                      ],
                      "type": "string"
                    },
                    "title": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "kind",
                    "title",
                    "state",
                    "phase",
                    "component_ids",
                    "starts_at",
                    "ends_at",
                    "published_at",
                    "resolved_at"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "has_more": {
                "type": "boolean"
              },
              "next_cursor": {
                "format": "uuid",
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "components",
              "events",
              "has_more",
              "next_cursor"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "304": {
      "description": "Not modified"
    }
  },
  "tags": [
    "status"
  ],
  "x-body": "none",
  "x-body-limit": 0,
  "x-idempotency": "none",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

GET /api/v1/public/status/incidents

GET /api/v1/public/status/incidents

{
  "parameters": [
    {
      "in": "query",
      "name": "before",
      "required": false,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
        "default": 20,
        "maximum": 100,
        "minimum": 1,
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "has_more": {
                "type": "boolean"
              },
              "items": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "component_ids": {
                      "items": {
                        "format": "uuid",
                        "type": "string"
                      },
                      "type": "array"
                    },
                    "ends_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "id": {
                      "format": "uuid",
                      "type": "string"
                    },
                    "kind": {
                      "enum": [
                        "incident",
                        "maintenance"
                      ],
                      "type": "string"
                    },
                    "phase": {
                      "enum": [
                        "published",
                        "active",
                        "resolved"
                      ],
                      "type": "string"
                    },
                    "published_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "resolved_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "starts_at": {
                      "format": "date-time",
                      "type": [
                        "string",
                        "null"
                      ]
                    },
                    "state": {
                      "enum": [
                        "degraded",
                        "partial_outage",
                        "major_outage",
                        "maintenance"
                      ],
                      "type": "string"
                    },
                    "title": {
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "kind",
                    "title",
                    "state",
                    "phase",
                    "component_ids",
                    "starts_at",
                    "ends_at",
                    "published_at",
                    "resolved_at"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "next_cursor": {
                "format": "uuid",
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "items",
              "has_more",
              "next_cursor"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "304": {
      "description": "Not modified"
    }
  },
  "tags": [
    "status"
  ],
  "x-body": "none",
  "x-body-limit": 0,
  "x-idempotency": "none",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

GET /api/v1/public/status/incidents/{id}

GET /api/v1/public/status/incidents/{id}

{
  "parameters": [
    {
      "in": "path",
      "name": "id",
      "required": true,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "before",
      "required": false,
      "schema": {
        "format": "uuid",
        "type": "string"
      }
    },
    {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
        "default": 20,
        "maximum": 100,
        "minimum": 1,
        "type": "integer"
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "additionalProperties": false,
            "properties": {
              "component_ids": {
                "items": {
                  "format": "uuid",
                  "type": "string"
                },
                "type": "array"
              },
              "ends_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "id": {
                "format": "uuid",
                "type": "string"
              },
              "kind": {
                "enum": [
                  "incident",
                  "maintenance"
                ],
                "type": "string"
              },
              "phase": {
                "enum": [
                  "published",
                  "active",
                  "resolved"
                ],
                "type": "string"
              },
              "published_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "resolved_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "starts_at": {
                "format": "date-time",
                "type": [
                  "string",
                  "null"
                ]
              },
              "state": {
                "enum": [
                  "degraded",
                  "partial_outage",
                  "major_outage",
                  "maintenance"
                ],
                "type": "string"
              },
              "title": {
                "type": "string"
              },
              "updates": {
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "body": {
                      "type": "string"
                    },
                    "created_at": {
                      "format": "date-time",
                      "type": "string"
                    },
                    "id": {
                      "format": "uuid",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id",
                    "body",
                    "created_at"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "updates_has_more": {
                "type": "boolean"
              },
              "updates_next_cursor": {
                "format": "uuid",
                "type": [
                  "string",
                  "null"
                ]
              }
            },
            "required": [
              "id",
              "kind",
              "title",
              "state",
              "phase",
              "component_ids",
              "starts_at",
              "ends_at",
              "published_at",
              "resolved_at",
              "updates",
              "updates_has_more",
              "updates_next_cursor"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "304": {
      "description": "Not modified"
    },
    "404": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-body": "none",
  "x-body-limit": 0,
  "x-idempotency": "none",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}

POST /api/v1/public/status/unsubscribe

POST /api/v1/public/status/unsubscribe

{
  "requestBody": {
    "content": {
      "application/json": {
        "schema": {
          "additionalProperties": false,
          "properties": {
            "token": {
              "maxLength": 16000,
              "minLength": 1,
              "type": "string"
            }
          },
          "required": [
            "token"
          ],
          "type": "object"
        }
      }
    },
    "required": true
  },
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "schema": {
            "properties": {
              "unsubscribed": {
                "enum": [
                  true
                ],
                "type": "boolean"
              }
            },
            "required": [
              "unsubscribed"
            ],
            "type": "object"
          }
        }
      },
      "description": "Success"
    },
    "422": {
      "content": {
        "application/problem+json": {
          "schema": {
            "properties": {
              "code": {
                "type": "string"
              },
              "request_id": {
                "type": "string"
              },
              "status": {
                "type": "number"
              },
              "title": {
                "type": "string"
              },
              "type": {
                "type": "string"
              }
            },
            "required": [
              "type",
              "title",
              "status",
              "code",
              "request_id"
            ],
            "type": "object"
          }
        }
      },
      "description": "Request failed"
    }
  },
  "tags": [
    "status"
  ],
  "x-audit": "support.status.unsubscribe",
  "x-body": "json",
  "x-body-limit": 65536,
  "x-idempotency": "required",
  "x-rate-limit": "support.status",
  "x-reauth": false,
  "effectiveSecurity": []
}