@simpleapps-com/augur-api 0.2.3 → 0.2.5
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 +100 -0
- package/dist/cjs/client.d.ts +181 -0
- package/dist/cjs/client.d.ts.map +1 -1
- package/dist/cjs/client.js +449 -0
- package/dist/cjs/client.js.map +1 -1
- package/dist/cjs/core/base-client.d.ts +104 -0
- package/dist/cjs/core/base-client.d.ts.map +1 -1
- package/dist/cjs/core/base-client.js +201 -0
- package/dist/cjs/core/base-client.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/services/agr-site/client.d.ts +522 -2
- package/dist/cjs/services/agr-site/client.d.ts.map +1 -1
- package/dist/cjs/services/agr-site/client.js +565 -12
- package/dist/cjs/services/agr-site/client.js.map +1 -1
- package/dist/cjs/services/items/client.d.ts +2 -2
- package/dist/cjs/services/items/schemas/categories.d.ts +20 -20
- package/dist/cjs/services/joomla/client.d.ts +644 -99
- package/dist/cjs/services/joomla/client.d.ts.map +1 -1
- package/dist/cjs/services/joomla/client.js +467 -98
- package/dist/cjs/services/joomla/client.js.map +1 -1
- package/dist/cjs/services/nexus/client.d.ts +1096 -22
- package/dist/cjs/services/nexus/client.d.ts.map +1 -1
- package/dist/cjs/services/nexus/client.js +754 -22
- package/dist/cjs/services/nexus/client.js.map +1 -1
- package/dist/cjs/services/orders/client.d.ts +3 -3
- package/dist/cjs/services/orders/schemas/orders.d.ts +12 -12
- package/dist/cjs/services/orders/schemas/purchase-orders.d.ts +22 -22
- package/dist/cjs/services/p21-core/client.d.ts +627 -0
- package/dist/cjs/services/p21-core/client.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/client.js +704 -0
- package/dist/cjs/services/p21-core/client.js.map +1 -0
- package/dist/cjs/services/p21-core/index.d.ts +3 -0
- package/dist/cjs/services/p21-core/index.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/index.js +21 -0
- package/dist/cjs/services/p21-core/index.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/address.d.ts +88 -0
- package/dist/cjs/services/p21-core/schemas/address.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/address.js +45 -0
- package/dist/cjs/services/p21-core/schemas/address.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.d.ts +96 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.js +39 -0
- package/dist/cjs/services/p21-core/schemas/cash-drawer.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/codes.d.ts +54 -0
- package/dist/cjs/services/p21-core/schemas/codes.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/codes.js +25 -0
- package/dist/cjs/services/p21-core/schemas/codes.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/company.d.ts +80 -0
- package/dist/cjs/services/p21-core/schemas/company.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/company.js +35 -0
- package/dist/cjs/services/p21-core/schemas/company.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/health.d.ts +46 -0
- package/dist/cjs/services/p21-core/schemas/health.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/health.js +7 -0
- package/dist/cjs/services/p21-core/schemas/health.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/index.d.ts +8 -0
- package/dist/cjs/services/p21-core/schemas/index.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/index.js +25 -0
- package/dist/cjs/services/p21-core/schemas/index.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/location.d.ts +84 -0
- package/dist/cjs/services/p21-core/schemas/location.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/location.js +35 -0
- package/dist/cjs/services/p21-core/schemas/location.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.d.ts +39 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.js +26 -0
- package/dist/cjs/services/p21-core/schemas/payment-types.js.map +1 -0
- package/dist/cjs/services/p21-core/schemas.d.ts +2 -0
- package/dist/cjs/services/p21-core/schemas.d.ts.map +1 -0
- package/dist/cjs/services/p21-core/schemas.js +19 -0
- package/dist/cjs/services/p21-core/schemas.js.map +1 -0
- package/dist/cjs/services/vmi/schemas/inventory.d.ts +6 -6
- package/dist/cjs/services/vmi/schemas/products.d.ts +6 -6
- package/dist/cjs/services/vmi/schemas/restock.d.ts +12 -12
- package/dist/esm/client.d.ts +181 -0
- package/dist/esm/client.d.ts.map +1 -1
- package/dist/esm/client.js +449 -0
- package/dist/esm/client.js.map +1 -1
- package/dist/esm/core/base-client.d.ts +104 -0
- package/dist/esm/core/base-client.d.ts.map +1 -1
- package/dist/esm/core/base-client.js +201 -0
- package/dist/esm/core/base-client.js.map +1 -1
- package/dist/esm/index.d.ts +2 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/services/agr-site/client.d.ts +522 -2
- package/dist/esm/services/agr-site/client.d.ts.map +1 -1
- package/dist/esm/services/agr-site/client.js +565 -12
- package/dist/esm/services/agr-site/client.js.map +1 -1
- package/dist/esm/services/items/client.d.ts +2 -2
- package/dist/esm/services/items/schemas/categories.d.ts +20 -20
- package/dist/esm/services/joomla/client.d.ts +644 -99
- package/dist/esm/services/joomla/client.d.ts.map +1 -1
- package/dist/esm/services/joomla/client.js +467 -98
- package/dist/esm/services/joomla/client.js.map +1 -1
- package/dist/esm/services/nexus/client.d.ts +1096 -22
- package/dist/esm/services/nexus/client.d.ts.map +1 -1
- package/dist/esm/services/nexus/client.js +754 -22
- package/dist/esm/services/nexus/client.js.map +1 -1
- package/dist/esm/services/orders/client.d.ts +3 -3
- package/dist/esm/services/orders/schemas/orders.d.ts +12 -12
- package/dist/esm/services/orders/schemas/purchase-orders.d.ts +22 -22
- package/dist/esm/services/p21-core/client.d.ts +627 -0
- package/dist/esm/services/p21-core/client.d.ts.map +1 -0
- package/dist/esm/services/p21-core/client.js +700 -0
- package/dist/esm/services/p21-core/client.js.map +1 -0
- package/dist/esm/services/p21-core/index.d.ts +3 -0
- package/dist/esm/services/p21-core/index.d.ts.map +1 -0
- package/dist/esm/services/p21-core/index.js +3 -0
- package/dist/esm/services/p21-core/index.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/address.d.ts +88 -0
- package/dist/esm/services/p21-core/schemas/address.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/address.js +42 -0
- package/dist/esm/services/p21-core/schemas/address.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.d.ts +96 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.js +36 -0
- package/dist/esm/services/p21-core/schemas/cash-drawer.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/codes.d.ts +54 -0
- package/dist/esm/services/p21-core/schemas/codes.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/codes.js +22 -0
- package/dist/esm/services/p21-core/schemas/codes.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/company.d.ts +80 -0
- package/dist/esm/services/p21-core/schemas/company.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/company.js +32 -0
- package/dist/esm/services/p21-core/schemas/company.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/health.d.ts +46 -0
- package/dist/esm/services/p21-core/schemas/health.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/health.js +4 -0
- package/dist/esm/services/p21-core/schemas/health.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/index.d.ts +8 -0
- package/dist/esm/services/p21-core/schemas/index.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/index.js +9 -0
- package/dist/esm/services/p21-core/schemas/index.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/location.d.ts +84 -0
- package/dist/esm/services/p21-core/schemas/location.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/location.js +32 -0
- package/dist/esm/services/p21-core/schemas/location.js.map +1 -0
- package/dist/esm/services/p21-core/schemas/payment-types.d.ts +39 -0
- package/dist/esm/services/p21-core/schemas/payment-types.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas/payment-types.js +23 -0
- package/dist/esm/services/p21-core/schemas/payment-types.js.map +1 -0
- package/dist/esm/services/p21-core/schemas.d.ts +2 -0
- package/dist/esm/services/p21-core/schemas.d.ts.map +1 -0
- package/dist/esm/services/p21-core/schemas.js +3 -0
- package/dist/esm/services/p21-core/schemas.js.map +1 -0
- package/dist/esm/services/vmi/schemas/inventory.d.ts +6 -6
- package/dist/esm/services/vmi/schemas/products.d.ts +6 -6
- package/dist/esm/services/vmi/schemas/restock.d.ts +12 -12
- package/dist/types/client.d.ts +181 -0
- package/dist/types/client.d.ts.map +1 -1
- package/dist/types/core/base-client.d.ts +104 -0
- package/dist/types/core/base-client.d.ts.map +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/services/agr-site/client.d.ts +522 -2
- package/dist/types/services/agr-site/client.d.ts.map +1 -1
- package/dist/types/services/items/client.d.ts +2 -2
- package/dist/types/services/items/schemas/categories.d.ts +20 -20
- package/dist/types/services/joomla/client.d.ts +644 -99
- package/dist/types/services/joomla/client.d.ts.map +1 -1
- package/dist/types/services/nexus/client.d.ts +1096 -22
- package/dist/types/services/nexus/client.d.ts.map +1 -1
- package/dist/types/services/orders/client.d.ts +3 -3
- package/dist/types/services/orders/schemas/orders.d.ts +12 -12
- package/dist/types/services/orders/schemas/purchase-orders.d.ts +22 -22
- package/dist/types/services/p21-core/client.d.ts +627 -0
- package/dist/types/services/p21-core/client.d.ts.map +1 -0
- package/dist/types/services/p21-core/index.d.ts +3 -0
- package/dist/types/services/p21-core/index.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/address.d.ts +88 -0
- package/dist/types/services/p21-core/schemas/address.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/cash-drawer.d.ts +96 -0
- package/dist/types/services/p21-core/schemas/cash-drawer.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/codes.d.ts +54 -0
- package/dist/types/services/p21-core/schemas/codes.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/company.d.ts +80 -0
- package/dist/types/services/p21-core/schemas/company.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/health.d.ts +46 -0
- package/dist/types/services/p21-core/schemas/health.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/index.d.ts +8 -0
- package/dist/types/services/p21-core/schemas/index.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/location.d.ts +84 -0
- package/dist/types/services/p21-core/schemas/location.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas/payment-types.d.ts +39 -0
- package/dist/types/services/p21-core/schemas/payment-types.d.ts.map +1 -0
- package/dist/types/services/p21-core/schemas.d.ts +2 -0
- package/dist/types/services/p21-core/schemas.d.ts.map +1 -0
- package/dist/types/services/vmi/schemas/inventory.d.ts +6 -6
- package/dist/types/services/vmi/schemas/products.d.ts +6 -6
- package/dist/types/services/vmi/schemas/restock.d.ts +12 -12
- package/package.json +1 -1
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import { BaseServiceClient } from '../../core/base-client';
|
|
2
2
|
import type { HTTPClient } from '../../core/client';
|
|
3
|
-
import { ContentGetParams, ContentResponse, ContentDocumentResponse, UserGroupListParams, UserGroupListResponse, UserGroupMembershipParams, UserGroupMembershipResponse, UserGroupDetailResponse, VerifyPasswordRequest, VerifyPasswordResponse, TrinityDocParams, TrinityDocResponse, UserGroupMappingRequest, UserGroupMappingResponse, UserDocumentResponse } from './schemas';
|
|
3
|
+
import { ContentListParamsSchema, ContentGetParams, ContentResponse, ContentDocumentResponse, UserListParamsSchema, UserGroupListParams, UserGroupListResponse, UserGroupMembershipParams, UserGroupMembershipResponse, UserGroupDetailResponse, TagListParamsSchema, VerifyPasswordRequest, VerifyPasswordResponse, TrinityDocParams, TrinityDocResponse, CreateUserRequestSchema, UpdateUserRequestSchema, UserGroupMappingRequest, UserGroupMappingResponse, UserDocumentResponse } from './schemas';
|
|
4
|
+
import type { z } from 'zod';
|
|
5
|
+
import { BaseGetParamsSchema } from '../../core/schemas';
|
|
6
|
+
type ContentListParams = z.infer<typeof ContentListParamsSchema>;
|
|
7
|
+
type UserListParams = z.infer<typeof UserListParamsSchema>;
|
|
8
|
+
type TagListParams = z.infer<typeof TagListParamsSchema>;
|
|
9
|
+
type CreateUserRequest = z.infer<typeof CreateUserRequestSchema>;
|
|
10
|
+
type UpdateUserRequest = z.infer<typeof UpdateUserRequestSchema>;
|
|
11
|
+
type BaseGetParams = z.infer<typeof BaseGetParamsSchema>;
|
|
4
12
|
/**
|
|
5
13
|
* Joomla API Client
|
|
6
14
|
* @description Client for interacting with Joomla microservice API endpoints
|
|
@@ -33,29 +41,50 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
33
41
|
content: {
|
|
34
42
|
/**
|
|
35
43
|
* Retrieve a paginated list of content items
|
|
36
|
-
* @description Returns
|
|
44
|
+
* @description Returns articles, documents, and content with filtering, pagination, and edge caching capabilities
|
|
45
|
+
* @fullPath api.joomla.content.list
|
|
46
|
+
* @service joomla
|
|
47
|
+
* @domain content-management
|
|
48
|
+
* @dataMethod listData() - returns only the content array without metadata
|
|
49
|
+
* @pagination Uses count, total, totalResults for pagination metadata. Supports limit/offset parameters.
|
|
50
|
+
* @caching Supports edgeCache parameter (1-8 hours) for improved performance on content that changes infrequently
|
|
51
|
+
* @discoverable true
|
|
52
|
+
* @searchTerms ["content", "articles", "list content", "cms content", "documents", "blog posts"]
|
|
53
|
+
* @relatedEndpoints ["api.joomla.content.get", "api.joomla.content.getDoc", "api.joomla.tags.list"]
|
|
54
|
+
* @commonPatterns ["list articles", "get content", "blog content", "cms articles", "filter content"]
|
|
37
55
|
* @param params Optional filtering, pagination, and caching parameters
|
|
38
|
-
* @param params.
|
|
39
|
-
* @
|
|
56
|
+
* @param params.categoryIdList Comma-separated list of category IDs to filter content (e.g., '1,2,3')
|
|
57
|
+
* @param params.q Search query for filtering content by title/text
|
|
58
|
+
* @param params.limit Maximum number of content items to return (default: 20, max: 100)
|
|
59
|
+
* @param params.offset Number of items to skip for pagination (default: 0)
|
|
60
|
+
* @param params.edgeCache Cache duration in hours (1, 2, 3, 4, 5, 8) - recommended for content
|
|
61
|
+
* @returns BaseResponse<ContentItem[]> with pagination metadata and content array
|
|
40
62
|
* @throws ValidationError When parameters are invalid or response is malformed
|
|
41
63
|
* @example
|
|
42
64
|
* ```typescript
|
|
43
|
-
* // Get all content
|
|
44
|
-
* const
|
|
65
|
+
* // Get all content with full response metadata
|
|
66
|
+
* const response = await api.joomla.content.list();
|
|
67
|
+
* console.log(`Found ${response.total} articles, showing ${response.data.length}`);
|
|
45
68
|
*
|
|
46
|
-
* //
|
|
47
|
-
* const filtered = await
|
|
69
|
+
* // Filter content by categories with search
|
|
70
|
+
* const filtered = await api.joomla.content.list({
|
|
48
71
|
* categoryIdList: '1,2,3',
|
|
49
|
-
*
|
|
50
|
-
*
|
|
72
|
+
* q: 'product review',
|
|
73
|
+
* limit: 10
|
|
51
74
|
* });
|
|
52
75
|
*
|
|
53
|
-
* // Get content
|
|
54
|
-
* const
|
|
55
|
-
*
|
|
56
|
-
* categoryIdList: '1,2,3',
|
|
76
|
+
* // Get just content data without metadata
|
|
77
|
+
* const articles = await api.joomla.content.listData({
|
|
78
|
+
* categoryIdList: '5',
|
|
57
79
|
* limit: 20
|
|
58
80
|
* });
|
|
81
|
+
* articles.forEach(article => console.log(article.title, article.alias));
|
|
82
|
+
*
|
|
83
|
+
* // Use aggressive caching for content (recommended)
|
|
84
|
+
* const cachedContent = await api.joomla.content.list({
|
|
85
|
+
* edgeCache: 4, // Cache for 4 hours - content changes infrequently
|
|
86
|
+
* categoryIdList: '1,2,3'
|
|
87
|
+
* });
|
|
59
88
|
* ```
|
|
60
89
|
*/
|
|
61
90
|
list: (params?: {
|
|
@@ -96,23 +125,43 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
96
125
|
totalResults: number;
|
|
97
126
|
}>;
|
|
98
127
|
/**
|
|
99
|
-
* Get content details by ID
|
|
100
|
-
* @description Returns a single content item by its ID or alias with optional edge caching
|
|
101
|
-
* @
|
|
128
|
+
* Get content details by ID or alias
|
|
129
|
+
* @description Returns a single content item by its ID or alias with optional edge caching and full content metadata
|
|
130
|
+
* @fullPath api.joomla.content.get
|
|
131
|
+
* @service joomla
|
|
132
|
+
* @domain content-management
|
|
133
|
+
* @dataMethod getData(contentId, params) - returns only the content object without metadata
|
|
134
|
+
* @caching Supports edgeCache parameter (1-8 hours) for improved performance
|
|
135
|
+
* @aliasLookup Supports alias-based lookup by using contentId=0 with params.alias
|
|
136
|
+
* @discoverable true
|
|
137
|
+
* @searchTerms ["get content", "content details", "article details", "content by id", "single content"]
|
|
138
|
+
* @relatedEndpoints ["api.joomla.content.list", "api.joomla.content.getDoc", "api.joomla.tags.list"]
|
|
139
|
+
* @commonPatterns ["get content by id", "fetch article", "content details lookup", "get by alias"]
|
|
140
|
+
* @param contentId Content ID (number) or use 0 for alias lookup
|
|
102
141
|
* @param params Optional parameters for alias lookup and caching
|
|
103
|
-
* @param params.
|
|
104
|
-
* @
|
|
142
|
+
* @param params.alias Content alias for lookup when contentId is 0
|
|
143
|
+
* @param params.catid Category ID for alias lookup specificity
|
|
144
|
+
* @param params.edgeCache Cache duration in hours (1, 2, 3, 4, 5, 8) for improved performance
|
|
145
|
+
* @returns BaseResponse<ContentItem> with complete content details and metadata
|
|
105
146
|
* @throws ValidationError When parameters are invalid or response is malformed
|
|
106
147
|
* @example
|
|
107
148
|
* ```typescript
|
|
108
|
-
* // Get by ID
|
|
109
|
-
* const
|
|
149
|
+
* // Get content by ID with full response metadata
|
|
150
|
+
* const response = await api.joomla.content.get(123);
|
|
151
|
+
* console.log('Article:', response.data.title, 'Status:', response.status);
|
|
110
152
|
*
|
|
111
|
-
* // Get by alias
|
|
112
|
-
* const
|
|
153
|
+
* // Get content by alias
|
|
154
|
+
* const byAlias = await api.joomla.content.get(0, {
|
|
155
|
+
* alias: 'my-article',
|
|
156
|
+
* catid: 45
|
|
157
|
+
* });
|
|
158
|
+
*
|
|
159
|
+
* // Get just content data without metadata
|
|
160
|
+
* const article = await api.joomla.content.getData(123);
|
|
161
|
+
* console.log(article.title, article.introtext, article.fulltext);
|
|
113
162
|
*
|
|
114
|
-
* //
|
|
115
|
-
* const cachedContent = await
|
|
163
|
+
* // Use edge caching for frequently accessed content
|
|
164
|
+
* const cachedContent = await api.joomla.content.get(123, { edgeCache: 8 });
|
|
116
165
|
* ```
|
|
117
166
|
*/
|
|
118
167
|
get: (contentId: number | string, params?: ContentGetParams) => Promise<ContentResponse>;
|
|
@@ -159,6 +208,90 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
159
208
|
total: number;
|
|
160
209
|
totalResults: number;
|
|
161
210
|
}>;
|
|
211
|
+
/**
|
|
212
|
+
* Retrieve a paginated list of content items (data only)
|
|
213
|
+
* @description Returns only the data array from content items response
|
|
214
|
+
* @param params Optional filtering, pagination, and caching parameters
|
|
215
|
+
* @returns Array of content items (data only)
|
|
216
|
+
* @throws ValidationError When parameters are invalid or response is malformed
|
|
217
|
+
*/
|
|
218
|
+
listData: (params?: ContentListParams) => Promise<{
|
|
219
|
+
id: number;
|
|
220
|
+
title: string;
|
|
221
|
+
alias: string;
|
|
222
|
+
catid: number;
|
|
223
|
+
created: string;
|
|
224
|
+
modified: string;
|
|
225
|
+
state?: number | undefined;
|
|
226
|
+
introtext?: string | undefined;
|
|
227
|
+
fulltext?: string | undefined;
|
|
228
|
+
ordering?: number | undefined;
|
|
229
|
+
images?: {
|
|
230
|
+
image_intro?: string | undefined;
|
|
231
|
+
image_fulltext?: string | undefined;
|
|
232
|
+
float_intro?: string | undefined;
|
|
233
|
+
float_fulltext?: string | undefined;
|
|
234
|
+
} | undefined;
|
|
235
|
+
hits?: number | undefined;
|
|
236
|
+
metadata?: unknown;
|
|
237
|
+
}[]>;
|
|
238
|
+
/**
|
|
239
|
+
* Get content details by ID (data only)
|
|
240
|
+
* @description Returns only the data from content item details response
|
|
241
|
+
* @param contentId Content ID (number) or alias lookup (use 0 with params.alias)
|
|
242
|
+
* @param params Optional parameters for alias lookup and caching
|
|
243
|
+
* @returns Content item details (data only)
|
|
244
|
+
* @throws ValidationError When parameters are invalid or response is malformed
|
|
245
|
+
*/
|
|
246
|
+
getData: (contentId: number | string, params?: ContentGetParams) => Promise<{
|
|
247
|
+
id: number;
|
|
248
|
+
title: string;
|
|
249
|
+
alias: string;
|
|
250
|
+
catid: number;
|
|
251
|
+
created: string;
|
|
252
|
+
modified: string;
|
|
253
|
+
state?: number | undefined;
|
|
254
|
+
introtext?: string | undefined;
|
|
255
|
+
fulltext?: string | undefined;
|
|
256
|
+
ordering?: number | undefined;
|
|
257
|
+
images?: {
|
|
258
|
+
image_intro?: string | undefined;
|
|
259
|
+
image_fulltext?: string | undefined;
|
|
260
|
+
float_intro?: string | undefined;
|
|
261
|
+
float_fulltext?: string | undefined;
|
|
262
|
+
} | undefined;
|
|
263
|
+
hits?: number | undefined;
|
|
264
|
+
metadata?: unknown;
|
|
265
|
+
}>;
|
|
266
|
+
/**
|
|
267
|
+
* Get content documentation (data only)
|
|
268
|
+
* @description Returns only the data from enhanced content document response
|
|
269
|
+
* @param contentId Content ID (number) or alias lookup (use 0 with query params)
|
|
270
|
+
* @returns Enhanced content document (data only)
|
|
271
|
+
* @throws ValidationError When response is malformed
|
|
272
|
+
*/
|
|
273
|
+
getDocData: (contentId: number | string) => Promise<{
|
|
274
|
+
id: number;
|
|
275
|
+
title: string;
|
|
276
|
+
alias: string;
|
|
277
|
+
catid: number;
|
|
278
|
+
introtext: string;
|
|
279
|
+
fulltext: string;
|
|
280
|
+
ordering?: number | undefined;
|
|
281
|
+
images?: {
|
|
282
|
+
image_intro?: string | undefined;
|
|
283
|
+
image_fulltext?: string | undefined;
|
|
284
|
+
float_intro?: string | undefined;
|
|
285
|
+
float_fulltext?: string | undefined;
|
|
286
|
+
} | undefined;
|
|
287
|
+
fields?: {
|
|
288
|
+
value: string;
|
|
289
|
+
type: string;
|
|
290
|
+
id: number;
|
|
291
|
+
title: string;
|
|
292
|
+
name: string;
|
|
293
|
+
}[] | undefined;
|
|
294
|
+
}>;
|
|
162
295
|
};
|
|
163
296
|
/**
|
|
164
297
|
* User endpoints
|
|
@@ -167,24 +300,46 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
167
300
|
users: {
|
|
168
301
|
/**
|
|
169
302
|
* Retrieve a paginated list of users
|
|
170
|
-
* @description Returns all users with optional filtering, pagination, and edge caching
|
|
303
|
+
* @description Returns all users with optional filtering, pagination, and edge caching for user management operations
|
|
304
|
+
* @fullPath api.joomla.users.list
|
|
305
|
+
* @service joomla
|
|
306
|
+
* @domain user-management
|
|
307
|
+
* @dataMethod listData() - returns only the user array without metadata
|
|
308
|
+
* @pagination Uses count, total, totalResults for pagination metadata. Supports limit/offset parameters.
|
|
309
|
+
* @caching Supports edgeCache parameter (1-8 hours) for improved performance
|
|
310
|
+
* @discoverable true
|
|
311
|
+
* @searchTerms ["users", "list users", "get users", "user management", "accounts", "profiles"]
|
|
312
|
+
* @relatedEndpoints ["api.joomla.userGroups.list", "api.customers.customer.list", "api.joomla.users.get"]
|
|
313
|
+
* @commonPatterns ["list all users", "search users", "paginate users", "filter users"]
|
|
171
314
|
* @param params Optional filtering, pagination, and caching parameters
|
|
172
|
-
* @param params.
|
|
173
|
-
* @
|
|
315
|
+
* @param params.q Search query for filtering users by username/email
|
|
316
|
+
* @param params.limit Maximum number of users to return (default: 20, max: 100)
|
|
317
|
+
* @param params.offset Number of users to skip for pagination (default: 0)
|
|
318
|
+
* @param params.edgeCache Cache duration in hours (1, 2, 3, 4, 5, 8) for improved performance
|
|
319
|
+
* @returns BaseResponse<User[]> with pagination metadata and user array
|
|
174
320
|
* @throws ValidationError When parameters are invalid or response is malformed
|
|
175
321
|
* @example
|
|
176
322
|
* ```typescript
|
|
177
|
-
* // Get all users
|
|
178
|
-
* const
|
|
179
|
-
* console.log(`Found ${
|
|
323
|
+
* // Get all users with full response metadata
|
|
324
|
+
* const response = await api.joomla.users.list();
|
|
325
|
+
* console.log(`Found ${response.total} users, showing ${response.data.length}`);
|
|
326
|
+
* console.log('Pagination:', { count: response.count, total: response.total });
|
|
327
|
+
*
|
|
328
|
+
* // Search users with filtering
|
|
329
|
+
* const searchResults = await api.joomla.users.list({
|
|
330
|
+
* q: 'admin',
|
|
331
|
+
* limit: 10,
|
|
332
|
+
* offset: 0
|
|
333
|
+
* });
|
|
180
334
|
*
|
|
181
|
-
* //
|
|
182
|
-
* const
|
|
335
|
+
* // Get just user data without metadata (using data method)
|
|
336
|
+
* const users = await api.joomla.users.listData({ limit: 20 });
|
|
337
|
+
* users.forEach(user => console.log(user.username, user.email));
|
|
183
338
|
*
|
|
184
|
-
* //
|
|
185
|
-
* const cachedUsers = await
|
|
339
|
+
* // Use edge caching for performance
|
|
340
|
+
* const cachedUsers = await api.joomla.users.list({
|
|
186
341
|
* edgeCache: 2, // Cache for 2 hours
|
|
187
|
-
* limit:
|
|
342
|
+
* limit: 50
|
|
188
343
|
* });
|
|
189
344
|
* ```
|
|
190
345
|
*/
|
|
@@ -225,19 +380,34 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
225
380
|
}>;
|
|
226
381
|
/**
|
|
227
382
|
* Get user details by ID
|
|
228
|
-
* @description Returns detailed information for a specific user
|
|
229
|
-
* @
|
|
383
|
+
* @description Returns detailed information for a specific user including profile data and metadata
|
|
384
|
+
* @fullPath api.joomla.users.get
|
|
385
|
+
* @service joomla
|
|
386
|
+
* @domain user-management
|
|
387
|
+
* @dataMethod getData(userId, params) - returns only the user object without metadata
|
|
388
|
+
* @caching Supports edgeCache parameter (1-8 hours) for improved performance
|
|
389
|
+
* @discoverable true
|
|
390
|
+
* @searchTerms ["get user", "user details", "user profile", "user by id", "single user"]
|
|
391
|
+
* @relatedEndpoints ["api.joomla.users.list", "api.joomla.users.getDoc", "api.joomla.users.getTrinityDoc"]
|
|
392
|
+
* @commonPatterns ["get user by id", "fetch user profile", "user details lookup"]
|
|
393
|
+
* @param userId User ID (number or string) - the unique identifier for the user
|
|
230
394
|
* @param params Optional caching parameters
|
|
231
|
-
* @param params.edgeCache
|
|
232
|
-
* @returns User details
|
|
233
|
-
* @throws ValidationError When response is malformed
|
|
395
|
+
* @param params.edgeCache Cache duration in hours (1, 2, 3, 4, 5, 8) for improved performance
|
|
396
|
+
* @returns BaseResponse<User> with complete user details and metadata
|
|
397
|
+
* @throws ValidationError When userId is invalid or response is malformed
|
|
234
398
|
* @example
|
|
235
399
|
* ```typescript
|
|
236
|
-
*
|
|
400
|
+
* // Get user with full response metadata
|
|
401
|
+
* const response = await api.joomla.users.get(123);
|
|
402
|
+
* console.log('User:', response.data.username, response.data.email);
|
|
403
|
+
* console.log('Status:', response.status, response.message);
|
|
404
|
+
*
|
|
405
|
+
* // Get just user data without metadata
|
|
406
|
+
* const user = await api.joomla.users.getData(123);
|
|
237
407
|
* console.log(user.username, user.email, user.registerDate);
|
|
238
408
|
*
|
|
239
|
-
* //
|
|
240
|
-
* const cachedUser = await
|
|
409
|
+
* // Use edge caching for frequently accessed users
|
|
410
|
+
* const cachedUser = await api.joomla.users.get(123, { edgeCache: 1 });
|
|
241
411
|
* ```
|
|
242
412
|
*/
|
|
243
413
|
get: (id: string | number, params?: import("../../core/base-client").CacheParams | undefined) => Promise<{
|
|
@@ -306,15 +476,32 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
306
476
|
*/
|
|
307
477
|
groups: {
|
|
308
478
|
/**
|
|
309
|
-
* Get user's
|
|
310
|
-
* @description Returns all groups that a specific user belongs to
|
|
311
|
-
* @
|
|
479
|
+
* Get user's group memberships
|
|
480
|
+
* @description Returns all groups that a specific user belongs to with membership details
|
|
481
|
+
* @fullPath api.joomla.users.groups.list
|
|
482
|
+
* @service joomla
|
|
483
|
+
* @domain user-management
|
|
484
|
+
* @dataMethod listData(userId, params) - returns only the group memberships array without metadata
|
|
485
|
+
* @discoverable true
|
|
486
|
+
* @searchTerms ["user groups", "group membership", "user permissions", "user roles"]
|
|
487
|
+
* @relatedEndpoints ["api.joomla.userGroups.list", "api.joomla.users.groups.createMapping", "api.joomla.users.get"]
|
|
488
|
+
* @commonPatterns ["get user groups", "user permissions", "group membership", "user roles"]
|
|
489
|
+
* @param userId User ID (string) - the unique identifier for the user
|
|
312
490
|
* @param params Optional pagination parameters
|
|
313
|
-
* @
|
|
491
|
+
* @param params.limit Maximum number of group memberships to return (default: 20)
|
|
492
|
+
* @param params.offset Number of memberships to skip for pagination (default: 0)
|
|
493
|
+
* @returns BaseResponse<UserGroupMembership[]> with group membership details and metadata
|
|
314
494
|
* @throws ValidationError When response is malformed
|
|
315
495
|
* @example
|
|
316
496
|
* ```typescript
|
|
317
|
-
*
|
|
497
|
+
* // Get user's groups with full response metadata
|
|
498
|
+
* const response = await api.joomla.users.groups.list('123');
|
|
499
|
+
* response.data.forEach(group => {
|
|
500
|
+
* console.log(`Group: ${group.title} (ID: ${group.groupId})`);
|
|
501
|
+
* });
|
|
502
|
+
*
|
|
503
|
+
* // Get just group memberships data without metadata
|
|
504
|
+
* const groups = await api.joomla.users.groups.listData('123');
|
|
318
505
|
* groups.forEach(group => console.log(group.title, group.groupId));
|
|
319
506
|
* ```
|
|
320
507
|
*/
|
|
@@ -347,46 +534,135 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
347
534
|
* ```
|
|
348
535
|
*/
|
|
349
536
|
createMapping: (userId: number | string, request: UserGroupMappingRequest) => Promise<UserGroupMappingResponse>;
|
|
537
|
+
/**
|
|
538
|
+
* Get user's groups (data only)
|
|
539
|
+
* @description Returns only the data array from user group memberships response
|
|
540
|
+
* @param userId User ID (string)
|
|
541
|
+
* @param params Optional pagination parameters
|
|
542
|
+
* @returns Array of user group memberships (data only)
|
|
543
|
+
* @throws ValidationError When response is malformed
|
|
544
|
+
*/
|
|
545
|
+
listData: (userId: string, params?: UserGroupMembershipParams) => Promise<{
|
|
546
|
+
title: string;
|
|
547
|
+
username: string;
|
|
548
|
+
groupId: number;
|
|
549
|
+
userId: number;
|
|
550
|
+
}[]>;
|
|
551
|
+
/**
|
|
552
|
+
* Get specific user group membership (data only)
|
|
553
|
+
* @description Returns only the data from user group membership details response
|
|
554
|
+
* @param userId User ID (string)
|
|
555
|
+
* @param groupId Group ID (number or string)
|
|
556
|
+
* @returns User group membership details (data only)
|
|
557
|
+
* @throws ValidationError When response is malformed
|
|
558
|
+
*/
|
|
559
|
+
getData: (userId: string, groupId: number | string) => Promise<{
|
|
560
|
+
id: number;
|
|
561
|
+
title: string;
|
|
562
|
+
level: number;
|
|
563
|
+
groupId: number;
|
|
564
|
+
userId: number;
|
|
565
|
+
}>;
|
|
566
|
+
/**
|
|
567
|
+
* Create or update user group mapping (data only)
|
|
568
|
+
* @description Returns only the data from created/updated group mapping response
|
|
569
|
+
* @param userId User ID (number or string)
|
|
570
|
+
* @param request Group mapping request data
|
|
571
|
+
* @returns Group mapping information (data only)
|
|
572
|
+
* @throws ValidationError When request is invalid or response is malformed
|
|
573
|
+
*/
|
|
574
|
+
createMappingData: (userId: number | string, request: UserGroupMappingRequest) => Promise<{
|
|
575
|
+
id: number;
|
|
576
|
+
created: boolean;
|
|
577
|
+
groupId: number;
|
|
578
|
+
userId: number;
|
|
579
|
+
}>;
|
|
350
580
|
};
|
|
351
581
|
/**
|
|
352
|
-
* Verify user
|
|
353
|
-
* @description Verifies
|
|
354
|
-
*
|
|
355
|
-
*
|
|
356
|
-
*
|
|
357
|
-
*
|
|
358
|
-
*
|
|
359
|
-
*
|
|
360
|
-
* @
|
|
361
|
-
* @
|
|
362
|
-
*
|
|
582
|
+
* Verify user credentials and authenticate
|
|
583
|
+
* @description Verifies username/password combination and returns authentication token, supports cross-site authentication
|
|
584
|
+
* @fullPath api.joomla.users.verifyPassword
|
|
585
|
+
* @service joomla
|
|
586
|
+
* @domain authentication
|
|
587
|
+
* @dataMethod verifyPasswordData(request) - returns only the verification result without metadata
|
|
588
|
+
* @crossSite Supports authentication across multiple sites when called from 'augur_info' site
|
|
589
|
+
* @discoverable true
|
|
590
|
+
* @searchTerms ["verify password", "authenticate", "login", "user authentication", "credentials", "sign in"]
|
|
591
|
+
* @relatedEndpoints ["api.joomla.users.get", "api.joomla.users.create", "api.customers.customer.get"]
|
|
592
|
+
* @commonPatterns ["user login", "authenticate user", "verify credentials", "password check"]
|
|
593
|
+
* @param request Authentication request containing username, password, and optional siteId
|
|
594
|
+
* @param request.username User's username for authentication
|
|
595
|
+
* @param request.password User's password for verification
|
|
596
|
+
* @param request.siteId Optional site ID for cross-site authentication (when using augur_info)
|
|
597
|
+
* @returns BaseResponse<VerifyPasswordResult> with verification status, user info, and JWT token
|
|
598
|
+
* @throws ValidationError When credentials are invalid or request is malformed
|
|
363
599
|
* @example
|
|
364
|
-
*
|
|
365
|
-
*
|
|
600
|
+
* ```typescript
|
|
601
|
+
* // Standard authentication with full response
|
|
602
|
+
* const response = await api.joomla.users.verifyPassword({
|
|
603
|
+
* username: 'johndoe',
|
|
604
|
+
* password: 'securePassword123'
|
|
605
|
+
* });
|
|
606
|
+
*
|
|
607
|
+
* if (response.data.verified) {
|
|
608
|
+
* console.log('Login successful:', response.data.username);
|
|
609
|
+
* console.log('JWT Token:', response.data.token);
|
|
610
|
+
* console.log('User ID:', response.data.userId);
|
|
611
|
+
* }
|
|
366
612
|
*
|
|
367
|
-
* // Cross-site authentication (when using augur_info
|
|
368
|
-
* await
|
|
369
|
-
* username: '
|
|
370
|
-
* password: '
|
|
613
|
+
* // Cross-site authentication (when using augur_info site)
|
|
614
|
+
* const crossSiteAuth = await api.joomla.users.verifyPassword({
|
|
615
|
+
* username: 'johndoe',
|
|
616
|
+
* password: 'securePassword123',
|
|
371
617
|
* siteId: 'customer_site_1'
|
|
372
618
|
* });
|
|
619
|
+
*
|
|
620
|
+
* // Get just verification data without metadata
|
|
621
|
+
* const authResult = await api.joomla.users.verifyPasswordData({
|
|
622
|
+
* username: 'johndoe',
|
|
623
|
+
* password: 'securePassword123'
|
|
624
|
+
* });
|
|
625
|
+
* ```
|
|
373
626
|
*/
|
|
374
627
|
verifyPassword: (request: VerifyPasswordRequest) => Promise<VerifyPasswordResponse>;
|
|
375
628
|
/**
|
|
376
|
-
* Create a new user
|
|
377
|
-
* @description Creates a new user account in the system
|
|
629
|
+
* Create a new user account
|
|
630
|
+
* @description Creates a new user account in the system with username, email, name, and password
|
|
631
|
+
* @fullPath api.joomla.users.create
|
|
632
|
+
* @service joomla
|
|
633
|
+
* @domain user-management
|
|
634
|
+
* @dataMethod createData(request) - returns only the created user object without metadata
|
|
635
|
+
* @discoverable true
|
|
636
|
+
* @searchTerms ["create user", "new user", "user registration", "add user", "register user"]
|
|
637
|
+
* @relatedEndpoints ["api.joomla.users.list", "api.joomla.users.get", "api.joomla.users.verifyPassword"]
|
|
638
|
+
* @commonPatterns ["register new user", "create account", "add user account", "user signup"]
|
|
378
639
|
* @param request User creation request data including username, email, name, and password
|
|
379
|
-
* @
|
|
640
|
+
* @param request.username Unique username for the new user (required)
|
|
641
|
+
* @param request.email Valid email address for the user (required)
|
|
642
|
+
* @param request.name Full display name for the user (required)
|
|
643
|
+
* @param request.password Secure password for the user (required, minimum 8 characters)
|
|
644
|
+
* @returns BaseResponse<User> with created user information including ID, username, and email
|
|
380
645
|
* @throws ValidationError When request is invalid or response is malformed
|
|
381
646
|
* @example
|
|
382
647
|
* ```typescript
|
|
383
|
-
*
|
|
648
|
+
* // Create new user with full response metadata
|
|
649
|
+
* const response = await api.joomla.users.create({
|
|
384
650
|
* username: 'newuser',
|
|
385
651
|
* email: 'user@example.com',
|
|
386
652
|
* name: 'New User',
|
|
387
653
|
* password: 'SecurePass123!'
|
|
388
654
|
* });
|
|
389
|
-
* console.log('Created user:',
|
|
655
|
+
* console.log('Created user:', response.data.id, response.data.username);
|
|
656
|
+
* console.log('Status:', response.status, response.message);
|
|
657
|
+
*
|
|
658
|
+
* // Get just created user data without metadata
|
|
659
|
+
* const newUser = await api.joomla.users.createData({
|
|
660
|
+
* username: 'johndoe',
|
|
661
|
+
* email: 'john@example.com',
|
|
662
|
+
* name: 'John Doe',
|
|
663
|
+
* password: 'MySecurePassword123!'
|
|
664
|
+
* });
|
|
665
|
+
* console.log('New user ID:', newUser.id, 'Email:', newUser.email);
|
|
390
666
|
* ```
|
|
391
667
|
*/
|
|
392
668
|
create: (data: {
|
|
@@ -468,6 +744,178 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
468
744
|
total: number;
|
|
469
745
|
totalResults: number;
|
|
470
746
|
}>;
|
|
747
|
+
/**
|
|
748
|
+
* Retrieve a paginated list of users (data only)
|
|
749
|
+
* @description Returns only the data array from users response
|
|
750
|
+
* @param params Optional filtering, pagination, and caching parameters
|
|
751
|
+
* @returns Array of users (data only)
|
|
752
|
+
* @throws ValidationError When parameters are invalid or response is malformed
|
|
753
|
+
*/
|
|
754
|
+
listData: (params?: UserListParams) => Promise<{
|
|
755
|
+
id: number;
|
|
756
|
+
name: string;
|
|
757
|
+
username: string;
|
|
758
|
+
email: string;
|
|
759
|
+
registerDate: string;
|
|
760
|
+
lastvisitDate: string;
|
|
761
|
+
lastResetTime?: string | undefined;
|
|
762
|
+
activation?: string | undefined;
|
|
763
|
+
block?: number | undefined;
|
|
764
|
+
timezone?: string | undefined;
|
|
765
|
+
language?: string | undefined;
|
|
766
|
+
customerId?: string | undefined;
|
|
767
|
+
contactId?: string | undefined;
|
|
768
|
+
profileValues?: Record<string, string | string[]> | undefined;
|
|
769
|
+
groups?: {
|
|
770
|
+
id: number;
|
|
771
|
+
title: string;
|
|
772
|
+
}[] | undefined;
|
|
773
|
+
}[]>;
|
|
774
|
+
/**
|
|
775
|
+
* Get user details by ID (data only)
|
|
776
|
+
* @description Returns only the data from user details response
|
|
777
|
+
* @param userId User ID (number or string)
|
|
778
|
+
* @param params Optional caching parameters
|
|
779
|
+
* @returns User details (data only)
|
|
780
|
+
* @throws ValidationError When response is malformed
|
|
781
|
+
*/
|
|
782
|
+
getData: (userId: number | string, params?: BaseGetParams) => Promise<boolean | {
|
|
783
|
+
id: number;
|
|
784
|
+
name: string;
|
|
785
|
+
username: string;
|
|
786
|
+
email: string;
|
|
787
|
+
registerDate: string;
|
|
788
|
+
lastvisitDate: string;
|
|
789
|
+
lastResetTime?: string | undefined;
|
|
790
|
+
activation?: string | undefined;
|
|
791
|
+
block?: number | undefined;
|
|
792
|
+
timezone?: string | undefined;
|
|
793
|
+
language?: string | undefined;
|
|
794
|
+
customerId?: string | undefined;
|
|
795
|
+
contactId?: string | undefined;
|
|
796
|
+
profileValues?: Record<string, string | string[]> | undefined;
|
|
797
|
+
groups?: {
|
|
798
|
+
id: number;
|
|
799
|
+
title: string;
|
|
800
|
+
}[] | undefined;
|
|
801
|
+
}>;
|
|
802
|
+
/**
|
|
803
|
+
* Get user documentation (data only)
|
|
804
|
+
* @description Returns only the data from enhanced user document response
|
|
805
|
+
* @param userId User ID (number or string)
|
|
806
|
+
* @returns Enhanced user document (data only)
|
|
807
|
+
* @throws ValidationError When response is malformed
|
|
808
|
+
*/
|
|
809
|
+
getDocData: (userId: number | string) => Promise<boolean | {
|
|
810
|
+
id: number;
|
|
811
|
+
name: string;
|
|
812
|
+
username: string;
|
|
813
|
+
email: string;
|
|
814
|
+
registerDate: string;
|
|
815
|
+
lastvisitDate: string;
|
|
816
|
+
lastResetTime: string;
|
|
817
|
+
block: number;
|
|
818
|
+
timezone: string;
|
|
819
|
+
language: string;
|
|
820
|
+
customerId: string;
|
|
821
|
+
contactId: string;
|
|
822
|
+
profileValues: Record<string, string | string[]>;
|
|
823
|
+
groups: z.objectOutputType<{
|
|
824
|
+
id: z.ZodNumber;
|
|
825
|
+
title: z.ZodString;
|
|
826
|
+
}, z.ZodTypeAny, "passthrough">[];
|
|
827
|
+
}>;
|
|
828
|
+
/**
|
|
829
|
+
* Get Trinity user documentation (data only)
|
|
830
|
+
* @description Returns only the data from specialized Trinity business logic document response
|
|
831
|
+
* @param userId User ID (number or string)
|
|
832
|
+
* @param params Optional filtering and pagination parameters
|
|
833
|
+
* @returns Trinity document (data only)
|
|
834
|
+
* @throws ValidationError When parameters are invalid or response is malformed
|
|
835
|
+
*/
|
|
836
|
+
getTrinityDocData: (userId: number | string, params?: TrinityDocParams) => Promise<{
|
|
837
|
+
groups: z.objectOutputType<{
|
|
838
|
+
id: z.ZodNumber;
|
|
839
|
+
title: z.ZodString;
|
|
840
|
+
}, z.ZodTypeAny, "passthrough">[];
|
|
841
|
+
profile: {
|
|
842
|
+
id: number;
|
|
843
|
+
title: string | null;
|
|
844
|
+
name: string;
|
|
845
|
+
username: string;
|
|
846
|
+
email: string;
|
|
847
|
+
registerDate: string;
|
|
848
|
+
lastvisitDate: string;
|
|
849
|
+
block: number;
|
|
850
|
+
customerId: number | null;
|
|
851
|
+
contactId: number | null;
|
|
852
|
+
contractNo: string | null;
|
|
853
|
+
shipTo: string | null;
|
|
854
|
+
phone: string | null;
|
|
855
|
+
companyName: string | null;
|
|
856
|
+
approved: number | null;
|
|
857
|
+
};
|
|
858
|
+
p21Role: {
|
|
859
|
+
id: number;
|
|
860
|
+
contactRoleUid: number;
|
|
861
|
+
contactRoleId: number;
|
|
862
|
+
contactRoleName: string;
|
|
863
|
+
parentName: string;
|
|
864
|
+
parentGroupId: number;
|
|
865
|
+
groupId: number;
|
|
866
|
+
address: {
|
|
867
|
+
physState: string | null;
|
|
868
|
+
mailState: string | null;
|
|
869
|
+
} & {
|
|
870
|
+
[k: string]: unknown;
|
|
871
|
+
};
|
|
872
|
+
} | null;
|
|
873
|
+
territory: string;
|
|
874
|
+
role: string;
|
|
875
|
+
}>;
|
|
876
|
+
/**
|
|
877
|
+
* Verify user password (data only)
|
|
878
|
+
* @description Returns only the data from password verification response
|
|
879
|
+
* @param request Object containing username, password, and optional siteId for cross-site auth
|
|
880
|
+
* @returns Verification result (data only)
|
|
881
|
+
*/
|
|
882
|
+
verifyPasswordData: (request: VerifyPasswordRequest) => Promise<{
|
|
883
|
+
id: number;
|
|
884
|
+
username: string;
|
|
885
|
+
email: string;
|
|
886
|
+
isVerified: boolean;
|
|
887
|
+
token: string | boolean;
|
|
888
|
+
}>;
|
|
889
|
+
/**
|
|
890
|
+
* Create a new user (data only)
|
|
891
|
+
* @description Returns only the data from created user response
|
|
892
|
+
* @param request User creation request data including username, email, name, and password
|
|
893
|
+
* @returns Created user information (data only)
|
|
894
|
+
* @throws ValidationError When request is invalid or response is malformed
|
|
895
|
+
*/
|
|
896
|
+
createData: (request: CreateUserRequest) => Promise<{
|
|
897
|
+
id: number;
|
|
898
|
+
name: string;
|
|
899
|
+
username: string;
|
|
900
|
+
email: string;
|
|
901
|
+
}>;
|
|
902
|
+
/**
|
|
903
|
+
* Update an existing user (data only)
|
|
904
|
+
* @description Returns only the data from updated user response
|
|
905
|
+
* @param userId User ID (number or string)
|
|
906
|
+
* @param request User update data with optional fields to modify
|
|
907
|
+
* @returns Updated user object (data only)
|
|
908
|
+
* @throws ValidationError When request is invalid or response is malformed
|
|
909
|
+
*/
|
|
910
|
+
updateData: (userId: number | string, request: UpdateUserRequest) => Promise<boolean>;
|
|
911
|
+
/**
|
|
912
|
+
* Block (deactivate) a user (data only)
|
|
913
|
+
* @description Returns only the data from user blocking response
|
|
914
|
+
* @param userId User ID (number or string)
|
|
915
|
+
* @returns Blocking operation result (data only)
|
|
916
|
+
* @throws ValidationError When response is malformed
|
|
917
|
+
*/
|
|
918
|
+
blockData: (userId: number | string) => Promise<boolean>;
|
|
471
919
|
};
|
|
472
920
|
/**
|
|
473
921
|
* User Groups endpoints
|
|
@@ -475,35 +923,66 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
475
923
|
*/
|
|
476
924
|
userGroups: {
|
|
477
925
|
/**
|
|
478
|
-
* Get user groups
|
|
479
|
-
* @description Returns
|
|
926
|
+
* Get hierarchical list of user groups
|
|
927
|
+
* @description Returns system-wide user groups with hierarchy information, filtering, and caching
|
|
928
|
+
* @fullPath api.joomla.userGroups.list
|
|
929
|
+
* @service joomla
|
|
930
|
+
* @domain user-management
|
|
931
|
+
* @dataMethod listData(params) - returns only the user groups array without metadata
|
|
932
|
+
* @hierarchy Returns groups with level and parent relationship information
|
|
933
|
+
* @caching Supports edgeCache parameter (1-8 hours) - recommended since groups rarely change
|
|
934
|
+
* @discoverable true
|
|
935
|
+
* @searchTerms ["user groups", "groups", "permissions", "roles", "group hierarchy", "user roles"]
|
|
936
|
+
* @relatedEndpoints ["api.joomla.users.groups.list", "api.joomla.users.list", "api.joomla.users.groups.createMapping"]
|
|
937
|
+
* @commonPatterns ["list user groups", "get groups", "group permissions", "user roles", "group hierarchy"]
|
|
480
938
|
* @param params Optional filtering, ordering, and caching parameters
|
|
481
|
-
* @param params.
|
|
482
|
-
* @
|
|
939
|
+
* @param params.orderBy Sort order (e.g., 'title|ASC', 'title|DESC', 'level|ASC')
|
|
940
|
+
* @param params.parentIdList Comma-separated list of parent group IDs to filter (e.g., '1,2')
|
|
941
|
+
* @param params.edgeCache Cache duration in hours (1-8) - highly recommended since groups rarely change
|
|
942
|
+
* @returns BaseResponse<UserGroup[]> with hierarchy metadata and groups array
|
|
483
943
|
* @throws ValidationError When parameters are invalid or response is malformed
|
|
484
944
|
* @example
|
|
485
945
|
* ```typescript
|
|
486
|
-
* // Get all user groups
|
|
487
|
-
* const
|
|
946
|
+
* // Get all user groups with hierarchy information
|
|
947
|
+
* const response = await api.joomla.userGroups.list();
|
|
948
|
+
* response.data.forEach(group => {
|
|
949
|
+
* console.log(`${group.title} (Level: ${group.level}, Parent: ${group.parentId})`);
|
|
950
|
+
* });
|
|
488
951
|
*
|
|
489
|
-
* //
|
|
490
|
-
* const
|
|
491
|
-
* orderBy: 'title|
|
|
952
|
+
* // Filter and order groups
|
|
953
|
+
* const ordered = await api.joomla.userGroups.list({
|
|
954
|
+
* orderBy: 'title|ASC',
|
|
492
955
|
* parentIdList: '1,2'
|
|
493
956
|
* });
|
|
494
957
|
*
|
|
495
|
-
* // Get groups
|
|
496
|
-
* const
|
|
497
|
-
*
|
|
498
|
-
* orderBy: 'title|ASC'
|
|
958
|
+
* // Get just groups data without metadata
|
|
959
|
+
* const groups = await api.joomla.userGroups.listData({
|
|
960
|
+
* orderBy: 'level|ASC'
|
|
499
961
|
* });
|
|
500
962
|
*
|
|
501
|
-
* groups
|
|
502
|
-
*
|
|
963
|
+
* // Use long caching since groups rarely change
|
|
964
|
+
* const cachedGroups = await api.joomla.userGroups.list({
|
|
965
|
+
* edgeCache: 8, // Cache for 8 hours - groups change very infrequently
|
|
966
|
+
* orderBy: 'title|ASC'
|
|
503
967
|
* });
|
|
504
968
|
* ```
|
|
505
969
|
*/
|
|
506
970
|
list: (params?: UserGroupListParams) => Promise<UserGroupListResponse>;
|
|
971
|
+
/**
|
|
972
|
+
* Get user groups (data only)
|
|
973
|
+
* @description Returns only the data array from user groups response
|
|
974
|
+
* @param params Optional filtering, ordering, and caching parameters
|
|
975
|
+
* @returns Array of user groups (data only)
|
|
976
|
+
* @throws ValidationError When parameters are invalid or response is malformed
|
|
977
|
+
*/
|
|
978
|
+
listData: (params?: UserGroupListParams) => Promise<{
|
|
979
|
+
id: number;
|
|
980
|
+
title: string;
|
|
981
|
+
parentId: number;
|
|
982
|
+
level: number;
|
|
983
|
+
lft: number;
|
|
984
|
+
rgt: number;
|
|
985
|
+
}[]>;
|
|
507
986
|
};
|
|
508
987
|
/**
|
|
509
988
|
* Tags endpoints
|
|
@@ -511,32 +990,51 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
511
990
|
*/
|
|
512
991
|
tags: {
|
|
513
992
|
/**
|
|
514
|
-
* Get tags
|
|
515
|
-
* @description Returns
|
|
993
|
+
* Get hierarchical list of content tags
|
|
994
|
+
* @description Returns content tags with hierarchy, usage information, filtering, search, and edge caching
|
|
995
|
+
* @fullPath api.joomla.tags.list
|
|
996
|
+
* @service joomla
|
|
997
|
+
* @domain content-management
|
|
998
|
+
* @dataMethod listData(params) - returns only the tags array without metadata
|
|
999
|
+
* @hierarchy Returns tags with level and parent relationship information
|
|
1000
|
+
* @caching Supports edgeCache parameter (1-8 hours) - recommended for reference data
|
|
1001
|
+
* @discoverable true
|
|
1002
|
+
* @searchTerms ["tags", "content tags", "taxonomy", "categories", "tag hierarchy"]
|
|
1003
|
+
* @relatedEndpoints ["api.joomla.content.list", "api.joomla.content.get", "api.joomla.userGroups.list"]
|
|
1004
|
+
* @commonPatterns ["list tags", "get tags", "search tags", "content taxonomy", "tag filtering"]
|
|
516
1005
|
* @param params Optional filtering, search, and caching parameters
|
|
517
|
-
* @param params.
|
|
518
|
-
* @
|
|
1006
|
+
* @param params.q Search query for filtering tags by title
|
|
1007
|
+
* @param params.catId Category ID to filter tags by category
|
|
1008
|
+
* @param params.limit Maximum number of tags to return (default: 20, max: 100)
|
|
1009
|
+
* @param params.offset Number of tags to skip for pagination (default: 0)
|
|
1010
|
+
* @param params.edgeCache Cache duration in hours (1-8) - recommended for reference data
|
|
1011
|
+
* @returns BaseResponse<Tag[]> with hierarchy metadata and tags array
|
|
519
1012
|
* @throws ValidationError When parameters are invalid or response is malformed
|
|
520
1013
|
* @example
|
|
521
1014
|
* ```typescript
|
|
522
|
-
* // Get all tags
|
|
523
|
-
* const
|
|
1015
|
+
* // Get all tags with hierarchy information
|
|
1016
|
+
* const response = await api.joomla.tags.list();
|
|
1017
|
+
* response.data.forEach(tag => {
|
|
1018
|
+
* console.log(`${tag.title} (${tag.hits} hits, Level: ${tag.level})`);
|
|
1019
|
+
* });
|
|
524
1020
|
*
|
|
525
|
-
* // Search tags
|
|
526
|
-
* const searchTags = await
|
|
1021
|
+
* // Search tags by keyword
|
|
1022
|
+
* const searchTags = await api.joomla.tags.list({
|
|
527
1023
|
* q: 'technology',
|
|
528
1024
|
* catId: 1,
|
|
529
1025
|
* limit: 10
|
|
530
1026
|
* });
|
|
531
1027
|
*
|
|
532
|
-
* // Get tags
|
|
533
|
-
* const
|
|
534
|
-
* edgeCache: 5, // Cache for 5 hours
|
|
1028
|
+
* // Get just tags data without metadata
|
|
1029
|
+
* const tags = await api.joomla.tags.listData({
|
|
535
1030
|
* limit: 50
|
|
536
1031
|
* });
|
|
1032
|
+
* tags.forEach(tag => console.log(tag.title, tag.alias));
|
|
537
1033
|
*
|
|
538
|
-
*
|
|
539
|
-
*
|
|
1034
|
+
* // Use caching for reference data (recommended)
|
|
1035
|
+
* const cachedTags = await api.joomla.tags.list({
|
|
1036
|
+
* edgeCache: 5, // Cache for 5 hours - tags are reference data
|
|
1037
|
+
* limit: 100
|
|
540
1038
|
* });
|
|
541
1039
|
* ```
|
|
542
1040
|
*/
|
|
@@ -566,6 +1064,23 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
566
1064
|
total: number;
|
|
567
1065
|
totalResults: number;
|
|
568
1066
|
}>;
|
|
1067
|
+
/**
|
|
1068
|
+
* Get tags (data only)
|
|
1069
|
+
* @description Returns only the data array from tags response
|
|
1070
|
+
* @param params Optional filtering, search, and caching parameters
|
|
1071
|
+
* @returns Array of tags (data only)
|
|
1072
|
+
* @throws ValidationError When parameters are invalid or response is malformed
|
|
1073
|
+
*/
|
|
1074
|
+
listData: (params?: TagListParams) => Promise<{
|
|
1075
|
+
path: string;
|
|
1076
|
+
id: number;
|
|
1077
|
+
title: string;
|
|
1078
|
+
alias: string;
|
|
1079
|
+
hits: number;
|
|
1080
|
+
parentId: number;
|
|
1081
|
+
level: number;
|
|
1082
|
+
note?: string | undefined;
|
|
1083
|
+
}[]>;
|
|
569
1084
|
};
|
|
570
1085
|
/**
|
|
571
1086
|
* Menu endpoints
|
|
@@ -586,6 +1101,35 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
586
1101
|
* ```
|
|
587
1102
|
*/
|
|
588
1103
|
getDoc: (menuId: string) => Promise<ContentDocumentResponse>;
|
|
1104
|
+
/**
|
|
1105
|
+
* Get menu documentation (data only)
|
|
1106
|
+
* @description Returns only the data from enhanced menu item document response
|
|
1107
|
+
* @param menuId Menu item ID (string)
|
|
1108
|
+
* @returns Menu document (data only)
|
|
1109
|
+
* @throws ValidationError When response is malformed
|
|
1110
|
+
*/
|
|
1111
|
+
getDocData: (menuId: string) => Promise<{
|
|
1112
|
+
id: number;
|
|
1113
|
+
title: string;
|
|
1114
|
+
alias: string;
|
|
1115
|
+
catid: number;
|
|
1116
|
+
introtext: string;
|
|
1117
|
+
fulltext: string;
|
|
1118
|
+
ordering?: number | undefined;
|
|
1119
|
+
images?: {
|
|
1120
|
+
image_intro?: string | undefined;
|
|
1121
|
+
image_fulltext?: string | undefined;
|
|
1122
|
+
float_intro?: string | undefined;
|
|
1123
|
+
float_fulltext?: string | undefined;
|
|
1124
|
+
} | undefined;
|
|
1125
|
+
fields?: {
|
|
1126
|
+
value: string;
|
|
1127
|
+
type: string;
|
|
1128
|
+
id: number;
|
|
1129
|
+
title: string;
|
|
1130
|
+
name: string;
|
|
1131
|
+
}[] | undefined;
|
|
1132
|
+
}>;
|
|
589
1133
|
};
|
|
590
1134
|
/**
|
|
591
1135
|
* Check service health (no bearer token required)
|
|
@@ -635,4 +1179,5 @@ export declare class JoomlaClient extends BaseServiceClient {
|
|
|
635
1179
|
totalResults: number;
|
|
636
1180
|
}>;
|
|
637
1181
|
}
|
|
1182
|
+
export {};
|
|
638
1183
|
//# sourceMappingURL=client.d.ts.map
|