{ "swagger": "2.0", "info": { "version": "0.1", "title": "Adobe CC Libraries APIs Test" }, "host": "cc-libraries.adobe.io", "basePath": "/", "tags": [ { "name": "Library Service", "description": "App-facing APIs for Adobe CC Libraries." }, { "name": "Library Service - Bookmarks", "description": "App-facing APIs specifically for Adobe CC Library Bookmarks." }, { "name": "Library Service - Public", "description": "App-facing APIs specifically for Adobe CC Public Libraries." } ], "schemes": [ "https" ], "paths": { "/api/v1/libraries": { "get": { "tags": [ "Library Service" ], "summary": "Retrieve libraries for a user", "description": "", "operationId": "getLibraries", "produces": [ "application/json" ], "parameters": [ { "name": "orderBy", "in": "query", "description": "Sorting option for the response list. \nReverse sort is enabled with a - character ahead of the sorting vector. (ex: -modified_date) \nMulti-vector sort is enabled by including multiple vectors separated by commas. (ex: name,-modified_date) \nSorting is not available for public libraries. \n\n**Possible Values** \n- `name`: Sort by the name.\n- `modified_date`: Sort by the last modified date.", "required": false, "type": "string", "default": "-modified_date" }, { "name": "start", "in": "query", "description": "The first result to include for a paged response, 0-based. \nThis parameter is required if a limit is specified. \nPaging is not available for public libraries.", "required": false, "type": "string", "default": "0", "minimum": 0 }, { "name": "limit", "in": "query", "description": "The number of libraries to return for a paged response. \nPaging is not available for public libraries. \n\n**Possible Values** \n- Min: 1. \n- Max: 10.", "required": false, "type": "string", "default": "10", "minimum": 1 }, { "name": "owner", "in": "query", "description": "Customize which libraries to include in the response, based on ownership. \n\n**Possible Values** \n- `private`: Libraries owned by the user. \n- `incoming`: Libraries shared with the user. This may include person-to-person shared libraries as well as libraries accessible via group ownership. \n- `public`: Libraries the user has followed. \n- `all`: All of the above except public.", "required": false, "type": "string", "default": "all" }, { "name": "selector", "in": "query", "description": "Customize which data sets to include in the response. \nAll applications using this API will need the same sets of data, but different applications will not require different depths of details. \nCallers can specify a comma-separated list of selectors to either limit or expand the default response. The absence of selectors will yield the default response, while including selectors gives callers access to building-blocks to compose the response to their needs. \n\n**Possible Values** \n- `default`: Base data, use this to build out custom response. \n- `details`: All available data for in-depth display. \n- `collaboration`: Add collaboration data to a lesser-scoped selector. \n- `groups`: Include group data in the response. \n- `rendition_grid`: Provides a set of links to library element image renditions, which can be combined to create a thumbnail for the library. The `main` rendition link is the first asset uploaded to the library, while the `tiles` contain the three most recently updated library elements' rendition links. \n", "required": false, "type": "string", "default": "default" }, { "name": "toolkit", "in": "query", "description": "Customize which toolkit libraries to include in the response. \n\n**Possible Values**- `all`: Include all toolkit libraries. \n- `none`: Do not include any toolkit libraries. \n- ``: Include libraries matching a specific toolkit-id, or comma-separated list of toolkit-ids.", "required": false, "type": "string", "default": "none" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/LibrariesInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "post": { "tags": [ "Library Service" ], "summary": "Create a library", "description": "", "operationId": "createLibraries", "produces": [ "application/json" ], "parameters": [ { "name": "invocation_mode", "in": "query", "description": "Specifies the processing mode to invoke this request process with. \n\n**Possible Values** \n- `sync`: API call is processed synchronously. The response is delivered when processing is complete, unless there's a timeout. \n- `async`: The async monitor response is immediately returned and request processing occurs asynchronously. The caller is responsible for polling that endpoint until completion. \n- `sync,async`: (Default) Synchronous processing of the request is attempted. When the processing extends past 5000ms, the async monitor response is returned. The monitor URL should be polled until the request is complete.", "required": false, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/CreateLibraryPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/DbLibraryInfo" } }, "201": { "description": "Created", "schema": { "$ref": "#/definitions/DbLibraryInfo" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/DbLibraryInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/bookmarks": { "get": { "tags": [ "Library Service - Bookmarks" ], "summary": "Retrieves all bookmarks for a user", "description": "", "operationId": "getBookmarks", "produces": [ "application/json" ], "parameters": [ { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DbLibraryBookmarks" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "post": { "tags": [ "Library Service - Bookmarks" ], "summary": "Add bookmarks for user, one or multiple", "description": "", "operationId": "addLibraryBookmarks", "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/BookmarksPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/DbLibraryBookmarks" } }, "201": { "description": "Created", "schema": { "$ref": "#/definitions/DbLibraryBookmarks" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/bookmarks/{bookmarkId}": { "put": { "tags": [ "Library Service - Bookmarks" ], "summary": "Update an existing bookmark by ID", "description": "", "operationId": "putLibraryBookmark", "produces": [ "application/json" ], "parameters": [ { "name": "bookmarkId", "in": "path", "description": "The ID of the requested bookmark.", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/BookmarksPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DbLibraryBookmarks" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "delete": { "tags": [ "Library Service - Bookmarks" ], "summary": "Remove a bookmark", "description": "", "operationId": "removeLibraryBookmark", "produces": [ "application/json" ], "parameters": [ { "name": "bookmarkId", "in": "path", "description": "The ID of the requested bookmark.", "required": true, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}": { "get": { "tags": [ "Library Service" ], "summary": "Retrieve a specific library", "description": "", "operationId": "getLibrary", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "selector", "in": "query", "description": "Customize which data sets to include in the response. \nAll applications using this API will need the same sets of data, but different applications will not require different depths of details. \nCallers can specify a comma-separated list of selectors to either limit or expand the default response. The absence of selectors will yield the default response, while including selectors gives callers access to building-blocks to compose the response to their needs. \n\n**Possible Values** \n- `default`: Base data, use this to build out custom response. \n- `details`: All available data for in-depth display. \n- `collaboration`: Add collaboration data to a lesser-scoped selector. \n- `groups`: Include group data in the response. \n- `rendition_grid`: Provides a set of links to library element image renditions, which can be combined to create a thumbnail for the library. The `main` rendition link is the first asset uploaded to the library, while the `tiles` contain the three most recently updated library elements' rendition links. \n", "required": false, "type": "string", "default": "default" }, { "name": "libraryVersion", "in": "query", "description": "Retrieve a cached library response (if available) for the specified version. \nTo ensure the most recent cached version, use the `version`, which is provided when retrieving the library list. \nIf the cached version is unavailable for some reason, the live result will be returned. \nUsing this parameter is optional, but is likely to provide substantially faster performance. \n", "required": false, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "if-none-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is EXACTLY the same.", "required": false, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DbLibraryInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "head": { "tags": [ "Library Service" ], "summary": "Retrieve a specific library", "description": "", "operationId": "headLibrary", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "delete": { "tags": [ "Library Service" ], "summary": "Delete a specific library", "description": "", "operationId": "deleteLibrary", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "patch": { "tags": [ "Library Service" ], "summary": "Apply multiple operations to a single library serially.", "description": "Apply multiple operations to a library serially. \nThe request payload for this endpoint consists of an array of requests. \nRequests in this array may reference values from the response of requests preceding them. \nThis can be accomplished by using substitution variables, which are described here: https://wiki.corp.adobe.com/x/5xLOhw.", "operationId": "patchLibrary", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "invocation_mode", "in": "path", "description": "Specifies the processing mode to invoke this request process with. \n\n**Possible Values** \n- `sync`: API call is processed synchronously. The response is delivered when processing is complete, unless there's a timeout. \n- `async`: The async monitor response is immediately returned and request processing occurs asynchronously. The caller is responsible for polling that endpoint until completion. \n- `sync,async`: (Default) Synchronous processing of the request is attempted. When the processing extends past 5000ms, the async monitor response is returned. The monitor URL should be polled until the request is complete.", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/BatchPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "if-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is NOT the same.", "required": false, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/BatchResponse" } }, "201": { "description": "Created", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "412": { "description": "Precondition Failed: The server does not meet one of the preconditions on the request header fields.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "415": { "description": "Unsupported Media Type: The request entity has a media type which is not supported.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "429": { "description": "Too Many Requests: The user has sent too many requests in a given amount of time.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/archive": { "post": { "tags": [ "Library Service" ], "summary": "Restore Archived Elements", "description": "", "operationId": "unArchiveLibraryElements", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "invocation_mode", "in": "path", "description": "Specifies the processing mode to invoke this request process with. \n\n**Possible Values** \n- `sync`: API call is processed synchronously. The response is delivered when processing is complete, unless there's a timeout. \n- `async`: The async monitor response is immediately returned and request processing occurs asynchronously. The caller is responsible for polling that endpoint until completion. \n- `sync,async`: (Default) Synchronous processing of the request is attempted. When the processing extends past 5000ms, the async monitor response is returned. The monitor URL should be polled until the request is complete.", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/PostLibraryElementsPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/AsyncResponsePayload" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/AsyncAcceptedResponse" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "delete": { "tags": [ "Library Service" ], "summary": "Permanently delete archived elements", "description": "", "operationId": "deleteLibraryElements", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/ArchiveDeleteElementListPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/archive/{elementId}": { "delete": { "tags": [ "Library Service" ], "summary": "Permanently delete an archived element", "description": "", "operationId": "deleteLibraryElement", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "elementId", "in": "path", "description": "The ID of the requested element.", "required": true, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/elements": { "get": { "tags": [ "Library Service" ], "summary": "Retrieve the elements within a library", "description": "", "operationId": "getLibraryElements", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "orderBy", "in": "query", "description": "Sorting option for the response list. \nReverse sort is enabled with a - character ahead of the sorting vector. (ex: -modified_date) \nMulti-vector sort is enabled by including multiple vectors separated by commas. (ex: name,-modified_date) \nSorting is not available for public libraries. \n\n**Possible Values** \n- `name`: Sort by the name.\n- `modified_date`: Sort by the last modified date.", "required": false, "type": "string", "default": "-modified_date" }, { "name": "start", "in": "query", "description": "The first result to include for a paged response, 0-based. \nThis parameter is required if a limit is specified. \nPaging is not available for public libraries.", "required": false, "type": "string", "default": "0", "minimum": 0 }, { "name": "limit", "in": "query", "description": "The number of results to return for a paged response. \nPaging is not available for public libraries. \n\n**Possible Values** \n- Min: 1. \n- Max: 100.", "required": false, "type": "string", "default": "10", "maximum": 100, "minimum": 1 }, { "name": "type", "in": "query", "description": "Limits results to those identified with the provided element mimetype.", "required": false, "type": "string" }, { "name": "group", "in": "query", "description": "Limits results to those assigned to the provided `group_id` (can be either `group_id` or `classifier#group_id`). \nParameters without a classifier will populate as `$default#group_id`. \nTo specify ungrouped elements, use `$none$`", "required": false, "type": "string" }, { "name": "selector", "in": "query", "description": "Customize which data sets to include in the response. \nAll applications using this API will need the same sets of data, but different applications will not require different depths of details. \nCallers can specify a comma-separated list of selectors to either limit or expand the default response. The absence of selectors will yield the default response, while including selectors gives callers access to building-blocks to compose the response to their needs. \n\n**Possible Values** \n- `default`: Base data, use this to build out custom response. \n- `details`: All available data for in-depth display. \n- `representations`: Flattened list of assets associated with the library element.", "required": false, "type": "string", "default": "default" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "if-none-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is EXACTLY the same.", "required": false, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "post": { "tags": [ "Library Service" ], "summary": "Create, copy, or move elements", "description": "Create a new element, or copy/move existing elements. \n\n**Create Element** \nCreate a single element. All elements require at least one asset-based or literal representation. \nWhen creating a new asset-based element (ex: images, thumbnails, video), upload the asset(s) BEFORE creating the element. \nUse the response(s) from the Upload Asset API call(s) as objects in the `representations` array when using this API to create a new element. \n\n**Move Elements** \nMove one or more elements, which means delete it from its current location and create it in the target library (indicated by this API's `libraryId` path param). \nTo move an element, use the `self` object in the request body of this API call. \n- `elements`: Array of element(s) to move, specified by Element ID ex. `{\"id\":\"\"}. \n- `id`: The library where the element(s) currently exist, specified by Library URN. \n\n**Copy Elements** \nCopy one or more elements, which means leave the original element untouched and create a copy of it in the target library (indicated by this API's `libraryId` path param). \nTo copy an element, use the `source` object in the request body of this API call. \n- `elements`: Array of element(s) to move, specified by Element ID ex. `{\"id\":\"\"}. \n - optionally provide a new name for the new element ex. `{\"id\":\"\", \"name\":\"\", \"description\":\"description\"}. \n- `id`: The library where the element(s) currently exist, specified by Library URN. If the source Library ID is the same as the target library, the element(s) will be duplicated.", "operationId": "postLibraryElements", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "invocation_mode", "in": "path", "description": "Specifies the processing mode to invoke this request process with. \n\n**Possible Values** \n- `sync`: API call is processed synchronously. The response is delivered when processing is complete, unless there's a timeout. \n- `async`: The async monitor response is immediately returned and request processing occurs asynchronously. The caller is responsible for polling that endpoint until completion. \n- `sync,async`: (Default) Synchronous processing of the request is attempted. When the processing extends past 5000ms, the async monitor response is returned. The monitor URL should be polled until the request is complete.", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/PostLibraryElementsPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "201": { "description": "Created", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "412": { "description": "Precondition Failed: The server does not meet one of the preconditions on the request header fields.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "415": { "description": "Unsupported Media Type: The request entity has a media type which is not supported.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "429": { "description": "Too Many Requests: The user has sent too many requests in a given amount of time.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "delete": { "tags": [ "Library Service" ], "summary": "Move a library's elements to the archive", "description": "", "operationId": "archiveLibraryElements", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/ArchiveDeleteElementListPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "202": { "description": "Accepted" }, "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/elements/metadata": { "put": { "tags": [ "Library Service" ], "summary": "Update a specific library's element", "description": "Update a specific library's element. \nThis API is intended solely for top-level element attribute updates. \nPlease look to `PUT /api/v1/libraries/{libraryId}/elements/{elementId}/representations` for updates to element assets and representations.", "operationId": "updateLibraryElements", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/ElementListPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/elements/{elementId}": { "get": { "tags": [ "Library Service" ], "summary": "Retrieve a specific library's element", "description": "", "operationId": "getLibraryElement", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "elementId", "in": "path", "description": "The ID of the requested element.", "required": true, "type": "string" }, { "name": "selector", "in": "query", "description": "Customize which data sets to include in the response. \nAll applications using this API will need the same sets of data, but different applications will not require different depths of details. \nCallers can specify a comma-separated list of selectors to either limit or expand the default response. The absence of selectors will yield the default response, while including selectors gives callers access to building-blocks to compose the response to their needs. \n\n**Possible Values** \n- `default`: Base data, use this to build out custom response. \n- `details`: All available data for in-depth display. \n- `representations`: Flattened list of assets associated with the library element.", "required": false, "type": "string", "default": "default" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "if-none-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is EXACTLY the same.", "required": false, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DbLibraryElementData" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "delete": { "tags": [ "Library Service" ], "summary": "Move a library's element to the archive", "description": "", "operationId": "archiveLibraryElement", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "elementId", "in": "path", "description": "The ID of the requested element.", "required": true, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/elements/{elementId}/representations": { "put": { "tags": [ "Library Service" ], "summary": "Add/Update/Delete element representations in existing library", "description": "Add/Update/Delete element representations in existing library. \nThe `representations` array input includes all representations to be created, retained, or updated. \n\n**Special Cases** \n- `Create`: New representations can be submitted alongside the existing renditions, but with no `id` field. \n- `Retain`: Existing representations with no changes should be submitted exactly as returned by the element. \n- `Update`: Changes to representations must include the accurate id for the exising entry and should include all fields, updated and not updated. \n- `Delete`: Element renditions missing from the payload will be removed from the element. \n\n**Notes** \n- Representations referencing assets uploaded to the library (primary and secondary) are immutable. To update an uploaded asset representation, submit a new representation with no id field. This will effectively delete and replace it. \n- The `representations` array resulting from this call will contain different `id` values that the existing element and the payload submission.", "operationId": "putLibraryElementRepresentations", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "elementId", "in": "path", "description": "The ID of the requested element.", "required": true, "type": "string" }, { "name": "invocation_mode", "in": "path", "description": "Specifies the processing mode to invoke this request process with. \n\n**Possible Values** \n- `sync`: API call is processed synchronously. The response is delivered when processing is complete, unless there's a timeout. \n- `async`: The async monitor response is immediately returned and request processing occurs asynchronously. The caller is responsible for polling that endpoint until completion. \n- `sync,async`: (Default) Synchronous processing of the request is attempted. When the processing extends past 5000ms, the async monitor response is returned. The monitor URL should be polled until the request is complete.", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/PostLibraryElementsPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "412": { "description": "Precondition Failed: The server does not meet one of the preconditions on the request header fields.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "413": { "description": "Payload Too Large: The request is larger than the server is willing or able to process.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "415": { "description": "Unsupported Media Type: The request entity has a media type which is not supported.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "429": { "description": "Too Many Requests: The user has sent too many requests in a given amount of time.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/metadata": { "put": { "tags": [ "Library Service" ], "summary": "Update a specific library", "description": "", "operationId": "updateLibrary", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/UpdateLibraryPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "successful operation", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/AsyncMonitorResponseDTO" } }, "204": { "description": "No Content" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/libraries/{libraryId}/representations/content": { "post": { "tags": [ "Library Service" ], "summary": "Upload an asset to a library", "description": "Upload a small file asset to an existing library. \nFile asset size must be <5mb to use this API call. \nAfter uploading a file asset with this API, you can use the response in the `representations` array in the request body of a Create New Element API call. \n", "operationId": "postLibraryComponent", "consumes": [ "multipart/form-data" ], "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "invocation_mode", "in": "path", "description": "Specifies the processing mode to invoke this request process with. \n\n**Possible Values** \n- `sync`: API call is processed synchronously. The response is delivered when processing is complete, unless there's a timeout. \n- `async`: The async monitor response is immediately returned and request processing occurs asynchronously. The caller is responsible for polling that endpoint until completion. \n- `sync,async`: (Default) Synchronous processing of the request is attempted. When the processing extends past 5000ms, the async monitor response is returned. The monitor URL should be polled until the request is complete.", "required": true, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" }, { "name": "Representation-Data", "in": "formData", "description": "A JSON object specifying the type of the uploaded asset. \n\nHere is an example, where the uploaded asset file is a jpg image: \n`{ \"type\": \"image/jpg\" }`", "required": false, "type": "string" }, { "name": "Representation-Content", "in": "formData", "description": "The file to upload. Must be less than 5mb.", "required": false, "type": "file" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "202": { "description": "Accepted", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "404": { "description": "Not Found: The specified resource could not be found.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "412": { "description": "Precondition Failed: The server does not meet one of the preconditions on the request header fields.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "413": { "description": "Payload Too Large: The request is larger than the server is willing or able to process.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "415": { "description": "Unsupported Media Type: The request entity has a media type which is not supported.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "429": { "description": "Too Many Requests: The user has sent too many requests in a given amount of time.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/public/libraries/{libraryId}": { "get": { "tags": [ "Library Service - Public" ], "summary": "Retrieve a specific library", "description": "", "operationId": "getPublicLibrary", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "selector", "in": "query", "description": "Customize which data sets to include in the response. \nAll applications using this API will need the same sets of data, but different applications will not require different depths of details. \nCallers can specify a comma-separated list of selectors to either limit or expand the default response. The absence of selectors will yield the default response, while including selectors gives callers access to building-blocks to compose the response to their needs. \n\n**Possible Values** \n- `default`: Base data, use this to build out custom response. \n- `details`: All available data for in-depth display. \n- `collaboration`: Add collaboration data to a lesser-scoped selector. \n- `groups`: Include group data in the response. \n- `rendition_grid`: Provides a set of links to library element image renditions, which can be combined to create a thumbnail for the library. The `main` rendition link is the first asset uploaded to the library, while the `tiles` contain the three most recently updated library elements' rendition links. \n", "required": false, "type": "string", "default": "default" }, { "name": "linkId", "in": "query", "description": "The ID associating the request with the public library landing page URL.", "required": false, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": false, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" }, { "name": "if-none-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is EXACTLY the same.", "required": false, "type": "string" }, { "name": "if-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is NOT the same.", "required": false, "type": "string" }, { "name": "x-use-cdn", "in": "header", "description": "Set to `true` if the API is called from a CDN.", "required": false, "type": "boolean" }, { "name": "x-cdn-origin", "in": "header", "description": "Indicate which backend service should be used for a call from a CDN. Required for calls from a CDN.", "required": false, "type": "string", "enum": [ "melville" ] } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DbLibraryInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } }, "head": { "tags": [ "Library Service - Public" ], "summary": "Check the presence and fetch headers of a public library", "description": "", "operationId": "headPublicLibrary", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "linkId", "in": "query", "description": "The ID associating the request with the public library landing page URL.", "required": false, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": false, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" }, { "name": "x-use-cdn", "in": "header", "description": "Set to `true` if the API is called from a CDN.", "required": false, "type": "boolean" }, { "name": "x-cdn-origin", "in": "header", "description": "Indicate which backend service should be used for a call from a CDN. Required for calls from a CDN.", "required": false, "type": "string", "enum": [ "melville" ] } ], "responses": { "200": { "description": "OK" }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/public/libraries/{libraryId}/elements": { "get": { "tags": [ "Library Service - Public" ], "summary": "Retrieve a specific library's list of elements", "description": "", "operationId": "getPublicLibraryElements", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "orderBy", "in": "query", "description": "Sorting option for the response list. \nReverse sort is enabled with a - character ahead of the sorting vector. (ex: -modified_date) \nMulti-vector sort is enabled by including multiple vectors separated by commas. (ex: name,-modified_date) \nSorting is not available for public libraries. \n\n**Possible Values** \n- `name`: Sort by the name.\n- `modified_date`: Sort by the last modified date.", "required": false, "type": "string", "default": "-modified_date" }, { "name": "start", "in": "query", "description": "The first result to include for a paged response, 0-based. \nThis parameter is required if a limit is specified. \nPaging is not available for public libraries.", "required": false, "type": "string", "default": "0", "minimum": 0 }, { "name": "limit", "in": "query", "description": "The number of results to return for a paged response. \nPaging is not available for public libraries. \n\n**Possible Values** \n- Min: 1. \n- Max: 100.", "required": false, "type": "string", "default": "10", "maximum": 100, "minimum": 1 }, { "name": "type", "in": "query", "description": "Limits results to those identified with the provided element mimetype.", "required": false, "type": "string" }, { "name": "group", "in": "query", "description": "Limits results to those assigned to the provided `group_id` (can be either `group_id` or `classifier#group_id`). \nParameters without a classifier will populate as `$default#group_id`. \nTo specify ungrouped elements, use `$none$`", "required": false, "type": "string" }, { "name": "selector", "in": "query", "description": "Customize which data sets to include in the response. \nAll applications using this API will need the same sets of data, but different applications will not require different depths of details. \nCallers can specify a comma-separated list of selectors to either limit or expand the default response. The absence of selectors will yield the default response, while including selectors gives callers access to building-blocks to compose the response to their needs. \n\n**Possible Values** \n- `default`: Base data, use this to build out custom response. \n- `details`: All available data for in-depth display. \n- `collaboration`: Add collaboration data to a lesser-scoped selector. \n- `groups`: Include group data in the response. \n- `rendition_grid`: Provides a set of links to library element image renditions, which can be combined to create a thumbnail for the library. The `main` rendition link is the first asset uploaded to the library, while the `tiles` contain the three most recently updated library elements' rendition links. \n", "required": false, "type": "string", "default": "default" }, { "name": "linkId", "in": "query", "description": "The ID associating the request with the public library landing page URL.", "required": false, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": false, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" }, { "name": "if-none-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is EXACTLY the same.", "required": false, "type": "string" }, { "name": "if-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is NOT the same.", "required": false, "type": "string" }, { "name": "x-use-cdn", "in": "header", "description": "Set to `true` if the API is called from a CDN.", "required": false, "type": "boolean" }, { "name": "x-cdn-origin", "in": "header", "description": "Indicate which backend service should be used for a call from a CDN. Required for calls from a CDN.", "required": false, "type": "string", "enum": [ "melville" ] } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/LibraryElementsInfo" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/public/libraries/{libraryId}/elements/{elementId}": { "get": { "tags": [ "Library Service - Public" ], "summary": "Retrieve a public library's element", "description": "", "operationId": "getPublicLibraryElement", "produces": [ "application/json" ], "parameters": [ { "name": "libraryId", "in": "path", "description": "The ID of the requested library. \nFor private libraries, the `library_urn` should be used. (ex: urn:aaid:sc:US:1c2327c6-ca3a-8f74-11ac-d5bca13a8fc7) \nFor public libraries, the public library `id` should be used. (ex: 1UTOX1PQ9YWOTFIPUEQUV0Z2XFTFFF)", "required": true, "type": "string" }, { "name": "elementId", "in": "path", "description": "The ID of the requested element.", "required": true, "type": "string" }, { "name": "selector", "in": "query", "description": "Customize which data sets to include in the response. \nAll applications using this API will need the same sets of data, but different applications will not require different depths of details. \nCallers can specify a comma-separated list of selectors to either limit or expand the default response. The absence of selectors will yield the default response, while including selectors gives callers access to building-blocks to compose the response to their needs. \n\n**Possible Values** \n- `default`: Base data, use this to build out custom response. \n- `details`: All available data for in-depth display. \n- `representations`: Flattened list of assets associated with the library element.", "required": false, "type": "string", "default": "default" }, { "name": "linkId", "in": "query", "description": "The ID associating the request with the public library landing page URL.", "required": false, "type": "string" }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": false, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" }, { "name": "if-none-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is EXACTLY the same.", "required": false, "type": "string" }, { "name": "if-match", "in": "header", "description": "The `etag` value, returns content only if the asset's `etag` is NOT the same.", "required": false, "type": "string" }, { "name": "x-use-cdn", "in": "header", "description": "Set to `true` if the API is called from a CDN.", "required": false, "type": "boolean" }, { "name": "x-cdn-origin", "in": "header", "description": "Indicate which backend service should be used for a call from a CDN. Required for calls from a CDN.", "required": false, "type": "string", "enum": [ "melville" ] } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/DbLibraryElementData" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "406": { "description": "Not Acceptable: The requested format is not accepted for this method.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } }, "/api/v1/search": { "post": { "tags": [ "Library Service" ], "summary": "Search for Libraries and Library Elements", "description": "", "operationId": "search", "produces": [ "application/json" ], "parameters": [ { "in": "body", "name": "body", "required": false, "schema": { "$ref": "#/definitions/USSSearchPayload" } }, { "name": "authorization", "in": "header", "description": "An access token issued by Adobe IMS. In the header, the access token must be preceded by `Bearer `.", "required": true, "type": "string" }, { "name": "x-api-key", "in": "header", "description": "The API key assigned to your API client account when you signed up.", "required": true, "type": "string" }, { "name": "x-request-id", "in": "header", "description": "A unique request identifier that you define. Used by Adobe Support to trace the request in logs. This header is automatically generated by the server and returned in the response if you do not set it explicitly.", "required": false, "type": "string" } ], "responses": { "200": { "description": "OK", "schema": { "$ref": "#/definitions/USSSearchResponse" } }, "400": { "description": "Bad Request: The request is invalid.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "401": { "description": "Unauthorized: Authorization Token is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "403": { "description": "Forbidden: API Key is not accepted.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "500": { "description": "Internal Server Error: We had a problem with our server.", "schema": { "$ref": "#/definitions/ErrorResponse" } }, "503": { "description": "Service Unavailable: We are temporarily offline for maintenance, please try again later.", "schema": { "$ref": "#/definitions/ErrorResponse" } } } } } }, "definitions": { "AddClientTokenPayload": { "type": "object", "properties": { "token": { "type": "string" }, "ttl": { "type": "integer", "format": "int32" } } }, "ArchiveDeleteElementListPayload": { "type": "object", "properties": { "elements": { "type": "array", "readOnly": true, "items": { "type": "string" } } } }, "AsyncAcceptedResponse": { "type": "object", "properties": { "id": { "type": "string" }, "href": { "type": "string" }, "retryAfter": { "type": "integer", "format": "int64" } } }, "AsyncMonitorResponseDTO": { "type": "object", "properties": { "id": { "type": "string" }, "href": { "type": "string" }, "retryAfter": { "type": "integer", "format": "int64" }, "_fc": { "type": "boolean" } } }, "AsyncResponsePayload": { "type": "object", "properties": { "status": { "type": "string", "enum": [ "OK", "CREATED", "ACCEPTED", "NO_CONTENT", "MOVED_PERMANENTLY", "SEE_OTHER", "NOT_MODIFIED", "TEMPORARY_REDIRECT", "BAD_REQUEST", "UNAUTHORIZED", "FORBIDDEN", "NOT_FOUND", "NOT_ACCEPTABLE", "CONFLICT", "GONE", "PRECONDITION_FAILED", "UNSUPPORTED_MEDIA_TYPE", "INTERNAL_SERVER_ERROR", "SERVICE_UNAVAILABLE" ] }, "message": { "type": "string" } } }, "BatchPayload": { "type": "object", "properties": { "requests": { "type": "array", "items": { "$ref": "#/definitions/BatchPayloadElement" } } } }, "BatchPayloadElement": { "type": "object", "properties": { "method": { "type": "string" }, "path": { "type": "string" }, "body": { "type": "object", "additionalProperties": { "type": "object", "properties": {} } } } }, "BatchResponse": { "type": "object", "properties": { "responses": { "type": "array", "readOnly": true, "items": { "type": "object", "properties": {} } }, "requests": { "type": "array", "readOnly": true, "items": { "$ref": "#/definitions/BatchPayloadElement" } } } }, "BookmarksPayload": { "type": "object", "properties": { "bookmarks": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryBookmark" } } } }, "ClientDeviceInfoPayload": { "type": "object", "properties": { "deviceId": { "type": "string" }, "device": { "type": "string" }, "app": { "type": "string" } } }, "ClientTokenInfo": { "type": "object", "properties": { "token": { "type": "string", "description": "Client Token" } } }, "Contact": { "type": "object", "properties": { "name": { "type": "string" }, "url": { "type": "string" }, "email": { "type": "string" } } }, "CreateLibraryPayload": { "type": "object", "properties": { "name": { "type": "string", "description": "Human-readable name for library. *Required* for creating a new library (not for move/copy)" }, "source": { "type": "string", "description": "URN or public library ID of the source library. *Required* for copy." }, "self": { "type": "string", "description": "URN or public library ID of the library to be moved. *Required* for move." } } }, "DbLibraryBookmark": { "type": "object", "required": [ "id" ], "properties": { "type": { "type": "string", "description": "`public`, or `collab`, with separate required fields as identified below", "enum": [ "PUBLIC", "COLLAB" ] }, "id": { "type": "string", "description": "Required, must match the library's `id`. Submissions with an existing ID are discarded." }, "url": { "type": "string", "description": "Required if `type` is `public`" }, "urn": { "type": "string", "description": "Required if `type` is `collab`" }, "role": { "type": "string", "description": "'viewer'/'editor' role of user's sharing status on library." }, "can_share": { "type": "boolean", "description": "Sharing permission for user's sharing status on library" }, "can_comment": { "type": "boolean", "description": "Commenting permission for user's sharing status on library" }, "created": { "type": "integer", "format": "int64", "description": "This parameter will be ignored, populated with the timestamp upon creation and immutable after" }, "_fc": { "type": "boolean" } } }, "DbLibraryBookmarks": { "type": "object", "properties": { "bookmarks": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryBookmark" } }, "_fc": { "type": "boolean" } } }, "DbLibraryCollaborationData": { "type": "object", "properties": { "rootURN": { "type": "string" }, "ownerId": { "type": "string" }, "state": { "type": "string" }, "collaborators": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryCollaboratorData" } }, "invitations": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryInvitationData" } }, "public": { "type": "boolean" }, "_fc": { "type": "boolean" }, "directCollaborators": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryCollaboratorData" } }, "hasAdmin": { "type": "boolean", "readOnly": true } } }, "DbLibraryCollaboratorData": { "type": "object", "properties": { "email": { "type": "string", "readOnly": true }, "displayName": { "type": "string", "readOnly": true }, "collaborator": { "type": "string", "readOnly": true }, "role": { "type": "string", "readOnly": true }, "canComment": { "type": "boolean", "readOnly": true }, "canShare": { "type": "boolean", "readOnly": true } } }, "DbLibraryDetail": { "type": "object", "properties": { "_fc": { "type": "boolean" }, "etag": { "type": "string" }, "state": { "type": "string" }, "manifest_format_version": { "type": "string" }, "num_elements": { "type": "integer", "format": "int32" }, "num_archived_elements": { "type": "integer", "format": "int32" }, "types": { "type": "array", "items": { "type": "string" } }, "element_type_counts": { "type": "object", "additionalProperties": { "type": "integer", "format": "int32" } } } }, "DbLibraryElementData": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "storage_used": { "type": "integer", "format": "int64", "description": "Storage used" }, "created_date": { "type": "integer", "format": "int64" }, "modified_date": { "type": "integer", "format": "int64" }, "type": { "type": "string" }, "source": { "type": "string" }, "element_type": { "type": "array", "items": { "type": "string" } }, "thumbnail": { "readOnly": true, "$ref": "#/definitions/DbLibraryElementRenditionData" }, "groups": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryGroup" } }, "representations": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryElementRepresentationData" } }, "details": { "$ref": "#/definitions/DbLibraryElementDetailData" }, "assetSubType": { "type": "string" }, "_fc": { "type": "boolean" }, "sourceRef": { "type": "string" }, "_links": { "$ref": "#/definitions/MelvilleHypermediaLibraryElementLinks" }, "parent_id": { "type": "string" }, "manifest_etag": { "type": "string" } } }, "DbLibraryElementDetailData": { "type": "object", "properties": { "tags": { "type": "array", "items": { "type": "string" } }, "created": { "$ref": "#/definitions/DbLibraryElementDetailsCreatedModifiedData" }, "lastModified": { "$ref": "#/definitions/DbLibraryElementDetailsCreatedModifiedData" }, "description": { "type": "string" } } }, "DbLibraryElementDetailsCreatedModifiedData": { "type": "object", "properties": { "userId": { "type": "string" }, "deviceId": { "type": "string" }, "device": { "type": "string" }, "app": { "type": "string" }, "time": { "type": "integer", "format": "int64" } } }, "DbLibraryElementRenditionData": { "type": "object", "properties": { "type": { "type": "string" }, "rendition": { "type": "object", "properties": {} } } }, "DbLibraryElementRepresentationData": { "type": "object", "properties": { "id": { "type": "string" }, "type": { "type": "string" }, "relationship": { "type": "string" }, "path": { "type": "string" }, "linkurl": { "type": "string" }, "linktype": { "type": "string" }, "is_full_size": { "type": "boolean" }, "is_external_link": { "type": "boolean" }, "width": { "type": "integer", "format": "int64" }, "height": { "type": "integer", "format": "int64" }, "content_length": { "type": "integer", "format": "int64" }, "name": { "type": "string" }, "asset_id": { "type": "string" }, "version": { "type": "string" }, "md5": { "type": "string" }, "_links": { "$ref": "#/definitions/MelvilleHypermediaRepresentationLinks" }, "etag": { "type": "string" }, "storage_href": { "type": "string" }, "representation_order": { "type": "integer", "format": "int32" }, "is_preferred_thumbnail": { "type": "boolean" }, "is_component": { "type": "boolean", "readOnly": true } } }, "DbLibraryGroup": { "type": "object", "required": [ "name", "order" ], "properties": { "id": { "type": "string", "description": "Group id." }, "name": { "type": "string", "description": "Group name." }, "classifier": { "type": "string", "description": "Group namespace. Currently defaults to $default. The default should be used unless there's a specific case to provide a custom classifiers. Non-default classifiers are presently not supported in any applications." }, "order": { "type": "string", "description": "Lexicographical string for setting the group's place in the group list, or for an element's place within a group.The client is responsible for providing and sorting using these strings." }, "created_date": { "type": "integer", "format": "int64", "description": "Group created date" }, "modified_date": { "type": "integer", "format": "int64", "description": "Group modified date" }, "parent_id": { "type": "string", "description": "Defines a relationship between nested groups. If provided, and the specified parent group exists, this group will be the \"child\" of the parent group. If there is no group in the library that matches the supplied parentId the group will still be created or updated with an empty parentId." } } }, "DbLibraryInfo": { "type": "object", "properties": { "id": { "type": "string", "description": "Library Id" }, "toolkit_id": { "type": "string", "description": "Library toolkit id" }, "name": { "type": "string", "description": "Library name" }, "storage_used": { "type": "integer", "format": "int64", "description": "Storage used" }, "document_id": { "type": "string", "description": "Document ID" }, "document_type": { "type": "string", "description": "Document Type" }, "creator": { "type": "string", "description": "Library creator" }, "ownership": { "type": "string", "description": "Library ownership type", "enum": [ "PRIVATE", "INCOMING", "OUTGOING", "DISCOVERY", "PUBLIC" ] }, "created_date": { "type": "integer", "format": "int64", "description": "Library created date" }, "modified_date": { "type": "integer", "format": "int64", "description": "Library modified date" }, "version": { "type": "string", "description": "Library version" }, "region": { "type": "string", "description": "Library region" }, "library_urn": { "type": "string", "description": "Library resource_urn" }, "manifest_urn": { "type": "string", "description": "Library manifest_urn" }, "storage_path": { "type": "string" }, "elements_count": { "type": "integer", "format": "int32" }, "removed_elements_count": { "type": "integer", "format": "int32" }, "bookmark": { "description": "Public or Shared Library Bookmark, not populated via the un-authenticated `/public/libraries` API.", "$ref": "#/definitions/DbLibraryBookmark" }, "rendition_grid": { "description": "Library renditions", "$ref": "#/definitions/DbLibraryRenditionData" }, "collaboration": { "description": "Library collaboration", "$ref": "#/definitions/DbLibraryCollaborationData" }, "asset_acl": { "description": "Asset ACL", "$ref": "#/definitions/EffectiveACL" }, "details": { "description": "Library details", "$ref": "#/definitions/DbLibraryDetail" }, "groups": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryGroup" } }, "_links": { "$ref": "#/definitions/MelvilleHypermediaLibraryLinks" }, "searchable": { "type": "boolean" }, "rawName": { "type": "string" }, "renditionGridMissing": { "type": "boolean" }, "assetSubType": { "type": "string" }, "_fc": { "type": "boolean" }, "is_searchable": { "type": "boolean", "description": "Library is searchable" }, "manifest_etag": { "type": "string" } } }, "DbLibraryInvitationData": { "type": "object", "properties": { "id": { "type": "string", "readOnly": true }, "recipientEmail": { "type": "string", "readOnly": true }, "senderName": { "type": "string", "readOnly": true }, "created": { "type": "string", "readOnly": true }, "role": { "type": "string", "readOnly": true }, "canComment": { "type": "boolean", "readOnly": true }, "canShare": { "type": "boolean", "readOnly": true } } }, "DbLibraryRenditionData": { "type": "object", "properties": { "_fc": { "type": "boolean" }, "main": { "$ref": "#/definitions/DbLibraryElementRenditionData" }, "tiles": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryElementRenditionData" } } } }, "EffectiveACL": { "type": "object", "properties": { "_links": { "type": "object", "additionalProperties": { "type": "array", "items": { "$ref": "#/definitions/Link" } } }, "_fc": { "type": "boolean" } } }, "ElementListPayload": { "type": "object", "required": [ "elements" ], "properties": { "elements": { "type": "array", "description": "Array of elements to be copied to the targeted library", "readOnly": true, "items": { "$ref": "#/definitions/ElementListPayloadElement" } }, "id": { "type": "string", "description": "URN of the source library, not required if copying elements within the same library", "readOnly": true }, "elementIds": { "type": "array", "items": { "type": "string" } } } }, "ElementListPayloadElement": { "type": "object", "required": [ "id" ], "properties": { "id": { "type": "string", "example": "b8038ad3-c41e-4f9e-a7c3-96bb475ff8ef", "description": "Id of element" }, "name": { "type": "string", "example": "new element", "description": "Name of element" }, "description": { "type": "string", "example": "This is my favorite element.", "description": "Description of element. If this is set to an empty string, the current description will be deleted." } } }, "ErrorResponse": { "type": "object", "properties": { "reason": { "type": "string" }, "message": { "type": "string" } }, "xml": { "name": "error" } }, "ExternalDocs": { "type": "object", "properties": { "description": { "type": "string" }, "url": { "type": "string" } } }, "Info": { "type": "object", "properties": { "description": { "type": "string" }, "version": { "type": "string" }, "title": { "type": "string" }, "termsOfService": { "type": "string" }, "contact": { "$ref": "#/definitions/Contact" }, "license": { "$ref": "#/definitions/License" } } }, "JsonNode": { "type": "object", "properties": { "array": { "type": "boolean" }, "null": { "type": "boolean" }, "number": { "type": "boolean" }, "int": { "type": "boolean" }, "nodeType": { "type": "string", "enum": [ "ARRAY", "BINARY", "BOOLEAN", "MISSING", "NULL", "NUMBER", "OBJECT", "POJO", "STRING" ] }, "float": { "type": "boolean" }, "binary": { "type": "boolean" }, "short": { "type": "boolean" }, "valueNode": { "type": "boolean" }, "containerNode": { "type": "boolean" }, "missingNode": { "type": "boolean" }, "object": { "type": "boolean" }, "pojo": { "type": "boolean" }, "integralNumber": { "type": "boolean" }, "floatingPointNumber": { "type": "boolean" }, "long": { "type": "boolean" }, "double": { "type": "boolean" }, "bigDecimal": { "type": "boolean" }, "bigInteger": { "type": "boolean" }, "textual": { "type": "boolean" }, "boolean": { "type": "boolean" } } }, "LibrariesInfo": { "type": "object", "properties": { "total_count": { "type": "integer", "format": "int32", "description": "Total results for query" }, "libraries": { "type": "array", "description": "Libraries list", "items": { "$ref": "#/definitions/DbLibraryInfo" } }, "_page": { "description": "List Page", "$ref": "#/definitions/PageSpec" }, "_links": { "description": "List Links", "$ref": "#/definitions/MelvilleHypermediaListLinks" } } }, "LibraryElementsInfo": { "type": "object", "properties": { "total_count": { "type": "integer", "format": "int32", "description": "Total results for query" }, "elements": { "type": "array", "description": "Elements list", "items": { "$ref": "#/definitions/DbLibraryElementData" } }, "_page": { "description": "List Page", "$ref": "#/definitions/PageSpec" }, "_links": { "description": "List Links", "$ref": "#/definitions/LinksSpec" } } }, "License": { "type": "object", "properties": { "name": { "type": "string" }, "url": { "type": "string" } } }, "Link": { "type": "object", "properties": { "href": { "type": "string" }, "templated": { "type": "boolean" }, "name": { "type": "string" }, "type": { "type": "string" }, "deprecation": { "type": "string" }, "mode": { "type": "string" }, "additionalFields": { "type": "object", "additionalProperties": { "type": "object", "properties": {} } } } }, "LinksSpec": { "type": "object", "properties": { "next": { "description": "Next Link", "$ref": "#/definitions/JsonNode" }, "page": { "description": "Page Link", "$ref": "#/definitions/JsonNode" } } }, "MelvilleHypermediaLibraryElementLinks": { "type": "object", "properties": { "http://ns.adobe.com/melville/rel/primary": { "description": "Primary Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/path": { "description": "Path Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/id": { "description": "ID Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/policy": { "description": "Policy Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/check": { "description": "Check Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/effective": { "description": "Effective Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/describedBy": { "description": "Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/metadata/application": { "description": "Application Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/metadata/repository": { "description": "Repository Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/rendition": { "description": "Rendition Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/version-history": { "description": "Version History Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/manifest": { "description": "Manifest Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/component": { "description": "Component Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/elements": { "description": "Elements Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/element": { "description": "Element Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/groups": { "description": "Groups Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/representations": { "description": "Representations Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/raw": { "description": "Raw Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "page": { "description": "Page Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "next": { "description": "Next Link", "$ref": "#/definitions/MelvilleHypermediaLink" } } }, "MelvilleHypermediaLibraryLinks": { "type": "object", "properties": { "http://ns.adobe.com/melville/rel/primary": { "description": "Primary Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/path": { "description": "Path Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/id": { "description": "ID Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/policy": { "description": "Policy Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/check": { "description": "Check Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/effective": { "description": "Effective Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/describedBy": { "description": "Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/metadata/application": { "description": "Application Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/metadata/repository": { "description": "Repository Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/rendition": { "description": "Rendition Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/version-history": { "description": "Version History Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/manifest": { "description": "Manifest Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/component": { "description": "Component Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/elements": { "description": "Elements Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/element": { "description": "Element Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/groups": { "description": "Groups Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/representations": { "description": "Representations Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/raw": { "description": "Raw Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "page": { "description": "Page Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "next": { "description": "Next Link", "$ref": "#/definitions/MelvilleHypermediaLink" } } }, "MelvilleHypermediaLink": { "type": "object", "properties": { "href": { "type": "string" }, "rel": { "type": "string" }, "type": { "type": "string" }, "templated": { "type": "boolean" } } }, "MelvilleHypermediaListLinks": { "type": "object", "properties": { "page": { "description": "Page Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "next": { "description": "Next Link", "$ref": "#/definitions/MelvilleHypermediaLink" } } }, "MelvilleHypermediaRepresentationLinks": { "type": "object", "properties": { "http://ns.adobe.com/melville/rel/primary": { "description": "Primary Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/path": { "description": "Path Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/id": { "description": "ID Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/policy": { "description": "Policy Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/check": { "description": "Check Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/ac/effective": { "description": "Effective Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/describedBy": { "description": "Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/metadata/application": { "description": "Application Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/metadata/repository": { "description": "Repository Metadata Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/rendition": { "description": "Rendition Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/version-history": { "description": "Version History Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/manifest": { "description": "Manifest Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/component": { "description": "Component Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/elements": { "description": "Elements Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/element": { "description": "Element Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/groups": { "description": "Groups Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/representations": { "description": "Representations Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "http://ns.adobe.com/melville/rel/raw": { "description": "Raw Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "page": { "description": "Page Link", "$ref": "#/definitions/MelvilleHypermediaLink" }, "next": { "description": "Next Link", "$ref": "#/definitions/MelvilleHypermediaLink" } } }, "Model": { "type": "object", "properties": { "title": { "type": "string" }, "description": { "type": "string" }, "reference": { "type": "string" }, "properties": { "type": "object", "additionalProperties": { "$ref": "#/definitions/Property" } }, "vendorExtensions": { "type": "object", "additionalProperties": { "type": "object", "properties": {} } }, "externalDocs": { "$ref": "#/definitions/ExternalDocs" }, "example": { "type": "object", "properties": {} } } }, "Operation": { "type": "object", "properties": { "tags": { "type": "array", "items": { "type": "string" } }, "summary": { "type": "string" }, "description": { "type": "string" }, "operationId": { "type": "string" }, "schemes": { "type": "array", "items": { "type": "string", "enum": [ "HTTP", "HTTPS", "WS", "WSS" ] } }, "consumes": { "type": "array", "items": { "type": "string" } }, "produces": { "type": "array", "items": { "type": "string" } }, "parameters": { "type": "array", "items": { "$ref": "#/definitions/Parameter" } }, "responses": { "type": "object", "additionalProperties": { "$ref": "#/definitions/Response" } }, "security": { "type": "array", "items": { "type": "object", "additionalProperties": { "type": "array", "items": { "type": "string" } } } }, "externalDocs": { "$ref": "#/definitions/ExternalDocs" }, "deprecated": { "type": "boolean" } } }, "PageSpec": { "type": "object", "properties": { "orderBy": { "type": "string", "description": "List orderby" }, "start": { "type": "string", "description": "List start position" }, "next": { "type": "string", "description": "List next position" }, "count": { "type": "integer", "format": "int32", "description": "List page size" }, "type": { "type": "string", "description": "List page type" }, "property": { "type": "string", "description": "List page property" } } }, "Parameter": { "type": "object", "properties": { "description": { "type": "string" }, "required": { "type": "boolean" }, "name": { "type": "string" }, "in": { "type": "string" }, "readOnly": { "type": "boolean" }, "pattern": { "type": "string" }, "vendorExtensions": { "type": "object", "additionalProperties": { "type": "object", "properties": {} } }, "allowEmptyValue": { "type": "boolean" } } }, "Path": { "type": "object", "properties": { "get": { "$ref": "#/definitions/Operation" }, "head": { "$ref": "#/definitions/Operation" }, "post": { "$ref": "#/definitions/Operation" }, "put": { "$ref": "#/definitions/Operation" }, "delete": { "$ref": "#/definitions/Operation" }, "options": { "$ref": "#/definitions/Operation" }, "patch": { "$ref": "#/definitions/Operation" }, "parameters": { "type": "array", "items": { "$ref": "#/definitions/Parameter" } } } }, "PostLibraryElementsPayload": { "type": "object", "required": [ "client", "name", "type" ], "properties": { "id": { "type": "string", "description": "Ignored if submitted. The result will have a different ID." }, "description": { "type": "string", "description": "Description of new element" }, "name": { "type": "string", "description": "Display name for new element" }, "type": { "type": "string", "description": "Element type" }, "client": { "description": "Client identification information", "$ref": "#/definitions/ClientDeviceInfoPayload" }, "representations": { "type": "array", "description": "Add or associate existing content to the new element", "items": { "$ref": "#/definitions/DbLibraryElementRepresentationData" } }, "sourceRef": { "type": "string", "description": "Reference other content as inspiration for this element" }, "source": { "description": "Required if copying an element to this library.", "$ref": "#/definitions/ElementListPayload" }, "self": { "description": "Required if moving an element to this library.", "$ref": "#/definitions/ElementListPayload" } } }, "Property": { "type": "object", "properties": { "title": { "type": "string" }, "description": { "type": "string" }, "readOnly": { "type": "boolean" }, "type": { "type": "string" }, "format": { "type": "string" }, "position": { "type": "integer", "format": "int32" }, "vendorExtensions": { "type": "object", "additionalProperties": { "type": "object", "properties": {} } }, "xml": { "$ref": "#/definitions/Xml" }, "example": { "type": "object", "properties": {} }, "allowEmptyValue": { "type": "boolean" } } }, "Response": { "type": "object", "properties": { "description": { "type": "string" }, "schema": { "$ref": "#/definitions/Property" }, "examples": { "type": "object", "additionalProperties": { "type": "object", "properties": {} } }, "headers": { "type": "object", "additionalProperties": { "$ref": "#/definitions/Property" } } } }, "SecurityRequirement": { "type": "object", "properties": { "scopes": { "type": "array", "items": { "type": "string" } } } }, "SecuritySchemeDefinition": { "type": "object", "properties": { "description": { "type": "string" }, "type": { "type": "string" } } }, "Swagger": { "type": "object", "properties": { "swagger": { "type": "string" }, "info": { "$ref": "#/definitions/Info" }, "host": { "type": "string" }, "basePath": { "type": "string" }, "tags": { "type": "array", "items": { "$ref": "#/definitions/Tag" } }, "schemes": { "type": "array", "items": { "type": "string", "enum": [ "HTTP", "HTTPS", "WS", "WSS" ] } }, "consumes": { "type": "array", "items": { "type": "string" } }, "produces": { "type": "array", "items": { "type": "string" } }, "security": { "type": "array", "items": { "$ref": "#/definitions/SecurityRequirement" } }, "paths": { "type": "object", "additionalProperties": { "$ref": "#/definitions/Path" } }, "securityDefinitions": { "type": "object", "additionalProperties": { "$ref": "#/definitions/SecuritySchemeDefinition" } }, "definitions": { "type": "object", "additionalProperties": { "$ref": "#/definitions/Model" } }, "parameters": { "type": "object", "additionalProperties": { "$ref": "#/definitions/Parameter" } }, "responses": { "type": "object", "additionalProperties": { "$ref": "#/definitions/Response" } }, "externalDocs": { "$ref": "#/definitions/ExternalDocs" } } }, "Tag": { "type": "object", "properties": { "name": { "type": "string" }, "description": { "type": "string" }, "externalDocs": { "$ref": "#/definitions/ExternalDocs" } } }, "USSSearchPayload": { "type": "object", "properties": { "asset_type": { "type": "array", "description": "`library` and/or `element`. Leaving this out of the request will get both by default, though element-only parameters like `library_id` or `archived` will isolate the result to elements.", "uniqueItems": true, "items": { "type": "string" } }, "library_id": { "type": "string", "description": "Library ID (URN) to constrain an elements search to a single library (like \"urn:aaid:sc:us:2f3268e9-039d-460f-8b07-8854f7677645\"). Invalid if submitted with `\"asset_type\": [\"library\"]`." }, "group": { "type": "string", "description": "Isolate element results to a single group. Invalid if submitted with `\"asset_type\": [\"library\"]`." }, "name": { "type": "string", "description": "A name string to identify by library/asset name. Requires an exact match." }, "query_string": { "type": "string", "description": "A general query string to search for libraries/assets. Includes partial matches." }, "created_date": { "type": "array", "description": "Start & end dates in epoch time (ms since epoch).", "items": { "type": "string", "format": "date-time" } }, "modified_date": { "type": "array", "description": "Start & end dates in epoch time (ms since epoch).", "items": { "type": "string", "format": "date-time" } }, "type": { "type": "array", "description": "One or more types for elements, invalid if submitted with `\"asset_type\": [\"library\"]`.", "items": { "type": "string" } }, "archived": { "type": "boolean", "description": "Search specifically for archived elements (boolean `true`/`false` to isolate results to archived or non-archived). Invalid if submitted with `\"asset_type\": [\"library\"]`." }, "orderBy": { "type": "string", "description": "defaults to `-modified_date`, also accepts `name`. Use a minus sign prefix to note descending." }, "start": { "type": "string", "description": "String value. For libraries lists, the requirement to integrate bookmarked responses requires us to use the field in a clever fashion beyond a simple positive integer." }, "limit": { "type": "integer", "format": "int32", "description": "Positive integer, defines the number of results to return for a paged response. Defaults to `10`. Max limit for library searches is `10`, max limit for element searches is `100`." }, "owner": { "type": "string", "description": "`private` (default), `incoming`, `outgoing`, `public`, or `all`. `all` does not include `public` until bookmarks are integrated into the USS search results." }, "selector": { "type": "string", "description": "Customize response for larger/smaller data sets. (`default` [base response], `rendition_grid`, `collaboration`, `details`, `full`)." }, "has_stock_content": { "type": "boolean", "description": "Search for libraries that have stock content, or elements within a library that have stock content (boolean `true`/`false` to isolate results to stock content or all content)." }, "stock_content_id": { "type": "string", "description": "Search for elements with a specific Stock Content ID. Invalid if submitted with `\"asset_type\": [\"library\"]` or `\"has_stock_content\": false`." }, "spark_brand_urn": { "type": "string", "description": "Search for elements with a specific Spark tracking data brand_urn." }, "spark_creator_id": { "type": "string", "description": "Search for elements with a specific Spark tracking data creator_id." }, "spark_content_summary": { "type": "string", "description": "Search for elements with a partial match within the Spark tracking data content_summary." }, "source_ref": { "type": "string", "description": "Search for elements with a specific sourceRef." } } }, "USSSearchResponse": { "type": "object", "properties": { "total_items": { "type": "integer", "format": "int32", "readOnly": true }, "libraries": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryInfo" } }, "elements": { "type": "array", "items": { "$ref": "#/definitions/DbLibraryElementData" } } } }, "UpdateLibraryPayload": { "type": "object", "properties": { "name": { "type": "string" } } }, "Xml": { "type": "object", "properties": { "name": { "type": "string" }, "namespace": { "type": "string" }, "prefix": { "type": "string" }, "attribute": { "type": "boolean" }, "wrapped": { "type": "boolean" } } } } }