Adobe Suite · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Adobe CC Libraries APIs Test Library Service API

20 actions 20 updates phrasing extends openapi/adobe-suite-library-service-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Adobe Suite's API. It is a proposal applied on top of the contract, not a document Adobe Suite publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 20 · first 16 shown; the file carries all of them

$.info
$.paths['/api/v1/libraries'].get
$.paths['/api/v1/libraries'].post
$.paths['/api/v1/libraries/{libraryId}'].get
$.paths['/api/v1/libraries/{libraryId}'].delete
$.paths['/api/v1/libraries/{libraryId}'].patch
$.paths['/api/v1/libraries/{libraryId}'].head
$.paths['/api/v1/libraries/{libraryId}/archive'].post
$.paths['/api/v1/libraries/{libraryId}/archive'].delete
$.paths['/api/v1/libraries/{libraryId}/archive/{elementId}'].delete
$.paths['/api/v1/libraries/{libraryId}/elements'].get
$.paths['/api/v1/libraries/{libraryId}/elements'].post
$.paths['/api/v1/libraries/{libraryId}/elements'].delete
$.paths['/api/v1/libraries/{libraryId}/elements/metadata'].put
$.paths['/api/v1/libraries/{libraryId}/elements/{elementId}'].get
$.paths['/api/v1/libraries/{libraryId}/elements/{elementId}'].delete

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 Adobe CC Libraries APIs Test Library Service API
  version: 1.0.0
