// @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=ts" // @generated from file openstatus/monitor/v1/http_monitor.proto (package openstatus.monitor.v1, syntax proto3) /* eslint-disable */ import type { GenEnum, GenFile, GenMessage, } from "@bufbuild/protobuf/codegenv2"; import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; import { file_buf_validate_validate } from "../../../buf/validate/validate_pb.ts"; import { file_gnostic_openapi_v3_annotations } from "../../../gnostic/openapi/v3/annotations_pb.ts"; import type { BodyAssertion, HeaderAssertion, StatusCodeAssertion, } from "./assertions_pb.ts"; import { file_openstatus_monitor_v1_assertions } from "./assertions_pb.ts"; import type { MonitorStatus, Periodicity, Region } from "./monitor_pb.ts"; import { file_openstatus_monitor_v1_monitor } from "./monitor_pb.ts"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file openstatus/monitor/v1/http_monitor.proto. */ export const file_openstatus_monitor_v1_http_monitor: GenFile = /*@__PURE__*/ fileDesc( "CihvcGVuc3RhdHVzL21vbml0b3IvdjEvaHR0cF9tb25pdG9yLnByb3RvEhVvcGVuc3RhdHVzLm1vbml0b3IudjEiWgoHSGVhZGVycxIoCgNrZXkYASABKAlCG7pHEToPEg1BdXRob3JpemF0aW9uukgEcgIQARIlCgV2YWx1ZRgCIAEoCUIWukcTOhESD0JlYXJlciB0b2tlbjEyMyJsChNPcGVuVGVsZW1ldHJ5Q29uZmlnEhoKCGVuZHBvaW50GAEgASgJQgi6SAVyAxiAEBI5CgdoZWFkZXJzGAIgAygLMh4ub3BlbnN0YXR1cy5tb25pdG9yLnYxLkhlYWRlcnNCCLpIBZIBAhAUIoEICgtIVFRQTW9uaXRvchIKCgJpZBgBIAEoCRI6CgRuYW1lGAIgASgJQiy6Rx86HRIbUHJvZHVjdGlvbiBBUEkgSGVhbHRoIENoZWNrukgHcgUQARiAAhI/CgN1cmwYAyABKAlCMrpHIjogEh5odHRwczovL2FwaS5leGFtcGxlLmNvbS9oZWFsdGi6SApyCBABGIAQiAEBEkEKC3BlcmlvZGljaXR5GAQgASgOMiIub3BlbnN0YXR1cy5tb25pdG9yLnYxLlBlcmlvZGljaXR5Qgi6SAWCAQIgABI7CgZtZXRob2QYBSABKA4yIS5vcGVuc3RhdHVzLm1vbml0b3IudjEuSFRUUE1ldGhvZEIIukgFggECIAASJQoEYm9keRgGIAEoCUIXukcUOhISEHsia2V5IjogInZhbHVlIn0SHAoHdGltZW91dBgHIAEoA0ILukgIIgYYwKkHKAASJQoLZGVncmFkZWRfYXQYCCABKANCC7pICCIGGMCpBygASACIAQESGAoFcmV0cnkYCSABKANCCbpIBiIEGAooABIdChBmb2xsb3dfcmVkaXJlY3RzGAogASgISAGIAQESOQoHaGVhZGVycxgLIAMoCzIeLm9wZW5zdGF0dXMubW9uaXRvci52MS5IZWFkZXJzQgi6SAWSAQIQFBJUChZzdGF0dXNfY29kZV9hc3NlcnRpb25zGAwgAygLMioub3BlbnN0YXR1cy5tb25pdG9yLnYxLlN0YXR1c0NvZGVBc3NlcnRpb25CCLpIBZIBAhAKEkcKD2JvZHlfYXNzZXJ0aW9ucxgNIAMoCzIkLm9wZW5zdGF0dXMubW9uaXRvci52MS5Cb2R5QXNzZXJ0aW9uQgi6SAWSAQIQChJLChFoZWFkZXJfYXNzZXJ0aW9ucxgOIAMoCzImLm9wZW5zdGF0dXMubW9uaXRvci52MS5IZWFkZXJBc3NlcnRpb25CCLpIBZIBAhAKEh0KC2Rlc2NyaXB0aW9uGA8gASgJQgi6SAVyAxiACBIOCgZhY3RpdmUYECABKAgSDgoGcHVibGljGBEgASgIEj8KB3JlZ2lvbnMYEiADKA4yHS5vcGVuc3RhdHVzLm1vbml0b3IudjEuUmVnaW9uQg+6SAySAQkQHCIFggECIAASQgoOb3Blbl90ZWxlbWV0cnkYEyABKAsyKi5vcGVuc3RhdHVzLm1vbml0b3IudjEuT3BlblRlbGVtZXRyeUNvbmZpZxI0CgZzdGF0dXMYFCABKA4yJC5vcGVuc3RhdHVzLm1vbml0b3IudjEuTW9uaXRvclN0YXR1c0IOCgxfZGVncmFkZWRfYXRCEwoRX2ZvbGxvd19yZWRpcmVjdHMq9wEKCkhUVFBNZXRob2QSGwoXSFRUUF9NRVRIT0RfVU5TUEVDSUZJRUQQABITCg9IVFRQX01FVEhPRF9HRVQQARIUChBIVFRQX01FVEhPRF9QT1NUEAISFAoQSFRUUF9NRVRIT0RfSEVBRBADEhMKD0hUVFBfTUVUSE9EX1BVVBAEEhUKEUhUVFBfTUVUSE9EX1BBVENIEAUSFgoSSFRUUF9NRVRIT0RfREVMRVRFEAYSFQoRSFRUUF9NRVRIT0RfVFJBQ0UQBxIXChNIVFRQX01FVEhPRF9DT05ORUNUEAgSFwoTSFRUUF9NRVRIT0RfT1BUSU9OUxAJQlNaUWdpdGh1Yi5jb20vb3BlbnN0YXR1c2hxL29wZW5zdGF0dXMvcGFja2FnZXMvcHJvdG8vb3BlbnN0YXR1cy9tb25pdG9yL3YxO21vbml0b3J2MWIGcHJvdG8z", [ file_buf_validate_validate, file_gnostic_openapi_v3_annotations, file_openstatus_monitor_v1_assertions, file_openstatus_monitor_v1_monitor, ], ); /** * Headers represents a key-value pair for HTTP headers. * * @generated from message openstatus.monitor.v1.Headers */ export type Headers = Message<"openstatus.monitor.v1.Headers"> & { /** * Header name. * * @generated from field: string key = 1; */ key: string; /** * Header value. * * @generated from field: string value = 2; */ value: string; }; /** * Describes the message openstatus.monitor.v1.Headers. * Use `create(HeadersSchema)` to create a new message. */ export const HeadersSchema: GenMessage = /*@__PURE__*/ messageDesc(file_openstatus_monitor_v1_http_monitor, 0); /** * OpenTelemetry configuration for exporting metrics. * * @generated from message openstatus.monitor.v1.OpenTelemetryConfig */ export type OpenTelemetryConfig = & Message<"openstatus.monitor.v1.OpenTelemetryConfig"> & { /** * OTEL endpoint URL. * * @generated from field: string endpoint = 1; */ endpoint: string; /** * Custom headers for OTEL requests. * * @generated from field: repeated openstatus.monitor.v1.Headers headers = 2; */ headers: Headers[]; }; /** * Describes the message openstatus.monitor.v1.OpenTelemetryConfig. * Use `create(OpenTelemetryConfigSchema)` to create a new message. */ export const OpenTelemetryConfigSchema: GenMessage< OpenTelemetryConfig > = /*@__PURE__*/ messageDesc(file_openstatus_monitor_v1_http_monitor, 1); /** * HTTPMonitor defines the configuration for an HTTP monitor. * * @generated from message openstatus.monitor.v1.HTTPMonitor */ export type HTTPMonitor = Message<"openstatus.monitor.v1.HTTPMonitor"> & { /** * Unique identifier for the monitor (output only for create requests). * * @generated from field: string id = 1; */ id: string; /** * Name of the monitor (required, max 256 characters). * * @generated from field: string name = 2; */ name: string; /** * URL to monitor (required, max 2048 characters). * * @generated from field: string url = 3; */ url: string; /** * Check periodicity (required). * * @generated from field: openstatus.monitor.v1.Periodicity periodicity = 4; */ periodicity: Periodicity; /** * HTTP method to use (defaults to GET). * * @generated from field: openstatus.monitor.v1.HTTPMethod method = 5; */ method: HTTPMethod; /** * Request body (optional). * * @generated from field: string body = 6; */ body: string; /** * Timeout in milliseconds (0-120000, defaults to 45000). * * @generated from field: int64 timeout = 7; */ timeout: bigint; /** * Latency threshold for degraded status in milliseconds (optional, 0-120000). * * @generated from field: optional int64 degraded_at = 8; */ degradedAt?: bigint; /** * Number of retry attempts (0-10, defaults to 3). * * @generated from field: int64 retry = 9; */ retry: bigint; /** * Whether to follow HTTP redirects (defaults to true when not specified). * * @generated from field: optional bool follow_redirects = 10; */ followRedirects?: boolean; /** * Custom headers for the request. * * @generated from field: repeated openstatus.monitor.v1.Headers headers = 11; */ headers: Headers[]; /** * Status code assertions for the response. * * @generated from field: repeated openstatus.monitor.v1.StatusCodeAssertion status_code_assertions = 12; */ statusCodeAssertions: StatusCodeAssertion[]; /** * Body content assertions for the response. * * @generated from field: repeated openstatus.monitor.v1.BodyAssertion body_assertions = 13; */ bodyAssertions: BodyAssertion[]; /** * Header assertions for the response. * * @generated from field: repeated openstatus.monitor.v1.HeaderAssertion header_assertions = 14; */ headerAssertions: HeaderAssertion[]; /** * Description of the monitor (optional). * * @generated from field: string description = 15; */ description: string; /** * Whether the monitor is active (defaults to false). * * @generated from field: bool active = 16; */ active: boolean; /** * Whether the monitor is publicly visible (defaults to false). * * @generated from field: bool public = 17; */ public: boolean; /** * Geographic regions to run checks from. * * @generated from field: repeated openstatus.monitor.v1.Region regions = 18; */ regions: Region[]; /** * OpenTelemetry configuration for exporting metrics. * * @generated from field: openstatus.monitor.v1.OpenTelemetryConfig open_telemetry = 19; */ openTelemetry?: OpenTelemetryConfig; /** * Current operational status of the monitor. * * @generated from field: openstatus.monitor.v1.MonitorStatus status = 20; */ status: MonitorStatus; }; /** * Describes the message openstatus.monitor.v1.HTTPMonitor. * Use `create(HTTPMonitorSchema)` to create a new message. */ export const HTTPMonitorSchema: GenMessage = /*@__PURE__*/ messageDesc(file_openstatus_monitor_v1_http_monitor, 2); /** * HTTP methods supported for monitors. * * @generated from enum openstatus.monitor.v1.HTTPMethod */ export enum HTTPMethod { /** * @generated from enum value: HTTP_METHOD_UNSPECIFIED = 0; */ HTTP_METHOD_UNSPECIFIED = 0, /** * @generated from enum value: HTTP_METHOD_GET = 1; */ HTTP_METHOD_GET = 1, /** * @generated from enum value: HTTP_METHOD_POST = 2; */ HTTP_METHOD_POST = 2, /** * @generated from enum value: HTTP_METHOD_HEAD = 3; */ HTTP_METHOD_HEAD = 3, /** * @generated from enum value: HTTP_METHOD_PUT = 4; */ HTTP_METHOD_PUT = 4, /** * @generated from enum value: HTTP_METHOD_PATCH = 5; */ HTTP_METHOD_PATCH = 5, /** * @generated from enum value: HTTP_METHOD_DELETE = 6; */ HTTP_METHOD_DELETE = 6, /** * @generated from enum value: HTTP_METHOD_TRACE = 7; */ HTTP_METHOD_TRACE = 7, /** * @generated from enum value: HTTP_METHOD_CONNECT = 8; */ HTTP_METHOD_CONNECT = 8, /** * @generated from enum value: HTTP_METHOD_OPTIONS = 9; */ HTTP_METHOD_OPTIONS = 9, } /** * Describes the enum openstatus.monitor.v1.HTTPMethod. */ export const HTTPMethodSchema: GenEnum = /*@__PURE__*/ enumDesc(file_openstatus_monitor_v1_http_monitor, 0);