Grepr Pipeline Changes API

The Pipeline Changes API from Grepr — 1 operation(s) for pipeline changes.

Operations 1

POST /v1/pipelines/{jobId}/apply-change Verify and apply or suggest a pipeline change #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/grepr:grepr-pipeline-changes-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

grepr-pipeline-changes-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Grepr Pipeline Changes API
  version: 1.0.0
  description: 'Operations tagged Pipeline Changes across 2 of this provider''s published API definitions: grepr-openapi.json, grepr.json. Each path carries the servers of the definition it was published in.'
tags:
- name: Pipeline Changes
paths:
  /v1/pipelines/{jobId}/apply-change:
    post:
      description: Deep-merges a partial templateInputs patch into the pipeline's current configuration and verifies the result against the supplied samples. A change that fails verification is rejected with findings and nothing is touched. A change that verifies cleanly is recorded as an agent suggestion for human review when the proposing agent requires approval, and applied as a new job version otherwise. Works only on pipelines with a single template-operation vertex.
      operationId: applyChange
      parameters:
      - description: Id of the pipeline to change
        example: 0ABC12DEF4G
        in: path
        name: jobId
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PipelineChangeRequest'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PipelineChangeResult'
          description: Change applied, recorded as a suggestion, or rejected with findings
        '400':
          description: The request is malformed or the pipeline is not templated
        '401':
          description: Unauthorized
        '404':
          description: Pipeline not found
        '409':
          description: The pipeline changed while the request was being verified
      security:
      - grepr-api-key: []
      - grepr-oidc: []
      summary: Verify and apply or suggest a pipeline change
      tags:
      - Pipeline Changes
components:
  schemas:
    JsonNode:
      description: A partial templateInputs object to deep-merge into the pipeline's current inputs. Objects merge recursively, and an array of named objects (like input.parsers) merges by entry name, so entries you omit are kept. Scalars and arrays of non-objects replace whole.
      type: object
    ChangeFinding:
      description: 'Verification findings that blocked the change. When present the pipeline is untouched: fix the findings and submit again.'
      properties:
        code:
          enum:
          - INVALID_GROK_RULE
          - SAMPLE_PREDICATE_MISMATCH
          - RULE_NOT_MATCHED
          - RULE_SHADOWED
          - RULE_EXTRACTED_NOTHING
          - RULE_NOT_FOUND
          - AMBIGUOUS_PREDICATE
          - NO_SAMPLES
          - OPERATION_DELETED
          - RULE_DELETED
          - HELPER_RULE_DELETED
          - RESOLUTION_FAILED
          - DISALLOWED_INPUT_CHANGE
          - UNVERIFIABLE_CHANGE
          - NO_EFFECTIVE_CHANGE
          type: string
        details:
          additionalProperties:
            type: string
          type: object
        message:
          type: string
        sampleId:
          type: string
      type: object
    LogEvent:
      description: A log event.
      properties:
        attributes:
          additionalProperties:
            $ref: '#/components/schemas/Any'
          description: Attributes associated with the event, a map from attribute name to attribute value, which may be a nested map or list.
          type: object
        eventTimestamp:
          description: Event timestamp that is in the record. Milliseconds from epoch.
          format: int64
          type: integer
        id:
          description: Id of the event.
          example: 034JA9FJ
          type: string
        message:
          description: The log message.
          example: This is a log message.
          type: string
        receivedTimestamp:
          description: Timestamp when the event was received by Grepr. Milliseconds from epoch.
          format: int64
          type: integer
        severity:
          description: The log severity. Higher numbers mean higher severity, following the OTel format 1-24.
          format: int32
          type: integer
        tags:
          additionalProperties:
            description: Tags associated with the event, a map from tag name to set of tag values.
            items:
              description: Tags associated with the event, a map from tag name to set of tag values.
              type: string
            type: array
            uniqueItems: true
          description: Tags associated with the event, a map from tag name to set of tag values.
          type: object
      required:
      - eventTimestamp
      - id
      - receivedTimestamp
      type: object
    PipelineChangeRequest:
      properties:
        autoApply:
          description: 'Whether to apply the change directly (true) or record it as a suggestion for a human to review (false). This expresses intent only: the server enforces the proposing agent''s approval mode, so a suggest-only agent''s change is always recorded as a suggestion no matter what is passed here.'
          type: boolean
        changeDescription:
          description: 'One or two sentences a human reviewer reads first: what the change does and why. Required when the change is recorded as a suggestion.'
          type: string
        changeId:
          description: A caller-chosen idempotency key for this change, unique within the investigation. Resending the same changeId records one suggestion rather than a duplicate, so a retried call is safe. Required when the change is recorded as a suggestion.
          type: string
        investigationId:
          description: 'The investigation proposing the change, identifying the agent whose approval mode governs the request. Server-supplied on the MCP transport, where an agent sandbox''s provenance is bound to the connection: anything sent here is ignored and replaced. Without provenance the change is applied under the caller''s own permission.'
          type: string
        samples:
          default: []
          description: Sample log events the changed operations are verified against before anything is applied. Required when the change adds or edits a Grok rule, so the new rule can be run against a real log.
          items:
            $ref: '#/components/schemas/LogEvent'
          type: array
        templateInputsPatch:
          $ref: '#/components/schemas/JsonNode'
      required:
      - templateInputsPatch
      type: object
    PipelineChangeResult:
      properties:
        appliedVersion:
          description: The new job version the change was applied as. Applying restarts the pipeline from a savepoint, so the new version reaches its desired state asynchronously.
          format: int64
          type: integer
        findings:
          default: []
          description: 'Verification findings that blocked the change. When present the pipeline is untouched: fix the findings and submit again.'
          items:
            $ref: '#/components/schemas/ChangeFinding'
          type: array
        suggestionId:
          description: The agent suggestion the change was recorded as. The pipeline is NOT updated and will not restart, so there is nothing to wait for and the change must not be resubmitted; a human reviews and applies it from the pipeline page.
          type: string
      type: object
    Any:
      description: A value that can be a primitive (String or number), a list, or a map.
      example:
      - 12
      - a
      - b: 1
      - - 1
        - 2
        - 3
  securitySchemes:
    grepr-api-key:
      in: header
      name: GREPR-API-KEY
      type: apiKey
    grepr-oidc:
      bearerFormat: JWT
      openIdConnectUrl: https://grepr-prod.us.auth0.com/.well-known/openid-configuration
      type: openIdConnect
x-refined-from:
- grepr-openapi.json
- grepr.json
x-tagGroups:
- name: Integrations
  tags:
  - Grepr-hosted Data Warehouse Integration
  - External S3 Data Warehouse Integration
  - Datadog Integration
  - New Relic Integration
  - Splunk Integration
  - Sumo Logic Integration
  - OpenTelemetry Integration
- name: Pipelines
  tags:
  - Jobs
  - Templates
  - Datasets
  - Status Metrics
  - External Triggers
  - Job Actions
  - Triggers
- name: Pipeline Components
  tags:
  - Operations
  - Transforms
  - Sources
  - Sinks
- name: Administration
  tags:
  - Users
  - Teams
  - Roles
  - Permission
  - Invitations
  - Activity Logs
- name: Organization
  tags:
  - Organizations
  - Access Configuration
  - Grepr API Key
  - Service Accounts
  - Signup
- name: Query & Analysis
  tags:
  - Job Anomalies
  - Grok Parsing
  - Query Parsing
  - Validation
- name: System
  tags:
  - Manifest