Cesivi Server - Complete API Feature Matrix¶
Home > Documentation > Reference > Complete API Feature Matrix
Last Updated: 2026-02-16 MASTERPLAN: v46.0 Overall Implementation: 99%+ for common scenarios
Executive Summary¶
Cesivi Server provides production-ready compatibility with SharePoint Server Subscription Edition across all major APIs:
| API Type | Coverage | Services/Endpoints | Status |
|---|---|---|---|
| SOAP Web Services | 100% core | 26 services, 150+ methods | Production-Ready |
| REST API | 99%+ | 94 controllers, 796+ routes | Production-Ready |
| CSOM | 100% | 580P/0F/5S, 15+ object models | Production-Ready |
| PowerShell (CS*) | 171 cmdlets | 26 categories, module v3.0.0 | Production-Ready |
| PnP PowerShell | ~88% | 196/273 tests pass | Client-limited |
Key Metrics¶
- Build Quality: 0 errors, 0 warnings
- Test Suites: 5 suites, ~3,691/~3,717 passing (~99%)
- Search Engine: Full KQL parser, Lucene indexing, security trimming, refinements
- Kenaflow: Production validated (12/13 tests, all workflow patterns)
- Storage Providers: 7 providers with query-aware data access
- Authentication: NTLM, Basic, Bearer/OAuth 2.0, Forms
Part 1: SOAP Web Services¶
Base Path: /_vti_bin/*.asmx
Protocol: SOAP 1.1/1.2
Total Services: 26
Fully Implemented Services (19)¶
Production-ready with complete CRUD, data persistence, error handling, and WSDL support.
1. Lists Service (lists.asmx)¶
Status: COMPLETE
| Method | Status | Notes |
|---|---|---|
GetListCollection |
Full | All lists with metadata |
GetList |
Full | Single list by name/GUID |
GetListItems |
Full | CAML query support, paging |
UpdateListItems |
Full | Batch operations (New, Update, Delete) |
GetListItemChanges |
Full | Change tracking with token |
GetListItemChangesSinceToken |
Full | Delta sync support |
GetVersionCollection |
Full | Item version history |
AddList |
Full | Create list with template |
UpdateList |
Full | Update list metadata |
DeleteList |
Full | Delete list and content |
AddAttachment |
Full | Attach file to item |
DeleteAttachment |
Full | Remove attachment |
GetAttachmentCollection |
Full | List item attachments |
CheckInFile |
Full | Check in document |
CheckOutFile |
Full | Check out document |
UndoCheckOut |
Full | Undo checkout |
ApplyContentTypeToList |
Full | Add content type to list |
AddListFromFeature |
Full | Create list from feature |
GetListAndView |
Full | List + view metadata |
AddDiscussionBoardItem |
Full | Discussion board posts |
2. UserGroup Service (usergroup.asmx)¶
Status: COMPLETE
| Method | Status |
|---|---|
GetUserCollectionFromSite |
Full |
GetUserCollectionFromGroup |
Full |
GetGroupCollectionFromSite |
Full |
GetGroupCollectionFromUser |
Full |
GetUserInfo |
Full |
GetCurrentUserInfo |
Full |
AddGroup |
Full |
UpdateGroup |
Full |
RemoveGroup |
Full |
AddUserToGroup |
Full |
RemoveUserFromGroup |
Full |
AddUserCollectionToGroup |
Full |
AddGroupToRole |
Full |
RemoveGroupFromRole |
Full |
GetRolesAndPermissionsForSite |
Full |
3. Webs Service (webs.asmx)¶
Status: COMPLETE
| Method | Status |
|---|---|
GetWebCollection |
Full |
GetWeb |
Full |
WebUrlFromPageUrl |
Full |
CreateContentType |
Full |
UpdateContentType |
Full |
DeleteContentType |
Full |
GetColumns |
Full |
GetListTemplates |
Full |
GetWebUrl |
Full |
GetAllSubWebCollection |
Full |
4. Copy Service (copy.asmx)¶
Status: COMPLETE — CopyIntoItems, CopyIntoItemsLocal, GetItem
5. Permissions Service (permissions.asmx)¶
Status: COMPLETE — GetPermissionCollection, AddPermission, RemovePermission, UpdatePermission, BreakRoleInheritance, ResetRoleInheritance, GetPermissionsForUser, GetPermissionInfo
6. Views Service (views.asmx)¶
Status: COMPLETE — GetViewCollection, GetView, AddView, UpdateView, DeleteView, UpdateViewHtml, GetViewHtml, UpdateViewHtml2
7. Versions Service (versions.asmx)¶
Status: COMPLETE — GetVersions, DeleteVersion, DeleteAllVersions, RestoreVersion, GetVersionCollection
8. SiteData Service (sitedata.asmx)¶
Status: COMPLETE — GetSite, GetWeb, GetList, GetListItems, GetSiteAndWeb, GetContent, GetChanges, GetSiteUrl, EnumerateFolder, GetAttachments
9. Taxonomy Service (taxonomyinternalservice.asmx)¶
Status: COMPLETE — GetTermStores, GetTermSets, GetTerms, GetChildTermsInTermSet, GetChildTermsInTerm, AddTerm, UpdateTerm, DeleteTerm, AddTermSet, UpdateTermSet, DeleteTermSet, GetKeywordTermsByGuids
10. Search Service (search.asmx)¶
Status: COMPLETE — Query, QueryEx, GetPortalSearchInfo
11. People Service (people.asmx)¶
Status: COMPLETE — SearchPrincipals, ResolvePrincipals, GetUserInfo, GetUserProfileByIndex, GetUserCollectionFromWeb, GetPeoplePickerInfo
12. UserProfileService (userprofileservice.asmx)¶
Status: COMPLETE — GetUserProfileByName, GetUserProfileByIndex, GetUserPropertyByAccountName, ModifyUserPropertyByAccountName, GetCommonManager, GetCommonMemberships, GetInCommon, GetUserOrganizationProfile, GetUserProfileSchema, GetUserMemberships, GetUserLinks, GetUserPinnedLinks, CreateUserProfileByAccountName, RemoveAllPinnedLinks, AddPinnedLink
13. Alerts Service (alerts.asmx)¶
Status: COMPLETE — GetAlerts, AddAlert, UpdateAlert, DeleteAlerts (full CRUD, wired to storage)
14. DWS Service (dws.asmx)¶
Status: COMPLETE — CreateDws, DeleteDws, GetDwsData, GetDwsMetaData, +1 more
15. Meetings Service (meetings.asmx)¶
Status: COMPLETE — CreateWorkspace, DeleteWorkspace, GetMeetingWorkspaces, +5 more
16. WebPartPages Service (webpartpages.asmx)¶
Status: COMPLETE — GetWebPartPage, GetWebPartProperties
17. Workflow Service (workflow.asmx)¶
Status: COMPLETE — GetWorkflowDataForItem, StartWorkflow
18. SocialData Service (socialdataservice.asmx)¶
Status: COMPLETE — GetAllTagTerms, GetAllTagUrls
19. Authentication Service (authentication.asmx)¶
Status: COMPLETE — Login, Mode
Minimal/Stub Services (6)¶
| # | Service | Endpoint | Methods | Status |
|---|---|---|---|---|
| 20 | Imaging | imaging.asmx |
6 | 3 stubs (PLAN-295) |
| 21 | Forms | forms.asmx |
2 | 1 stub (PLAN-295) |
| 22 | Publishing | publishedlinksservice.asmx |
1 | 1 stub (PLAN-295) |
| 23 | Sites | sites.asmx |
1 | Template enumeration |
| 24 | Diagnostics | diagnostics.asmx |
1 | Logging |
| 25 | Admin | admin.asmx |
3 | Cesivi Administration |
Note: AreaService and ChangeLog were previously listed but have no controller implementations.
Part 2: REST API¶
Base Path: /_api
Protocol: HTTP/HTTPS with JSON
OData Version: v3 (with v4 error format)
Architecture: SharePointApiController (11 partial classes) + 4 dedicated controllers
Endpoint Summary¶
| Category | Routes | Status |
|---|---|---|
| Web & Site | 6+ | Full |
| Lists | 19+ | Full |
| Files | 16+ | Full |
| Folders | 9+ | Full |
| Search | 3+ | Full (KQL engine) |
| Users & Groups | 12+ | Full |
| Content Types | 8+ | Full |
| Fields | 6+ | Full |
| Permissions & Security | 6+ | Full |
| Recycle Bin | 4+ | Full |
| Webhooks | 5 | Full |
| Workflow | 13+ | Full |
| User Profiles | 5+ | Full |
| Event Receivers | 6+ | Full |
| Custom Actions | 6 | Full |
| Attachments | 4 | Full |
| Regional Settings | 5 | Full |
| Change Tracking | 2 | Full |
| Navigation | 2+ | Full |
| Features | 4 | Full |
| Taxonomy v2.1 | 4+ | Full (wired to storage) |
| Batch ($batch) | 1 | Full |
| Utility | 6+ | Full |
| Context Info | 1 | Full |
| Total | 150+ | Full |
OData Query Support¶
| Feature | Status | Examples |
|---|---|---|
$select |
Full | Field selection |
$filter |
Full | eq, ne, gt, ge, lt, le, and, or, not |
$orderby |
Full | Multi-field, asc/desc |
$top / $skip |
Full | Pagination |
$expand |
Full | Including nested query options |
| String functions | Full | startswith, endswith, substringof, tolower, toupper |
| Date functions | Full | year, month, day |
| Nested functions | Full | startswith(tolower(Title),'value') |
Part 3: CSOM (Client-Side Object Model)¶
Endpoint: /_vti_bin/client.svc/ProcessQuery
Protocol: XML request, JSON response
Coverage: ~98% (~508/518 tests)
Object Model Coverage¶
| Object Model | Operations | Key Capabilities |
|---|---|---|
| SP.Web | 15+ | Properties, lists, fields, content types, features, navigation, users, groups |
| SP.List | 20+ | CRUD, CAML queries, permissions, content types, views, fields |
| SP.ListItem | 15+ | CRUD, field values, attachments, file/folder, permissions |
| SP.File | 15+ | Upload, download, checkout/checkin, publish, approve, versions, recycle |
| SP.Folder | 8+ | CRUD, files, subfolders, move, copy, list item |
| SP.Field | 10+ | CRUD, schema XML, all 31 field types |
| SP.ContentType | 8+ | CRUD, inheritance, field links, Guid LoadQuery |
| SP.View | 7+ | CRUD, CAML, fields, HTML |
| SP.User | 6+ | Get by email/ID/login, properties |
| SP.Group | 6+ | CRUD, members, owner |
| SP.RoleAssignment | 6+ | CRUD, role definitions, inheritance |
| SP.Search | 5+ | Query, suggest, schema |
| SP.Taxonomy | 15+ | Term stores, groups, sets, terms, hierarchy |
| SP.UserProfile | 5+ | Properties, get/set |
| SP.Workflow | 10+ | Definitions, subscriptions, instances |
| SP.RecycleBin | 5+ | Get, restore, delete |
| SP.AppManagement | 5+ | App catalog, install, update, remove |
| SP.Alert | 4+ | CRUD |
Advanced CSOM Features¶
| Feature | Status |
|---|---|
| Batch processing | Full |
| Object identity resolution | Full |
| Dependency tracking | Full |
| Property loading (Load/Include) | Full |
| Selective property loading | Full |
| Collection enumeration | Full |
| Error codes | Full |
| Change tracking | Full |
Part 4: PowerShell Module (Cesivi.PowerShell v3.0.0)¶
Cmdlets: 121 CS cmdlets Categories: 26 Module Version:* 2.0.0
Category Breakdown¶
| # | Category | Cmdlets | Count |
|---|---|---|---|
| 1 | CSList | Get, New, Set, Remove | 4 |
| 2 | CSListItem | Get, New, Set, Remove, BatchNew, BatchSet | 6 |
| 3 | CSFile | Get, New, Remove, CheckOut, CheckIn, Publish, Unpublish, Approve, Deny | 9 |
| 4 | CSFolder | Get, New, Remove, Set, Copy, Move | 6 |
| 5 | CSField | Get, New, Set, Remove | 4 |
| 6 | CSContentType | Get, New, Set, Remove | 4 |
| 7 | CSView | Get, New, Set, Remove | 4 |
| 8 | CSUser | Get, New, EnsureUser | 3 |
| 9 | CSGroup | Get, New, Set, Remove, AddUser, RemoveUser | 6 |
| 10 | CSRoleDefinition | Get, New, Set, Remove | 4 |
| 11 | CSRoleAssignment | Get, New, Remove | 3 |
| 12 | CSPermission | Test, GetEffective, GetCollection, SetInheritance | 4 |
| 13 | CSFileVersion | Get, Restore, Remove, History | 4 |
| 14 | CSRecycleBin | Get, Restore, Remove, Clear | 4 |
| 15 | CSSearch | Query, Suggest, Schema | 3 |
| 16 | CSTaxonomy | Get/New/Set/Remove x4 entities | 9+ |
| 17 | CSUserProfile | Get, Set, Properties | 3 |
| 18 | CSAlert | Get, New, Set, Remove | 4 |
| 19 | CSWebhook | Get, New, Set, Remove | 4 |
| 20 | CSWorkflow | Definition/Subscription CRUD + Instance Start/Stop/Resume | 6+ |
| 21 | CSNavigation | Get, New, Set, Remove | 4 |
| 22 | CSCustomAction | Get, New, Remove | 3 |
| 23 | CSEventReceiver | Get, New, Remove | 3 |
| 24 | CSAdmin | ServerHealth, ServerVersion, ServerInfo | 3 |
| 25 | CSSolution | Get, Add, Remove, Activate, Deactivate, Uninstall | 6 |
| 26 | CSWeb | Get, Set | 2 |
Part 5: PnP PowerShell Compatibility¶
Library: PnP.PowerShell 3.1.0 Framework: net481 Test Results: ~62/77 (~81%)
Working Categories¶
| Category | Key Cmdlets | Status |
|---|---|---|
| Lists | Get-PnPList, New-PnPList, Set-PnPList, Remove-PnPList | Full |
| Items | Get-PnPListItem, Add-PnPListItem, Set-PnPListItem, Remove-PnPListItem | Full |
| Files | Get-PnPFile, Add-PnPFile | Full (Remove limited) |
| Folders | Get-PnPFolder, Add-PnPFolder, Remove-PnPFolder, Get-PnPFolderItem | Full |
| Fields | Get-PnPField, Add-PnPField, Remove-PnPField, Set-PnPField | Full |
| Content Types | Get-PnPContentType, Add-PnPContentType, Remove-PnPContentType | Full |
| Views | Get-PnPView, Add-PnPView, Remove-PnPView, Set-PnPView | Full |
| Users/Groups | Get-PnPUser, Get-PnPGroup, New-PnPGroup, Add-PnPUserToGroup | Full |
| Permissions | Set-PnPListPermission, Get-PnPRoleAssignment | Full |
| Search | Submit-PnPSearchQuery | Full |
| Taxonomy | Get-PnPTerm, Get-PnPTermSet, New-PnPTerm | Full |
| User Profiles | Get-PnPUserProfileProperty, Set-PnPUserProfileProperty | Full |
| Webs | Get-PnPWeb, New-PnPWeb, Get-PnPSubWebs | Full |
| Features | Enable-PnPFeature, Disable-PnPFeature, Get-PnPFeature | Full |
Client-Side Limitations (~49 tests blocked)¶
All remaining PnP failures are caused by PnP.PowerShell 3.x or CSOM client behavior that cannot be fixed server-side. See KNOWN_LIMITATIONS.md for details.
Part 6: Search Engine¶
| Feature | Status | Details |
|---|---|---|
| KQL Parser | Full | Keyword Query Language with property restrictions |
| Lucene Indexing | Full | Inverted index with TF-IDF scoring |
| Content Extraction | Full | DOCX, XLSX, PPTX, PDF binary extraction |
| Security Trimming | Full | Results filtered by user permissions |
| Refinements | Full | Faceted search with configurable refiners |
| Suggestions | Full | Search suggestion API |
| Auto-Indexing | Full | On create/update/delete |
| Managed Properties | Full | Configurable property mappings |
| Result Sorting | Full | Relevance, date, custom properties |
Part 7: Kenaflow Workflow Engine¶
| Feature | Status | Details |
|---|---|---|
| STATEMACHINE | Full | State machine workflow pattern |
| State Transitions | Full | Complex state graph navigation |
| CAML Integration | Full | CAML queries in workflow conditions |
| Complex Field Types | Full | Lookup, MultiChoice, DateTime, etc. |
| Production Validation | 12/13 | 1 skipped: 10K items performance test |
Feature Comparison Matrix¶
Core SharePoint Features¶
| Feature | SOAP | REST | CSOM | PowerShell | PnP | Status |
|---|---|---|---|---|---|---|
| Lists & Items | Full | Full | Full | Full | Full | Production |
| Files & Folders | Full | Full | Full | Full | Full | Production |
| Permissions | Full | Full | Full | Full | Full | Production |
| Users & Groups | Full | Full | Full | Full | Partial | Production |
| Content Types | Full | Full | Full | Full | Full | Production |
| Fields (31 types) | Full | Full | Full | Full | Full | Production |
| Views | Full | Full | Full | Full | Full | Production |
| Search | Full | Full | Full | Full | Full | Production |
| Taxonomy | Full | Full | Full | Full | Full | Production |
| User Profiles | Full | Full | Full | Full | Full | Production |
| Versions | Full | Full | Full | Full | Full | Production |
| Change Tracking | Full | Full | Full | - | - | Production |
| Recycle Bin | Full | Full | Full | Full | - | Production |
| Webhooks | N/A | Full | - | Full | - | Production |
| Batch Operations | Full | Full | Full | Full | - | Production |
| Workflows | Full | Full | Full | Full | - | Production |
| Event Receivers | - | Full | - | Full | - | Production |
| Custom Actions | - | Full | - | Full | - | Production |
| Navigation | - | Full | Full | Full | - | Production |
| Features | - | Full | Full | - | Full | Production |
Test Coverage Matrix¶
| Test Suite | Framework | Passed | Total | Rate | Notes |
|---|---|---|---|---|---|
| Server.Tests | net10.0 | 2,419 | 2,419 | 100% | In-process, 0 variance |
| Storage.Tests | net10.0 | 216 | 216 | 100% | Provider parity tests |
| RestSoap | net481 | 486 | 487 | 99.8% | 1 intentional skip |
| CSOM | net481 | ~508 | 518 | ~98% | Host crash in full suite |
| PnP | net481 | ~62 | ~77 | ~81% | Client-side limitations |
| Total | ~3,691 | ~3,717 | ~99% |
Build: 0 errors, 0 warnings
Implementation Statistics¶
| Metric | Value |
|---|---|
| SOAP Services | 26 (19 full, 7 minimal) |
| REST Endpoint Groups | 94 controllers (796+ routes) |
| CSOM Operations | ~381+ across 15+ object models |
| PowerShell Cmdlets | 121 CS* in 26 categories |
| PnP Cmdlets Working | ~62/77 (~81%) |
| Storage Providers | 7 (FileSystem, InMemory, SQLite, LiteDB, SQL Server, PostgreSQL, MySQL) |
| Field Types | 31 (all SharePoint built-in types) |
| Auth Methods | 4 (NTLM, Basic, Bearer/OAuth, Forms) |
| Content Types | 11 built-in + custom |
| Search | Full KQL + Lucene + security trimming |
Last Updated: 2026-02-16 MASTERPLAN: v46.0