Adobe · 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-library-service-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Adobe's API. It is a proposal applied on top of the contract, not a document Adobe 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-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 my Creative Cloud libraries
      effect: read
      questions:
      - Which Creative Cloud Libraries do I have access to?
      - Can I page through my libraries and sort them by name or modified date?
      - Is it possible to only list libraries owned by a particular user?
      instructions:
      - text: List all of my Creative Cloud libraries.
      - text: Show my libraries owned by {owner}.
        slots:
          owner: query.owner
      - text: List {limit} of my libraries ordered by {orderBy}.
        slots:
          limit: query.limit
          orderBy: query.orderBy
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a new Creative Cloud library
      effect: write
      questions:
      - How do I create a new Creative Cloud library through the API?
      - Can I start a fresh shared library for a brand campaign's assets?
      instructions:
      - text: Create a new library called {name}.
        slots:
          name: requestBody.name
      - text: Make me an empty Creative Cloud library named {name} for our design team.
        slots:
          name: requestBody.name
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get the details of one library
      effect: read
      questions:
      - What details can I pull for a single library by its ID?
      - Can I fetch an older version of a specific library?
      instructions:
      - text: Get the details of library {libraryId}.
        slots:
          libraryId: path.libraryId
      - text: Fetch version {libraryVersion} of library {libraryId}.
        slots:
          libraryVersion: query.libraryVersion
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a library
      effect: destructive
      questions:
      - Can I permanently remove a whole Creative Cloud library?
      - What happens to a library when I delete it by ID?
      instructions:
      - text: Delete library {libraryId}.
        slots:
          libraryId: path.libraryId
      - text: Remove the entire library {libraryId} from my account.
        slots:
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}'].patch
  update:
    x-apievangelist-phrasing:
      intent: Run a batch of changes on one library
      effect: write
      questions:
      - Can I apply several changes to a library in a single serial batch request?
      - Is there a way for later requests in a batch to reuse values from earlier responses?
      instructions:
      - text: Apply this list of change requests {requests} to library {libraryId} in {invocation_mode} mode.
        slots:
          requests: requestBody.requests
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      - text: Run a serial batch of operations against library {libraryId} using invocation mode {invocation_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 that a library exists
      effect: read
      questions:
      - How can I check whether a library still exists without downloading its contents?
      - Can I get just the headers for a library to see if it changed?
      instructions:
      - text: Check whether library {libraryId} exists.
        slots:
          libraryId: path.libraryId
      - text: Fetch only the response 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 library elements
      effect: write
      questions:
      - Can I bring back library elements I moved to the archive?
      - Is there a way to undo archiving an element in a library?
      instructions:
      - text: Restore the archived element {name} of type {type} in library {libraryId} using invocation mode {invocation_mode}.
        slots:
          name: requestBody.name
          type: requestBody.type
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      - text: Unarchive element {id} back into library {libraryId} with invocation mode {invocation_mode}.
        slots:
          id: requestBody.id
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      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 at once?
      - Can I empty out the archive of a library for good?
      instructions:
      - text: Permanently delete the archived elements {elements} from library {libraryId}.
        slots:
          elements: requestBody.elements
          libraryId: path.libraryId
      - text: Purge everything I list from 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:
      - Can I permanently delete a single element that is already in a library's archive?
      - Is deleting one 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 library {libraryId} for good.
        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 the elements in a library
      effect: read
      questions:
      - What colors, graphics and other elements are inside a given library?
      - Can I filter a library's elements by type or group?
      - Is there a way to page through a large library's elements?
      instructions:
      - text: List the elements in library {libraryId}.
        slots:
          libraryId: path.libraryId
      - text: Show only elements of type {type} in library {libraryId}.
        slots:
          type: query.type
          libraryId: path.libraryId
      - text: List the 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 color or graphic element to a library?
      - Can I copy or move existing elements from one library into another?
      instructions:
      - text: Create a {type} element named {name} in library {libraryId} using invocation mode {invocation_mode}.
        slots:
          type: requestBody.type
          name: requestBody.name
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      - text: Copy element {sourceRef} into library {libraryId} with invocation mode {invocation_mode}.
        slots:
          sourceRef: requestBody.sourceRef
          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 library elements
      effect: destructive
      questions:
      - Can I move a batch of elements out of a library and into its archive?
      - What happens to elements I archive from a library, can they come back?
      instructions:
      - text: Archive the elements {elements} in library {libraryId}.
        slots:
          elements: requestBody.elements
          libraryId: path.libraryId
      - text: Move a set of elements from library {libraryId} into 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 attributes of library elements
      effect: write
      questions:
      - Can I rename elements or change their top-level metadata in bulk?
      - Which endpoint updates an element's name and description without touching its representations?
      instructions:
      - text: Update the metadata of elements {elements} in library {libraryId}.
        slots:
          elements: requestBody.elements
          libraryId: path.libraryId
      - text: Change the top-level attributes of elements {elementIds} in library {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 one element from a library
      effect: read
      questions:
      - How can I look up a single element in one of my libraries?
      - What does an individual library element's record contain?
      instructions:
      - text: Get element {elementId} from library {libraryId}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      - text: Show me the details of element {elementId} in library {libraryId}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      method: generated
      generated: '2026-09-26'
- target: $.paths['/api/v1/libraries/{libraryId}/elements/{elementId}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Archive one library element
      effect: destructive
      questions:
      - Can I archive a single element instead of deleting it outright?
      - Where does an element go when I remove just that one from a library?
      instructions:
      - text: Archive element {elementId} in library {libraryId}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
      - text: Move element {elementId} of library {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: Replace an element's representations
      effect: write
      questions:
      - How do I add, update or remove the renditions attached to a library element?
      - Can I swap out the file behind an existing element while keeping the element?
      instructions:
      - text: Replace the representations of element {elementId} in library {libraryId} using invocation mode {invocation_mode}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      - text: Set the representations of element {elementId} in library {libraryId} to {representations} with invocation mode {invocation_mode}.
        slots:
          elementId: path.elementId
          libraryId: path.libraryId
          representations: requestBody.representations
          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:
      - Can I rename an existing Creative Cloud library?
      - Which call changes a library's metadata such as its name?
      instructions:
      - text: Rename library {libraryId} to {name}.
        slots:
          libraryId: path.libraryId
          name: requestBody.name
      - text: Update the name 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 is the maximum file size I can upload directly to a library?
      instructions:
      - text: Upload this file to library {libraryId} with invocation mode {invocation_mode}.
        slots:
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      - text: Upload {Representation-Content} as an asset in library {libraryId} using invocation mode {invocation_mode}.
        slots:
          Representation-Content: requestBody.Representation-Content
          libraryId: path.libraryId
          invocation_mode: path.invocation_mode
      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:
      - Can I search across all my libraries for elements by name or keyword?
      - Is there a way to find library elements created or modified within a date range?
      - Which of my library elements came from Adobe Stock?
      instructions:
      - text: Search my libraries for {query_string}.
        slots:
          query_string: requestBody.query_string
      - text: Find elements named {name} in library {library_id}.
        slots:
          name: requestBody.name
          library_id: requestBody.library_id
      - text: Search for archived library elements of type {type}.
        slots:
          type: requestBody.type
      method: generated
      generated: '2026-09-26'