dotCMS · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for dotCMS REST Content Import API
13 actions
13 updates
phrasing
extends
openapi/dotcms-content-import-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for dotCMS's API. It is a proposal applied on top of the contract, not a document dotCMS publishes.
What the actions change
x-apievangelist-phrasing
Targets 13
$.info
$.paths['/api/v1/content/_import/abandoned'].get
$.paths['/api/v1/content/_import/active'].get
$.paths['/api/v1/content/_import/{jobId}/cancel'].post
$.paths['/api/v1/content/_import/canceled'].get
$.paths['/api/v1/content/_import/completed'].get
$.paths['/api/v1/content/_import/failed'].get
$.paths['/api/v1/content/_import/{jobId}'].get
$.paths['/api/v1/content/_import'].get
$.paths['/api/v1/content/_import'].post
$.paths['/api/v1/content/_import/{jobId}/monitor'].get
$.paths['/api/v1/content/_import/successful'].get
$.paths['/api/v1/content/_import/_validate'].post
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 dotCMS REST Content Import API
version: 1.0.0
extends: openapi/dotcms-content-import-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/content/_import/abandoned'].get
update:
x-apievangelist-phrasing:
intent: List abandoned content import jobs
effect: read
questions:
- Which content imports were abandoned and never finished?
- Can I page through abandoned CSV import jobs?
instructions:
- text: List abandoned content import jobs.
- text: Show page {page} of abandoned imports, {pageSize} per page.
slots:
page: query.page
pageSize: query.pageSize
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/active'].get
update:
x-apievangelist-phrasing:
intent: List active content import jobs
effect: read
questions:
- What content imports are running or queued right now?
- Which CSV imports are still new, processing or waiting?
instructions:
- text: List the content import jobs currently in progress.
- text: Show page {page} of active imports with {pageSize} per page.
slots:
page: query.page
pageSize: query.pageSize
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/{jobId}/cancel'].post
update:
x-apievangelist-phrasing:
intent: Cancel a content import job
effect: destructive
questions:
- How do I stop a CSV content import that's running?
- Does canceling an import take effect immediately?
instructions:
- text: Cancel content import job {jobId}.
slots:
jobId: path.jobId
- text: Request cancellation of import {jobId}.
slots:
jobId: path.jobId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/canceled'].get
update:
x-apievangelist-phrasing:
intent: List canceled content import jobs
effect: read
questions:
- Which content imports were canceled?
- Can I see a paginated history of imports someone stopped?
instructions:
- text: List canceled content import jobs.
- text: Show page {page} of canceled imports.
slots:
page: query.page
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/completed'].get
update:
x-apievangelist-phrasing:
intent: List completed content import jobs
effect: read
questions:
- Which content imports have finished running, successful or not?
- Can I list every import job in the completed state?
instructions:
- text: List completed content import jobs.
- text: Show page {page} of completed imports, {pageSize} at a time.
slots:
page: query.page
pageSize: query.pageSize
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/failed'].get
update:
x-apievangelist-phrasing:
intent: List failed content import jobs
effect: read
questions:
- Which CSV content imports failed?
- Can I page through import jobs that ended in error?
instructions:
- text: List failed content import jobs.
- text: Show page {page} of failed imports.
slots:
page: query.page
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/{jobId}'].get
update:
x-apievangelist-phrasing:
intent: Get a content import job's status
effect: read
questions:
- What's the current status of my content import?
- How far along is a specific CSV import job?
instructions:
- text: Get the status of content import job {jobId}.
slots:
jobId: path.jobId
- text: Show detailed progress for import {jobId}.
slots:
jobId: path.jobId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import'].get
update:
x-apievangelist-phrasing:
intent: List all content import jobs
effect: read
questions:
- Can I see every content import job regardless of its state?
- What imports have been run on this instance?
instructions:
- text: List all content import jobs.
- text: Show page {page} of every import job, {pageSize} per page.
slots:
page: query.page
pageSize: query.pageSize
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import'].post
update:
x-apievangelist-phrasing:
intent: Import content from a CSV file
effect: write
questions:
- How do I bulk import content into dotCMS from a CSV?
- What parameters does a CSV content import need besides the file?
instructions:
- text: Import content from CSV {file} using import parameters {form}.
slots:
file: requestBody.file
form: requestBody.form
- text: Queue an import job for {file} with settings {form}.
slots:
file: requestBody.file
form: requestBody.form
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/{jobId}/monitor'].get
update:
x-apievangelist-phrasing:
intent: Stream live progress of an import job
effect: read
questions:
- Can I watch a content import's progress in real time?
- Is there a server-sent events stream for import job updates?
instructions:
- text: Stream live updates for content import job {jobId}.
slots:
jobId: path.jobId
- text: Monitor import {jobId} until it completes.
slots:
jobId: path.jobId
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/successful'].get
update:
x-apievangelist-phrasing:
intent: List successful content import jobs
effect: read
questions:
- Which content imports completed successfully?
- Can I list only the imports that finished without errors?
instructions:
- text: List successful content import jobs.
- text: Show page {page} of imports that succeeded.
slots:
page: query.page
method: generated
generated: '2026-09-26'
- target: $.paths['/api/v1/content/_import/_validate'].post
update:
x-apievangelist-phrasing:
intent: Validate a CSV import without importing
effect: read
questions:
- Can I dry-run a CSV import to check it against a content type first?
- How do I preview whether my import file will work before importing?
instructions:
- text: Validate CSV {file} with parameters {form} in preview mode without importing.
slots:
file: requestBody.file
form: requestBody.form
- text: Dry-run the import of {file} to catch errors first.
slots:
file: requestBody.file
method: generated
generated: '2026-09-26'