Splunk Observability Cloud Synthetics Port tests

API for creating, updating, retrieving, and deleting Port tests in Splunk Synthetic Monitoring.

OpenAPI Specification

splunk-observability-synthetics-ports-tests-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Splunk Observability Cloud — Synthetics Port tests
  version: 1.0.1
  description: 'API for creating, updating, retrieving, and deleting Port tests in Splunk Synthetic Monitoring.

    Requirements


    You must have an organization access token with the API permission or a session token to use the API.

    You have to have the Splunk Observability Cloud admin or power role to use the POST /tests/port/try_now, POST /tests/port/validate,
    PUT /tests/port/{id}/validate, POST /tests/port, PUT /tests/port/{id}, and DELETE /tests/port/{id} operations.

    You have to have the Splunk Observability Cloud admin, power, or read_only role to use the GET /tests/port/{id} operation.'
  x-provenance:
    method: reconstructed
    authored_by: Splunk (content) / API Evangelist (assembly)
    reconstructed_by: API Evangelist
    reconstructed_on: '2026-08-19'
    first_party: false
    provider_published: false
    note: Splunk's own OpenAPI objects, extracted from the React Server Component payload embedded in each of the 48 API reference
      pages at dev.splunk.com. The operations and schemas are Splunk's; the assembly into standalone documents is API Evangelist's.
      Splunk serves no fetchable spec file — dev.splunk.com answers 200 with an identical 6,638-byte shell for every asset
      path, including invented control paths — so this is NOT first-party publication and is not graded as such.
  x-evidence:
  - type: source
    url: https://dev.splunk.com/observability/reference/
  - type: source
    url: https://dev.splunk.com/observability/docs/apibasics/api_list/
servers:
- url: https://api.{REALM}.observability.splunkcloud.com/v2/synthetics
  description: Endpoint URL
  variables:
    REALM:
      default: us0
      description: Splunk Observability Cloud realm the organization is provisioned in (for example us0, us1, eu0, jp0, au0).
security:
- SessionToken: []
components:
  securitySchemes:
    SessionToken:
      type: apiKey
      in: header
      name: X-SF-Token
      description: Splunk Observability Cloud session token or org access token.
