Optimizely · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Admin API V1 Job Definitions API
13 actions
13 updates
phrasing
extends
openapi/optimizely-job-definitions-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Optimizely's API. It is a proposal applied on top of the contract, not a document Optimizely publishes.
What the actions change
x-apievangelist-phrasing
Targets 13
$.info
$.paths['/api/v1/admin/JobDefinitions'].get
$.paths['/api/v1/admin/JobDefinitions'].post
$.paths['/api/v1/admin/JobDefinitions({id})'].get
$.paths['/api/v1/admin/JobDefinitions({id})'].put
$.paths['/api/v1/admin/JobDefinitions({id})'].delete
$.paths['/api/v1/admin/JobDefinitions({id})'].patch
$.paths['/api/v1/admin/JobDefinitions/Default.Default()'].get
$.paths['/api/v1/admin/jobdefinitions/delete'].delete
$.paths['/api/v1/admin/jobdefinitions({key})/customproperties({custompropertyKey})'].get
$.paths['/api/v1/admin/jobdefinitions({key})/integrationjobs({integrationjobKey})'].get
$.paths['/api/v1/admin/jobdefinitions({key})/jobdefinitionparameters({jobdefinitionparameterKey})'].get
$.paths['/api/v1/admin/jobdefinitions({key})/jobdefinitionsteps({jobdefinitionstepKey})'].get
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Admin API V1 Job Definitions API
version: 1.0.0
extends: openapi/optimizely-job-definitions-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 12
- target: $.paths['/api/v1/admin/JobDefinitions'].get
update:
x-apievangelist-phrasing:
intent: List integration job definitions
effect: read
questions:
- How can I see every integration job definition configured in Configured Commerce?
- Can I filter job definitions to recurring ones or by job type?
instructions:
- text: List all integration job definitions.
- text: List job definitions matching {filter}, sorted by {orderby}.
slots:
filter: query.$filter
orderby: query.$orderby
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/JobDefinitions'].post
update:
x-apievangelist-phrasing:
intent: Create an integration job definition
effect: write
questions:
- What must I supply to define a new import or export job?
- Can I set up a job definition that runs on a cron schedule?
instructions:
- text: Create job definition {name} of type {jobType} from standard job {standardJobName}.
slots:
name: requestBody.name
jobType: requestBody.jobType
standardJobName: requestBody.standardJobName
- text: Define job {name} that recurs on cron {recurringCronExpression} and notifies {notifyEmail}.
slots:
name: requestBody.name
recurringCronExpression: requestBody.recurringCronExpression
notifyEmail: requestBody.notifyEmail
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/JobDefinitions({id})'].get
update:
x-apievangelist-phrasing:
intent: Get a job definition
effect: read
questions:
- Can I see the schedule and processors of one job definition?
- When did a particular job definition last run and with what status?
instructions:
- text: Show job definition {id}.
slots:
id: path.id
- text: Get job definition {id} expanding {expand}.
slots:
id: path.id
expand: query.$expand
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/JobDefinitions({id})'].put
update:
x-apievangelist-phrasing:
intent: Replace a job definition
effect: write
questions:
- Can I overwrite an entire job definition with a new configuration?
- What's the full-replacement call for a job definition?
instructions:
- text: Replace job definition {id} with name {name} and type {jobType}.
slots:
id: path.id
name: requestBody.name
jobType: requestBody.jobType
- text: Overwrite job definition {id} entirely, using description {description}.
slots:
id: path.id
description: requestBody.description
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/JobDefinitions({id})'].delete
update:
x-apievangelist-phrasing:
intent: Delete a job definition
effect: destructive
questions:
- How do I remove an integration job definition I no longer use?
- Can I delete a job definition conditionally on its ETag?
instructions:
- text: Delete job definition {id}.
slots:
id: path.id
- text: Delete job definition {id} only if its ETag equals {etag}.
slots:
id: path.id
etag: header.If-Match
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/JobDefinitions({id})'].patch
update:
x-apievangelist-phrasing:
intent: Update a job definition's settings
effect: write
questions:
- Can I change only the notification email on a job definition?
- Is there a partial update to raise a job's max retries?
instructions:
- text: Set the notify email on job definition {id} to {notifyEmail}.
slots:
id: path.id
notifyEmail: requestBody.notifyEmail
- text: Patch job definition {id} so max retries is {maxRetries}.
slots:
id: path.id
maxRetries: requestBody.maxRetries
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/JobDefinitions/Default.Default()'].get
update:
x-apievangelist-phrasing:
intent: Get default values for a job definition
effect: read
questions:
- What defaults are pre-filled for a new job definition?
- Is there a blank template for a job definition?
instructions:
- text: Get the default job definition template.
- text: Show pre-filled values for a new job definition.
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/jobdefinitions/delete'].delete
update:
x-apievangelist-phrasing:
intent: Delete several job definitions
effect: destructive
questions:
- Can I bulk delete job definitions in a single request?
- Which call removes a list of job definitions by ID?
instructions:
- text: Bulk delete job definitions {ids}.
slots:
ids: query.ids
- text: Remove the job definitions listed in {ids}.
slots:
ids: query.ids
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/jobdefinitions({key})/customproperties({custompropertyKey})'].get
update:
x-apievangelist-phrasing:
intent: Get a custom property on a job definition
effect: read
questions:
- Can I read a custom field stored on a job definition?
- Where are extra attributes of a job definition kept?
instructions:
- text: Get custom property {custompropertyKey} on job definition {key}.
slots:
custompropertyKey: path.custompropertyKey
key: path.key
- text: Show job definition {key}'s custom field {custompropertyKey}.
slots:
key: path.key
custompropertyKey: path.custompropertyKey
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/jobdefinitions({key})/integrationjobs({integrationjobKey})'].get
update:
x-apievangelist-phrasing:
intent: Get one run of a job definition
effect: read
questions:
- Can I look up a specific job run that belongs to a job definition?
- Which call returns one integration job under its definition?
instructions:
- text: Get integration job {integrationjobKey} run by job definition {key}.
slots:
integrationjobKey: path.integrationjobKey
key: path.key
- text: Show run {integrationjobKey} of job definition {key}.
slots:
integrationjobKey: path.integrationjobKey
key: path.key
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/jobdefinitions({key})/jobdefinitionparameters({jobdefinitionparameterKey})'].get
update:
x-apievangelist-phrasing:
intent: Get a parameter of a job definition
effect: read
questions:
- Can I read one configured parameter on a job definition?
- Where do I see a job definition's input parameter value?
instructions:
- text: Get parameter {jobdefinitionparameterKey} of job definition {key}.
slots:
jobdefinitionparameterKey: path.jobdefinitionparameterKey
key: path.key
- text: Show job definition {key}'s parameter {jobdefinitionparameterKey}.
slots:
key: path.key
jobdefinitionparameterKey: path.jobdefinitionparameterKey
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/admin/jobdefinitions({key})/jobdefinitionsteps({jobdefinitionstepKey})'].get
update:
x-apievangelist-phrasing:
intent: Get a step of a job definition
effect: read
questions:
- Can I inspect a single processing step inside a job definition?
- Which call returns one step of a multi-step integration job?
instructions:
- text: Get step {jobdefinitionstepKey} of job definition {key}.
slots:
jobdefinitionstepKey: path.jobdefinitionstepKey
key: path.key
- text: Show job definition {key}'s step {jobdefinitionstepKey}.
slots:
key: path.key
jobdefinitionstepKey: path.jobdefinitionstepKey
method: generated
generated: '2026-09-26'