Catchpoint REST API v2

Catchpoint's REST API v2 provides programmatic access to the Internet Performance Monitoring platform: manage synthetic and endpoint tests, folders, products, nodes and node groups, contacts, labels, alerts, assertions, SLAs/SLOs, and pull raw and aggregated performance, real-user, and endpoint data. Authenticated with a bearer (JWT) token and documented via a public Swagger UI.

OpenAPI Specification

catchpoint-systems-rest-api-v2-openapi.json Raw ↑
{
  "openapi": "3.0.1",
  "info": {
    "title": "Catchpoint REST API v2.0",
    "version": "2.0"
  },
  "servers": [
    {
      "url": "/api"
    }
  ],
  "paths": {
    "/v2/account/activity": {
      "get": {
        "tags": [
          "Account"
        ],
        "summary": "Returns Account Activity details by the parameters passed.",
        "parameters": [
          {
            "name": "month",
            "in": "query",
            "description": "Account activity for the month",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "year",
            "in": "query",
            "description": "Account activity for the year",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "testName",
            "in": "query",
            "description": "Account activity for the Test Name",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "networkTypes",
            "in": "query",
            "description": "Comma-separated list of Network Types (refer InternalLink[Test Enumeration Endpoint,operations-tag-Test,operations-Test-get_v2_tests_enumeration])",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "testTypes",
            "in": "query",
            "description": "Comma-separated list of Test Types (refer InternalLink[Test Enumeration Endpoint,operations-tag-Test,operations-Test-get_v2_tests_enumeration])",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "monitorTypes",
            "in": "query",
            "description": "Comma-separated list of Monitor Types (refer InternalLink[Test Enumeration Endpoint,operations-tag-Test,operations-Test-get_v2_tests_enumeration])",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "divisionId",
            "in": "query",
            "description": "Account Activity for the Division ID",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "productIds",
            "in": "query",
            "description": "Comma-separated list of Product IDs",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "folderIds",
            "in": "query",
            "description": "Comma-separated list of Folder IDs",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "Page number to return records from when the number of records exceeds pageSize",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of results per page. Maximum value is 100.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AccountActivity.ActivityResponseModel]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AccountActivity.ActivityResponseModel]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AccountActivity.ActivityResponseModel]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 1
      }
    },
    "/v2/tests/alerts/{alertIds}": {
      "get": {
        "tags": [
          "Alerts"
        ],
        "summary": "Returns alert details based on the alert IDs.",
        "description": "*[Analytics Endpoint]*\r\n\r\nThe data returned is in UTC.",
        "parameters": [
          {
            "name": "alertIds",
            "in": "path",
            "description": "Comma-separated list of alert IDs",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertApiModel]]]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertApiModel]]]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[System.Collections.Generic.List`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertApiModel]]]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 1
      }
    },
    "/v2/tests/alerts": {
      "get": {
        "tags": [
          "Alerts"
        ],
        "summary": "Returns alert details based on the parameters.",
        "description": "*[Analytics Endpoint]*\r\n\r\nIf no time is specified, the alerts from the last 24 hours are returned. The data returned is in UTC.",
        "parameters": [
          {
            "name": "startTimeUtc",
            "in": "query",
            "description": "Start time in UTC (YYYY-MM-DDThh:mm:ss). Specify an End time if Start time is set.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "endTimeUtc",
            "in": "query",
            "description": "End time in UTC (YYYY-MM-DDThh:mm:ss). Specify a Start time if End time is set.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "levelId",
            "in": "query",
            "description": "Alert level Id. (Warning = 0, Critical = 1, Information = 2, Improved = 3)",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "testName",
            "in": "query",
            "description": "Test name to filter alerts for",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "testIds",
            "in": "query",
            "description": "Comma-separated list of test IDs to filter alerts for",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alertTypeId",
            "in": "query",
            "description": "Alert Type ID (refer InternalLink[Test Enumeration Endpoint,operations-tag-Test,operations-Test-get_v2_tests_enumeration])",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "alertTypeSubId",
            "in": "query",
            "description": "Alert Type Sub ID (refer InternalLink[Test Enumeration Endpoint,operations-tag-Test,operations-Test-get_v2_tests_enumeration])",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "productIds",
            "in": "query",
            "description": "Comma-separated list of Product IDs to filter alerts for",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "productName",
            "in": "query",
            "description": "Product name to filter alerts for",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "acknowledgedBy",
            "in": "query",
            "description": "Contact ID that acknowledged the test alert",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "includeNodeDetails",
            "in": "query",
            "description": "Include Node details",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "pageNumber",
            "in": "query",
            "description": "Page number to return records from when the number of records exceeds pageSize",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1
            }
          },
          {
            "name": "pageSize",
            "in": "query",
            "description": "Number of results per page. Maximum value is 100.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertApiModel]]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertApiModel]]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertApiModel]]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 2
      },
      "patch": {
        "tags": [
          "Alerts"
        ],
        "summary": "Assign, Acknowledge or Drop alerts.",
        "description": "The request body requires 3 keys to be filled with appropriate value as listed below.\r\n\r\n* **alertId** - Alert ID\r\n\r\n* **acknowledgeAlert** - set to true or false\r\n\r\n* **dropAlert** - set to true or false\r\n\r\n* **assignToContactByEmail** - email address string",
        "requestBody": {
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertUpdateModel"
                }
              }
            },
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertUpdateModel"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertUpdateModel"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertUpdateModel"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[System.Collections.Generic.List`1[System.String]]]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[System.Collections.Generic.List`1[System.String]]]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.Alert.AlertResponse`1[System.Collections.Generic.List`1[System.String]]]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 3
      }
    },
    "/v2/library/asns/{ids}": {
      "get": {
        "tags": [
          "ASNs"
        ],
        "summary": "Return ASN's details by the IDs passed",
        "parameters": [
          {
            "name": "ids",
            "in": "path",
            "description": "Comma separated list of ASN's IDs",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 1
      },
      "delete": {
        "tags": [
          "ASNs"
        ],
        "summary": "Deletes existing ASNs by parameters passed",
        "parameters": [
          {
            "name": "ids",
            "in": "path",
            "description": "To delete ASNs based on the specified list of IDs, the IDs need to be separated by commas. This endpoint allows partial deletion; if you provide a list of five IDs and only three of them are valid, then it will delete those three ASNs. The response will indicate the three that were deleted, and the two invalid IDs will be listed as errors.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 3
      }
    },
    "/v2/library/asns": {
      "get": {
        "tags": [
          "ASNs"
        ],
        "summary": "Return ASN details by the parameters passed",
        "parameters": [
          {
            "name": "asn",
            "in": "query",
            "description": "ASN",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 2
      },
      "post": {
        "tags": [
          "ASNs"
        ],
        "summary": "Create an ASN based on the PostData.",
        "description": "To get payload for creating a new ASN and to get the created ASN details refer InternalLink[ASN by ID Endpoint,operations-tag-ASN,operations-ASN-get_v2_asns__asnIds_]. Pass “0” for ASN ID to create a new ASN.",
        "parameters": [
          {
            "name": "objectDetails",
            "in": "query",
            "description": "Set to true to return the created object in the response body, otherwise the response body will only return created object ID.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.AsnRequestModel"
              }
            },
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.AsnRequestModel"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.AsnRequestModel"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.AsnRequestModel"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 4
      }
    },
    "/v2/library/asns/{asnId}": {
      "patch": {
        "tags": [
          "ASNs"
        ],
        "summary": "Update an existing ASN based on the request body.",
        "description": "Only the property to be updated can be passed in the request body instead of the whole object. The update request body requires a total of three keys to be filled with appropriate value as listed below:\r\n* **value** – The value property provides the new value.\r\n            \r\n* **path** – The path property indicates the element to update. The entire path with slashes needs to be provided here. Example: /status/id\r\n            \r\n* **op** – The op property indicates the type of operation; we support the following three operations.\r\n            \r\n    * **Remove** - Remove a property or array element.\r\n            \r\n    * **replace** - Same as remove followed by add at same location.\r\n            \r\n* **from** - [Not Used]\r\n            \r\n    * **Explanation** - The \"from\" parameter represents the starting or current value of the resource that the operation intends to modify. The from parameter is included in the example value schema but is not utilized in this endpoint's functionality. It is reserved for potential future use or could be used in specific scenarios not covered by the current implementation.",
        "parameters": [
          {
            "name": "asnId",
            "in": "path",
            "description": "Asn ID",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "objectDetails",
            "in": "query",
            "description": "Set to true to return the updated object in the response body, otherwise the response body will only return the updated object ID.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/json-patch+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "text/json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            },
            "application/*+json": {
              "schema": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Microsoft.AspNetCore.JsonPatch.Operations.Operation"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.AsnResponseModel]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 5
      }
    },
    "/v2/assertions": {
      "get": {
        "tags": [
          "Assertions"
        ],
        "summary": "Returns the assertions by the IDs passed.",
        "description": "If no parameters are passed, the details of all assertions for current level are returned.",
        "parameters": [
          {
            "name": "assertionIds",
            "in": "query",
            "description": "Comma-separated list of Assertion IDs",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.IdentityProviderAssertion.IdentityProviderAssertionRequestResponseModel]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.IdentityProviderAssertion.IdentityProviderAssertionRequestResponseModel]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.IdentityProviderAssertion.IdentityProviderAssertionRequestResponseModel]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 1
      },
      "post": {
        "tags": [
          "Assertions"
        ],
        "summary": "Create a new assertion based on the PostData.",
        "description": "To get payload for creating a new assertion and to get the created assertion details refer InternalLink[Identity Provider Assertions Endpoint,operations-tag-Assertions,operations-Assertions-get_v2_assertions] Endpoint. (add hyperlink to endpoint). Pass “0” for assertion ID to create a new assertion.",
        "parameters": [
          {
            "name": "objectDetails",
            "in": "query",
            "description": "Set to true to return the created object in the response body, otherwise the response body will only return created object ID.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "requestBody": {
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.IdentityProviderAssertionRequest"
              }
            },
            "application/json-patch+json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.IdentityProviderAssertionRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.IdentityProviderAssertionRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Requests.v2_0.IdentityProviderAssertionRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.IdentityProviderAssertion.IdentityProviderAssertionPostResponse]"
                }
              },
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.IdentityProviderAssertion.IdentityProviderAssertionPostResponse]"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/Catchpoint.Symphony.REST.Common.Response.APIResponse`1[Catchpoint.Symphony.REST.Common.Response.v2_0.IdentityProviderAssertion.IdentityProviderAssertionPostResponse]"
                }
              }
            }
          }
        },
        "security": [
          {
            "bearer": [ ]
          }
        ],
        "order": 2
      },
      "patch": {
        "tags": [
          "Assertions"
        ],
        "summary": "Update an existing assertion based on the request body.",
        "description": "**Request:**\r\n            \r\nOnly the property to be updated can be passed in the request body instead of the whole object. The update request body requires a total of three keys to be filled with appropriate value as listed below:\r\n* **value** – The value property provides the new value.\r\n            \r\n* **path** – The path property indicates the element to update. The entire path with slashes needs to be provided here. Example: /status/id\r\n            \r\n* **op** – The op property indicates the type of operation; we support the following three operations.\r\n            \r\n    * **add** - Add a property or array element. For existing property: set value.\r\n            \r\n    * **Remove** - Remove a property or array element.\r\n            \r\n    * **replace** - Same as remove followed by add at same location.\r\n            \r\n* **from** - [Not Used]\r\n            \r\n    * **Explanation** - The \"from\" parameter represents the starting or current value of the resource that the operation intends to modify. The from parameter is included in the example value schema but is not utilized in this endpoint's functionality. It is reserved for potential future use or could be used in specific scenarios not covered by the current implementation.",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "description": "Assertion ID",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "objectDetails",
            "in": "query",
            "description": "Set to true to return the updated object in the response body, otherwise the response body will only return the updated object ID.",
            "schema": {
              "type": "boolean"
      

# --- truncated at 32 KB (974 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/catchpoint-systems/refs/heads/main/openapi/catchpoint-systems-rest-api-v2-openapi.json