arazzo: 1.0.1
info:
title: Oracle GoldenGate Stop Extract Gracefully
summary: Capture an Extract's status, issue a STOP command, and poll until stopped.
description: >-
Brings an Extract down cleanly. It first records the current runtime status,
issues a STOP command, then polls the status until the process reports
stopped. Every step spells out its request inline so the flow can be read and
executed without opening the underlying OpenAPI description.
version: 1.0.0
sourceDescriptions:
- name: extractsApi
url: ../openapi/oracle-goldengate-extracts-api-openapi.yml
type: openapi
workflows:
- workflowId: stop-extract-gracefully
summary: Stop a running Extract and confirm it reaches a stopped state.
description: >-
Reads current status, issues STOP, and polls until the Extract is stopped.
inputs:
type: object
required:
- authorization
- extract
properties:
authorization:
type: string
description: HTTP Basic Authorization header value.
extract:
type: string
description: Name of the Extract process to stop.
steps:
- stepId: getStatus
description: Capture the current runtime status of the Extract before stopping it.
operationId: getExtractStatus
parameters:
- name: Authorization
in: header
value: $inputs.authorization
- name: extract
in: path
value: $inputs.extract
successCriteria:
- condition: $statusCode == 200
outputs:
startingStatus: $response.body#/status
- stepId: stopExtract
description: Issue a STOP command to the Extract process.
operationId: issueExtractCommand
parameters:
- name: Authorization
in: header
value: $inputs.authorization
- name: extract
in: path
value: $inputs.extract
requestBody:
contentType: application/json
payload:
action: stop
successCriteria:
- condition: $statusCode == 200
outputs:
commandMessage: $response.body#/response/message
- stepId: pollStopped
description: >-
Poll the Extract status until it reports stopped, looping while it is
still running.
operationId: getExtractStatus
parameters:
- name: Authorization
in: header
value: $inputs.authorization
- name: extract
in: path
value: $inputs.extract
successCriteria:
- condition: $statusCode == 200
outputs:
status: $response.body#/status
onSuccess:
- name: stillRunning
type: goto
stepId: pollStopped
criteria:
- context: $response.body
condition: $.status == "running"
type: jsonpath
outputs:
finalStatus: $steps.pollStopped.outputs.status
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.