Solvimon alertRules API
The alertRules API from Solvimon — 2 operation(s) for alertrules.
The alertRules API from Solvimon — 2 operation(s) for alertrules.
openapi: 3.1.0
info:
title: Configuration alertRules API
version: 1.0.0
servers:
- url: https://test.api.solvimon.com
description: The TEST environment for our API
- url: https://api.solvimon.com
description: The live environment for our API
tags:
- name: alertRules
paths:
/v{version}/alert-rules:
get:
operationId: getAlertRules
summary: Get a list of alert rules
description: Requires the ALERT_RULE.VIEW permission.
tags:
- alertRules
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: expand[]
in: query
description: The id fields of the resources that are going to be expanded.
required: false
schema:
type: array
items:
type: string
- name: limit
in: query
description: The amount of records shown in the list
required: false
schema:
type: integer
- name: page
in: query
description: The page which is going to be shown
required: false
schema:
type: integer
- name: order_by
in: query
description: The parameter by which the response is ordered.
required: false
schema:
type: string
- name: order_direction
in: query
description: The order direction by which the response is ordered.
required: false
schema:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AlertRuleResponseWrapper'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
post:
operationId: postAlertRules
summary: Create an alert rule
description: Requires the ALERT_RULE.CREATE permission.
tags:
- alertRules
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/AlertRule'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'409':
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AlertRuleCreateRequest'
/v{version}/alert-rules/{resourceId}:
get:
operationId: getAlertRulesByResourceId
summary: Get an alert rule by its ID
description: Requires the ALERT_RULE.VIEW permission.
tags:
- alertRules
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: expand[]
in: query
description: The id fields of the resources that are going to be expanded.
required: false
schema:
type: array
items:
type: string
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AlertRule'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
delete:
operationId: deleteAlertRulesByResourceId
summary: Delete an alert rule
description: Requires the ALERT_RULE.DELETE permission.
tags:
- alertRules
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AlertRule'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
patch:
operationId: patchAlertRulesByResourceId
summary: Update an alert rule
description: Requires the ALERT_RULE.UPDATE permission.
tags:
- alertRules
parameters:
- name: version
in: path
description: version
required: true
schema:
type: string
default: '1'
- name: resourceId
in: path
description: The ID of the resource to be requested.
required: true
schema:
type: string
default: ''
- name: X-API-KEY
in: header
required: true
schema:
type: string
- name: x-platform-id
in: header
description: Platform ID.
required: false
schema:
type: string
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/AlertRule'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'401':
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'403':
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
'500':
description: Internal Server Error
content:
application/json:
schema:
$ref: '#/components/schemas/ApiError'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/AlertRuleUpdateRequest'
components:
schemas:
IndividualCreateRequest:
type: object
properties:
name:
$ref: '#/components/schemas/Name'
residential_address:
$ref: '#/components/schemas/Address'
title: IndividualCreateRequest
TaxIdValidationValid:
type: string
enum:
- VALID
- NOT_VALID
- UNKNOWN
title: TaxIdValidationValid
AlertRuleCreateRequestTriggerType:
type: string
enum:
- STATIC
- DYNAMIC
title: AlertRuleCreateRequestTriggerType
TaxIdValidation:
type: object
properties:
id:
type: string
validation_date:
type: string
source:
type: string
valid:
$ref: '#/components/schemas/TaxIdValidationValid'
message:
type:
- string
- 'null'
title: TaxIdValidation
AlertRuleEntitlementUpdateRequest:
type: object
properties:
feature_id:
type: string
description: Resource ID of type FEATURE
feature:
oneOf:
- $ref: '#/components/schemas/Feature'
- type: 'null'
comparator:
$ref: '#/components/schemas/AlertRuleEntitlementUpdateRequestComparator'
threshold:
$ref: '#/components/schemas/Threshold'
title: AlertRuleEntitlementUpdateRequest
LinkedIntegration:
type: object
properties:
id:
type: string
link_details:
type: array
items:
$ref: '#/components/schemas/LinkDetail'
title: LinkedIntegration
IntegrationDetails:
type: object
properties:
id:
type:
- string
- 'null'
reference:
type:
- string
- 'null'
payment_gateway_variant:
$ref: '#/components/schemas/IntegrationDetailsPaymentGatewayVariant'
adyen:
$ref: '#/components/schemas/AdyenIntegrationDetails'
stripe:
$ref: '#/components/schemas/StripeIntegrationDetails'
title: IntegrationDetails
AlertRuleUpdateRequest:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
description: A custom reference assigned to the alert.
name:
type:
- string
- 'null'
description: A custom name assigned to the alert.
description:
type:
- string
- 'null'
status:
oneOf:
- $ref: '#/components/schemas/AlertRuleUpdateRequestStatus'
- type: 'null'
description: The status of the AlertRule. DEPRECATED is not supported.
customer_ids:
type:
- array
- 'null'
items:
type: string
description: The IDs of the customers linked to the alert.
customers:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CustomerUpdateRequest'
type:
oneOf:
- $ref: '#/components/schemas/AlertRuleUpdateRequestType'
- type: 'null'
description: The type of the the alert.
trigger_type:
oneOf:
- $ref: '#/components/schemas/AlertRuleUpdateRequestTriggerType'
- type: 'null'
entitlement:
$ref: '#/components/schemas/AlertRuleEntitlementUpdateRequest'
description: The specification of the entitlement for the alert, can only be specified when type is ENTITLEMENT
invoice:
$ref: '#/components/schemas/AlertRuleInvoiceUpdateRequest'
description: The specification of the invoice for the alert, can only be specified when type is INVOICE
title: AlertRuleUpdateRequest
Threshold:
type: object
properties:
number:
type:
- string
- 'null'
percentage:
type:
- string
- 'null'
amount:
$ref: '#/components/schemas/Amount'
title: Threshold
MeterStatus:
type: string
enum:
- DRAFT
- ACTIVE
- ARCHIVED
- DEPRECATED
description: The status of the meter indicating the activity of the meter and the ability to update properties.
title: MeterStatus
PricingPlanSubscriptionSelectorRuleType:
type: string
enum:
- EQUALS
- NOT_EQUALS
- IN
- NOT_IN
- GREATER_THAN
- GREATER_THAN_OR_EQUALS
- LESS_THAN
- LESS_THAN_OR_EQUALS
- EMPTY
- NOT_EMPTY
- CONTAINS
- NOT_CONTAINS
title: PricingPlanSubscriptionSelectorRuleType
PricingPlanSubscriptionSelectorDataField:
type: string
enum:
- BILLING_ENTITY_REGISTERED_ADDRESS_COUNTRY
- PRICING_PLAN_REFERENCE
title: PricingPlanSubscriptionSelectorDataField
AlertRuleCreateRequest:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
description: A custom reference assigned to the alert.
name:
type:
- string
- 'null'
description: A custom name assigned to the alert.
description:
type:
- string
- 'null'
status:
oneOf:
- $ref: '#/components/schemas/AlertRuleCreateRequestStatus'
- type: 'null'
description: The status of the AlertRule. DEPRECATED is not supported.
customer_ids:
type:
- array
- 'null'
items:
type: string
description: The IDs of the customers linked to the alert.
customers:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CustomerCreateRequest'
type:
oneOf:
- $ref: '#/components/schemas/AlertRuleCreateRequestType'
- type: 'null'
description: The type of the the alert.
trigger_type:
oneOf:
- $ref: '#/components/schemas/AlertRuleCreateRequestTriggerType'
- type: 'null'
entitlement:
$ref: '#/components/schemas/AlertRuleEntitlementCreateRequest'
description: The specification of the entitlement for the alert, can only be specified when type is ENTITLEMENT
invoice:
$ref: '#/components/schemas/AlertRuleInvoiceCreateRequest'
description: The specification of the invoice for the alert, can only be specified when type is INVOICE
required:
- reference
- type
title: AlertRuleCreateRequest
AlertRuleInvoiceVariant:
type: string
enum:
- OVERDUE
title: AlertRuleInvoiceVariant
TaxRegistration:
type: object
properties:
id:
type:
- string
- 'null'
description: The id of this tax registration
description:
type:
- string
- 'null'
description: The description of this tax registration
tax_id:
type:
- string
- 'null'
description: The tax id of this tax registration, e.g. a TIN, VAT id or other tax number
tax_ids:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/TaxId'
description: Tax IDs used for tax purposes of the tax registration, e.g. TINs, VAT ids, or other tax number
registration_number:
type:
- string
- 'null'
description: The registration number of this tax registration, e.g. a company registration number
registered_address:
$ref: '#/components/schemas/Address'
description: The address of this tax registration, if different from the billing entity. Currently, only the address will be used for tax calculations
title: TaxRegistration
PricingPlanSubscriptionSelector:
type: object
properties:
data:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorData'
rules:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorRule'
filters:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorFilter'
fallback:
oneOf:
- $ref: '#/components/schemas/PricingPlanSubscriptionSelectorFallback'
- type: 'null'
description: The fallback logic what to do when no subscription is found. By default it is LATEST
title: PricingPlanSubscriptionSelector
PricingPlanSubscriptionSelectorFilterField:
type: string
enum:
- BILLING_ENTITY_REGISTERED_ADDRESS_COUNTRY
- PRICING_PLAN_REFERENCE
title: PricingPlanSubscriptionSelectorFilterField
AlertRuleInvoiceCreateRequest:
type: object
properties:
variant:
$ref: '#/components/schemas/AlertRuleInvoiceCreateRequestVariant'
overdue:
$ref: '#/components/schemas/AlertRuleInvoiceOverdue'
title: AlertRuleInvoiceCreateRequest
ApiErrorType:
type: string
enum:
- API_ERROR
- INVALID_REQUEST
title: ApiErrorType
CustomerSellerDetailsUpdateRequest:
type: object
properties:
default_billing_entity_id:
type:
- string
- 'null'
description: Resource ID of type BILLING_ENTITY
title: CustomerSellerDetailsUpdateRequest
ApiError:
type: object
properties:
type:
$ref: '#/components/schemas/ApiErrorType'
code:
$ref: '#/components/schemas/ApiErrorCode'
field:
type:
- string
- 'null'
message:
type: string
resource_id:
type:
- string
- 'null'
resource_type:
oneOf:
- $ref: '#/components/schemas/ApiErrorResourceType'
- type: 'null'
required:
- type
- code
- message
title: ApiError
PricingPlanSubscriptionSelectorRule:
type: object
properties:
field:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorRuleField'
type:
$ref: '#/components/schemas/PricingPlanSubscriptionSelectorRuleType'
title: PricingPlanSubscriptionSelectorRule
IndividualUpdateRequest:
type: object
properties:
name:
$ref: '#/components/schemas/Name'
residential_address:
$ref: '#/components/schemas/Address'
title: IndividualUpdateRequest
AlertRuleUpdateRequestTriggerType:
type: string
enum:
- STATIC
- DYNAMIC
title: AlertRuleUpdateRequestTriggerType
AlertRule:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
description: A custom reference assigned to the alert.
name:
type:
- string
- 'null'
description: A custom name assigned to the alert.
description:
type:
- string
- 'null'
status:
oneOf:
- $ref: '#/components/schemas/AlertRuleStatus'
- type: 'null'
description: The status of the AlertRule. DEPRECATED is not supported.
customer_ids:
type:
- array
- 'null'
items:
type: string
description: The IDs of the customers linked to the alert.
customers:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Customer'
type:
oneOf:
- $ref: '#/components/schemas/AlertRuleType'
- type: 'null'
description: The type of the the alert.
trigger_type:
oneOf:
- $ref: '#/components/schemas/AlertRuleTriggerType'
- type: 'null'
entitlement:
$ref: '#/components/schemas/AlertRuleEntitlement'
description: The specification of the entitlement for the alert, can only be specified when type is ENTITLEMENT
invoice:
$ref: '#/components/schemas/AlertRuleInvoice'
description: The specification of the invoice for the alert, can only be specified when type is INVOICE
title: AlertRule
CustomerUpdateRequestRolesItems:
type: string
enum:
- DEFAULT
- NON_PROCESSING
- SELF_BILLING
- SELLER
- PROCESSING_ONLY
title: CustomerUpdateRequestRolesItems
PricingPlanSubscriptionSelectorFallback:
type: string
enum:
- LATEST
- NONE
description: The fallback logic what to do when no subscription is found. By default it is LATEST
title: PricingPlanSubscriptionSelectorFallback
NotificationChannelType:
type: string
enum:
- EMAIL
description: The channel type to use.
title: NotificationChannelType
AlertRuleInvoiceOverdueComparator:
type: string
enum:
- EQUALS
- NOT_EQUALS
- IN
- NOT_IN
- GREATER_THAN
- GREATER_THAN_OR_EQUALS
- LESS_THAN
- LESS_THAN_OR_EQUALS
- EMPTY
- NOT_EMPTY
- CONTAINS
- NOT_CONTAINS
title: AlertRuleInvoiceOverdueComparator
CustomerUpdateRequestType:
type: string
enum:
- ORGANIZATION
- INDIVIDUAL
description: The type of customer entity.
title: CustomerUpdateRequestType
CustomFieldValue:
type: object
properties:
id:
type:
- string
- 'null'
description: Resource ID of type CUSTOM_FIELD
reference:
type:
- string
- 'null'
value:
type:
- string
- 'null'
values:
type:
- array
- 'null'
items:
type: string
integration_details:
oneOf:
- $ref: '#/components/schemas/IntegrationDetails'
- type: 'null'
integration_id:
type: string
description: The resource ID of the integration linked to the custom field
title: CustomFieldValue
PricingPlanSubscriptionSelectorRuleField:
type: string
enum:
- BILLING_ENTITY_REGISTERED_ADDRESS_COUNTRY
- PRICING_PLAN_REFERENCE
title: PricingPlanSubscriptionSelectorRuleField
NotificationPreferenceUpdateRequestType:
type: string
enum:
- INVOICE
description: The notification type to configure.
title: NotificationPreferenceUpdateRequestType
AlertRuleCreateRequestStatus:
type: string
enum:
- DRAFT
- ACTIVE
- ARCHIVED
- DEPRECATED
description: The status of the AlertRule. DEPRECATED is not supported.
title: AlertRuleCreateRequestStatus
AlertRuleEntitlementComparator:
type: string
enum:
- EQUALS
- NOT_EQUALS
- IN
- NOT_IN
- GREATER_THAN
- GREATER_THAN_OR_EQUALS
- LESS_THAN
- LESS_THAN_OR_EQUALS
- EMPTY
- NOT_EMPTY
- CONTAINS
- NOT_CONTAINS
title: AlertRuleEntitlementComparator
CustomerCreateRequestStatus:
type: string
enum:
- DRAFT
- ACTIVE
- ARCHIVED
- DEPRECATED
- CLOSED
title: CustomerCreateRequestStatus
Individual:
type: object
properties:
name:
$ref: '#/components/schemas/Name'
residential_address:
$ref: '#/components/schemas/Address'
title: Individual
CustomerType:
type: string
enum:
- ORGANIZATION
- INDIVIDUAL
description: The type of customer entity.
title: CustomerType
AlertRuleType:
type: string
enum:
- ENTITLEMENT
- INVOICE
description: The type of the the alert.
title: AlertRuleType
PeriodType:
type: string
enum:
- DAY
- WEEK
- MONTH
- YEAR
title: PeriodType
CustomerRolesItems:
type: string
enum:
- DEFAULT
- NON_PROCESSING
- SELF_BILLING
- SELLER
- PROCESSING_ONLY
title: CustomerRolesItems
LinkedIntegrationCreateRequest:
type: object
properties:
id:
type: string
link_details:
type: array
items:
$ref: '#/components/schemas/LinkDetail'
title: LinkedIntegrationCreateRequest
OrganizationUpdateRequest:
type: object
properties:
legal_name:
type: string
tax_id:
type:
- string
- 'null'
description: Tax Id used for tax purposes of the organization
tax_ids:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/TaxId'
description: Tax Ids used for tax purposes of the organization
registration_number:
type:
- string
- 'null'
tax_exempt:
type:
- boolean
- 'null'
tax_exempt_note:
type:
- string
- 'null'
registered_address:
$ref: '#/components/schemas/Address'
tax_registrations:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/TaxRegistration'
description: Extra tax registrations for the customer
title: OrganizationUpdateRequest
AlertRuleInvoiceUpdateRequestVariant:
type: string
enum:
- OVERDUE
title: AlertRuleInvoiceUpdateRequestVariant
IntegrationDetailsPaymentGatewayVariant:
type: string
enum:
- ADYEN
- STRIPE
title: IntegrationDetailsPaymentGatewayVariant
LinkedIntegrationUpdateRequest:
type: object
properties:
id:
type: string
link_details:
type: array
items:
$ref: '#/components/schemas/LinkDetail'
title: LinkedIntegrationUpdateRequest
MeterProperty:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
name:
type:
- string
- 'null'
description:
type:
- string
- 'null'
status:
$ref: '#/components/schemas/MeterPropertyStatus'
description: The status of the meter property indicating the activity and the ability to update properties.
type:
oneOf:
- $ref: '#/components/schemas/MeterPropertyType'
- type: 'null'
description: The type of the meter property.
enum_values:
type:
- array
- 'null'
items:
type: string
description: The list of available ENUM values.
title: MeterProperty
Meter:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
reference:
type: string
name:
type:
- string
- 'null'
description:
type:
- string
- 'null'
status:
oneOf:
- $ref: '#/components/schemas/MeterStatus'
- type: 'null'
description: The status of the meter indicating the activity of the meter and the ability to update properties.
meter_values:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/MeterMeterValue'
description: The values used as input to calculate billable units, used in the meter.
meter_properties:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/MeterMeterProperty'
description: The properties that provide information to give context to an event, used in the meter.
title: Meter
CustomerCreateRequest:
type: object
properties:
object_type:
type:
- string
- 'null'
id:
type:
- string
- 'null'
created_at:
type:
- string
- 'null'
parent_customer_id:
type:
- string
- 'null'
description: The parent of the customer. Only returned when there is a single parent.
parent_customer_ids:
type:
- array
- 'null'
items:
type: string
description: A list of parents of the customer. Will also be returned if there is a single parent.
reference:
type: string
description: A custom reference assigned to the customer.
status:
oneOf:
- $ref: '#/components/schemas/CustomerCreateRequestStatus'
- type: 'null'
timezone:
type:
- string
- 'null'
type:
$ref: '#/components/schemas/CustomerCreateRequestType'
description: The type of customer entity.
email:
type: string
description: The email of the customer.
notification_preferences:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/NotificationPreferenceCreateRequest'
description: Notification preferences for customer-related communications.
locale:
type:
- string
- 'null'
description: The locale of the customer. Format is language-country (like en-US).
individual:
$ref: '#/components/schemas/IndividualCreateRequest'
description: Additional description of the individual customer type.
organization:
$ref: '#/components/schemas/OrganizationCreateRequest'
# --- truncated at 32 KB (69 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/solvimon/refs/heads/main/openapi/solvimon-alertrules-api-openapi.yml