extends: openapi/adobe-suite-library-service-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: 19
- target: $.paths['/api/v1/libraries'].get
  update:
    x-apievangelist-phrasing:
      intent: List a user's Creative Cloud Libraries
      effect: read
      questions:
      - How do I list all the Creative Cloud Libraries I have access to?
      - Can I only see libraries shared with me rather than ones I own?
      - Which toolkit libraries can be included when listing libraries?
      instructions:
      - text: List my libraries.
      - text: List libraries owned as {owner}, sorted by {orderBy}.
        slots:
          owner: query.owner
          orderBy: query.orderBy
      - text: Show {limit} libraries starting at {start}.
        slots:
          limit: query.limit
          start: query.start
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries'].post
  update:
    x-apievangelist-phrasing:
      intent: Create, copy or move a library
      effect: write
      questions:
      - How do I create a new Creative Cloud Library?
      - Can I duplicate an existing library into a new one?
      instructions:
      - text: Create a new library called {name}.
        slots:
          name: requestBody.name
      - text: Copy library {source} into a new library.
        slots:
          source: requestBody.source
      - text: Move library {self} using {invocation_mode} processing.
        slots:
          self: requestBody.self
          invocation_mode: query.invocation_mode
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a specific library's details
      effect: read
      questions:
      - How do I fetch the details of one library by its ID?
      - Can I get a cached response for a particular library version?
      instructions:
      - text: Show me library {libraryId}.
        slots:
          libraryId: path.libraryId
      - text: Get library {libraryId} at version {libraryVersion}.
        slots:
          libraryId: path.libraryId
          libraryVersion: query.libraryVersion
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a library
      effect: destructive
      questions:
      - How do I delete a whole Creative Cloud Library?
      - What happens to a library once I delete it through the API?
      instructions:
      - text: Delete library {libraryId}.
        slots:
          libraryId: path.libraryId
      - text: Remove the entire library {libraryId} and its contents.
        slots:
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Run several library operations in sequence
      effect: write
      questions:
      - Can I send an array of requests that run one after another against a library?
      - Can a later operation in a library patch reference the result of an earlier one?
      instructions:
      - text: Apply this ordered list of operations {requests} to library {libraryId}.
        slots:
          requests: requestBody.requests
          libraryId: path.libraryId
      - text: Run the chained requests on library {libraryId} in {invocation_mode} mode.
        slots:
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}'].head
  update:
    x-apievangelist-phrasing:
      intent: Check a library's headers without the body
      effect: read
      questions:
      - Can I check whether a library exists without downloading its full details?
      - Is there a lightweight HEAD check to see a library's etag?
      instructions:
      - text: Check if library {libraryId} exists using a HEAD request.
        slots:
          libraryId: path.libraryId
      - text: Get just the headers for library {libraryId}.
        slots:
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/archive'].post
  update:
    x-apievangelist-phrasing:
      intent: Restore archived elements in a library
      effect: write
      questions:
      - How do I bring back elements I archived in a library?
      - Can I restore something from a library's archive instead of recreating it?
      instructions:
      - text: Restore archived element {name} of type {type} in library {libraryId}.
        slots:
          name: requestBody.name
          type: requestBody.type
          libraryId: path.libraryId
      - text: Un-archive elements in library {libraryId} using {invocation_mode} mode for client {client}.
        slots:
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
          client: requestBody.client
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/archive'].delete
  update:
    x-apievangelist-phrasing:
      intent: Permanently delete archived elements
      effect: destructive
      questions:
      - How do I permanently purge several archived elements from a library?
      - Can archived library elements be deleted for good in one call?
      instructions:
      - text: Permanently delete archived elements {elements} from library {libraryId}.
        slots:
          elements: requestBody.elements
          libraryId: path.libraryId
      - text: Empty the archive of library {libraryId}.
        slots:
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/archive/{elementId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Permanently delete one archived element
      effect: destructive
      questions:
      - How do I permanently delete a single element that's already in the archive?
      - Is deleting an archived element irreversible?
      instructions:
      - text: Permanently delete archived element {elementId} from library {libraryId}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      - text: Purge element {elementId} from the archive of {libraryId}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements'].get
  update:
    x-apievangelist-phrasing:
      intent: List elements inside a library
      effect: read
      questions:
      - How do I list all the colors, graphics and other elements in a library?
      - Can I filter a library's elements by type or group?
      instructions:
      - text: List the elements in library {libraryId}.
        slots:
          libraryId: path.libraryId
      - text: List elements of type {type} in library {libraryId}.
        slots:
          type: query.type
          libraryId: path.libraryId
      - text: Show elements in group {group} of library {libraryId}.
        slots:
          group: query.group
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements'].post
  update:
    x-apievangelist-phrasing:
      intent: Create, copy or move library elements
      effect: write
      questions:
      - How do I add a new element like an image or color to a library?
      - Can I copy or move elements from one library into another?
      instructions:
      - text: Create an element named {name} of type {type} in library {libraryId}.
        slots:
          name: requestBody.name
          type: requestBody.type
          libraryId: path.libraryId
      - text: Copy elements from library {source} into library {libraryId}.
        slots:
          source: requestBody.source
          libraryId: path.libraryId
      - text: Add new elements to library {libraryId} in {invocation_mode} mode.
        slots:
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements'].delete
  update:
    x-apievangelist-phrasing:
      intent: Archive several elements in a library
      effect: destructive
      questions:
      - How do I move a batch of elements into a library's archive?
      - Can I archive multiple library elements without deleting them permanently?
      instructions:
      - text: Archive elements {elements} in library {libraryId}.
        slots:
          elements: requestBody.elements
          libraryId: path.libraryId
      - text: Move these elements of library {libraryId} to the archive.
        slots:
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements/metadata'].put
  update:
    x-apievangelist-phrasing:
      intent: Update top-level metadata of library elements
      effect: write
      questions:
      - How do I rename or change attributes on elements in a library?
      - Does updating element metadata also change its representations?
      instructions:
      - text: Update the metadata of elements {elements} in library {libraryId}.
        slots:
          elements: requestBody.elements
          libraryId: path.libraryId
      - text: Change top-level attributes for elements {elementIds} in {libraryId}.
        slots:
          elementIds: requestBody.elementIds
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements/{elementId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a single library element
      effect: read
      questions:
      - How do I retrieve one specific element from a library?
      - Can I choose how much data comes back for a single element?
      instructions:
      - text: Show element {elementId} in library {libraryId}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      - text: Get element {elementId} of {libraryId} with selector {selector}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
          selector: query.selector
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements/{elementId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Archive a single library element
      effect: destructive
      questions:
      - How do I move just one element into the library archive?
      - Can I archive a single element and restore it later?
      instructions:
      - text: Archive element {elementId} in library {libraryId}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      - text: Send element {elementId} of {libraryId} to the archive.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements/{elementId}/representations'].put
  update:
    x-apievangelist-phrasing:
      intent: Add, update or remove an element's representations
      effect: write
      questions:
      - How do I replace the image or rendition attached to a library element?
      - Can I drop a representation from an element by leaving it out of the list?
      instructions:
      - text: Set the representations of element {elementId} in library {libraryId} to {representations}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
          representations: requestBody.representations
      - text: Update renditions for element {elementId} in {libraryId} using {invocation_mode} mode.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/metadata'].put
  update:
    x-apievangelist-phrasing:
      intent: Rename a library
      effect: write
      questions:
      - How do I change the name of a Creative Cloud Library?
      - Can I update a library's metadata without touching its elements?
      instructions:
      - text: Rename library {libraryId} to {name}.
        slots:
          libraryId: path.libraryId
          name: requestBody.name
      - text: Update the metadata of library {libraryId}.
        slots:
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/representations/content'].post
  update:
    x-apievangelist-phrasing:
      intent: Upload a small file asset to a library
      effect: write
      questions:
      - How do I upload an image file into a library before creating an element from it?
      - What's the file size limit for uploading an asset to a library?
      instructions:
      - text: Upload file {Representation-Content} to library {libraryId}.
        slots:
          Representation-Content: requestBody.Representation-Content
          libraryId: path.libraryId
      - text: Upload an asset to {libraryId} in {invocation_mode} mode described as {Representation-Data}.
        slots:
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
          Representation-Data: requestBody.Representation-Data
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/search'].post
  update:
    x-apievangelist-phrasing:
      intent: Search libraries and library elements
      effect: read
      questions:
      - How do I search across all my libraries and elements by keyword?
      - Can I find only archived elements or ones containing Stock content?
      - Which elements were modified within a given date range?
      instructions:
      - text: Search my libraries and elements for {query_string}.
        slots:
          query_string: requestBody.query_string
      - text: Find elements of type {type} inside library {library_id}.
        slots:
          type: requestBody.type
          library_id: requestBody.library_id
      - text: Search for elements with Stock content ID {stock_content_id}.
        slots:
          stock_content_id: requestBody.stock_content_id
      method: generated
      generated: '2026-09-26'