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.
View Overlay File View on GitHub Overlay Specification

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

Raw ↑
# 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'