@agravity/private 10.3.1 → 10.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # @agravity/private@10.3.1
1
+ # @agravity/private@10.3.2
2
2
 
3
3
  <p>Agravity is a powerful, enterprise-grade Headless Digital Asset Management (DAM) system designed for organizations that need complete control over how they manage, organize, and distribute their digital assets.</p> <h2>Key Features</h2> <ul> <li>Asset Management - Upload, organize, and manage all types of digital assets (images, videos, documents, etc.)</li> <li>Collections &amp; Hierarchies - Create flexible folder structures and collection types with customizable metadata</li> <li>Advanced Search - Powered by Azure Cognitive Search with AI-enhanced capabilities for intelligent discovery</li> <li>AI Integration - Leverage AI to automatically generate metadata, tags, and descriptions for your assets</li> <li>Versioning - Track and restore previous versions of your assets with complete version history</li> <li>Publishing &amp; Distribution - Publish assets to various channels including Vimeo, CDN, and custom portals</li> <li>Portal System - Create public-facing portals with granular permission controls and custom branding</li> <li>Download Formats - Define custom download formats with image transformations and optimizations</li> <li>Collaboration Features - Share collections, create quick shares, and manage team access with role-based permissions</li> <li>Multi-Language Support - Full translation capabilities for all metadata and UI elements</li> <li>API-First Architecture - Complete REST API for seamless integration with your applications</li> </ul> <h2>Headless DAM Benefits</h2> <p>As a headless DAM solution, Agravity separates content management from presentation. This means:</p> <ul> <li>Flexibility - Use the same assets across multiple channels and applications without duplication</li> <li>API-Driven - Access all functionality through powerful REST APIs for custom integrations</li> <li>Framework Agnostic - Integrate with any frontend framework or technology stack</li> <li>Scalability - Built on cloud-native architecture with Azure infrastructure for unlimited growth</li> <li>Multi-Channel Distribution - Publish to web, mobile, social media, and custom portals from a single source</li> </ul> <h2>Core Entities</h2> <p><strong>Assets</strong> - Your digital content (images, videos, documents). Each asset can have multiple versions, metadata, and be published to various targets.</p> <p><strong>Collections</strong> - Logical groupings of assets organized hierarchically. Support custom metadata through collection types.</p> <p><strong>Collection Types</strong> - Define the structure and metadata fields for collections, similar to database schemas.</p> <p><strong>Workspaces</strong> - Organize collection types into workspaces for multi-project management.</p> <p><strong>Download Formats</strong> - Define transformations and optimizations for assets when downloaded.</p> <p><strong>Portals</strong> - Public-facing interfaces for sharing collections with external stakeholders.</p> <h2>API Endpoints Overview</h2> <p><strong>Asset Management</strong> - Create, read, update, delete, and search assets with full metadata support</p> <p><strong>Collection Management</strong> - Organize assets into collections with hierarchical structures</p> <p><strong>AI Operations</strong> - Automatically generate asset metadata using AI-powered field generation</p> <p><strong>Publishing</strong> - Publish assets to Vimeo, CDN, or custom publishing targets</p> <p><strong>Search &amp; Discovery</strong> - Full-text search with advanced filtering and AI-enhanced similarity search</p> <p><strong>User &amp; Portal Management</strong> - Control access through roles, profiles, and custom portals</p> <p><strong>Content Distribution</strong> - Share collections, create download packages, and generate secure links</p> <h2>Security &amp; Permissions</h2> <ul> <li>OAuth 2.0 authentication with Azure AD integration</li> <li>Role-based access control (RBAC) with custom profiles</li> <li>Entity-level permissions for granular control</li> <li>API key authentication for service-to-service communication</li> <li>Secure sharing with password-protected links and expiration dates</li> </ul> <h2>Use Cases</h2> <ul> <li>E-commerce product image management and distribution</li> <li>Marketing asset management across multiple channels</li> <li>Brand asset library and governance</li> <li>Video content management and publishing</li> <li>Enterprise document management with searchability</li> <li>Multi-tenant content management for agencies</li> <li>AI-powered metadata generation at scale</li> </ul> <h2>Support</h2> <p>For questions or support, contact <a href=\"mailto:support@agravity.io\">support@agravity.io</a> or visit <a href=\"https://agravity.io\">https://agravity.io</a>.</p> < p>Agravity © 2026 - Enterprise Headless Digital Asset Management</p>
4
4
 
5
- The version of the OpenAPI document: 10.3.1
5
+ The version of the OpenAPI document: 10.3.2
6
6
 
7
7
  ## Building
8
8
 
@@ -24,7 +24,7 @@ Navigate to the folder of your consuming project and run one of next commands.
24
24
  _published:_
25
25
 
26
26
  ```console
27
- npm install @agravity/private@10.3.1 --save
27
+ npm install @agravity/private@10.3.2 --save
28
28
  ```
29
29
 
30
30
  _without publishing (not recommended):_
@@ -190,6 +190,19 @@ export interface HttpGetAssetTextContentByIdRequestParams {
190
190
  id: string;
191
191
  }
192
192
 
