priority
parameter is required to identify which channel to deleteenabled
field (boolean) and the priority
of the channelenabled: false
deactivates delivery, while true
reactivates itteam_id
– Unique identifier for the teamname
– Name of the teammember_count
– Total number of users in the teamcreated_at
– Timestamp of when the team was createdname
for the teamteam_id
is used to identify which team to updatechannel
– The name of the invitation channelchannel_type
– Delivery method used (e.g., email)sender_full_name
– Name of the person who sent the invitationcreated_at
– When the invitation was createdreminded_at
– Timestamp of the last reminder sentstatus
– Invitation status (Pending, Accepted, or Declined)channel_value
– The destination address (e.g., email address)channel_type
– The method used to send the invitation (e.g., email)channel_value
– The address (e.g., email) to which the invitation was sentcustomer_id
– Unique identifier of the team memberemail
– Member’s contact emailname
– Full name of the team memberrole
– Role assigned within the team (e.g., root, manager)new_team_id
field.new_team_id
unchangedchannel_value
– The destination address where the original invitation was sent (e.g., email)value
– The new destination for notifications (e.g., email address or URL)priority
– Identifies the specific channel to be updatedcode
– The verification code sent to the notification destinationpriority
– Identifies the channel being verifiedpriority
value passed as a query parameter.priority
of the channel and set the enabled
flag to either true
(to activate) or false
(to deactivate).name
of the service and the team_id
it belongs to in the request body. This association ensures that each team is responsible for monitoring and responding to events tied to its own services.service_id
) as a path parameter and the new name
in the request body. This change is reflected across all related views, including dashboards, incident logs, and monitor assignments.service_id
as a path parameter. The service will be removed from the associated team’s structure, ensuring the system remains clean, organized, and free from unused entries.service_id
. This endpoint provides key information such as the service name, its unique identifier, and usage statistics — helping teams monitor and manage their assigned services more effectively.name
– The name of the serviceservice_id
– The unique identifier assigned to the serviceresource_count
– Number of resources (e.g., servers, APIs) connected to the serviceheartbeat_count
– Number of heartbeat monitors associated with the serviceHTTP
, TCP
, ICMP (ping)
, SMTP
, UDP
, POP
, or IMAP
— giving you flexibility to monitor everything from APIs to mail servers and network ports.name
, select a type
from the supported protocols, specify the associated service_id
, and define conditions
(such as response time thresholds, port availability, or expected response codes). You can also customize options like whether to follow redirects or ignore SSL certificate errors for applicable types.ids
as a query parameter array. This bulk deletion feature is ideal for large-scale cleanup tasks, such as retiring services, restructuring environments, or clearing out test monitors after staging deployments.monitor_id
in the path and provide the enabled
flag in the request body, set to true
to activate the monitor or false
to deactivate it.monitor_id
in the request path. Once deleted, the monitor will no longer perform health checks, collect availability data, or trigger alerts for the associated service.monitor_id
in the URL path and the updated settings in the request body. This endpoint allows you to adjust the monitor’s name, type, conditions, or other parameters without needing to delete and recreate it.service_id
.resource_id
in the path and specifying reminder settings in the request body. This endpoint helps ensure critical events like domain expirations or renewals are not missed by triggering notifications in advance based on your configured timeline.resource_id
in the path and submitting the updated reminder details in the request body. This allows you to fine-tune when reminder notifications are sent to better align with current domain management timelines.resource_id
in the path. Once deleted, the system will no longer trigger notifications for the associated domain expiration or event.resource_id
in the path and specifying reminder settings in the request body. This ensures your team is notified before the certificate expires, helping prevent service disruptions and trust issues caused by lapsed security credentials.resource_id
in the path and submitting new reminder details in the request body. This allows you to adjust how far in advance your team is alerted about upcoming certificate expirations.service_id
in the path. Once deleted, no future alerts will be sent for the SSL certificate tied to that service, giving you full control over which reminders remain active.service_id
in the URL path. This endpoint returns all monitors configured to track the service's availability, offering a centralized view of its monitoring coverage.limit
and page
query parameters. This makes it easy to retrieve monitors in manageable chunks, especially in environments where dozens or hundreds of monitors may exist across different protocols and endpoints.monitor_id
in the URL path. This endpoint returns essential information about the monitor, such as its type (e.g., HTTP, TCP, ICMP), target URL or IP, check frequency, response validation rules, and current operational state.monitor_id
in the URL path. Each region represents a geographic location from which health checks are performed, allowing teams to track service availability across different parts of the world.monitor_id
in the URL path. This endpoint returns information such as certificate validity dates, issuer, and expiration status — helping ensure that HTTPS-enabled services are not only available but also securely configured.monitor_id
in the URL path. This endpoint returns information such as the domain name, registrar details, and expiration dates — offering visibility into the domain’s lifecycle and administrative metadata.service_id
in the URL path. This endpoint returns the settings associated with SSL expiration alerts — including how many days before expiration the reminder is set to trigger.resource_id
in the path. This endpoint returns the reminder settings that are used to notify teams about upcoming domain expirations or other critical TLD-related events.monitor_id
in the path. The report includes time-series data reflecting each health check, along with aggregated uptime and response statistics.start_date
, end_date
, interval
, and limit
allow you to customize the data range and granularity to suit your analysis needs. Whether you're reviewing a short outage window or generating monthly performance reports, this endpoint provides the visibility you need.limit
to restrict the number of results. Each response object includes granular network-level data that is crucial for analyzing uptime reliability and service responsiveness at a per-request level.monitor_id
in the path. This endpoint returns the alerting and automation tools that are actively linked to the monitor — such as email, Slack, webhook URLs, or other third-party services.service_id
and integration_id
in the path. The request body should include fields such as name
, status
, message
, and a list of affected items
(e.g., resource IDs or related entities).resource_id
and integration_id
in the URL path. This action permanently deletes the association, meaning the monitor will no longer send incident data or notifications through that integration channel.service_id
, name
, description
, and timezone
. This endpoint creates a server monitoring resource, allowing you to visualize essential system metrics like CPU, memory, and disk usage through charts.monitor_ids
as query parameters. This bulk operation is ideal for cleaning up inactive, deprecated, or test servers from your monitoring environment.monitor_id
in the path and submitting the new configuration values in the request body. You can modify properties such as the name
, description
, or timezone
to keep the server's metadata up to date.service_id
in the path. This endpoint returns metadata for each registered server, allowing teams to see which servers are actively being monitored under a given service.limit
and page
query parameters, making it easier to manage large infrastructures and avoid overloading responses.monitor_id
in the path. The response includes metadata such as the server name, description, timezone, and service association, allowing you to review its current configuration.monitor_id
in the path. This endpoint allows you to query server resource usage — such as CPU, memory, disk, or network — across a specified time window.type
(e.g., cpu, memory), start_date
, end_date
, interval
(e.g., on-demand, hourly), and limit
to control the resolution and size of the returned dataset.service_id
and name
in the request body. This resource acts as a check-in point for recurring jobs or processes that are expected to send heartbeat signals at defined intervals.heartbeat_ids
as query parameters. This bulk operation is useful when cleaning up unused, test, or deprecated heartbeat monitors from your monitoring system.heartbeat_id
as a path parameter. Once deleted, the associated check-in URL becomes inactive, and no further heartbeat pings will be accepted for that resource.service_id
in the path. This endpoint returns a paginated list of heartbeats, helping you understand which recurring jobs, scripts, or processes are currently being tracked under that service.limit
and page
to control pagination and manage large sets of heartbeat monitors efficiently.heartbeat_id
in the path and submitting the updated values in the request body. You can modify fields such as the name
or the interval
that determines when a missed heartbeat should be treated as a failure.heartbeat_id
in the path. The response includes key details such as the monitor’s name, associated service, interval setting.heartbeat_id
in the path. Use query parameters such as start_date
, end_date
, and interval
to define the time range and level of detail for the data.tick_count
— Number of expected heartbeat intervals during that period.run_count
— Number of actual check-ins (pings) received.fail_count
— Number of intervals that were missed and counted as failures.complete_count
— Number of successful intervals (with timely pings).received_at
— Timestamp of the recorded data point.heartbeat_id
in the path. This endpoint returns a list of recorded heartbeat events, allowing you to track when check-ins were received and whether they were successful or missed.limit
to control the number of results and last_received_at
to fetch events after a specific timestamp, which is useful for pagination or incremental analysis.heartbeat_id
in the path. You can also include an optional result
(e.g., success, fail) and a custom message
in the request body to describe the event outcome.fail
result to indicate that a job ran but encountered an issue.This category facilitates the automation of incident responses through rulesets and webhook integrations, allowing for timely and efficient handling of incidents based on predefined criteria.
See full Ruleset Management and Event Handling API →
Focused on monitoring incidents throughout their lifecycle, this category provides tools for tracking incident statuses, actions taken, and overall performance, ensuring effective resolution and accountability.
See full Incident Tracking API →
This category enables the organization and management of on-call schedules for incident response teams, ensuring that appropriate personnel are available to respond to incidents at all times.
See full Incident Schedule Management API →
rule type
, name
, description
, urgency level
, and assigned responders (e.g., teams).team
and organisation
, showing rules defined at different levels of your environment.type
of rule (e.g., state-change
), an array of conditions
, the target team_id
or assignees
, urgency
level, and a descriptive name
and description
for context.ruleset_id
in the path and submitting the updated rule configuration in the request body. You can modify fields such as the type
of the rule (e.g., state-change
), the list of conditions
, urgency
, description
, name
, and assigned assignees
(e.g., team IDs).ruleset_id
in the path. Once removed, the ruleset will no longer trigger incidents based on its defined conditions.ruleset_id
in the path. Each action defines what automated task should be executed when the ruleset conditions are met — such as updating a status page component or triggering a downstream system.action type
(e.g., trigger-statuspage-update
) and nested settings
that specify the source
(e.g., a resource ID being monitored), the target
(such as a status page component), and the parent
entity (e.g., the linked status page).ruleset_id
in the path and submitting the updated actions
array in the request body. Each action includes a type
(such as trigger-statuspage-update
) and corresponding settings
.name
, description
, enabled
status, the URL
to which events should be sent, and the created_at
timestamp.webhook_id
in the path. Each event represents a payload submitted to the webhook endpoint — typically from an external system or alerting service.content_type
of the payload, the raw body
of the received request, the sender’s IP address
, and the received_at
timestamp.last_received_at
and limit
to paginate results and retrieve only the most recent entries.name
, description
. After creation, the webhook’s unique id
will be returned in the response. This ID can be used to programmatically submit event payloads to the webhook via the Submit Webhook Event endpointwebhook_id
in the path. This ID is returned when a webhook is created via the Create Webhook endpoint.team_id
in the path. The response includes incidents created manually or triggered through automated rulesets, allowing teams to track their current and historical incident activity.id
, status
, urgency
, created_at
, and description
, providing full visibility into the lifecycle and context of reported issues.incident_id
in the path. These actions reflect both manual and automated responses triggered during the incident’s lifecycle — such as notifications, escalations, or status page updates.type
of action, the target
(e.g., service or component), and timestamps indicating when the action was executed. This gives teams clear visibility into how incidents were handled in real time.team_id
in the path and submitting incident details in the request body. Required fields include the name
of the incident, a brief description
, and its urgency
level (e.g., low, medium, high).incident_id
in the URL path and submitting the new details in the request body. This endpoint is ideal for maintaining accurate, up-to-date information throughout the incident lifecycle.customer_id
in the path. The response includes schedule entries that define which team members are responsible for incident response during specific time intervals.team_member_id
, start_date
, end_date
, and the time recurrence parameters including months_of_year
, weeks_of_month
, week_days
, and time_range
. These options provide flexible scheduling across daily, weekly, or monthly cycles.team_id
in the path and submitting the updated configuration in the request body. This allows you to modify both the timing and recurrence rules that define when a team member is expected to be on-call.team_member_id
, start_date
, end_date
, and recurrence settings including months_of_year
, weeks_of_month
, week_days
, and the time_range
.team_member_id
to reflect staffing or rotation changes.team_member_id
and the created_at
timestamp as query parameters. These two values uniquely identify the schedule entry that should be removed.Manage various aspects of subscriptions, including retrieving payment histories, handling proration details during plan changes, and performing actions such as deleting, reactivating, and updating subscriptions. This ensures users maintain complete control over their subscription lifecycles.
Access and manage payment methods associated with customer accounts, ensuring users can easily view and maintain their payment information for smooth billing operations.
Retrieve details of available coupons and apply them to customer accounts, allowing for promotional discounts and effective management of customer incentives.
id
in the URL path. The returned information includes the log group's name, service association, description, retention policy, creation and update timestamps, and whether it is currently enabled.service_id
. The enabled
flag allows you to control whether the log group is active upon creation.id
in the URL path. Deleting a log group will remove its configuration and metadata, but it may or may not affect previously stored logs depending on system settings.Pinghome allows you to collect, monitor, and analyze structured logs from any application in real-time. Whether you're running services in production or debugging locally, centralized logging helps you gain visibility into your system’s behavior and track important events.
This section provides implementation guides for sending logs to Pinghome using HTTP-based log ingestion. Each guide shows how to configure your logging tool, format and structure log data, and authenticate requests using secure Bearer tokens.
Choose your language from the left navigation menu to get started.
This guide shows how to send logs to Pinghome from your .NET application using NLog. You'll use HTTP targets to push logs with structured context like extra, user_id, and any other fields.
{
"logs": [
{
"message": "User purchased a product.",
"level": "Info",
"timestamp": "2025-07-23T14undefined:00.000Z",
"user_id": "123",
"extra": {
"item": "Orange Soda",
"price": 100.0
}
}
]
}
Issue | Solution |
---|---|
No logs in Pinghome | Check if your token and log group URL are correct. |
Invalid layout or JSON | Ensure extra is serialized correctly with JsonSerializer.Serialize or proper serialization. |
Nothing is sent to HTTP | Check internal-nlog.log for errors. |
Config not working | Ensure NLog.config is set to CopyToOutputDirectory . |