paths:
  /tests/port:
    post:
      summary: createPortTest
      description: 'Creates a new Port test, based on the specifications in the request body.

        Requirements


        You must have an organization access token with the API permission or a session token to use the API.

        You need the Splunk Observability Cloud admin or power role.'
      parameters:
      - name: Content-Type
        in: header
        description: Format of the request body. Always  "application/json".
        required: true
        schema:
          type: string
      - name: X-SF-TOKEN
        in: header
        description: Authentication token.
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                test:
                  type: object
                  properties:
                    name:
                      type: string
                      example: My Port test
                    locationIds:
                      type: array
                      items:
                        type: string
                      example:
                      - aws-us-east-1
                      title: LocationIds
                      description: An array of location IDs where the test runs.
                    frequency:
                      type: integer
                      format: int32
                      example: 5
                      title: Frequency
                      description: How often to run your test.
                    schedulingStrategy:
                      type: string
                      example: round_robin
                      title: SchedulingStrategy
                      description: 'Type of scheduling strategy. This can only be:


                        round_robin

                        concurrent'
                    protocol:
                      type: string
                      example: tcp
                    host:
                      type: string
                      example: splunk.com
                    port:
                      type: integer
                      format: int32
                    active:
                      type: boolean
                      example: true
                    automaticRetries:
                      default: 0
                      type: integer
                      example: 1
                      description: Automatically retry if the run fails
                    customProperties:
                      type: array
                      items:
                        type: object
                        required:
                        - key
                        - value
                        properties:
                          key:
                            type: string
                            example: Env
                          value:
                            type: string
                            example: production
                      title: CustomProperties
                      description: An array of custom properties.  The section Custom Properties Criteria lists the requirements
                        for custom property names and values.
              title: PortTestValidateRequest
              description: Request body to validate Port tests.
            examples:
              example:
                value:
                  test:
                    active: true
                    automaticRetries: 1
                    customProperties:
                    - key: Env
                      value: production
                    frequency: 5
                    host: splunk.com
                    locationIds:
                    - aws-us-east-1
                    name: My Port test
                    port: 0
                    protocol: tcp
                    schedulingStrategy: round_robin
      responses:
        '201':
          description: HTTP 201 response
          content:
            application/json:
              schema:
                properties:
                  test:
                    type: object
                    properties:
                      id:
                        type: integer
                        format: int32
                        example: 1
                      name:
                        type: string
                        example: My Port test
                      active:
                        type: boolean
                        example: true
                      automaticRetries:
                        default: 0
                        type: integer
                        example: 1
                        description: Automatically retry if the run fails
                      frequency:
                        type: integer
                        format: int32
                        example: 5
                        title: Frequency
                        description: How often to run your test.
                      schedulingStrategy:
                        type: string
                        example: round_robin
                        title: SchedulingStrategy
                        description: 'Type of scheduling strategy. This can only be:


                          round_robin

                          concurrent'
                      createdAt:
                        type: string
                        readOnly: true
                        example: '2022-09-14T14:35:37.801Z'
                        title: CreatedAt
                        description: 'Timestamp of when the test was last updated, in UTC.

                          This field is read-only, and the system always sets the value.'
                      createdBy:
                        type: string
                        readOnly: true
                        example: abcdefgh1234
                        title: CreatedBy
                        description: 'Member ID of who created the test.

                          This field is read-only, and the system always sets the value.'
                      updatedAt:
                        type: string
                        readOnly: true
                        example: '2022-09-14T14:35:38.099Z'
                        title: UpdatedAt
                        description: 'Timestamp of when the test was last updated, in UTC.

                          This field is read-only, and the system always sets the value.'
                      updatedBy:
                        type: string
                        readOnly: true
                        example: abcdefgh1234
                        title: UpdatedBy
                        description: 'Member ID of who last updated the test.

                          This field is read-only, and the system always sets the value.'
                      locationIds:
                        type: array
                        items:
                          type: string
                        example:
                        - aws-us-east-1
                        title: LocationIds
                        description: An array of location IDs where the test runs.
                      type:
                        type: string
                        example: http
                      protocol:
                        type: string
                        example: tcp
                      host:
                        type: string
                        example: splunk.com
                      port:
                        type: integer
                        format: int32
                        example: 443
                      customProperties:
                        type: array
                        items:
                          type: object
                          required:
                          - key
                          - value
                          properties:
                            key:
                              type: string
                              example: Env
                            value:
                              type: string
                              example: production
                        title: CustomProperties
                        description: An array of custom properties.  The section Custom Properties Criteria lists the requirements
                          for custom property names and values.
                      lastRunStatus:
                        type: string
                        example: success
                        enum:
                        - pending
                        - success
                        - failed
                        title: LastRunStatus
                        description: Status of the last test run.
                      lastRunAt:
                        type: string
                        readOnly: true
                        example: '2022-09-14T14:36:45.156Z'
                        title: LastRunAt
                        description: 'Timestamp of when the test was last run, in UTC.

                          This field is read-only, and the system always sets the value.'
                type: object
              examples:
                example:
                  value:
                    test:
                      active: true
                      automaticRetries: 1
                      createdAt: '2022-09-14T14:35:37.801Z'
                      createdBy: abcdefgh1234
                      customProperties:
                      - key: Env
                        value: production
                      frequency: 5
                      host: splunk.com
                      id: 1
                      lastRunAt: '2022-09-14T14:36:45.156Z'
                      lastRunStatus: success
                      locationIds:
                      - aws-us-east-1
                      name: My Port test
                      port: 443
                      protocol: tcp
                      schedulingStrategy: round_robin
                      type: http
                      updatedAt: '2022-09-14T14:35:38.099Z'
                      updatedBy: abcdefgh1234
        '422':
          description: HTTP 422 response
          content:
            application/json:
              schema:
                properties:
                  code:
                    type: string
                    example: unprocessable_entity
                  message:
                    type: string
                    example: Can't create a Port test.
                  details:
                    type: object
                    properties:
                      device:
                        type: array
                        items:
                          type: string
                          example: must exist
                        description: 'This is a dynamic schema that consists of:

                          "fieldName": ["reason"]'
                type: object
              examples:
                example:
                  value:
                    code: unprocessable_entity
                    details:
                      device:
                      - must exist
                    message: Can't create a Port test.
      security:
      - SessionToken: []
      tags:
      - Synthetics Port tests
  /tests/port/{id}:
    get:
      summary: getSinglePortTest
      description: 'Retrieves a single Port test.

        Requirements


        You must have an organization access token with the API permission or a session token to use the API.

        You need the Splunk Observability Cloud admin, power, or read_only role.'
      parameters:
      - name: id
        in: path
        description: The ID of a Port to retrieve.
        required: true
        schema:
          type: string
      - name: X-SF-TOKEN
        in: header
        description: Authentication token.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  test:
                    type: object
                    properties:
                      id:
                        type: integer
                        format: int32
                        example: 1
                      name:
                        type: string
                        example: My Port test
                      active:
                        type: boolean
                        example: true
                      automaticRetries:
                        default: 0
                        type: integer
                        example: 1
                        description: Automatically retry if the run fails
                      frequency:
                        type: integer
                        format: int32
                        example: 5
                        title: Frequency
                        description: How often to run your test.
                      schedulingStrategy:
                        type: string
                        example: round_robin
                        title: SchedulingStrategy
                        description: 'Type of scheduling strategy. This can only be:


                          round_robin

                          concurrent'
                      createdAt:
                        type: string
                        readOnly: true
                        example: '2022-09-14T14:35:37.801Z'
                        title: CreatedAt
                        description: 'Timestamp of when the test was last updated, in UTC.

                          This field is read-only, and the system always sets the value.'
                      createdBy:
                        type: string
                        readOnly: true
                        example: abcdefgh1234
                        title: CreatedBy
                        description: 'Member ID of who created the test.

                          This field is read-only, and the system always sets the value.'
                      updatedAt:
                        type: string
                        readOnly: true
                        example: '2022-09-14T14:35:38.099Z'
                        title: UpdatedAt
                        description: 'Timestamp of when the test was last updated, in UTC.

                          This field is read-only, and the system always sets the value.'
                      updatedBy:
                        type: string
                        readOnly: true
                        example: abcdefgh1234
                        title: UpdatedBy
                        description: 'Member ID of who last updated the test.

                          This field is read-only, and the system always sets the value.'
                      locationIds:
                        type: array
                        items:
                          type: string
                        example:
                        - aws-us-east-1
                        title: LocationIds
                        description: An array of location IDs where the test runs.
                      type:
                        type: string
                        example: http
                      protocol:
                        type: string
                        example: tcp
                      host:
                        type: string
                        example: splunk.com
                      port:
                        type: integer
                        format: int32
                        example: 443
                      customProperties:
                        type: array
                        items:
                          type: object
                          required:
                          - key
                          - value
                          properties:
                            key:
                              type: string
                              example: Env
                            value:
                              type: string
                              example: production
                        title: CustomProperties
                        description: An array of custom properties.  The section Custom Properties Criteria lists the requirements
                          for custom property names and values.
                      lastRunStatus:
                        type: string
                        example: success
                        enum:
                        - pending
                        - success
                        - failed
                        title: LastRunStatus
                        description: Status of the last test run.
                      lastRunAt:
                        type: string
                        readOnly: true
                        example: '2022-09-14T14:36:45.156Z'
                        title: LastRunAt
                        description: 'Timestamp of when the test was last run, in UTC.

                          This field is read-only, and the system always sets the value.'
                title: PortTestResponse
              examples:
                example:
                  value:
                    test:
                      active: true
                      automaticRetries: 1
                      createdAt: '2022-09-14T14:35:37.801Z'
                      createdBy: abcdefgh1234
                      customProperties:
                      - key: Env
                        value: production
                      frequency: 5
                      host: splunk.com
                      id: 1
                      lastRunAt: '2022-09-14T14:36:45.156Z'
                      lastRunStatus: success
                      locationIds:
                      - aws-us-east-1
                      name: My Port test
                      port: 443
                      protocol: tcp
                      schedulingStrategy: round_robin
                      type: http
                      updatedAt: '2022-09-14T14:35:38.099Z'
                      updatedBy: abcdefgh1234
        '404':
          description: HTTP 404 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    example: not_found
                  message:
                    type: string
                    example: Can't find test.
                  details:
                    type: object
                    example: '{}'
                title: NotFound
                description: Not Found
              examples:
                example:
                  value:
                    code: not_found
                    details: '{}'
                    message: Can't find test.
      security:
      - SessionToken: []
      tags:
      - Synthetics Port tests
    put:
      summary: updateSinglePortTest
      description: 'Update an existing Port test.

        Requirements


        You must have an organization access token with the API permission or a session token to use the API.

        You need the Splunk Observability Cloud admin or power role.'
      parameters:
      - name: id
        in: path
        description: The ID of the Port test you want to validate.
        required: true
        schema:
          type: integer
          example: 1
      - name: Content-Type
        in: header
        description: Format of the request body. Always  "application/json".
        required: true
        schema:
          type: string
      - name: X-SF-TOKEN
        in: header
        description: Authentication token.
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                test:
                  type: object
                  properties:
                    name:
                      type: string
                      example: My Port test
                    locationIds:
                      type: array
                      items:
                        type: string
                      example:
                      - aws-us-east-1
                      title: LocationIds
                      description: An array of location IDs where the test runs.
                    frequency:
                      type: integer
                      format: int32
                      example: 5
                      title: Frequency
                      description: How often to run your test.
                    schedulingStrategy:
                      type: string
                      example: round_robin
                      title: SchedulingStrategy
                      description: 'Type of scheduling strategy. This can only be:


                        round_robin

                        concurrent'
                    protocol:
                      type: string
                      example: tcp
                    host:
                      type: string
                      example: splunk.com
                    port:
                      type: integer
                      format: int32
                    active:
                      type: boolean
                      example: true
                    automaticRetries:
                      default: 0
                      type: integer
                      example: 1
                      description: Automatically retry if the run fails
                    customProperties:
                      type: array
                      items:
                        type: object
                        required:
                        - key
                        - value
                        properties:
                          key:
                            type: string
                            example: Env
                          value:
                            type: string
                            example: production
                      title: CustomProperties
                      description: An array of custom properties.  The section Custom Properties Criteria lists the requirements
                        for custom property names and values.
              title: PortTestValidateRequest
              description: Request body to validate Port tests.
            examples:
              example:
                value:
                  test:
                    active: true
                    automaticRetries: 1
                    customProperties:
                    - key: Env
                      value: production
                    frequency: 5
                    host: splunk.com
                    locationIds:
                    - aws-us-east-1
                    name: My Port test
                    port: 0
                    protocol: tcp
                    schedulingStrategy: round_robin
      responses:
        '200':
          description: HTTP 200 response
        '404':
          description: HTTP 404 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    example: not_found
                  message:
                    type: string
                    example: Can't find test.
                  details:
                    type: object
                    example: '{}'
                title: NotFound
                description: Not Found
              examples:
                example:
                  value:
                    code: not_found
                    details: '{}'
                    message: Can't find test.
        '422':
          description: HTTP 422 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    example: unprocessable_entity
                  message:
                    type: string
                    example: Could not create API test.
                  details:
                    type: object
                    properties:
                      device:
                        type: array
                        items:
                          type: string
                          example: must exist
                        description: 'This is a dynamic schema that consists of:

                          "fieldName": ["reason"]'
                title: UnprocessableEntity
                description: UnprocessableEntity
              examples:
                example:
                  value:
                    code: unprocessable_entity
                    details:
                      device:
                      - must exist
                    message: Could not create API test.
      security:
      - SessionToken: []
      tags:
      - Synthetics Port tests
    delete:
      summary: deletePortTest
      description: 'Deletes a Port test.

        Requirements


        You must have an organization access token with the API permission or a session token to use the API.

        You need the Splunk Observability Cloud admin or power role.'
      parameters:
      - name: id
        in: path
        description: The ID of a test.
        required: true
        schema:
          type: string
      - name: X-SF-TOKEN
        in: header
        description: Authentication token.
        required: true
        schema:
          type: string
      responses:
        '204':
          description: HTTP 204 response
      security:
      - SessionToken: []
      tags:
      - Synthetics Port tests
  /tests/port/{id}/validate:
    put:
      summary: validateSinglePortTest
      description: 'Validate an port test. This can also be a PATCH operation.

        Requirements


        You must have an organization access token with the API permission or a session token to use the API.

        You need the Splunk Observability Cloud admin or power role.'
      parameters:
      - name: id
        in: path
        description: The ID of the Port test you want to validate.
        required: true
        schema:
          type: integer
          example: 1
      - name: Content-Type
        in: header
        description: Format of the request body. Always  "application/json".
        required: true
        schema:
          type: string
      - name: X-SF-TOKEN
        in: header
        description: Authentication token.
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                test:
                  type: object
                  properties:
                    name:
                      type: string
                      example: My Port test
                    locationIds:
                      type: array
                      items:
                        type: string
                      example:
                      - aws-us-east-1
                      title: LocationIds
                      description: An array of location IDs where the test runs.
                    frequency:
                      type: integer
                      format: int32
                      example: 5
                      title: Frequency
                      description: How often to run your test.
                    schedulingStrategy:
                      type: string
                      example: round_robin
                      title: SchedulingStrategy
                      description: 'Type of scheduling strategy. This can only be:


                        round_robin

                        concurrent'
                    protocol:
                      type: string
                      example: tcp
                    host:
                      type: string
                      example: splunk.com
                    port:
                      type: integer
                      format: int32
                    active:
                      type: boolean
                      example: true
                    automaticRetries:
                      default: 0
                      type: integer
                      example: 1
                      description: Automatically retry if the run fails
                    customProperties:
                      type: array
                      items:
                        type: object
                        required:
                        - key
                        - value
                        properties:
                          key:
                            type: string
                            example: Env
                          value:
                            type: string
                            example: production
                      title: CustomProperties
                      description: An array of custom properties.  The section Custom Properties Criteria lists the requirements
                        for custom property names and values.
              title: PortTestValidateRequest
              description: Request body to validate Port tests.
            examples:
              example:
                value:
                  test:
                    active: true
                    automaticRetries: 1
                    customProperties:
                    - key: Env
                      value: production
                    frequency: 5
                    host: splunk.com
                    locationIds:
                    - aws-us-east-1
                    name: My Port test
                    port: 0
                    protocol: tcp
                    schedulingStrategy: round_robin
      responses:
        '200':
          description: HTTP 200 response
          content:
            application/json:
              schema:
                type: object
                properties:
                  valid:
                    type: boolean
                    example: false
                  message:
                    type: string
                    example: Port

# --- truncated at 32 KB (46 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/splunk-observability/refs/heads/main/openapi/splunk-observability-synthetics-ports-tests-openapi.yml