193
+ export interface HttpGetAssetViewRequestParams {
194
+ /** The ID of the asset. */
195
+ id: string;
196
+ /** (optional) provide the id of any valid download format. Otherwise the original is returned. */
197
+ format?: string;
198
+ /** If the request comes from portal this is the indicator. It will be checked if the requested blob is valid for the portal. */
199
+ portalId?: string;
200
+ /** Returns assets on permissions which are locked and accessable (User needs editor permissions). Default: true */
201
+ locked?: boolean;
202
+ /** Returns assets which are not in state ACTIVE (User needs editor permissions). Default: true */
203
+ uncompleted?: boolean;
204
+ }
205
+
193
206
  export interface HttpImageDynamicEditRequestParams {
194
207
  /** The ID of the asset. */
195
208
  id: string;
@@ -1532,6 +1545,90 @@ export class AssetOperationsService extends BaseService {
1532
1545
  });
1533
1546
  }
1534
1547
 
1548
+ /**
1549
+ * This endpoint returns the binary directly to the endpoint
1550
+ * @param requestParameters
1551
+ * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
1552
+ * @param reportProgress flag to report request and response progress.
1553
+ */
1554
+ public httpGetAssetView(
1555
+ requestParameters: HttpGetAssetViewRequestParams,
1556
+ observe?: 'body',
1557
+ reportProgress?: boolean,
1558
+ options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean }
1559
+ ): Observable<AssetBlob>;
1560
+ public httpGetAssetView(
1561
+ requestParameters: HttpGetAssetViewRequestParams,
1562
+ observe?: 'response',
1563
+ reportProgress?: boolean,
1564
+ options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean }
1565
+ ): Observable<HttpResponse<AssetBlob>>;
1566
+ public httpGetAssetView(
1567
+ requestParameters: HttpGetAssetViewRequestParams,
1568
+ observe?: 'events',
1569
+ reportProgress?: boolean,
1570
+ options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean }
1571
+ ): Observable<HttpEvent<AssetBlob>>;
1572
+ public httpGetAssetView(
1573
+ requestParameters: HttpGetAssetViewRequestParams,
1574
+ observe: any = 'body',
1575
+ reportProgress: boolean = false,
1576
+ options?: { httpHeaderAccept?: 'application/json'; context?: HttpContext; transferCache?: boolean }
1577
+ ): Observable<any> {
1578
+ const id = requestParameters?.id;
1579
+ if (id === null || id === undefined) {
1580
+ throw new Error('Required parameter id was null or undefined when calling httpGetAssetView.');
1581
+ }
1582
+ const format = requestParameters?.format;
1583
+ const portalId = requestParameters?.portalId;
1584
+ const locked = requestParameters?.locked;
1585
+ const uncompleted = requestParameters?.uncompleted;
1586
+
1587
+ let localVarQueryParameters = new HttpParams({ encoder: this.encoder });
1588
+ localVarQueryParameters = this.addToHttpParams(localVarQueryParameters, <any>format, 'format');
1589
+ localVarQueryParameters = this.addToHttpParams(localVarQueryParameters, <any>portalId, 'portal_id');
1590
+ localVarQueryParameters = this.addToHttpParams(localVarQueryParameters, <any>locked, 'locked');
1591
+ localVarQueryParameters = this.addToHttpParams(localVarQueryParameters, <any>uncompleted, 'uncompleted');
1592
+
1593
+ let localVarHeaders = this.defaultHeaders;
1594
+
1595
+ // authentication (msal_auth) required
1596
+ localVarHeaders = this.configuration.addCredentialToHeaders('msal_auth', 'Authorization', localVarHeaders, 'Bearer ');
1597
+
1598
+ const localVarHttpHeaderAcceptSelected: string | undefined = options?.httpHeaderAccept ?? this.configuration.selectHeaderAccept(['application/json']);
1599
+ if (localVarHttpHeaderAcceptSelected !== undefined) {
1600
+ localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);
1601
+ }
1602
+
1603
+ const localVarHttpContext: HttpContext = options?.context ?? new HttpContext();
1604
+
1605
+ const localVarTransferCache: boolean = options?.transferCache ?? true;
1606
+
1607
+ let responseType_: 'text' | 'json' | 'blob' = 'json';
1608
+ if (localVarHttpHeaderAcceptSelected) {
1609
+ if (localVarHttpHeaderAcceptSelected.startsWith('text')) {
1610
+ responseType_ = 'text';
1611
+ } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {
1612
+ responseType_ = 'json';
1613
+ } else {
1614
+ responseType_ = 'blob';
1615
+ }
1616
+ }
1617
+
1618
+ let localVarPath = `/assets/${this.configuration.encodeParam({ name: 'id', value: id, in: 'path', style: 'simple', explode: false, dataType: 'string', dataFormat: undefined })}/view`;
1619
+ const { basePath, withCredentials } = this.configuration;
1620
+ return this.httpClient.request<AssetBlob>('get', `${basePath}${localVarPath}`, {
1621
+ context: localVarHttpContext,
1622
+ params: localVarQueryParameters,
1623
+ responseType: <any>responseType_,
1624
+ ...(withCredentials ? { withCredentials } : {}),
1625
+ headers: localVarHeaders,
1626
+ observe: observe,
1627
+ transferCache: localVarTransferCache,
1628
+ reportProgress: reportProgress
1629
+ });
1630
+ }
1631
+
1535
1632
  /**
1536
1633
  * This endpoint lets you use the entire api of Imagemagick to edit the image.
1537
1634
  * @param requestParameters
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agravity/private",
3
- "version": "10.3.1",
3
+ "version": "10.3.2",
4
4
  "description": "The Agravity GlobalDAM API which allowes authenticated user to access the Agravity GlobalDAM Backend",
5
5
  "author": "Philipp Losbichler",
6
6
  "repository": {