Acoustic Delivery render API

The Content Delivery rendering REST API provides information to render content and pages in client-side applications. **Client-side programming support** If you want to create a client-side application with Angular 4, you can use the [Acoustic Angular SDK for Content](https://www.npmjs.com/package/@acoustic-content-sdk/ng-api). With the Angular SDK, you can retrieve and render content and pages from Content without any need to interact with the REST API directly. **Conditional GET requests** The API supports ETag and Last-modified [conditional GET requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Conditional_requests). It is highly recommended to use conditional GET requests with ETags to decrease the communication data between client and API. The API provides ETag and Last-modified header response information if available. The client can send conditional GET requests with ETag and Last-modified information to validate local client data. The API responds with a `304 - Not modified response` with empty content if the condition is still valid. **JSONP support** The API has [JSONP support](https://www.w3schools.com/js/js_json_jsonp.asp). The client can activate the JSONP support by providing the JSONP callback name query parameter. **Preview support** The API supports the previewing of content information as described [here](https://developer.goacoustic.com/acoustic-content/docs/preview-content). **Usage** In order to render content and the page structure in client-side applications you must to consider the following aspects: * Identify the addressed page that correlates to the application routing state. * Identify the addressed content and layout information and render the content. With the following steps you can achieve these aspects: 1. Retrieve the site and page information by using the "Delivery Site By ID" API route. The response contains information to identify the page that correlates to the navigational state (route) of the application. 2. The page information has the property "contentId" that references the content of the page. Use that property to get the content ID. 3. Use the content ID in combination with the "Delivery Rendering Context By ID" API route to retrieve the rendering context information of the content item. The rendering context contains the layout information of the content item and content references, including the resolved rendering context of the referenced items. 4. Based on the provided layout information, identify the related the layout component of your application and render the content item by using the layout component. If required the layout can render nested layouts.

Operations 7

GET /delivery/v1/rendering/render/content/{id} Applies server side rendering to the specified content item
GET /delivery/v1/rendering/sites/{id} Delivery Site By ID
GET /delivery/v1/rendering/context/{id} Delivery Rendering Context By ID
GET /delivery/v1/rendering/type/{id} Aggregated type information by ID
GET /delivery/v1/rendering/search Delivery Rendering Contexts By Search Query
GET /mydelivery/v1/rendering/render/content/{id} Applies server side rendering to the specified content item
GET /mydelivery/v1/rendering/type/{id} Aggregated type information by ID

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/acoustic-delivery-render-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

acoustic-delivery-render-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Acoustic Delivery render API
  version: 1.0.142
  x-ibm-name: ibm-watson-content-hub-api
  description: 'Operations tagged Delivery render across 2 of this provider''s published API definitions: acoustic-content-openapi-original.json, acoustic-content-swagger2-original.yaml. Each path carries the servers of the definition it was published in.'
tags:
- name: Delivery render
  description: 'The Content Delivery rendering REST API provides information to render content and pages in client-side applications.


    **Client-side programming support**


    If you want to create a client-side application with Angular 4, you can use the [Acoustic Angular SDK for Content](https://www.npmjs.com/package/@acoustic-content-sdk/ng-api). With the Angular SDK, you can retrieve and render content and pages from Content without any need to interact with the REST API directly.


    **Conditional GET requests**


    The API supports ETag and Last-modified [conditional GET requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Conditional_requests). It is highly recommended to use conditional GET requests with ETags to decrease the communication data between client and API. The API provides ETag and Last-modified header response information if available. The client can send conditional GET requests with ETag and Last-modified information to validate local client data. The API responds with a `304 - Not modified response` with empty content if the condition is still valid.


    **JSONP support**


    The API has [JSONP support](https://www.w3schools.com/js/js_json_jsonp.asp). The client can activate the JSONP support by providing the JSONP callback name query parameter.


    **Preview support**


    The API supports the previewing of content information as described [here](https://developer.goacoustic.com/acoustic-content/docs/preview-content).



    **Usage**


    In order to render content and the page structure in client-side applications you must to consider the following aspects:


    * Identify the addressed page that correlates to the application routing state.

    * Identify the addressed content and layout information and render the content.


    With the following steps you can achieve these aspects:


    1. Retrieve the site and page information by using the "Delivery Site By ID" API route. The response contains information to identify the page that correlates to the navigational state (route) of the application.

    2. The page information has the property "contentId" that references the content of the page. Use that property to get the content ID.

    3. Use the content ID in combination with the "Delivery Rendering Context By ID" API route to retrieve the rendering context information of the content item. The rendering context contains the layout information of the content item and content references, including the resolved rendering context of the referenced items.

    4. Based on the provided layout information, identify the related the layout component of your application and render the content item by using the layout component. If required the layout can render nested layouts.

    '
paths:
  /delivery/v1/rendering/render/content/{id}:
    get:
      summary: Applies server side rendering to the specified content item
      description: 'Applies server side rendering to the specified content item<br />User roles: admin, manager, editor, viewer, authenticatedVisitor, anonymous'
      parameters:
      - in: path
        name: id
        description: Provide the ID of the resource. Note that IDs are always the IDs of published item, even if a draft exists with a different ID. For a site, use `@current` to indicate that the ID of the site is derived from the addressed URL via custom domain site mapping or URL path based site addressing. For further details consult the Content documentation.
        required: true
        schema:
          type: string
      - in: query
        name: layoutId
        description: Provide the ID of the layout to be used to pre-render the resource.
        required: false
        schema:
          type: string
      - in: query
        name: contentType
        description: Specifies the content type to be set on the response. Default is text/html.
        required: false
        schema:
          type: string
      - name: callback
        description: Provide the JSONP callback name for JSONP support. The callback name must designate a javascript function that can be executed in the global scope. The argument will be the deserialized JSON object.
        in: query
        required: false
        schema:
          type: string
      - in: query
        name: rcParam
        description: By specifying query parameters with arbitrary names, but start with the prefix 'rc' or 'RC' (case insensitive), e.g., 'RcParam1', 'rcMy', you can provide custom parameters that will be added to the rendering context JSON under the $context.customParameters section.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successfully retrieved the rendering.
          content:
            text/html:
              schema:
                type: string
        '429':
          description: Too Many Requests, the server has reached a limit, the request must be sent again at a later time.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Server Error
          content:
            text/html:
              schema:
                type: object
                description: This JSON object describes an error condition.
                properties:
                  requestId:
                    type: string
                    description: The unique identifier of the request that failed.
                  service:
                    type: string
                    description: The name of the service that reports the error.
                  errors:
                    type: array
                    items:
                      type: object
                      description: This JSON object describes a specific error of an error condition.
                      properties:
                        code:
                          type: integer
                          description: An error code that is specific to the service that reports the error.
                        message:
                          type: string
                          description: A message that describes what went wrong.
                        description:
                          type: string
                          description: A more detailed explanation of the error condition and recommended steps to resolve the issue.
                        more_info:
                          type: string
                          description: A URL pointing to a source that provides more information on this error.
                        level:
                          type: string
                          enum:
                          - ERROR
                          - WARNING
                          description: The severity of this error.
                        parameters:
                          type: object
                          description: Additional properties that represent dynamic parts used in the 'message'.
                        cause:
                          type: object
                          description: The error message that was produced by a downstream service and represents the cause of this error.
                        locale:
                          type: string
                          description: The locale information of the text provided as 'message' and as 'description' of this error.
                      required:
                      - code
                      - message
                required:
                - requestId
                - errors
      x-ibm-dx-security-user-roles:
      - admin
      - manager
      - editor
      - viewer
      - authenticatedVisitor
      - anonymous
      x-ibm-dx-vary: []
      tags:
      - Delivery render
  /delivery/v1/rendering/sites/{id}:
    get:
      summary: Delivery Site By ID
      description: 'Provides delivery site information including site metadata and pages hierarchy<br />User roles: admin, manager, editor, viewer, authenticatedVisitor, anonymous'
      parameters:
      - in: path
        name: id
        description: Provide the ID of the resource. Note that IDs are always the IDs of published item, even if a draft exists with a different ID. For a site, use `@current` to indicate that the ID of the site is derived from the addressed URL via custom domain site mapping or URL path based site addressing. For further details consult the Content documentation.
        required: true
        schema:
          type: string
      - name: callback
        description: Provide the JSONP callback name for JSONP support. The callback name must designate a javascript function that can be executed in the global scope. The argument will be the deserialized JSON object.
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                type: object
                items:
                  title: Site Metadata
                  description: Site Metadata
                  type: object
                  properties:
                    id:
                      type: string
                      description: The ID of the site.
                    rev:
                      type: string
                      description: The current revision of the document.
                    name:
                      type: string
                      description: The name of the site.
                    classification:
                      type: string
                      description: The classification of site. This is always `site`.
                    lastModified:
                      type: string
                      description: The last modified date of this site metadata in ISO 8601 with the format YYYY-MM-DDTHH:mm:ss.sssZ.
                    lastModifierId:
                      type: string
                      description: This is the user ID of the user that modified the site metadata.
                    created:
                      type: string
                      description: The creation date of this site metadata in ISO 8601 with the format YYYY-MM-DDTHH:mm:ss.sssZ.
                    creatorId:
                      type: string
                      description: This is the user ID of the user that created the site metadata.
                    pages:
                      type: array
                      items:
                        title: Page Metadata
                        description: Page Metadata
                        type: object
                        properties:
                          id:
                            type: string
                            description: The ID of the page item.
                          rev:
                            type: string
                            description: The current revision of the document.
                          name:
                            type: string
                            description: The name of the page item.
                          contentId:
                            type: string
                            description: The ID of the page content item this item represents.
                          contentTypeId:
                            type: string
                            description: The ID of the page content type.
                          position:
                            type: string
                            description: Position relative to sibling pages giving the order of the pages. Position is an integer value starting at 0.
                          description:
                            type: string
                            description: Page description.
                          layoutId:
                            type: string
                            description: Page layout template ID.
                          segment:
                            type: string
                            description: Friendly URL segment.
                          title:
                            type: string
                            description: Page title.
                          parentId:
                            type: string
                            description: The ID of the parent page. Not present if it is the root page.
                          classification:
                            type: string
                            description: The classification of the page. This is always `page`.
                          lastModified:
                            type: string
                            description: The last modified date of this page in ISO 8601 with the format YYYY-MM-DDTHH:mm:ss.sssZ.
                          lastModifierId:
                            type: string
                            description: This is the user ID of the user that modified the page.
                          created:
                            type: string
                            description: The creation date of this page in ISO 8601 with the format YYYY-MM-DDTHH:mm:ss.sssZ.
                          creatorId:
                            type: string
                            description: This is the user ID of the user that created the page.
                          route:
                            type: string
                            description: This is the url path of the page.
                          url:
                            type: string
                            description: This is the server relative url server relative.
                          children:
                            type: array
                            items:
                              type: object
                            description: This is an array of the hierarchical child pages of this hierarchical page.
                      description: The page hierarchy of the site.
        '304':
          description: Not modified
        '404':
          description: The delivery site information for the specified site ID was not found.
          content:
            application/json:
              schema:
                type: object
                description: This JSON object describes an error condition.
                properties:
                  requestId:
                    type: string
                    description: The unique identifier of the request that failed.
                  service:
                    type: string
                    description: The name of the service that reports the error.
                  errors:
                    type: array
                    items:
                      type: object
                      description: This JSON object describes a specific error of an error condition.
                      properties:
                        code:
                          type: integer
                          description: An error code that is specific to the service that reports the error.
                        message:
                          type: string
                          description: A message that describes what went wrong.
                        description:
                          type: string
                          description: A more detailed explanation of the error condition and recommended steps to resolve the issue.
                        more_info:
                          type: string
                          description: A URL pointing to a source that provides more information on this error.
                        level:
                          type: string
                          enum:
                          - ERROR
                          - WARNING
                          description: The severity of this error.
                        parameters:
                          type: object
                          description: Additional properties that represent dynamic parts used in the 'message'.
                        cause:
                          type: object
                          description: The error message that was produced by a downstream service and represents the cause of this error.
                        locale:
                          type: string
                          description: The locale information of the text provided as 'message' and as 'description' of this error.
                      required:
                      - code
                      - message
                required:
                - requestId
                - errors
        '429':
          description: Too Many Requests, the server has reached a limit, the request must be sent again at a later time.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Server Error
          content:
            application/json:
              schema:
                type: object
                description: This JSON object describes an error condition.
                properties:
                  requestId:
                    type: string
                    description: The unique identifier of the request that failed.
                  service:
                    type: string
                    description: The name of the service that reports the error.
                  errors:
                    type: array
                    items:
                      type: object
                      description: This JSON object describes a specific error of an error condition.
                      properties:
                        code:
                          type: integer
                          description: An error code that is specific to the service that reports the error.
                        message:
                          type: string
                          description: A message that describes what went wrong.
                        description:
                          type: string
                          description: A more detailed explanation of the error condition and recommended steps to resolve the issue.
                        more_info:
                          type: string
                          description: A URL pointing to a source that provides more information on this error.
                        level:
                          type: string
                          enum:
                          - ERROR
                          - WARNING
                          description: The severity of this error.
                        parameters:
                          type: object
                          description: Additional properties that represent dynamic parts used in the 'message'.
                        cause:
                          type: object
                          description: The error message that was produced by a downstream service and represents the cause of this error.
                        locale:
                          type: string
                          description: The locale information of the text provided as 'message' and as 'description' of this error.
                      required:
                      - code
                      - message
                required:
                - requestId
                - errors
      x-ibm-dx-security-user-roles:
      - admin
      - manager
      - editor
      - viewer
      - authenticatedVisitor
      - anonymous
      x-ibm-dx-vary: []
      tags:
      - Delivery render
  /delivery/v1/rendering/context/{id}:
    get:
      summary: Delivery Rendering Context By ID
      description: 'Use the `rendering/context/{id}` endpoint to retrieve the rendering context for the specified content ID.


        The response contains the delivery content structure with resolved content element references. The resolution replaces content elements of type reference with the referenced rendering context. It is resolved recursively if the resolved content structure contains content elements of type reference.



        **Cycle detection**


        Referenced content can have cycles. In a cyclic structure, references link back to itself, often through references in between. The API detects and stops cycles to serialize the content structure. If a cycle is detected, the API stops the replacements of the referenced elements and sets a cycle marker property instead. The cycle marker property has the key "$$CYCLE" and the value of the detected cycling content ID. The content ID can be used to find the referenced content structure in the parent hierarchy.

        <br />User roles: admin, manager, editor, viewer, authenticatedVisitor, anonymous'
      parameters:
      - in: path
        name: id
        description: Provide the ID of the resource. Note that IDs are always the IDs of published item, even if a draft exists with a different ID. For a site, use `@current` to indicate that the ID of the site is derived from the addressed URL via custom domain site mapping or URL path based site addressing. For further details consult the Content documentation.
        required: true
        schema:
          type: string
      - name: callback
        description: Provide the JSONP callback name for JSONP support. The callback name must designate a javascript function that can be executed in the global scope. The argument will be the deserialized JSON object.
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successfully retrieved the delivery rendering context.
          content:
            application/json:
              schema:
                type: object
                items:
                  title: RenderingContext
                  type: object
                  properties:
                    id:
                      type: string
                      description: The ID of the content item.
                    rev:
                      type: string
                      description: The current revision of the document.
                    name:
                      type: string
                      description: The name of the content item.
                    classification:
                      type: string
                      description: The classification defines the document type. For content items, all documents are classified as "content".
                    typeId:
                      type: string
                      description: The ID of the content type this item belongs to.
                    locale:
                      type: string
                      description: The locale of the document (e.g "en", or "de").
                    lastModified:
                      type: string
                      format: date-time
                      description: The last modified date of this content item in ISO 8601 with the format YYYY-MM-DDTHH:mm:ss.sssZ.
                    lastModifierId:
                      type: string
                      description: The name of user for now, this property may change once user management is defined (read only).
                    created:
                      type: string
                      format: date-time
                      description: The created date of this content item in ISO 8601 with the format YYYY-MM-DDTHH:mm:ss.sssZ.
                    creatorId:
                      type: string
                      description: The ID of the creator
                    layouts:
                      description: The layouts of the content item
                      type: object
                    tags:
                      type: array
                      items:
                        type: string
                      uniqueItems: true
                      description: The tags describing the content item.
                    elements:
                      type: object
                      description: Defined by the type and captured in the schema given by the type, in a real content, this property will be filled with more information.
                    description:
                      type: string
                      description: The description of the content item.
                    type:
                      type: string
                      description: The link to the content type document this content is based on.
        '304':
          description: Not modified
        '404':
          description: The delivery rendering context for the specified ID was not found.
          content:
            application/json:
              schema:
                type: object
                description: This JSON object describes an error condition.
                properties:
                  requestId:
                    type: string
                    description: The unique identifier of the request that failed.
                  service:
                    type: string
                    description: The name of the service that reports the error.
                  errors:
                    type: array
                    items:
                      type: object
                      description: This JSON object describes a specific error of an error condition.
                      properties:
                        code:
                          type: integer
                          description: An error code that is specific to the service that reports the error.
                        message:
                          type: string
                          description: A message that describes what went wrong.
                        description:
                          type: string
                          description: A more detailed explanation of the error condition and recommended steps to resolve the issue.
                        more_info:
                          type: string
                          description: A URL pointing to a source that provides more information on this error.
                        level:
                          type: string
                          enum:
                          - ERROR
                          - WARNING
                          description: The severity of this error.
                        parameters:
                          type: object
                          description: Additional properties that represent dynamic parts used in the 'message'.
                        cause:
                          type: object
                          description: The error message that was produced by a downstream service and represents the cause of this error.
                        locale:
                          type: string
                          description: The locale information of the text provided as 'message' and as 'description' of this error.
                      required:
                      - code
                      - message
                required:
                - requestId
                - errors
        '429':
          description: Too Many Requests, the server has reached a limit, the request must be sent again at a later time.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Server Error
          content:
            application/json:
              schema:
                type: object
                description: This JSON object describes an error condition.
                properties:
                  requestId:
                    type: string
                    description: The unique identifier of the request that failed.
                  service:
                    type: string
                    description: The name of the service that reports the error.
                  errors:
                    type: array
                    items:
                      type: object
                      description: This JSON object describes a specific error of an error condition.
                      properties:
                        code:
                          type: integer
                          description: An error code that is specific to the service that reports the error.
                        message:
                          type: string
                          description: A message that describes what went wrong.
                        description:
                          type: string
                          description: A more detailed explanation of the error condition and recommended steps to resolve the issue.
                        more_info:
                          type: string
                          description: A URL pointing to a source that provides more information on this error.
                        level:
                          type: string
                          enum:
                          - ERROR
                          - WARNING
                          description: The severity of this error.
                        parameters:
                          type: object
                          description: Additional properties that represent dynamic parts used in the 'message'.
                        cause:
                          type: object
                          description: The error message that was produced by a downstream service and represents the cause of this error.
                        locale:
                          type: string
                          description: The locale information of the text provided as 'message' and as 'description' of this error.
                      required:
                      - code
                      - message
                required:
                - requestId
                - errors
      x-ibm-dx-security-user-roles:
      - admin
      - manager
      - editor
      - viewer
      - authenticatedVisitor
      - anonymous
      x-ibm-dx-vary: []
      tags:
      - Delivery render
  /delivery/v1/rendering/type/{id}:
    get:
      summary: Aggregated type information by ID
      description: 'Aggregated type information by ID<br />User roles: admin, manager, editor, viewer, authenticatedVisitor, anonymous'
      parameters:
      - in: path
        name: id
        description: Provide the ID of the resource. Note that IDs are always the IDs of published item, even if a draft exists with a different ID. For a site, use `@current` to indicate that the ID of the site is derived from the addressed URL via custom domain site mapping or URL path based site addressing. For further details consult the Content documentation.
        required: true
        schema:
          type: string
      - name: callback
        description: Provide the JSONP callback name for JSONP support. The callback name must designate a javascript function that can be executed in the global scope. The argument will be the deserialized JSON object.
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Successfully retrieved the delivery type information.
          content:
            application/json:
              schema:
                type: object
                items:
                  title: RenderingContext
                  type: object
                  properties:
                    id:
                      type: string
                      description: The ID of the content item.
                    rev:
                      type: string
                      description: The current revision of the document.
                    name:
                      type: string
                      description: The name of the content item.
                    classification:
                      type: string
                      description: The classification defines the document type. For content items, all documents are classified as "content".
                    typeId:
                      type: string
                      de

# --- truncated at 32 KB (63 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/acoustic/refs/heads/main/openapi/acoustic-delivery-render-api-openapi.yml