Developer Platform

API Map

Route inventory for native modules, Developer API operations and Build This recipes.

Open raw .md
First-class
25 capabilities
Build This
18 products
Surfaces
Tenant runtime + Developer API

Status: generated for Developer Kit 1.20.68 from current repository contracts. Public OpenAPI SHA-256: 021867437f722c2e8d059137e6b3c88304c61135e3b0d65fb958467d540aec4f; platform OpenAPI SHA-256: 67769f799e55d571518adfe4f63c60cc8a1bb9853e1c4f1256304469787eefab.

Shipped operations catalog (catalog/operations.json) SHA-256: bab02449e86065c8ce2bce31a600663adeb70918f28e7e9c763ab85309503b6b.

This is a source-generated inventory. Its fingerprints describe these inputs; immutable package publication and deployment are recorded separately.

This document inventories the two application-facing HTTP surfaces without treating client-supplied identity as authorization:

  • Tenant runtime routes begin with /api/ and are used by rendered, authenticated SaaS pages.
  • Developer API routes begin with /v1/apps/{saasAppId}/ and are used by live-app or delegated-user integrations according to each OpenAPI operation's scopes.

The first section includes every route under the exact API base paths of all 25 documented first-class capabilities. The Build This section includes every route in the canonical generated recipe and every additional OpenAPI operation explicitly named by the runnable solution manifest. When a Build This product composes a first-class capability, the complete capability route set remains in section 1 and is linked from the product entry instead of being copied repeatedly.

Excluded from section 1 are control-plane, authentication, health, payment-support, and product-specific renderer routes that are not one of the 25 documented first-class capabilities. The portable runtime renderer routes are documented explicitly below; other excluded routes appear in section 2 only when a canonical Build This recipe or solution manifest references them.

What you need beyond this inventory

The first-class and Build This tables answer the native product-surface question. A complete headless SaaS also needs the supporting platform contracts below.

App design: pages, validation, history and publishing
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/design/authorization developerAppDesignAuthorizationGet
GET /v1/apps/{saasAppId}/design/pages developerAppDesignPagesList
POST /v1/apps/{saasAppId}/design/pages developerAppDesignPagesCreate
GET /v1/apps/{saasAppId}/design/pages/{pageKey} developerAppDesignPagesGet
PUT /v1/apps/{saasAppId}/design/pages/{pageKey}/draft developerAppDesignPagesSaveDraft
POST /v1/apps/{saasAppId}/design/pages/{pageKey}/validate developerAppDesignPagesValidate
GET /v1/apps/{saasAppId}/design/pages/{pageKey}/history developerAppDesignPagesHistory
POST /v1/apps/{saasAppId}/design/pages/{pageKey}/publish developerAppDesignPagesPublish
App design: authoring and app-wide custom fields
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/design/authoring developerAppDesignAuthoringGet
PUT /v1/apps/{saasAppId}/design/authoring/user-types/{userTypeKey} developerAppDesignAuthoringUpsertUserType
PUT /v1/apps/{saasAppId}/design/authoring/user-types/{userTypeKey}/menu developerAppDesignAuthoringSaveMenu
PUT /v1/apps/{saasAppId}/design/authoring/user-types/{userTypeKey}/tenant-policy developerAppDesignAuthoringSaveTenantPresentationPolicy
GET /v1/apps/{saasAppId}/design/authoring/tenant-policies developerAppDesignAuthoringGetTenantPresentationPolicies
GET /v1/apps/{saasAppId}/design/fields/{moduleKey} developerAppDesignFieldsList
POST /v1/apps/{saasAppId}/design/fields/{moduleKey} developerAppDesignFieldsCreate
PUT /v1/apps/{saasAppId}/design/fields/{moduleKey}/{fieldDefinitionId} developerAppDesignFieldsUpdate
GET /v1/apps/{saasAppId}/design/fields/{moduleKey}/policy developerAppDesignFieldsGetPolicy
PUT /v1/apps/{saasAppId}/design/fields/{moduleKey}/policy developerAppDesignFieldsSetPolicy
App design: debug sessions (shared with the in-app debug drawer)
Method Route OpenAPI operationId
POST /v1/apps/{saasAppId}/design/debug/sessions developerAppDesignDebugStart
POST /v1/apps/{saasAppId}/design/debug/sessions/{debugSessionId}/events developerAppDesignDebugAppend
GET /v1/apps/{saasAppId}/design/debug/sessions/{debugSessionId} developerAppDesignDebugQuery
GET /v1/apps/{saasAppId}/design/debug/sessions/history developerAppDesignDebugHistory
GET /v1/apps/{saasAppId}/design/debug/sessions/history/{debugSessionId} developerAppDesignDebugHistoryTimeline
DELETE /v1/apps/{saasAppId}/design/debug/sessions/{debugSessionId} developerAppDesignDebugClose
Payments and payment connectors
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/payment-connectors developerPaymentConnectorsList
POST /v1/apps/{saasAppId}/payment-connectors developerPaymentConnectorsCreate
PUT /v1/apps/{saasAppId}/payment-connectors/{connectorId} developerPaymentConnectorsUpdate
DELETE /v1/apps/{saasAppId}/payment-connectors/{connectorId} developerPaymentConnectorsDeactivate
GET /v1/apps/{saasAppId}/modules/payments/settings developerGetV1AppsModulesPaymentsSettings
PUT /v1/apps/{saasAppId}/modules/payments/settings/{moduleKey} developerPutV1AppsModulesPaymentsSettingsModuleKey
GET /v1/apps/{saasAppId}/modules/payments/methods developerGetV1AppsModulesPaymentsMethods
POST /v1/apps/{saasAppId}/modules/payments/records/{recordId}/charges developerPostV1AppsModulesPaymentsRecordsRecordIdGuidCharges
Webhooks, deliveries and event types
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/webhooks developerWebhookSubscriptionsList
POST /v1/apps/{saasAppId}/webhooks developerWebhookSubscriptionsCreate
PUT /v1/apps/{saasAppId}/webhooks/{subscriptionId} developerWebhookSubscriptionsUpdate
POST /v1/apps/{saasAppId}/webhooks/{subscriptionId}/rotate-secret developerWebhookSubscriptionsRotate
GET /v1/apps/{saasAppId}/webhook-deliveries developerWebhookDeliveriesList
POST /v1/apps/{saasAppId}/webhook-deliveries/{deliveryId}/retry developerWebhookDeliveriesRetry
GET /v1/apps/{saasAppId}/webhook-event-types developerWebhookSubscriptionsListEventTypes
Objects API
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/objects developerRecordsListObjects
GET /v1/apps/{saasAppId}/objects/{objectKey}/schema developerRecordsGetSchema
POST /v1/apps/{saasAppId}/objects/{objectKey}/records/search developerRecordsSearch
GET /v1/apps/{saasAppId}/objects/{objectKey}/records/{recordId} developerRecordsGet
PATCH /v1/apps/{saasAppId}/objects/{objectKey}/records/{recordId} developerRecordsUpdate
DELETE /v1/apps/{saasAppId}/objects/{objectKey}/records/{recordId} developerRecordsDelete
POST /v1/apps/{saasAppId}/objects/{objectKey}/records developerRecordsCreate
GET /v1/apps/{saasAppId}/objects/{objectKey}/records/{recordId}/relationships developerRecordsRelationships
Custom-field definitions
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/objects/{objectKey}/fields developerCustomFieldsList
POST /v1/apps/{saasAppId}/objects/{objectKey}/fields developerCustomFieldsCreate
PUT /v1/apps/{saasAppId}/objects/{objectKey}/fields/{fieldDefinitionId} developerCustomFieldsUpdate
Signup, tenant accounts, users and token exchange
Method Route OpenAPI operationId
POST /v1/apps/{saasAppId}/accounts developerHeadlessIdentityCreateAccount
GET /v1/apps/{saasAppId}/accounts developerOrganizationLifecycleList
GET /v1/apps/{saasAppId}/accounts/by-external-id developerHeadlessIdentityGetAccount
GET /v1/apps/{saasAppId}/accounts/{appAccountId}/users developerHeadlessIdentityListUsers
POST /v1/apps/{saasAppId}/accounts/{appAccountId}/users developerHeadlessIdentityCreateUser
PATCH /v1/apps/{saasAppId}/accounts/{appAccountId}/users/{userId} developerHeadlessIdentityUpdateUser
POST /v1/apps/{saasAppId}/accounts/{appAccountId}/users/{userId}/deactivate developerHeadlessIdentityDeactivateUser
POST /v1/apps/{saasAppId}/user-token-exchanges developerHeadlessIdentityExchangeUserToken
Governed Skills and GoClaw assignment
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/skills developerSkillsList
GET /v1/apps/{saasAppId}/skills/{skillVersionId} developerSkillsGet
PUT /v1/apps/{saasAppId}/goclaw-agents/{goClawAgentId}/skills/{skillKey} developerSkillsAssign
Tenant-owner outside forms
Method Route OpenAPI operationId
GET /v1/apps/{saasAppId}/outsideformsubmissions/endpoints developerOutsideFormsList
POST /v1/apps/{saasAppId}/outsideformsubmissions/endpoints developerOutsideFormsCreate
PUT /v1/apps/{saasAppId}/outsideformsubmissions/endpoints/{endpointId} developerOutsideFormsUpdate
GET /v1/apps/{saasAppId}/outsideformsubmissions/browser-challenge developerOutsideFormsBrowserChallenge
GET /v1/apps/{saasAppId}/outsideformsubmissions/{submissionId} developerOutsideFormsGetSubmission

Embed a page body or the whole published page

An external frontend can render either the portable page body inside its own navigation and theme or the complete BuildWithHQ page shell. Both choices use the published page definition and the same server-side entitlement fallback as the hosted tenant runtime; a page response grants no additional data authority.

Method Route Result / purpose Required credential Required scope OpenAPI operationId
POST /v1/apps/{saasAppId}/runtime/bindings Resolve 1..24 unique page binding keys with current-user record security DelegatedUserCredential runtime.bindings.read developerRuntimePagesResolveBindings
GET /v1/apps/{saasAppId}/runtime/pages/{pageKey} Page body only (components + page); host supplies its own shell and navigation DelegatedUserCredential runtime.pages.read developerRuntimePagesGetBody
GET /v1/apps/{saasAppId}/runtime/pages/{pageKey}/bootstrap Whole published page bootstrap (shell + components + page) DelegatedUserCredential runtime.pages.read developerRuntimePagesGetBootstrap

Use the body route for components + page. Its includeDesignTokens query parameter defaults to false, so the host's CSS wins; set it to true when page-level design tokens should travel with the body. Use the bootstrap route for shell + components + page, including BuildWithHQ menus, top bar, entitled-page navigation, and tenant presentation.

After loading either representation, send the page's unique binding keys to the batch binding route. Each item returns its own safe ok, notFound, forbidden, or invalid status. Resolution runs through the registered runtime binding contract and current secured stored procedures, so tenant, user, DataRole, location, and record visibility still come from the delegated identity rather than request data.

These routes accept only a delegated user token (bwu_live_); a live-app credential (bwk_live_) is rejected even if it names the scope. The Developer Kit SDK exposes the flow through BuildWithHQRuntimeClient.getPageBody, getPageBootstrap, and resolveBindings.

Installed marketplace services have a separate app-specific discovery and contract-projection surface. See [MARKETPLACE-SERVICE-APIS.md](../MARKETPLACE-SERVICE-APIS.md) for endpoint schemas, per-app OpenAPI, contract fingerprints, MCP discovery, and the shipped database-policy evidence.

Manage SaaS CSS and design assets

A trusted backend can manage the theme and shared design library for its credential-bound SaaS application. These routes require a server-held live app credential (bwk_live_); draft and delegated-user credentials cannot use them.

Method Route Purpose Scope OpenAPI operationId
GET /v1/apps/{saasAppId}/assets List shared app-level assets assets.read developerAssetsList
POST /v1/apps/{saasAppId}/assets Multipart upload; 25 MiB maximum assets.write developerAssetsUpload
DELETE /v1/apps/{saasAppId}/assets/{assetId} Retire an asset and its stored bytes assets.write developerAssetsDelete
GET /v1/apps/{saasAppId}/assets/{assetId}/content Authenticated attachment download assets.read developerAssetsContent
GET /v1/apps/{saasAppId}/theme Read app theme, CSS variables, and design tokens themes.read developerThemesGet
PUT /v1/apps/{saasAppId}/theme Version-fenced app theme update themes.write developerThemesPut

Theme updates use optimistic versioning and validated --runtime-* CSS variables plus bounded base design tokens. Asset upload is multipart/form-data with required binary file plus optional metadata. Uploads default to private; isPublic=true is required to receive an immutable https://assets.buildwithhq.com/{saasAppId}/{assetId} URL. Asset types are the fixed document, font, image, stylesheet, and video set. Compile Tailwind in the developer's own build pipeline and upload the resulting CSS; these routes never execute npm, plugins, arbitrary JavaScript, or build scripts. CSS is validated before publication; .dll, .com, and .exe are rejected. Page-specific structure and tokens remain on the draft/validate/publish routes. No route accepts a physical storage root, storage key, server, database, account, or connection string. See [SAAS-DESIGN-ASSETS.md](../SAAS-DESIGN-ASSETS.md) for the complete React, Tailwind, asset, and page-publishing workflow.

Associate eligible records into a recursive graph

Every first-class or Build This entity backed by a canonical, authorized Records.RecordId can participate in the shared Record Graph. Derived projections that do not own a Record must link back to their native owner instead.

1. Open the seed record graph. The response returns the currently visible nodes and edges plus the registered relationTypes that may be selected; do not invent a relation key.

2. Add an edge from the seed to another authorized record using that target's recordId and one returned relationKey.

3. Repeat the same operation from any related record to build a multi-level graph. Traversal follows both incoming and outgoing edges, deduplicates previously visited nodes, and safely supports cyclic graphs.

4. Read the recursive result with maxDepth from 1 through 5 and maxNodes from 2 through 200. Smaller bounds are recommended for ordinary screens; the response reports depthReached, nodeCount, and truncated.

5. Remove an edge by its returned recordRelationId; removing a relationship does not delete either record.

Surface Purpose Method and route Body / bounds
Tenant runtime Read recursive graph GET /api/modules/record-graph/{recordId}?maxDepth=2&maxNodes=100 maxDepth=1..5; maxNodes=2..200
Tenant runtime Add association PUT /api/modules/record-graph/{fromRecordId}/relations {"toRecordId":"<target-guid>","relationKey":"<registered-key>"}
Tenant runtime Remove association DELETE /api/modules/record-graph/relations/{recordRelationId} No body
Developer API Read recursive graph GET /v1/apps/{saasAppId}/modules/record-graph/{recordId}?maxDepth=2&maxNodes=100 Same bounds
Developer API Add association PUT /v1/apps/{saasAppId}/modules/record-graph/{fromRecordId}/relations {"toRecordId":"<target-guid>","relationKey":"<registered-key>"}
Developer API Remove association DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} No body

Association security is symmetric: both endpoint records must be active, belong to the same routed tenant/SaaS, and be readable and editable inside the current user's DataRole, location, and direct-conversation participation envelope. Self-links, empty or unregistered relation keys, foreign/concealed records, and unauthorized edge removal are rejected safely. Repeating the same directed edge and relation type returns the existing relationship instead of creating a duplicate.

Record Graph is intentionally REST/SDK-only in this release. The curated 43-tool MCP surface does not expose these nine operations; an MCP client must call them through an approved REST/SDK integration rather than assuming a graph tool exists.

Vendor generation provenance

The following are vendor-repository inputs, not regeneration instructions for a Developer Kit recipient. The ZIP intentionally omits internal catalogs, solution manifests, and the generator. Recipients can independently verify the two shipped contract inputs against their hashes below.

  • Vendor catalog-generator/catalog.json — schema 2; internal source snapshot entries: tenant modules=285, additional server surfaces=135, unresolved module gaps=0. These are vendor input counts, not published API totals. SHA-256 c24274044bf05b49a7ff79c6308968c2c8284856ac52bbaaa9422dc3a6b40518.
  • Shipped openapi/buildwithhq-generated.json — 403 published operations, SHA-256 021867437f722c2e8d059137e6b3c88304c61135e3b0d65fb958467d540aec4f.
  • Shipped products/build-this-api-recipes.json — 18 recipes and 73 referenced recipe operations, SHA-256 3e423f14d5f989f8276c1e710127649c2905667f3b29dd5b756de734ab90aa36.
  • Vendor solutions/build-this/*/solution.json — explicit production-solution operation and composition contracts.
  • Vendor regeneration command: python tools/generate_api_route_inventory.py; vendor verification command: python tools/generate_api_route_inventory.py --check.

1. First-class modules

Connected work (connected-work)

API bases: /api/modules/record-graph.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Not published as a direct action; this capability may be derived/read-only or action-specific
Edit / update / modify Tenant 3; Developer 3
Delete / remove / deactivate Tenant 2; Developer 2
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships Tenant 9; Developer 9
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (9):

Method Route Action Controller action
DELETE /api/modules/record-graph/knowledge-relations/{recordRelationId:guid} Relationship graph UnlinkKnowledgeAsync
GET /api/modules/record-graph/records Relationship graph SearchAsync
DELETE /api/modules/record-graph/relations/{recordRelationId:guid} Associate / remove relationship RemoveRelationAsync
GET /api/modules/record-graph/{recordId:guid} Relationship graph GetAsync
PUT /api/modules/record-graph/{recordId:guid}/favorite Favorite / unfavorite SetFavoriteAsync
GET /api/modules/record-graph/{recordId:guid}/knowledge Relationship graph RelatedKnowledgeAsync
PUT /api/modules/record-graph/{recordId:guid}/knowledge Associate / add LinkKnowledgeAsync
GET /api/modules/record-graph/{recordId:guid}/knowledge/candidates Relationship graph ContextualKnowledgeAsync
PUT /api/modules/record-graph/{recordId:guid}/relations Associate / add AddRelationAsync

Developer API routes (9):

Method Route Action OpenAPI operationId
DELETE /v1/apps/{saasAppId}/modules/record-graph/knowledge-relations/{recordRelationId} Relationship graph developerDeleteV1AppsModulesRecordGraphKnowledgeRelationsRecordRelationIdGuid
GET /v1/apps/{saasAppId}/modules/record-graph/records Relationship graph developerGetV1AppsModulesRecordGraphRecords
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesRecordGraphRecordIdGuidFavorite
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId}/knowledge Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuidKnowledge
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/knowledge Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidKnowledge
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId}/knowledge/candidates Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuidKnowledgeCandidates
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations
Knowledge finder (knowledge-finder)

API bases: /api/modules/knowledge-core.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 13; Developer 13
Add / create / execute Tenant 17; Developer 17
Edit / update / modify Tenant 3; Developer 3
Delete / remove / deactivate Tenant 2; Developer 2
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (35):

Method Route Action Controller action
GET /api/modules/knowledge-core List ListAsync
POST /api/modules/knowledge-core Create CreateAsync
GET /api/modules/knowledge-core/assignment-lookup List / view AssignmentLookupAsync
GET /api/modules/knowledge-core/collections Collections CollectionsAsync
POST /api/modules/knowledge-core/collections Create Collection CreateCollectionAsync
PUT /api/modules/knowledge-core/collections/{collectionId:guid} Update Collection UpdateCollectionAsync
DELETE /api/modules/knowledge-core/collections/{collectionId:guid}/items/{recordId:guid} Remove Collection Item RemoveCollectionItemAsync
POST /api/modules/knowledge-core/collections/{collectionId:guid}/items/{recordId:guid} Add Collection Item AddCollectionItemAsync
GET /api/modules/knowledge-core/gaps Gaps GapsAsync
GET /api/modules/knowledge-core/health Health HealthAsync
DELETE /api/modules/knowledge-core/owners/{knowledgeOwnerId:guid} Remove Owner RemoveOwnerAsync
GET /api/modules/knowledge-core/questions Questions QuestionsAsync
POST /api/modules/knowledge-core/questions Create Question CreateQuestionAsync
PUT /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid} Edit Question EditQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/answer Answer Question AnswerQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/assign Assign Question AssignQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/close Close Question CloseQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/convert Convert Question ConvertQuestionAsync
GET /api/modules/knowledge-core/reviews Reviews ReviewsAsync
POST /api/modules/knowledge-core/reviews/{reviewCycleId:guid}/begin Begin Review BeginReviewAsync
POST /api/modules/knowledge-core/reviews/{reviewCycleId:guid}/complete Complete Review CompleteReviewAsync
POST /api/modules/knowledge-core/reviews/{reviewCycleId:guid}/reassign Reassign Review ReassignReviewAsync
GET /api/modules/knowledge-core/support-learning/candidates Support Learning Candidates SupportLearningCandidatesAsync
POST /api/modules/knowledge-core/support-learning/candidates Create Support Learning Candidate CreateSupportLearningCandidateAsync
GET /api/modules/knowledge-core/unowned Unowned UnownedAsync
GET /api/modules/knowledge-core/{recordId:guid} Get GetAsync
PUT /api/modules/knowledge-core/{recordId:guid} Update UpdateAsync
POST /api/modules/knowledge-core/{recordId:guid}/archive Archive ArchiveAsync
GET /api/modules/knowledge-core/{recordId:guid}/feedback Feedback Summary FeedbackSummaryAsync
POST /api/modules/knowledge-core/{recordId:guid}/feedback Record Feedback RecordFeedbackAsync
GET /api/modules/knowledge-core/{recordId:guid}/owners Owners OwnersAsync
POST /api/modules/knowledge-core/{recordId:guid}/owners Set Owner SetOwnerAsync
POST /api/modules/knowledge-core/{recordId:guid}/publish Publish PublishAsync
POST /api/modules/knowledge-core/{recordId:guid}/restore Restore RestoreAsync
GET /api/modules/knowledge-core/{recordId:guid}/revisions Revisions RevisionsAsync

Developer API routes (35):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/knowledge-core List / view developerGetV1AppsModulesKnowledgeCore
POST /v1/apps/{saasAppId}/modules/knowledge-core Add / create / execute developerPostV1AppsModulesKnowledgeCore
GET /v1/apps/{saasAppId}/modules/knowledge-core/assignment-lookup List / view developerGetV1AppsModulesKnowledgeCoreAssignmentLookup
GET /v1/apps/{saasAppId}/modules/knowledge-core/collections List / view developerGetV1AppsModulesKnowledgeCoreCollections
POST /v1/apps/{saasAppId}/modules/knowledge-core/collections Add / create / execute developerPostV1AppsModulesKnowledgeCoreCollections
PUT /v1/apps/{saasAppId}/modules/knowledge-core/collections/{collectionId} Edit / update / modify developerPutV1AppsModulesKnowledgeCoreCollectionsCollectionIdGuid
DELETE /v1/apps/{saasAppId}/modules/knowledge-core/collections/{collectionId}/items/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesKnowledgeCoreCollectionsCollectionIdGuidItemsRecordIdGuid
POST /v1/apps/{saasAppId}/modules/knowledge-core/collections/{collectionId}/items/{recordId} Add / create / execute developerPostV1AppsModulesKnowledgeCoreCollectionsCollectionIdGuidItemsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/knowledge-core/gaps List / view developerGetV1AppsModulesKnowledgeCoreGaps
GET /v1/apps/{saasAppId}/modules/knowledge-core/health List / view developerGetV1AppsModulesKnowledgeCoreHealth
DELETE /v1/apps/{saasAppId}/modules/knowledge-core/owners/{knowledgeOwnerId} Delete / remove / deactivate developerDeleteV1AppsModulesKnowledgeCoreOwnersKnowledgeOwnerIdGuid
GET /v1/apps/{saasAppId}/modules/knowledge-core/questions List / view developerGetV1AppsModulesKnowledgeCoreQuestions
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestions
PUT /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId} Edit / update / modify developerPutV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuid
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/answer Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidAnswer
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/assign Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidAssign
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/close Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidClose
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/convert Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidConvert
GET /v1/apps/{saasAppId}/modules/knowledge-core/reviews List / view developerGetV1AppsModulesKnowledgeCoreReviews
POST /v1/apps/{saasAppId}/modules/knowledge-core/reviews/{reviewCycleId}/begin Add / create / execute developerPostV1AppsModulesKnowledgeCoreReviewsReviewCycleIdGuidBegin
POST /v1/apps/{saasAppId}/modules/knowledge-core/reviews/{reviewCycleId}/complete Add / create / execute developerPostV1AppsModulesKnowledgeCoreReviewsReviewCycleIdGuidComplete
POST /v1/apps/{saasAppId}/modules/knowledge-core/reviews/{reviewCycleId}/reassign Add / create / execute developerPostV1AppsModulesKnowledgeCoreReviewsReviewCycleIdGuidReassign
GET /v1/apps/{saasAppId}/modules/knowledge-core/support-learning/candidates List / view developerGetV1AppsModulesKnowledgeCoreSupportLearningCandidates
POST /v1/apps/{saasAppId}/modules/knowledge-core/support-learning/candidates Add / create / execute developerPostV1AppsModulesKnowledgeCoreSupportLearningCandidates
GET /v1/apps/{saasAppId}/modules/knowledge-core/unowned List / view developerGetV1AppsModulesKnowledgeCoreUnowned
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId} List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/knowledge-core/{recordId} Edit / update / modify developerPutV1AppsModulesKnowledgeCoreRecordIdGuid
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/archive Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidArchive
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/feedback List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuidFeedback
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/feedback Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidFeedback
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/owners List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuidOwners
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/owners Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidOwners
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/publish Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidPublish
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/restore Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidRestore
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/revisions List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuidRevisions
Universal Inbox (universal-inbox)

API bases: /api/inbox, /api/inbox/items.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 13; Developer 13
Add / create / execute Tenant 5; Developer 4
Edit / update / modify Tenant 4; Developer 4
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (22):

Method Route Action Controller action
GET /api/inbox/badge Get Badge GetBadgeAsync
GET /api/inbox/badge/indicator Get Badge Indicator GetBadgeIndicatorAsync
GET /api/inbox/channels/ticketing Mailbox ticketing configuration GetChannelTicketingAsync
PUT /api/inbox/channels/{channelConnectionId:guid}/ticketing Mailbox ticketing configuration SetChannelTicketingAsync
GET /api/inbox/delivery/debug Get Delivery Debug GetDeliveryDebugAsync
POST /api/inbox/delivery/{outboundMessageId:guid}/retry Retry operation RetryDeliveryAsync
GET /api/inbox/email-channels/ticketing Mailbox ticketing configuration GetEmailTicketingAsync
PUT /api/inbox/email-channels/{channelConnectionId:guid}/ticketing Mailbox ticketing configuration SetEmailTicketingAsync
GET /api/inbox/items Get Items GetItemsAsync
GET /api/inbox/items/{inboxItemId:guid} Get Item GetItemAsync
PUT /api/inbox/items/{inboxItemId:guid}/human-state Human state / resolution UpdateHumanStateAsync
POST /api/inbox/items/{inboxItemId:guid}/reply Message / reply ReplyAsync
POST /api/inbox/items/{inboxItemId:guid}/workflow-approval Workflow approval DecideAsync
GET /api/inbox/lego-catalog Lego Catalog LegoCatalogAsync
GET /api/inbox/lego-presentation Lego Presentation LegoPresentationAsync
GET /api/inbox/notifications Get Notifications GetNotificationsAsync
GET /api/inbox/support-lanes List ListAsync
POST /api/inbox/support-lanes Create CreateAsync
GET /api/inbox/support-lanes/options Options OptionsAsync
GET /api/inbox/support-lanes/{laneId:guid} Get GetAsync
PUT /api/inbox/support-lanes/{laneId:guid} Update UpdateAsync
POST /api/inbox/support-lanes/{laneId:guid}/retire Retire RetireAsync

Developer API routes (21):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/inbox/badge List / view developerGetV1AppsInboxBadge
GET /v1/apps/{saasAppId}/inbox/badge/indicator List / view developerGetV1AppsInboxBadgeIndicator
GET /v1/apps/{saasAppId}/inbox/channels/ticketing Mailbox ticketing configuration developerGetV1AppsInboxChannelsTicketing
PUT /v1/apps/{saasAppId}/inbox/channels/{channelConnectionId}/ticketing Mailbox ticketing configuration developerPutV1AppsInboxChannelsChannelConnectionIdGuidTicketing
GET /v1/apps/{saasAppId}/inbox/delivery/debug List / view developerGetV1AppsInboxDeliveryDebug
POST /v1/apps/{saasAppId}/inbox/delivery/{outboundMessageId}/retry Retry operation developerPostV1AppsInboxDeliveryOutboundMessageIdGuidRetry
GET /v1/apps/{saasAppId}/inbox/email-channels/ticketing Mailbox ticketing configuration developerGetV1AppsInboxEmailChannelsTicketing
PUT /v1/apps/{saasAppId}/inbox/email-channels/{channelConnectionId}/ticketing Mailbox ticketing configuration developerPutV1AppsInboxEmailChannelsChannelConnectionIdGuidTicketing
GET /v1/apps/{saasAppId}/inbox/items List / view developerGetV1AppsInboxItems
GET /v1/apps/{saasAppId}/inbox/items/{inboxItemId} List / view developerGetV1AppsInboxItemsInboxItemIdGuid
PUT /v1/apps/{saasAppId}/inbox/items/{inboxItemId}/human-state Human state / resolution developerPutV1AppsInboxItemsInboxItemIdGuidHumanState
POST /v1/apps/{saasAppId}/inbox/items/{inboxItemId}/reply Message / reply developerPostV1AppsInboxItemsInboxItemIdGuidReply
GET /v1/apps/{saasAppId}/inbox/lego-catalog List / view developerGetV1AppsInboxLegoCatalog
GET /v1/apps/{saasAppId}/inbox/lego-presentation List / view developerGetV1AppsInboxLegoPresentation
GET /v1/apps/{saasAppId}/inbox/notifications List / view developerGetV1AppsInboxNotifications
GET /v1/apps/{saasAppId}/inbox/support-lanes List / view developerGetV1AppsInboxSupportLanes
POST /v1/apps/{saasAppId}/inbox/support-lanes Add / create / execute developerPostV1AppsInboxSupportLanes
GET /v1/apps/{saasAppId}/inbox/support-lanes/options List / view developerGetV1AppsInboxSupportLanesOptions
GET /v1/apps/{saasAppId}/inbox/support-lanes/{laneId} List / view developerGetV1AppsInboxSupportLanesLaneIdGuid
PUT /v1/apps/{saasAppId}/inbox/support-lanes/{laneId} Edit / update / modify developerPutV1AppsInboxSupportLanesLaneIdGuid
POST /v1/apps/{saasAppId}/inbox/support-lanes/{laneId}/retire Add / create / execute developerPostV1AppsInboxSupportLanesLaneIdGuidRetire
Checklists & Signoffs (checklists-signoffs)

API bases: /api/modules/checklists-signoffs.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 6; Developer 6
Add / create / execute Tenant 5; Developer 5
Edit / update / modify Tenant 2; Developer 2
Delete / remove / deactivate Tenant 2; Developer 2
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence Tenant 2; Developer 2
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (15):

Method Route Action Controller action
PUT /api/modules/checklists-signoffs/items/{checklistRunItemId:guid} Update Item UpdateItemAsync
POST /api/modules/checklists-signoffs/items/{checklistRunItemId:guid}/proof File proof / evidence AttachProofAsync
GET /api/modules/checklists-signoffs/lego/catalog Get Lego Catalog GetLegoCatalog
GET /api/modules/checklists-signoffs/lookups/{lookupId:guid} Get Lego Lookup GetLegoLookupAsync
DELETE /api/modules/checklists-signoffs/proof/{checklistItemEvidenceId:guid} File proof / evidence RemoveProofAsync
GET /api/modules/checklists-signoffs/runs List Runs ListRunsAsync
POST /api/modules/checklists-signoffs/runs Start Run StartRunAsync
GET /api/modules/checklists-signoffs/runs/{checklistRunId:guid} Get Run GetRunAsync
POST /api/modules/checklists-signoffs/runs/{checklistRunId:guid}/cancel Cancel Run CancelRunAsync
POST /api/modules/checklists-signoffs/runs/{checklistRunId:guid}/submit Submit workflow SubmitAsync
GET /api/modules/checklists-signoffs/templates List Templates ListTemplatesAsync
POST /api/modules/checklists-signoffs/templates Create Template CreateTemplateAsync
DELETE /api/modules/checklists-signoffs/templates/{checklistTemplateId:guid} Remove Template RemoveTemplateAsync
GET /api/modules/checklists-signoffs/templates/{checklistTemplateId:guid} Get Template GetTemplateAsync
PUT /api/modules/checklists-signoffs/templates/{checklistTemplateId:guid} Update Template UpdateTemplateAsync

Developer API routes (15):

Method Route Action OpenAPI operationId
PUT /v1/apps/{saasAppId}/modules/checklists-signoffs/items/{checklistRunItemId} Edit / update / modify developerPutV1AppsModulesChecklistsSignoffsItemsChecklistRunItemIdGuid
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/items/{checklistRunItemId}/proof File proof / evidence developerPostV1AppsModulesChecklistsSignoffsItemsChecklistRunItemIdGuidProof
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/lego/catalog List / view developerGetV1AppsModulesChecklistsSignoffsLegoCatalog
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/lookups/{lookupId} List / view developerGetV1AppsModulesChecklistsSignoffsLookupsLookupIdGuid
DELETE /v1/apps/{saasAppId}/modules/checklists-signoffs/proof/{checklistItemEvidenceId} File proof / evidence developerDeleteV1AppsModulesChecklistsSignoffsProofChecklistItemEvidenceIdGuid
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/runs List / view developerGetV1AppsModulesChecklistsSignoffsRuns
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs Add / create / execute developerPostV1AppsModulesChecklistsSignoffsRuns
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/runs/{checklistRunId} List / view developerGetV1AppsModulesChecklistsSignoffsRunsChecklistRunIdGuid
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs/{checklistRunId}/cancel Add / create / execute developerPostV1AppsModulesChecklistsSignoffsRunsChecklistRunIdGuidCancel
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs/{checklistRunId}/submit Submit workflow developerPostV1AppsModulesChecklistsSignoffsRunsChecklistRunIdGuidSubmit
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/templates List / view developerGetV1AppsModulesChecklistsSignoffsTemplates
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/templates Add / create / execute developerPostV1AppsModulesChecklistsSignoffsTemplates
DELETE /v1/apps/{saasAppId}/modules/checklists-signoffs/templates/{checklistTemplateId} Delete / remove / deactivate developerDeleteV1AppsModulesChecklistsSignoffsTemplatesChecklistTemplateIdGuid
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/templates/{checklistTemplateId} List / view developerGetV1AppsModulesChecklistsSignoffsTemplatesChecklistTemplateIdGuid
PUT /v1/apps/{saasAppId}/modules/checklists-signoffs/templates/{checklistTemplateId} Edit / update / modify developerPutV1AppsModulesChecklistsSignoffsTemplatesChecklistTemplateIdGuid
GoClaw (goclaw)

API bases: /api/goclaw/agents, /api/goclaw/approvals.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 3; Developer 3
Add / create / execute Tenant 4; Developer 4
Edit / update / modify Tenant 1; Developer 0
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (8):

Method Route Action Controller action
PUT /api/goclaw/agents/{goClawAgentId:guid}/authority Configure ConfigureAsync
GET /api/goclaw/approvals Get GetAsync
GET /api/goclaw/approvals/lego/catalog Lego Catalog LegoCatalog
GET /api/goclaw/approvals/lego/presentation Presentation metadata LegoPresentationAsync
POST /api/goclaw/approvals/{suggestionBatchId:guid}/approve Approve ApproveAsync
POST /api/goclaw/approvals/{suggestionBatchId:guid}/reject Reject RejectAsync
POST /api/goclaw/approvals/{suggestionBatchId:guid}/retry Retry operation RetryAsync
POST /api/goclaw/approvals/{suggestionBatchId:guid}/take-over Take Over TakeOverAsync

Developer API routes (7):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/goclaw/approvals List / view developerGetV1AppsGoclawApprovals
GET /v1/apps/{saasAppId}/goclaw/approvals/lego/catalog List / view developerGetV1AppsGoclawApprovalsLegoCatalog
GET /v1/apps/{saasAppId}/goclaw/approvals/lego/presentation Presentation metadata developerGetV1AppsGoclawApprovalsLegoPresentation
POST /v1/apps/{saasAppId}/goclaw/approvals/{suggestionBatchId}/approve Approve developerPostV1AppsGoclawApprovalsSuggestionBatchIdGuidApprove
POST /v1/apps/{saasAppId}/goclaw/approvals/{suggestionBatchId}/reject Reject developerPostV1AppsGoclawApprovalsSuggestionBatchIdGuidReject
POST /v1/apps/{saasAppId}/goclaw/approvals/{suggestionBatchId}/retry Retry operation developerPostV1AppsGoclawApprovalsSuggestionBatchIdGuidRetry
POST /v1/apps/{saasAppId}/goclaw/approvals/{suggestionBatchId}/take-over Add / create / execute developerPostV1AppsGoclawApprovalsSuggestionBatchIdGuidTakeOver
AI Insights (ai-insights)

API bases: /api/modules/ai-insights.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 3; Developer 2
Add / create / execute Tenant 1; Developer 0
Edit / update / modify Tenant 4; Developer 1
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (8):

Method Route Action Controller action
GET /api/modules/ai-insights List ListAsync
GET /api/modules/ai-insights/settings Get Settings GetSettingsAsync
PUT /api/modules/ai-insights/settings Save Settings SaveSettingsAsync
POST /api/modules/ai-insights/settings/directives Add Directive AddDirectiveAsync
PUT /api/modules/ai-insights/settings/directives/{directiveId:guid} Save Directive SaveDirectiveAsync
PUT /api/modules/ai-insights/settings/starters/{directiveId:guid} Set Starter Directive SetStarterDirectiveAsync
GET /api/modules/ai-insights/{insightId:guid} Get GetAsync
PUT /api/modules/ai-insights/{insightId:guid}/state State transition SetStateAsync

Developer API routes (3):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/ai-insights List / view developerGetV1AppsModulesAiInsights
GET /v1/apps/{saasAppId}/modules/ai-insights/{insightId} List / view developerGetV1AppsModulesAiInsightsInsightIdGuid
PUT /v1/apps/{saasAppId}/modules/ai-insights/{insightId}/state State transition developerPutV1AppsModulesAiInsightsInsightIdGuidState
Contacts (contacts)

API bases: /api/modules/contacts.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 7; Developer 6
Add / create / execute Tenant 2; Developer 1
Edit / update / modify Tenant 4; Developer 2
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (14):

Method Route Action Controller action
GET /api/modules/contacts List ListAsync
POST /api/modules/contacts Create CreateAsync
GET /api/modules/contacts/count Count CountAsync
GET /api/modules/contacts/create-visibility-options List / view GetCreateVisibilityOptionsAsync
GET /api/modules/contacts/list-preferences Get List Preferences GetListPreferencesAsync
PUT /api/modules/contacts/list-preferences/{scope} Save List Preferences SaveListPreferencesAsync
GET /api/modules/contacts/lookups/{lookupId:guid} Get Lookup GetLookupAsync
GET /api/modules/contacts/schema Schema / field metadata GetSchemaAsync
DELETE /api/modules/contacts/{recordId:guid} Remove RemoveAsync
GET /api/modules/contacts/{recordId:guid} Get GetAsync
PUT /api/modules/contacts/{recordId:guid} Update UpdateAsync
PUT /api/modules/contacts/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync
PUT /api/modules/contacts/{recordId:guid}/secure-fields/{fieldDefinitionId:guid} Set Secure Field SetSecureFieldAsync
POST /api/modules/contacts/{recordId:guid}/secure-fields/{fieldDefinitionId:guid}/reveal Reveal Secure Field RevealSecureFieldAsync

Developer API routes (10):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/contacts List / view developerGetV1AppsModulesContacts
POST /v1/apps/{saasAppId}/modules/contacts Add / create / execute developerPostV1AppsModulesContacts
GET /v1/apps/{saasAppId}/modules/contacts/count List / view developerGetV1AppsModulesContactsCount
GET /v1/apps/{saasAppId}/modules/contacts/create-visibility-options List / view developerGetV1AppsModulesContactsCreateVisibilityOptions
GET /v1/apps/{saasAppId}/modules/contacts/lookups/{lookupId} List / view developerGetV1AppsModulesContactsLookupsLookupIdGuid
GET /v1/apps/{saasAppId}/modules/contacts/schema Schema / field metadata developerGetV1AppsModulesContactsSchema
DELETE /v1/apps/{saasAppId}/modules/contacts/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesContactsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/contacts/{recordId} List / view developerGetV1AppsModulesContactsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/contacts/{recordId} Edit / update / modify developerPutV1AppsModulesContactsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/contacts/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesContactsRecordIdGuidFavorite
Work Orders (work-orders)

API bases: /api/modules/work-orders.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 5; Developer 6
Add / create / execute Tenant 1; Developer 1
Edit / update / modify Tenant 3; Developer 3
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (10):

Method Route Action Controller action
GET /api/modules/work-orders List ListAsync
POST /api/modules/work-orders Create CreateAsync
GET /api/modules/work-orders/lookups/{lookupId:guid} Get Lookup GetLookupAsync
GET /api/modules/work-orders/schema Schema / field metadata GetSchemaAsync
DELETE /api/modules/work-orders/{recordId:guid} Remove RemoveAsync
GET /api/modules/work-orders/{recordId:guid} Get GetAsync
PUT /api/modules/work-orders/{recordId:guid} Update UpdateAsync
PUT /api/modules/work-orders/{recordId:guid}/assignment Assignment update AssignAsync
PUT /api/modules/work-orders/{recordId:guid}/status Status transition StatusAsync
GET /api/modules/work-orders/{recordId:guid}/status-transitions List / view GetStatusTransitionsAsync

Developer API routes (11):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/work-orders List / view developerGetV1AppsModulesWorkOrders
POST /v1/apps/{saasAppId}/modules/work-orders Add / create / execute developerPostV1AppsModulesWorkOrders
GET /v1/apps/{saasAppId}/modules/work-orders/lookups/{lookupId} List / view developerGetV1AppsModulesWorkOrdersLookupsLookupIdGuid
GET /v1/apps/{saasAppId}/modules/work-orders/presentation Presentation metadata developerPresentationsGet
GET /v1/apps/{saasAppId}/modules/work-orders/schema Schema / field metadata developerGetV1AppsModulesWorkOrdersSchema
DELETE /v1/apps/{saasAppId}/modules/work-orders/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesWorkOrdersRecordIdGuid
GET /v1/apps/{saasAppId}/modules/work-orders/{recordId} List / view developerGetV1AppsModulesWorkOrdersRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/work-orders/{recordId} Edit / update / modify developerPutV1AppsModulesWorkOrdersRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/work-orders/{recordId}/assignment Assignment update developerPutV1AppsModulesWorkOrdersRecordIdGuidAssignment
PUT /v1/apps/{saasAppId}/modules/work-orders/{recordId}/status Status transition developerPutV1AppsModulesWorkOrdersRecordIdGuidStatus
GET /v1/apps/{saasAppId}/modules/work-orders/{recordId}/status-transitions List / view developerGetV1AppsModulesWorkOrdersRecordIdGuidStatusTransitions
Reservations (reservations)

API bases: /api/modules/reservations.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 6; Developer 6
Add / create / execute Tenant 2; Developer 2
Edit / update / modify Tenant 3; Developer 3
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (11):

Method Route Action Controller action
GET /api/modules/reservations List ListAsync
GET /api/modules/reservations/assignees List / view GetAssigneesAsync
GET /api/modules/reservations/capabilities Capabilities CapabilitiesAsync
GET /api/modules/reservations/lego/catalog Lego Catalog LegoCatalog
GET /api/modules/reservations/products List Products ListProductsAsync
POST /api/modules/reservations/products Upsert Product UpsertProductAsync
POST /api/modules/reservations/purchase Purchase PurchaseAsync
GET /api/modules/reservations/{recordId:guid} Get GetAsync
PUT /api/modules/reservations/{recordId:guid}/followups Update Followup UpdateFollowupAsync
PUT /api/modules/reservations/{recordId:guid}/schedule Reschedule RescheduleAsync
PUT /api/modules/reservations/{recordId:guid}/status Status transition SetStatusAsync

Developer API routes (11):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/reservations List / view developerGetV1AppsModulesReservations
GET /v1/apps/{saasAppId}/modules/reservations/assignees List / view developerGetV1AppsModulesReservationsAssignees
GET /v1/apps/{saasAppId}/modules/reservations/capabilities List / view developerGetV1AppsModulesReservationsCapabilities
GET /v1/apps/{saasAppId}/modules/reservations/lego/catalog List / view developerGetV1AppsModulesReservationsLegoCatalog
GET /v1/apps/{saasAppId}/modules/reservations/products List / view developerGetV1AppsModulesReservationsProducts
POST /v1/apps/{saasAppId}/modules/reservations/products Add / create / execute developerPostV1AppsModulesReservationsProducts
POST /v1/apps/{saasAppId}/modules/reservations/purchase Add / create / execute developerPostV1AppsModulesReservationsPurchase
GET /v1/apps/{saasAppId}/modules/reservations/{recordId} List / view developerGetV1AppsModulesReservationsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/reservations/{recordId}/followups Edit / update / modify developerPutV1AppsModulesReservationsRecordIdGuidFollowups
PUT /v1/apps/{saasAppId}/modules/reservations/{recordId}/schedule Edit / update / modify developerPutV1AppsModulesReservationsRecordIdGuidSchedule
PUT /v1/apps/{saasAppId}/modules/reservations/{recordId}/status Status transition developerPutV1AppsModulesReservationsRecordIdGuidStatus
Calendar (calendar)

API bases: /api/modules/calendar.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Tenant 1; Developer 1
Edit / update / modify Tenant 2; Developer 2
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (8):

Method Route Action Controller action
GET /api/modules/calendar List ListAsync
POST /api/modules/calendar Create CreateAsync
GET /api/modules/calendar/capabilities Capabilities CapabilitiesAsync
GET /api/modules/calendar/lego/catalog Lego Catalog LegoCatalog
DELETE /api/modules/calendar/{recordId:guid} Remove RemoveAsync
GET /api/modules/calendar/{recordId:guid} Get GetAsync
PUT /api/modules/calendar/{recordId:guid} Update UpdateAsync
PUT /api/modules/calendar/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync

Developer API routes (8):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/calendar List / view developerGetV1AppsModulesCalendar
POST /v1/apps/{saasAppId}/modules/calendar Add / create / execute developerPostV1AppsModulesCalendar
GET /v1/apps/{saasAppId}/modules/calendar/capabilities List / view developerGetV1AppsModulesCalendarCapabilities
GET /v1/apps/{saasAppId}/modules/calendar/lego/catalog List / view developerGetV1AppsModulesCalendarLegoCatalog
DELETE /v1/apps/{saasAppId}/modules/calendar/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesCalendarRecordIdGuid
GET /v1/apps/{saasAppId}/modules/calendar/{recordId} List / view developerGetV1AppsModulesCalendarRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/calendar/{recordId} Edit / update / modify developerPutV1AppsModulesCalendarRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/calendar/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesCalendarRecordIdGuidFavorite
Files (files)

API bases: /api/modules/files.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 6; Developer 5
Add / create / execute Tenant 2; Developer 2
Edit / update / modify Tenant 3; Developer 2
Delete / remove / deactivate Tenant 2; Developer 2
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence Tenant 13; Developer 11
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (13):

Method Route Action Controller action
GET /api/modules/files File / attachment ListAsync
GET /api/modules/files/capabilities File / attachment CapabilitiesAsync
GET /api/modules/files/lego/catalog File / attachment LegoCatalog
GET /api/modules/files/personal-limit File / attachment GetPersonalLimitAsync
PUT /api/modules/files/personal-limit File / attachment SavePersonalLimitAsync
POST /api/modules/files/upload File / attachment UploadAsync
DELETE /api/modules/files/{recordId:guid} File / attachment RemoveAsync
GET /api/modules/files/{recordId:guid} File / attachment GetAsync
PUT /api/modules/files/{recordId:guid} File / attachment UpdateAsync
POST /api/modules/files/{recordId:guid}/attachments File / attachment AttachAsync
DELETE /api/modules/files/{recordId:guid}/attachments/{attachmentId:guid} File / attachment DetachAsync
GET /api/modules/files/{recordId:guid}/content File / attachment DownloadAsync
PUT /api/modules/files/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync

Developer API routes (11):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/files File / attachment developerGetV1AppsModulesFiles
GET /v1/apps/{saasAppId}/modules/files/capabilities File / attachment developerGetV1AppsModulesFilesCapabilities
GET /v1/apps/{saasAppId}/modules/files/lego/catalog File / attachment developerGetV1AppsModulesFilesLegoCatalog
POST /v1/apps/{saasAppId}/modules/files/upload File / attachment developerPostV1AppsModulesFilesUpload
DELETE /v1/apps/{saasAppId}/modules/files/{recordId} File / attachment developerDeleteV1AppsModulesFilesRecordIdGuid
GET /v1/apps/{saasAppId}/modules/files/{recordId} File / attachment developerGetV1AppsModulesFilesRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/files/{recordId} File / attachment developerPutV1AppsModulesFilesRecordIdGuid
POST /v1/apps/{saasAppId}/modules/files/{recordId}/attachments File / attachment developerPostV1AppsModulesFilesRecordIdGuidAttachments
DELETE /v1/apps/{saasAppId}/modules/files/{recordId}/attachments/{attachmentId} File / attachment developerDeleteV1AppsModulesFilesRecordIdGuidAttachmentsAttachmentIdGuid
GET /v1/apps/{saasAppId}/modules/files/{recordId}/content File / attachment developerGetV1AppsModulesFilesRecordIdGuidContent
PUT /v1/apps/{saasAppId}/modules/files/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesFilesRecordIdGuidFavorite
Conversations (conversations)

API bases: /api/modules/conversations.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 7; Developer 7
Add / create / execute Tenant 3; Developer 3
Edit / update / modify Tenant 2; Developer 2
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence Tenant 1; Developer 1
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (13):

Method Route Action Controller action
GET /api/modules/conversations List ListAsync
POST /api/modules/conversations Create CreateAsync
GET /api/modules/conversations/capabilities Capabilities CapabilitiesAsync
POST /api/modules/conversations/direct Send Direct SendDirectAsync
GET /api/modules/conversations/direct/scope Direct Scope DirectScopeAsync
GET /api/modules/conversations/lego-catalog Lego Catalog LegoCatalogAsync
GET /api/modules/conversations/lego-presentation Lego Presentation LegoPresentationAsync
DELETE /api/modules/conversations/{recordId:guid} Remove RemoveAsync
GET /api/modules/conversations/{recordId:guid} Get GetAsync
PUT /api/modules/conversations/{recordId:guid} Update UpdateAsync
PUT /api/modules/conversations/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync
POST /api/modules/conversations/{recordId:guid}/messages Message / reply ReplyAsync
GET /api/modules/conversations/{recordId:guid}/messages/{messageId:guid}/attachments/{fileId:guid}/content Message / reply DownloadAttachmentAsync

Developer API routes (13):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/conversations List / view developerGetV1AppsModulesConversations
POST /v1/apps/{saasAppId}/modules/conversations Add / create / execute developerPostV1AppsModulesConversations
GET /v1/apps/{saasAppId}/modules/conversations/capabilities List / view developerGetV1AppsModulesConversationsCapabilities
POST /v1/apps/{saasAppId}/modules/conversations/direct Add / create / execute developerPostV1AppsModulesConversationsDirect
GET /v1/apps/{saasAppId}/modules/conversations/direct/scope List / view developerGetV1AppsModulesConversationsDirectScope
GET /v1/apps/{saasAppId}/modules/conversations/lego-catalog List / view developerGetV1AppsModulesConversationsLegoCatalog
GET /v1/apps/{saasAppId}/modules/conversations/lego-presentation List / view developerGetV1AppsModulesConversationsLegoPresentation
DELETE /v1/apps/{saasAppId}/modules/conversations/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesConversationsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/conversations/{recordId} List / view developerGetV1AppsModulesConversationsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/conversations/{recordId} Edit / update / modify developerPutV1AppsModulesConversationsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/conversations/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesConversationsRecordIdGuidFavorite
POST /v1/apps/{saasAppId}/modules/conversations/{recordId}/messages Message / reply developerPostV1AppsModulesConversationsRecordIdGuidMessages
GET /v1/apps/{saasAppId}/modules/conversations/{recordId}/messages/{messageId}/attachments/{fileId}/content Message / reply developerGetV1AppsModulesConversationsRecordIdGuidMessagesMessageIdGuidAttachmentsFileIdGuidContent
Company news (company-news)

API bases: /api/modules/company-news.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Tenant 1; Developer 1
Edit / update / modify Tenant 3; Developer 3
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (9):

Method Route Action Controller action
GET /api/modules/company-news List ListAsync
POST /api/modules/company-news Create CreateAsync
GET /api/modules/company-news/lookups/{lookupId:guid} Lookup LookupAsync
GET /api/modules/company-news/schema Schema / field metadata SchemaAsync
DELETE /api/modules/company-news/{recordId:guid} Remove RemoveAsync
GET /api/modules/company-news/{recordId:guid} Get GetAsync
PUT /api/modules/company-news/{recordId:guid} Update UpdateAsync
PUT /api/modules/company-news/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync
PUT /api/modules/company-news/{recordId:guid}/published Published PublishedAsync

Developer API routes (9):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/company-news List / view developerGetV1AppsModulesCompanyNews
POST /v1/apps/{saasAppId}/modules/company-news Add / create / execute developerPostV1AppsModulesCompanyNews
GET /v1/apps/{saasAppId}/modules/company-news/lookups/{lookupId} List / view developerGetV1AppsModulesCompanyNewsLookupsLookupIdGuid
GET /v1/apps/{saasAppId}/modules/company-news/schema Schema / field metadata developerGetV1AppsModulesCompanyNewsSchema
DELETE /v1/apps/{saasAppId}/modules/company-news/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesCompanyNewsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/company-news/{recordId} List / view developerGetV1AppsModulesCompanyNewsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/company-news/{recordId} Edit / update / modify developerPutV1AppsModulesCompanyNewsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/company-news/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesCompanyNewsRecordIdGuidFavorite
PUT /v1/apps/{saasAppId}/modules/company-news/{recordId}/published Edit / update / modify developerPutV1AppsModulesCompanyNewsRecordIdGuidPublished
Knowledge Core (knowledge-core)

API bases: /api/modules/knowledge-articles, /api/modules/knowledge-core.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 16; Developer 16
Add / create / execute Tenant 18; Developer 18
Edit / update / modify Tenant 5; Developer 5
Delete / remove / deactivate Tenant 3; Developer 3
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (42):

Method Route Action Controller action
GET /api/modules/knowledge-articles List ListAsync
POST /api/modules/knowledge-articles Create CreateAsync
GET /api/modules/knowledge-articles/lego/catalog Lego Catalog LegoCatalog
DELETE /api/modules/knowledge-articles/{recordId:guid} Remove RemoveAsync
GET /api/modules/knowledge-articles/{recordId:guid} Get GetAsync
PUT /api/modules/knowledge-articles/{recordId:guid} Update UpdateAsync
PUT /api/modules/knowledge-articles/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync
GET /api/modules/knowledge-core List ListAsync
POST /api/modules/knowledge-core Create CreateAsync
GET /api/modules/knowledge-core/assignment-lookup List / view AssignmentLookupAsync
GET /api/modules/knowledge-core/collections Collections CollectionsAsync
POST /api/modules/knowledge-core/collections Create Collection CreateCollectionAsync
PUT /api/modules/knowledge-core/collections/{collectionId:guid} Update Collection UpdateCollectionAsync
DELETE /api/modules/knowledge-core/collections/{collectionId:guid}/items/{recordId:guid} Remove Collection Item RemoveCollectionItemAsync
POST /api/modules/knowledge-core/collections/{collectionId:guid}/items/{recordId:guid} Add Collection Item AddCollectionItemAsync
GET /api/modules/knowledge-core/gaps Gaps GapsAsync
GET /api/modules/knowledge-core/health Health HealthAsync
DELETE /api/modules/knowledge-core/owners/{knowledgeOwnerId:guid} Remove Owner RemoveOwnerAsync
GET /api/modules/knowledge-core/questions Questions QuestionsAsync
POST /api/modules/knowledge-core/questions Create Question CreateQuestionAsync
PUT /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid} Edit Question EditQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/answer Answer Question AnswerQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/assign Assign Question AssignQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/close Close Question CloseQuestionAsync
POST /api/modules/knowledge-core/questions/{knowledgeQuestionId:guid}/convert Convert Question ConvertQuestionAsync
GET /api/modules/knowledge-core/reviews Reviews ReviewsAsync
POST /api/modules/knowledge-core/reviews/{reviewCycleId:guid}/begin Begin Review BeginReviewAsync
POST /api/modules/knowledge-core/reviews/{reviewCycleId:guid}/complete Complete Review CompleteReviewAsync
POST /api/modules/knowledge-core/reviews/{reviewCycleId:guid}/reassign Reassign Review ReassignReviewAsync
GET /api/modules/knowledge-core/support-learning/candidates Support Learning Candidates SupportLearningCandidatesAsync
POST /api/modules/knowledge-core/support-learning/candidates Create Support Learning Candidate CreateSupportLearningCandidateAsync
GET /api/modules/knowledge-core/unowned Unowned UnownedAsync
GET /api/modules/knowledge-core/{recordId:guid} Get GetAsync
PUT /api/modules/knowledge-core/{recordId:guid} Update UpdateAsync
POST /api/modules/knowledge-core/{recordId:guid}/archive Archive ArchiveAsync
GET /api/modules/knowledge-core/{recordId:guid}/feedback Feedback Summary FeedbackSummaryAsync
POST /api/modules/knowledge-core/{recordId:guid}/feedback Record Feedback RecordFeedbackAsync
GET /api/modules/knowledge-core/{recordId:guid}/owners Owners OwnersAsync
POST /api/modules/knowledge-core/{recordId:guid}/owners Set Owner SetOwnerAsync
POST /api/modules/knowledge-core/{recordId:guid}/publish Publish PublishAsync
POST /api/modules/knowledge-core/{recordId:guid}/restore Restore RestoreAsync
GET /api/modules/knowledge-core/{recordId:guid}/revisions Revisions RevisionsAsync

Developer API routes (42):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/knowledge-articles List / view developerGetV1AppsModulesKnowledgeArticles
POST /v1/apps/{saasAppId}/modules/knowledge-articles Add / create / execute developerPostV1AppsModulesKnowledgeArticles
GET /v1/apps/{saasAppId}/modules/knowledge-articles/lego/catalog List / view developerGetV1AppsModulesKnowledgeArticlesLegoCatalog
DELETE /v1/apps/{saasAppId}/modules/knowledge-articles/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesKnowledgeArticlesRecordIdGuid
GET /v1/apps/{saasAppId}/modules/knowledge-articles/{recordId} List / view developerGetV1AppsModulesKnowledgeArticlesRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/knowledge-articles/{recordId} Edit / update / modify developerPutV1AppsModulesKnowledgeArticlesRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/knowledge-articles/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesKnowledgeArticlesRecordIdGuidFavorite
GET /v1/apps/{saasAppId}/modules/knowledge-core List / view developerGetV1AppsModulesKnowledgeCore
POST /v1/apps/{saasAppId}/modules/knowledge-core Add / create / execute developerPostV1AppsModulesKnowledgeCore
GET /v1/apps/{saasAppId}/modules/knowledge-core/assignment-lookup List / view developerGetV1AppsModulesKnowledgeCoreAssignmentLookup
GET /v1/apps/{saasAppId}/modules/knowledge-core/collections List / view developerGetV1AppsModulesKnowledgeCoreCollections
POST /v1/apps/{saasAppId}/modules/knowledge-core/collections Add / create / execute developerPostV1AppsModulesKnowledgeCoreCollections
PUT /v1/apps/{saasAppId}/modules/knowledge-core/collections/{collectionId} Edit / update / modify developerPutV1AppsModulesKnowledgeCoreCollectionsCollectionIdGuid
DELETE /v1/apps/{saasAppId}/modules/knowledge-core/collections/{collectionId}/items/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesKnowledgeCoreCollectionsCollectionIdGuidItemsRecordIdGuid
POST /v1/apps/{saasAppId}/modules/knowledge-core/collections/{collectionId}/items/{recordId} Add / create / execute developerPostV1AppsModulesKnowledgeCoreCollectionsCollectionIdGuidItemsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/knowledge-core/gaps List / view developerGetV1AppsModulesKnowledgeCoreGaps
GET /v1/apps/{saasAppId}/modules/knowledge-core/health List / view developerGetV1AppsModulesKnowledgeCoreHealth
DELETE /v1/apps/{saasAppId}/modules/knowledge-core/owners/{knowledgeOwnerId} Delete / remove / deactivate developerDeleteV1AppsModulesKnowledgeCoreOwnersKnowledgeOwnerIdGuid
GET /v1/apps/{saasAppId}/modules/knowledge-core/questions List / view developerGetV1AppsModulesKnowledgeCoreQuestions
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestions
PUT /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId} Edit / update / modify developerPutV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuid
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/answer Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidAnswer
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/assign Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidAssign
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/close Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidClose
POST /v1/apps/{saasAppId}/modules/knowledge-core/questions/{knowledgeQuestionId}/convert Add / create / execute developerPostV1AppsModulesKnowledgeCoreQuestionsKnowledgeQuestionIdGuidConvert
GET /v1/apps/{saasAppId}/modules/knowledge-core/reviews List / view developerGetV1AppsModulesKnowledgeCoreReviews
POST /v1/apps/{saasAppId}/modules/knowledge-core/reviews/{reviewCycleId}/begin Add / create / execute developerPostV1AppsModulesKnowledgeCoreReviewsReviewCycleIdGuidBegin
POST /v1/apps/{saasAppId}/modules/knowledge-core/reviews/{reviewCycleId}/complete Add / create / execute developerPostV1AppsModulesKnowledgeCoreReviewsReviewCycleIdGuidComplete
POST /v1/apps/{saasAppId}/modules/knowledge-core/reviews/{reviewCycleId}/reassign Add / create / execute developerPostV1AppsModulesKnowledgeCoreReviewsReviewCycleIdGuidReassign
GET /v1/apps/{saasAppId}/modules/knowledge-core/support-learning/candidates List / view developerGetV1AppsModulesKnowledgeCoreSupportLearningCandidates
POST /v1/apps/{saasAppId}/modules/knowledge-core/support-learning/candidates Add / create / execute developerPostV1AppsModulesKnowledgeCoreSupportLearningCandidates
GET /v1/apps/{saasAppId}/modules/knowledge-core/unowned List / view developerGetV1AppsModulesKnowledgeCoreUnowned
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId} List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/knowledge-core/{recordId} Edit / update / modify developerPutV1AppsModulesKnowledgeCoreRecordIdGuid
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/archive Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidArchive
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/feedback List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuidFeedback
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/feedback Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidFeedback
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/owners List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuidOwners
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/owners Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidOwners
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/publish Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidPublish
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/restore Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidRestore
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/revisions List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuidRevisions
Web links (web-links)

API bases: /api/modules/web-links.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Tenant 1; Developer 1
Edit / update / modify Tenant 2; Developer 2
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (8):

Method Route Action Controller action
GET /api/modules/web-links List ListAsync
POST /api/modules/web-links Create CreateAsync
GET /api/modules/web-links/lego/catalog Get Lego Catalog GetLegoCatalog
GET /api/modules/web-links/lookups/{lookupId:guid} Get Lego Lookup GetLegoLookupAsync
DELETE /api/modules/web-links/{recordId:guid} Remove RemoveAsync
GET /api/modules/web-links/{recordId:guid} Get GetAsync
PUT /api/modules/web-links/{recordId:guid} Update UpdateAsync
PUT /api/modules/web-links/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync

Developer API routes (8):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/web-links List / view developerGetV1AppsModulesWebLinks
POST /v1/apps/{saasAppId}/modules/web-links Add / create / execute developerPostV1AppsModulesWebLinks
GET /v1/apps/{saasAppId}/modules/web-links/lego/catalog List / view developerGetV1AppsModulesWebLinksLegoCatalog
GET /v1/apps/{saasAppId}/modules/web-links/lookups/{lookupId} List / view developerGetV1AppsModulesWebLinksLookupsLookupIdGuid
DELETE /v1/apps/{saasAppId}/modules/web-links/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesWebLinksRecordIdGuid
GET /v1/apps/{saasAppId}/modules/web-links/{recordId} List / view developerGetV1AppsModulesWebLinksRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/web-links/{recordId} Edit / update / modify developerPutV1AppsModulesWebLinksRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/web-links/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesWebLinksRecordIdGuidFavorite
Chat rooms (chat-rooms)

API bases: /api/modules/chat-rooms.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Tenant 2; Developer 2
Edit / update / modify Tenant 6; Developer 6
Delete / remove / deactivate Tenant 2; Developer 2
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (14):

Method Route Action Controller action
GET /api/modules/chat-rooms List ListAsync
POST /api/modules/chat-rooms Create CreateAsync
GET /api/modules/chat-rooms/lego/catalog Lego Catalog LegoCatalogAsync
DELETE /api/modules/chat-rooms/{recordId:guid} Remove RemoveAsync
GET /api/modules/chat-rooms/{recordId:guid} Get GetAsync
PUT /api/modules/chat-rooms/{recordId:guid} Update UpdateAsync
PUT /api/modules/chat-rooms/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync
GET /api/modules/chat-rooms/{recordId:guid}/members/lookup List / view MemberLookupAsync
PUT /api/modules/chat-rooms/{recordId:guid}/members/{memberUserId:guid} Member management MemberAsync
POST /api/modules/chat-rooms/{recordId:guid}/messages Message / reply PostMessageAsync
DELETE /api/modules/chat-rooms/{recordId:guid}/messages/{chatMessageId:guid} Message / reply RemoveMessageAsync
PUT /api/modules/chat-rooms/{recordId:guid}/messages/{chatMessageId:guid} Message / reply UpdateMessageAsync
PUT /api/modules/chat-rooms/{recordId:guid}/messages/{chatMessageId:guid}/reaction Message / reply ReactionAsync
PUT /api/modules/chat-rooms/{recordId:guid}/read Mark Read MarkReadAsync

Developer API routes (14):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/chat-rooms List / view developerGetV1AppsModulesChatRooms
POST /v1/apps/{saasAppId}/modules/chat-rooms Add / create / execute developerPostV1AppsModulesChatRooms
GET /v1/apps/{saasAppId}/modules/chat-rooms/lego/catalog List / view developerGetV1AppsModulesChatRoomsLegoCatalog
DELETE /v1/apps/{saasAppId}/modules/chat-rooms/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesChatRoomsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/chat-rooms/{recordId} List / view developerGetV1AppsModulesChatRoomsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/chat-rooms/{recordId} Edit / update / modify developerPutV1AppsModulesChatRoomsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesChatRoomsRecordIdGuidFavorite
GET /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/members/lookup List / view developerGetV1AppsModulesChatRoomsRecordIdGuidMembersLookup
PUT /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/members/{memberUserId} Member management developerPutV1AppsModulesChatRoomsRecordIdGuidMembersMemberUserIdGuid
POST /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/messages Message / reply developerPostV1AppsModulesChatRoomsRecordIdGuidMessages
DELETE /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/messages/{chatMessageId} Message / reply developerDeleteV1AppsModulesChatRoomsRecordIdGuidMessagesChatMessageIdGuid
PUT /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/messages/{chatMessageId} Message / reply developerPutV1AppsModulesChatRoomsRecordIdGuidMessagesChatMessageIdGuid
PUT /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/messages/{chatMessageId}/reaction Message / reply developerPutV1AppsModulesChatRoomsRecordIdGuidMessagesChatMessageIdGuidReaction
PUT /v1/apps/{saasAppId}/modules/chat-rooms/{recordId}/read Edit / update / modify developerPutV1AppsModulesChatRoomsRecordIdGuidRead
Discussion Boards (discussion-boards)

API bases: /api/modules/discussion-boards.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Tenant 3; Developer 3
Edit / update / modify Tenant 4; Developer 4
Delete / remove / deactivate Tenant 3; Developer 3
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (14):

Method Route Action Controller action
GET /api/modules/discussion-boards List ListAsync
POST /api/modules/discussion-boards Create Board CreateBoardAsync
GET /api/modules/discussion-boards/lego/catalog Lego Catalog LegoCatalogAsync
DELETE /api/modules/discussion-boards/posts/{recordId:guid} Remove Post RemovePostAsync
PUT /api/modules/discussion-boards/posts/{recordId:guid} Update Post UpdatePostAsync
PUT /api/modules/discussion-boards/records/{recordId:guid}/favorite Favorite / unfavorite SetFavoriteAsync
DELETE /api/modules/discussion-boards/topics/{recordId:guid} Remove Topic RemoveTopicAsync
GET /api/modules/discussion-boards/topics/{recordId:guid} Get Topic GetTopicAsync
PUT /api/modules/discussion-boards/topics/{recordId:guid} Update Topic UpdateTopicAsync
POST /api/modules/discussion-boards/topics/{topicRecordId:guid}/posts Post Reply PostReplyAsync
POST /api/modules/discussion-boards/{boardRecordId:guid}/topics Create Topic CreateTopicAsync
DELETE /api/modules/discussion-boards/{recordId:guid} Remove Board RemoveBoardAsync
GET /api/modules/discussion-boards/{recordId:guid} Get Board GetBoardAsync
PUT /api/modules/discussion-boards/{recordId:guid} Update Board UpdateBoardAsync

Developer API routes (14):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/discussion-boards List / view developerGetV1AppsModulesDiscussionBoards
POST /v1/apps/{saasAppId}/modules/discussion-boards Add / create / execute developerPostV1AppsModulesDiscussionBoards
GET /v1/apps/{saasAppId}/modules/discussion-boards/lego/catalog List / view developerGetV1AppsModulesDiscussionBoardsLegoCatalog
DELETE /v1/apps/{saasAppId}/modules/discussion-boards/posts/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDiscussionBoardsPostsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/discussion-boards/posts/{recordId} Edit / update / modify developerPutV1AppsModulesDiscussionBoardsPostsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/discussion-boards/records/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDiscussionBoardsRecordsRecordIdGuidFavorite
DELETE /v1/apps/{saasAppId}/modules/discussion-boards/topics/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDiscussionBoardsTopicsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/discussion-boards/topics/{recordId} List / view developerGetV1AppsModulesDiscussionBoardsTopicsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/discussion-boards/topics/{recordId} Edit / update / modify developerPutV1AppsModulesDiscussionBoardsTopicsRecordIdGuid
POST /v1/apps/{saasAppId}/modules/discussion-boards/topics/{topicRecordId}/posts Add / create / execute developerPostV1AppsModulesDiscussionBoardsTopicsTopicRecordIdGuidPosts
POST /v1/apps/{saasAppId}/modules/discussion-boards/{boardRecordId}/topics Add / create / execute developerPostV1AppsModulesDiscussionBoardsBoardRecordIdGuidTopics
DELETE /v1/apps/{saasAppId}/modules/discussion-boards/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDiscussionBoardsRecordIdGuid
GET /v1/apps/{saasAppId}/modules/discussion-boards/{recordId} List / view developerGetV1AppsModulesDiscussionBoardsRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/discussion-boards/{recordId} Edit / update / modify developerPutV1AppsModulesDiscussionBoardsRecordIdGuid
Mail reader (mail-reader)

API bases: /api/modules/mail-reader.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 3; Developer 2
Add / create / execute Tenant 3; Developer 0
Edit / update / modify Tenant 4; Developer 2
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (10):

Method Route Action Controller action
GET /api/modules/mail-reader List ListAsync
GET /api/modules/mail-reader/mailboxes List Mailboxes ListMailboxesAsync
POST /api/modules/mail-reader/mailboxes Create Mailbox CreateMailboxAsync
PUT /api/modules/mail-reader/mailboxes/{mailboxId:guid} Update Mailbox UpdateMailboxAsync
POST /api/modules/mail-reader/mailboxes/{mailboxRecordId:guid}/compose Compose ComposeAsync
PUT /api/modules/mail-reader/mailboxes/{mailboxRecordId:guid}/credentials/{purpose} Set Mailbox Credential SetMailboxCredentialAsync
GET /api/modules/mail-reader/{recordId:guid} Get GetAsync
POST /api/modules/mail-reader/{recordId:guid}/archive Archive ArchiveAsync
PUT /api/modules/mail-reader/{recordId:guid}/favorite Favorite / unfavorite SetFavoriteAsync
PUT /api/modules/mail-reader/{recordId:guid}/read Set Read SetReadAsync

Developer API routes (4):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/mail-reader List / view developerGetV1AppsModulesMailReader
GET /v1/apps/{saasAppId}/modules/mail-reader/{recordId} List / view developerGetV1AppsModulesMailReaderRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/mail-reader/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesMailReaderRecordIdGuidFavorite
PUT /v1/apps/{saasAppId}/modules/mail-reader/{recordId}/read Edit / update / modify developerPutV1AppsModulesMailReaderRecordIdGuidRead
Favorites (favorites)

API bases: /api/modules/favorites.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 5; Developer 5
Add / create / execute Not published as a direct action; this capability may be derived/read-only or action-specific
Edit / update / modify Tenant 2; Developer 2
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite Tenant 7; Developer 7
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (7):

Method Route Action Controller action
GET /api/modules/favorites Favorite / unfavorite ListAsync
GET /api/modules/favorites/presentation Favorite / unfavorite PresentationAsync
GET /api/modules/favorites/schema Favorite / unfavorite SchemaAsync
GET /api/modules/favorites/{recordId:guid} Favorite / unfavorite GetAsync
PUT /api/modules/favorites/{recordId:guid}/favorite Favorite / unfavorite SetAsync
PUT /api/modules/favorites/{recordId:guid}/preferences Favorite / unfavorite UpdateAsync
GET /api/modules/favorites/{recordId:guid}/state Favorite / unfavorite GetStateAsync

Developer API routes (7):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/favorites Favorite / unfavorite developerGetV1AppsModulesFavorites
GET /v1/apps/{saasAppId}/modules/favorites/presentation Favorite / unfavorite developerGetV1AppsModulesFavoritesPresentation
GET /v1/apps/{saasAppId}/modules/favorites/schema Favorite / unfavorite developerGetV1AppsModulesFavoritesSchema
GET /v1/apps/{saasAppId}/modules/favorites/{recordId} Favorite / unfavorite developerGetV1AppsModulesFavoritesRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/favorites/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesFavoritesRecordIdGuidFavorite
PUT /v1/apps/{saasAppId}/modules/favorites/{recordId}/preferences Favorite / unfavorite developerPutV1AppsModulesFavoritesRecordIdGuidPreferences
GET /v1/apps/{saasAppId}/modules/favorites/{recordId}/state Favorite / unfavorite developerGetV1AppsModulesFavoritesRecordIdGuidState
Notifications (notifications)

API bases: /api/modules/notifications.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Not published as a direct action; this capability may be derived/read-only or action-specific
Edit / update / modify Tenant 2; Developer 2
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (6):

Method Route Action Controller action
GET /api/modules/notifications List ListAsync
GET /api/modules/notifications/lego-catalog Lego Catalog LegoCatalogAsync
GET /api/modules/notifications/lego-presentation Lego Presentation LegoPresentationAsync
GET /api/modules/notifications/{notificationId:guid} Get GetAsync
PUT /api/modules/notifications/{notificationId:guid}/source-favorite Favorite / unfavorite SetFavoriteAsync
PUT /api/modules/notifications/{notificationId:guid}/state State transition SetStateAsync

Developer API routes (6):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/notifications List / view developerGetV1AppsModulesNotifications
GET /v1/apps/{saasAppId}/modules/notifications/lego-catalog List / view developerGetV1AppsModulesNotificationsLegoCatalog
GET /v1/apps/{saasAppId}/modules/notifications/lego-presentation List / view developerGetV1AppsModulesNotificationsLegoPresentation
GET /v1/apps/{saasAppId}/modules/notifications/{notificationId} List / view developerGetV1AppsModulesNotificationsNotificationIdGuid
PUT /v1/apps/{saasAppId}/modules/notifications/{notificationId}/source-favorite Favorite / unfavorite developerPutV1AppsModulesNotificationsNotificationIdGuidSourceFavorite
PUT /v1/apps/{saasAppId}/modules/notifications/{notificationId}/state State transition developerPutV1AppsModulesNotificationsNotificationIdGuidState
Dynamic Records (dynamic-records)

API bases: /api/modules/dynamic.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 6; Developer 6
Add / create / execute Tenant 2; Developer 2
Edit / update / modify Tenant 2; Developer 2
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (11):

Method Route Action Controller action
GET /api/modules/dynamic Catalog CatalogAsync
POST /api/modules/dynamic/caseflow-cases/{recordId:guid}/transition Transition Case Flow TransitionCaseFlowAsync
GET /api/modules/dynamic/{moduleKey} List ListAsync
POST /api/modules/dynamic/{moduleKey} Create CreateAsync
GET /api/modules/dynamic/{moduleKey}/lego/catalog Lego Catalog LegoCatalogAsync
GET /api/modules/dynamic/{moduleKey}/lookups/{lookupId:guid} Lego Lookup LegoLookupAsync
GET /api/modules/dynamic/{moduleKey}/schema Schema / field metadata SchemaAsync
DELETE /api/modules/dynamic/{moduleKey}/{recordId:guid} Delete DeleteAsync
GET /api/modules/dynamic/{moduleKey}/{recordId:guid} Get GetAsync
PUT /api/modules/dynamic/{moduleKey}/{recordId:guid} Update UpdateAsync
PUT /api/modules/dynamic/{moduleKey}/{recordId:guid}/favorite Favorite / unfavorite FavoriteAsync

Developer API routes (11):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/dynamic List / view developerGetV1AppsModulesDynamic
POST /v1/apps/{saasAppId}/modules/dynamic/caseflow-cases/{recordId}/transition Add / create / execute developerPostV1AppsModulesDynamicCaseflowCasesRecordIdGuidTransition
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/lego/catalog List / view developerGetV1AppsModulesDynamicModuleKeyLegoCatalog
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/lookups/{lookupId} List / view developerGetV1AppsModulesDynamicModuleKeyLookupsLookupIdGuid
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/schema Schema / field metadata developerGetV1AppsModulesDynamicModuleKeySchema
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite
ActiveWorkplace (active-workplace)

API bases: /api/modules/active-workplace.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 7; Developer 7
Add / create / execute Tenant 5; Developer 5
Edit / update / modify Tenant 1; Developer 1
Delete / remove / deactivate Tenant 1; Developer 1
Favorite / unfavorite No direct route; use Favorites only for supported authorized Records
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit Tenant 1; Developer 1

Tenant runtime routes (14):

Method Route Action Controller action
GET /api/modules/active-workplace List ListAsync
POST /api/modules/active-workplace Create CreateAsync
GET /api/modules/active-workplace/lego/catalog Lego Catalog LegoCatalog
GET /api/modules/active-workplace/lego/lookups/{lookupId:guid} Lego Lookup LegoLookupAsync
GET /api/modules/active-workplace/lego/presentation Presentation metadata LegoPresentationAsync
GET /api/modules/active-workplace/{activeWorkplaceId:guid} Get GetAsync
PATCH /api/modules/active-workplace/{activeWorkplaceId:guid} Update UpdateAsync
POST /api/modules/active-workplace/{activeWorkplaceId:guid}/activity Add / view activity RecordActivityAsync
POST /api/modules/active-workplace/{activeWorkplaceId:guid}/graph/refresh Refresh Graph RefreshGraphAsync
POST /api/modules/active-workplace/{activeWorkplaceId:guid}/participants Participant management AddParticipantAsync
GET /api/modules/active-workplace/{activeWorkplaceId:guid}/participants/catalog List / view ParticipantCatalogAsync
DELETE /api/modules/active-workplace/{activeWorkplaceId:guid}/participants/{activeWorkplaceParticipantId:guid} Participant management RemoveParticipantAsync
GET /api/modules/active-workplace/{activeWorkplaceId:guid}/playback Playback / history PlaybackAsync
POST /api/modules/active-workplace/{activeWorkplaceId:guid}/status Status transition SetStatusAsync

Developer API routes (14):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/active-workplace List / view developerGetV1AppsModulesActiveWorkplace
POST /v1/apps/{saasAppId}/modules/active-workplace Add / create / execute developerPostV1AppsModulesActiveWorkplace
GET /v1/apps/{saasAppId}/modules/active-workplace/lego/catalog List / view developerGetV1AppsModulesActiveWorkplaceLegoCatalog
GET /v1/apps/{saasAppId}/modules/active-workplace/lego/lookups/{lookupId} List / view developerGetV1AppsModulesActiveWorkplaceLegoLookupsLookupIdGuid
GET /v1/apps/{saasAppId}/modules/active-workplace/lego/presentation Presentation metadata developerGetV1AppsModulesActiveWorkplaceLegoPresentation
GET /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId} List / view developerGetV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuid
PATCH /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId} Edit / update / modify developerPatchV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuid
POST /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/activity Add / view activity developerPostV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidActivity
POST /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/graph/refresh Add / create / execute developerPostV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidGraphRefresh
POST /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/participants Participant management developerPostV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidParticipants
GET /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/participants/catalog List / view developerGetV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidParticipantsCatalog
DELETE /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/participants/{activeWorkplaceParticipantId} Participant management developerDeleteV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidParticipantsActiveWorkplaceParticipantIdGuid
GET /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/playback Playback / history developerGetV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidPlayback
POST /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/status Status transition developerPostV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidStatus
Record relations (record-relations)

API bases: /api/modules/record-graph.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 4; Developer 4
Add / create / execute Not published as a direct action; this capability may be derived/read-only or action-specific
Edit / update / modify Tenant 3; Developer 3
Delete / remove / deactivate Tenant 2; Developer 2
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships Tenant 9; Developer 9
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (9):

Method Route Action Controller action
DELETE /api/modules/record-graph/knowledge-relations/{recordRelationId:guid} Relationship graph UnlinkKnowledgeAsync
GET /api/modules/record-graph/records Relationship graph SearchAsync
DELETE /api/modules/record-graph/relations/{recordRelationId:guid} Associate / remove relationship RemoveRelationAsync
GET /api/modules/record-graph/{recordId:guid} Relationship graph GetAsync
PUT /api/modules/record-graph/{recordId:guid}/favorite Favorite / unfavorite SetFavoriteAsync
GET /api/modules/record-graph/{recordId:guid}/knowledge Relationship graph RelatedKnowledgeAsync
PUT /api/modules/record-graph/{recordId:guid}/knowledge Associate / add LinkKnowledgeAsync
GET /api/modules/record-graph/{recordId:guid}/knowledge/candidates Relationship graph ContextualKnowledgeAsync
PUT /api/modules/record-graph/{recordId:guid}/relations Associate / add AddRelationAsync

Developer API routes (9):

Method Route Action OpenAPI operationId
DELETE /v1/apps/{saasAppId}/modules/record-graph/knowledge-relations/{recordRelationId} Relationship graph developerDeleteV1AppsModulesRecordGraphKnowledgeRelationsRecordRelationIdGuid
GET /v1/apps/{saasAppId}/modules/record-graph/records Relationship graph developerGetV1AppsModulesRecordGraphRecords
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesRecordGraphRecordIdGuidFavorite
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId}/knowledge Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuidKnowledge
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/knowledge Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidKnowledge
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId}/knowledge/candidates Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuidKnowledgeCandidates
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations
Record activity (record-activity)

API bases: /api/modules/record-activity.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 3; Developer 2
Add / create / execute Not published as a direct action; this capability may be derived/read-only or action-specific
Edit / update / modify Tenant 1; Developer 1
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit Tenant 4; Developer 3

Tenant runtime routes (4):

Method Route Action Controller action
GET /api/modules/record-activity/records Activity / audit history SearchAsync
GET /api/modules/record-activity/{recordId:guid} Activity / audit history GetAsync
PUT /api/modules/record-activity/{recordId:guid}/favorite Favorite / unfavorite SetFavoriteAsync
GET /api/modules/record-activity/{recordId:guid}/history Activity / audit history ReadAsync

Developer API routes (3):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/record-activity/records Activity / audit history developerGetV1AppsModulesRecordActivityRecords
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid
PUT /v1/apps/{saasAppId}/modules/record-activity/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesRecordActivityRecordIdGuidFavorite
Global secured search (global-search)

API bases: /api/modules/global-search.

Day-to-day action coverage:

Usability action Direct route coverage
List / search / view Tenant 2; Developer 2
Add / create / execute Not published as a direct action; this capability may be derived/read-only or action-specific
Edit / update / modify Tenant 1; Developer 1
Delete / remove / deactivate Not published as a direct action; this capability may be derived/read-only or action-specific
Favorite / unfavorite Tenant 1; Developer 1
Associate / relationships No direct route; use Record relations only for supported authorized Records
Files / attachments / evidence No direct route; use Files only for supported authorized Records
Activity / audit No direct route; use Record activity only for supported authorized Records

Tenant runtime routes (3):

Method Route Action Controller action
GET /api/modules/global-search Search SearchAsync
GET /api/modules/global-search/count Count CountAsync
PUT /api/modules/global-search/records/{recordId:guid}/favorite Favorite / unfavorite SetFavoriteAsync

Developer API routes (3):

Method Route Action OpenAPI operationId
GET /v1/apps/{saasAppId}/modules/global-search List / view developerGetV1AppsModulesGlobalSearch
GET /v1/apps/{saasAppId}/modules/global-search/count List / view developerGetV1AppsModulesGlobalSearchCount
PUT /v1/apps/{saasAppId}/modules/global-search/records/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesGlobalSearchRecordsRecordIdGuidFavorite

First-class totals: 273 tenant-runtime routes and 254 Developer API routes across 25 capabilities. These are unique route totals; discovery pages reuse the owning capabilities' routes, so per-capability counts must not be added together.

Console-only capabilities

These tenant-runtime routes are intentionally absent from the promoted Developer API surface and are governed by the reviewed allow-list tools/api-route-inventory-console-only-allowlist.json. Here, console-only means tenant-runtime-only, not Builder Console; workflow approval is made by a signed-in user in Universal Inbox:

Method Tenant-runtime route Why no Developer API equivalent is published
PUT /api/goclaw/agents/{goClawAgentId:guid}/authority GoClaw agent authority is managed by signed-in tenant users in the tenant app; no delegated Developer API equivalent is published.
POST /api/inbox/items/{inboxItemId:guid}/workflow-approval Approval is made by a signed-in user in Universal Inbox; no Developer API equivalent is published, and the ActivityVersion fence remains in force.
GET /api/modules/record-activity/{recordId:guid}/history Secured record change history is available to signed-in tenant users through the native record envelope. The reviewed history release deliberately excludes this route from the Developer API; broader audit producer coverage remains separate.

Native-only operations

These routes retain their signed-in tenant boundary. Their presence does not grant Developer credentials access.

Method Native route Boundary
GET /api/modules/ai-insights/settings Organization-owner AI Insights producer settings; no delegated Developer API authority contract is reviewed.
PUT /api/modules/ai-insights/settings Organization-owner AI Insights producer settings; no delegated Developer API authority contract is reviewed.
POST /api/modules/ai-insights/settings/directives Organization-owner AI Insights producer settings; no delegated Developer API authority contract is reviewed.
PUT /api/modules/ai-insights/settings/directives/{directiveId:guid} Organization-owner AI Insights producer settings; no delegated Developer API authority contract is reviewed.
PUT /api/modules/ai-insights/settings/starters/{directiveId:guid} Organization-owner AI Insights producer settings; no delegated Developer API authority contract is reviewed.
GET /api/modules/contacts/list-preferences Signed-in tenant presentation preferences and audited secure-field operations; no delegated Developer API authority contract is published.
PUT /api/modules/contacts/list-preferences/{scope} Signed-in tenant presentation preferences and audited secure-field operations; no delegated Developer API authority contract is published.
PUT /api/modules/contacts/{recordId:guid}/secure-fields/{fieldDefinitionId:guid} Signed-in tenant presentation preferences and audited secure-field operations; no delegated Developer API authority contract is published.
POST /api/modules/contacts/{recordId:guid}/secure-fields/{fieldDefinitionId:guid}/reveal Signed-in tenant presentation preferences and audited secure-field operations; no delegated Developer API authority contract is published.
GET /api/modules/files/personal-limit Signed-in person's personal file limit and its organization-owner setting; no delegated Developer API authority contract is reviewed.
PUT /api/modules/files/personal-limit Signed-in person's personal file limit and its organization-owner setting; no delegated Developer API authority contract is reviewed.
GET /api/tenant/native-message-attachments/{recordId:guid}/content Native message attachment transport is not a promoted module action.

Deferred Developer API routes

These native routes remain explicitly deferred under the existing owner policy. Their presence in the native catalog does not publish them or create credential scopes.

Method Native route Reviewed deferral
GET /api/modules/mail-reader/mailboxes Mailbox administration, credentials, compose/send and archive remain deferred pending their separate provider and lifecycle acceptance. The four restored message operations use verified installed secured SQL.
POST /api/modules/mail-reader/mailboxes Mailbox administration, credentials, compose/send and archive remain deferred pending their separate provider and lifecycle acceptance. The four restored message operations use verified installed secured SQL.
PUT /api/modules/mail-reader/mailboxes/{mailboxId:guid} Mailbox administration, credentials, compose/send and archive remain deferred pending their separate provider and lifecycle acceptance. The four restored message operations use verified installed secured SQL.
POST /api/modules/mail-reader/mailboxes/{mailboxRecordId:guid}/compose Mailbox administration, credentials, compose/send and archive remain deferred pending their separate provider and lifecycle acceptance. The four restored message operations use verified installed secured SQL.
PUT /api/modules/mail-reader/mailboxes/{mailboxRecordId:guid}/credentials/{purpose} Mailbox administration, credentials, compose/send and archive remain deferred pending their separate provider and lifecycle acceptance. The four restored message operations use verified installed secured SQL.
POST /api/modules/mail-reader/{recordId:guid}/archive Mailbox administration, credentials, compose/send and archive remain deferred pending their separate provider and lifecycle acceptance. The four restored message operations use verified installed secured SQL.

2. Build This product routes

Origins are recipe:<step-key> for canonical Developer API recipe steps and solution-manifest for additional operation IDs explicitly present in the runnable production solution. An operation can have both origins.

CrewOS (crew-os)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.goclaw.read, modules.goclaw.write, modules.record-graph.read, modules.universal-inbox.read.

Composed first-class capability route sets: dynamic-records, files, goclaw, record-activity

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
crewos-agent-profiles Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
crewos-work-requests Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
crewos-ratings Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
crewos-approval-inbox crewos-work-requests Planning is read-only; this surface applies only canonical approve, reject, retry, or take-over controls and never edits source records directly.
crewos-execution-timeline crewos-work-requests Execution evidence is an immutable derived trail; lifecycle changes occur on the source work request or governed approval.

Direct recipe/solution operations (13):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/goclaw/approvals List / view developerGetV1AppsGoclawApprovals recipe:list-approvals
POST /v1/apps/{saasAppId}/goclaw/approvals/{suggestionBatchId}/approve Approve developerPostV1AppsGoclawApprovalsSuggestionBatchIdGuidApprove recipe:approve-batch
GET /v1/apps/{saasAppId}/inbox/items List / view developerGetV1AppsInboxItems recipe:verify-inbox
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid recipe:open-context, solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
SignalIQ (signal-iq)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.ai-insights.read, modules.ai-insights.write, modules.contacts.read, modules.record-graph.read.

Composed first-class capability route sets: ai-insights, dynamic-records, files, goclaw

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
signaliq-accounts Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
signaliq-contacts Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
signaliq-opportunities Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
signaliq-signals Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
signaliq-score-snapshots Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
signaliq-recommendations Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
signaliq-revenue-command-center signaliq-accounts The command center ranks and explains permitted records; lifecycle changes occur on the native account, opportunity, signal, score, or recommendation record.
signaliq-secured-insights signaliq-recommendations AI Insights are secured findings with personal feed state, not authorization to mutate CRM records.
signaliq-action-approvals signaliq-recommendations Planning is read-only; material next-best actions use the canonical permission and ActivityVersion-fenced approval chain.

Direct recipe/solution operations (14):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/modules/ai-insights List / view developerGetV1AppsModulesAiInsights recipe:list-insights
GET /v1/apps/{saasAppId}/modules/ai-insights/{insightId} List / view developerGetV1AppsModulesAiInsightsInsightIdGuid recipe:open-insight
PUT /v1/apps/{saasAppId}/modules/ai-insights/{insightId}/state State transition developerPutV1AppsModulesAiInsightsInsightIdGuidState recipe:set-state
GET /v1/apps/{saasAppId}/modules/contacts List / view developerGetV1AppsModulesContacts recipe:find-account
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid recipe:load-graph, solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
Resolve (resolve)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.conversations.write, modules.knowledge-articles.read, modules.universal-inbox.read, modules.universal-inbox.write.

Composed first-class capability route sets: ai-insights, conversations, dynamic-records, goclaw, knowledge-core, universal-inbox

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
resolve-customer-contexts Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
resolve-issues Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
resolve-resolution-suggestions Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
resolve-escalations Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
resolve-universal-inbox resolve-issues Universal Inbox is the attention layer; communication lifecycle remains on the native Conversation and issue lifecycle remains on Resolve Issues.
resolve-policy-findings resolve-resolution-suggestions Cited AI findings do not authorize customer-facing mutations; actions require policy or human approval.
resolve-action-approvals resolve-resolution-suggestions Planning is read-only and approval retains the current Inbox ActivityVersion fence.

Direct recipe/solution operations (15):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/inbox/items List / view developerGetV1AppsInboxItems recipe:list-work
GET /v1/apps/{saasAppId}/inbox/items/{inboxItemId} List / view developerGetV1AppsInboxItemsInboxItemIdGuid recipe:open-ticket
PUT /v1/apps/{saasAppId}/inbox/items/{inboxItemId}/human-state Human state / resolution developerPutV1AppsInboxItemsInboxItemIdGuidHumanState recipe:resolve
POST /v1/apps/{saasAppId}/modules/conversations/{recordId}/messages Message / reply developerPostV1AppsModulesConversationsRecordIdGuidMessages recipe:reply
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/knowledge-core List / view developerGetV1AppsModulesKnowledgeCore recipe:find-policy
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
LaunchPilot (launch-pilot)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.dynamic-records.read, modules.dynamic-records.write, modules.files.write, modules.goclaw.read.

Composed first-class capability route sets: ai-insights, dynamic-records, files, universal-inbox

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
launchpilot-campaigns Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
launchpilot-audiences Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
launchpilot-assets Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
launchpilot-channel-runs Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (cancel) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
launchpilot-experiments Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
launchpilot-performance-snapshots Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
launchpilot-campaign-readiness launchpilot-campaigns Readiness and AI findings explain permitted campaign evidence but never authorize audience disclosure, claims, spend, or activation.
launchpilot-approval-attention launchpilot-channel-runs Universal Inbox points to approval work; the managed channel run retains launch state and frozen inputs.
launchpilot-optimization-findings launchpilot-performance-snapshots Performance findings may propose a bounded experiment or budget adjustment but cannot silently activate channels or move spend.

Direct recipe/solution operations (13):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/goclaw/approvals List / view developerGetV1AppsGoclawApprovals recipe:inspect-approvals
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey recipe:create-campaign, solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/schema Schema / field metadata developerGetV1AppsModulesDynamicModuleKeySchema recipe:read-schema
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid recipe:verify-campaign, solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
POST /v1/apps/{saasAppId}/modules/files/upload File / attachment developerPostV1AppsModulesFilesUpload recipe:upload-asset
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
Northstar (northstar)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.ai-insights.read, modules.ai-insights.write, modules.global-search.read, modules.record-activity.read, modules.record-graph.read.

Composed first-class capability route sets: ai-insights, dynamic-records, files, goclaw

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
northstar-metric-definitions Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (retire) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
northstar-metric-observations Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
northstar-forecasts Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (retire) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
northstar-signals Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
northstar-scenarios Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
northstar-briefings Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
northstar-executive-scorecard northstar-metric-definitions The scorecard summarizes currently permitted managed metric and observation records and links back to their native lifecycle.
northstar-synthesis northstar-signals AI synthesis explains authorized evidence and uncertainty but cannot invent or overwrite metrics, forecasts, or decisions.
northstar-decision-approvals northstar-briefings Planning and approval attention do not mutate operating systems; approved follow-up uses the canonical governed action chain.

Direct recipe/solution operations (13):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/modules/ai-insights List / view developerGetV1AppsModulesAiInsights recipe:list-insights
PUT /v1/apps/{saasAppId}/modules/ai-insights/{insightId}/state State transition developerPutV1AppsModulesAiInsightsInsightIdGuidState recipe:record-disposition
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/global-search List / view developerGetV1AppsModulesGlobalSearch recipe:search
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid recipe:load-history, solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid recipe:load-evidence, solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
TeamBox (team-box)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.conversations.read, modules.conversations.write, modules.universal-inbox.read, modules.universal-inbox.write.

Composed first-class capability route sets: ai-insights, conversations, dynamic-records, files, goclaw, universal-inbox

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
teambox-channel-intake-policies Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
teambox-queues Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
teambox-routing-rules Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
teambox-classification-reviews Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
teambox-sla-policies Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
teambox-handoff-playbooks Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
teambox-attention-queue teambox-queues Universal Inbox is the attention and ownership projection; native conversations and their source business records keep their lifecycle and history.
teambox-triage-insights teambox-classification-reviews AI classification and summaries expose permitted evidence and uncertainty; reviewers change managed disposition without overwriting the native conversation.
teambox-action-approvals teambox-handoff-playbooks Prepared customer replies and material operations stay fenced to the Inbox ActivityVersion and require configured policy or human approval.

Direct recipe/solution operations (15):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/inbox/items List / view developerGetV1AppsInboxItems recipe:list-attention
GET /v1/apps/{saasAppId}/inbox/items/{inboxItemId} List / view developerGetV1AppsInboxItemsInboxItemIdGuid recipe:open-item
PUT /v1/apps/{saasAppId}/inbox/items/{inboxItemId}/human-state Human state / resolution developerPutV1AppsInboxItemsInboxItemIdGuidHumanState recipe:claim-or-complete
GET /v1/apps/{saasAppId}/modules/conversations/{recordId} List / view developerGetV1AppsModulesConversationsRecordIdGuid recipe:open-conversation
POST /v1/apps/{saasAppId}/modules/conversations/{recordId}/messages Message / reply developerPostV1AppsModulesConversationsRecordIdGuidMessages recipe:reply
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
RelateEverything (relate-everything)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.contacts.write, modules.global-search.read, modules.record-graph.read, modules.record-graph.write.

Composed first-class capability route sets: ai-insights, contacts, dynamic-records, files, global-search, record-relations

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
relateeverything-companies Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
relateeverything-workstreams Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
relateeverything-opportunities Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
relateeverything-relationship-contexts Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
relateeverything-duplicate-reviews Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
relateeverything-connected-automations Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
relateeverything-connected-search relateeverything-companies Search discovers only currently authorized canonical records and links to the owning module lifecycle.
relateeverything-permissioned-graph relateeverything-relationship-contexts Graph traversal omits inaccessible nodes and incident edges; relation creation and removal remain explicit secured operations.
relateeverything-context-insights relateeverything-duplicate-reviews AI summarizes currently authorized connected context and marks inferred links separately from confirmed facts.

Direct recipe/solution operations (12):

Method Route Action OpenAPI operationId Origin
POST /v1/apps/{saasAppId}/modules/contacts Add / create / execute developerPostV1AppsModulesContacts recipe:create-contact
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/global-search List / view developerGetV1AppsModulesGlobalSearch recipe:search
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid recipe:read-graph, solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations recipe:relate-record, solution-manifest
CustomerPortal (customer-portal)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: app-credential-then-delegated-user. Required recipe scopes: modules.conversations.read, modules.files.read, tenant-accounts.write, tenant-users.read, tenant-users.tokens.issue, tenant-users.write.

Composed first-class capability route sets: dynamic-records, files

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
customerportal-requests Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
customerportal-milestones Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
customerportal-approvals Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (revoke) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
customerportal-shared-updates Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
customerportal-internal-operations Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
customerportal-visibility-reviews Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
customerportal-global-search customerportal-requests Search is derived and opens the native secured record lifecycle.
customerportal-relationship-graph customerportal-requests Graph traversal returns only independently authorized nodes and edges.
customerportal-internal-ai customerportal-internal-operations AI Insights are internal read-only synthesis and never authorize customer-facing action.

Direct recipe/solution operations (16):

Method Route Action OpenAPI operationId Origin
POST /v1/apps/{saasAppId}/accounts Add / create / execute developerHeadlessIdentityCreateAccount recipe:create-account
GET /v1/apps/{saasAppId}/accounts/{appAccountId}/security-catalog List / view developerHeadlessIdentityGetSecurityCatalog recipe:read-security-catalog
POST /v1/apps/{saasAppId}/accounts/{appAccountId}/users Add / create / execute developerHeadlessIdentityCreateUser recipe:create-user
GET /v1/apps/{saasAppId}/modules/conversations List / view developerGetV1AppsModulesConversations recipe:list-shared-conversations
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/files File / attachment developerGetV1AppsModulesFiles recipe:list-shared-files
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
POST /v1/apps/{saasAppId}/user-token-exchanges Add / create / execute developerHeadlessIdentityExchangeUserToken recipe:issue-user-token
CompanyIQ (company-iq)

Readiness: withheld - not buildable in this kit — its real Developer API operations and GPU/producer readiness lanes are not available in this kit.

Identity mode: delegated-user. Required recipe scopes: ai.read, ai.write, modules.knowledge-articles.write, modules.record-graph.write.

Composed first-class capability route sets: dynamic-records, files

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
companyiq-source-catalog Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
companyiq-business-context Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
companyiq-intelligence-runs Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (cancel) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
companyiq-opportunity-insights Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
companyiq-evidence-reviews Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
companyiq-semantic-search companyiq-source-catalog Search returns only independently authorized source evidence and links back to the native owner.
companyiq-native-ai-insights companyiq-opportunity-insights The feed is a secured projection; lifecycle remains on the underlying insight and governed action records.

Direct recipe/solution operations (15):

Method Route Action OpenAPI operationId Origin
POST /v1/apps/{saasAppId}/ai/search Search developerAiSearch recipe:search
POST /v1/apps/{saasAppId}/ai/sources/records/{recordId}/ingest Add / create / execute developerAiIngest recipe:ingest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
POST /v1/apps/{saasAppId}/modules/knowledge-core Add / create / execute developerPostV1AppsModulesKnowledgeCore recipe:create-knowledge
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/publish Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidPublish recipe:publish
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/knowledge Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidKnowledge recipe:connect-record
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
OpsAtlas (ops-atlas)

Readiness: withheld - not buildable in this kit — its real Developer API operations and GPU/producer readiness lanes are not available in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.knowledge-articles.read, modules.knowledge-articles.write.

Composed first-class capability route sets: dynamic-records, files, knowledge-core

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
opsatlas-operating-domains Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
opsatlas-source-registers Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
opsatlas-review-programs Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
opsatlas-gap-triage Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
opsatlas-governed-actions Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (cancel) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
opsatlas-secured-answers opsatlas-source-registers Answer synthesis is read-only and opens exact published source revisions; unsupported answers create questions instead of fabricating.
opsatlas-knowledge-health opsatlas-gap-triage Health is a secured projection; lifecycle remains on Knowledge items, questions, reviews, and triage records.

Direct recipe/solution operations (16):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
POST /v1/apps/{saasAppId}/modules/knowledge-core Add / create / execute developerPostV1AppsModulesKnowledgeCore recipe:create-article
GET /v1/apps/{saasAppId}/modules/knowledge-core/gaps List / view developerGetV1AppsModulesKnowledgeCoreGaps recipe:review-gaps
GET /v1/apps/{saasAppId}/modules/knowledge-core/health List / view developerGetV1AppsModulesKnowledgeCoreHealth recipe:review-health
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/owners Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidOwners recipe:assign-owner
POST /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/publish Add / create / execute developerPostV1AppsModulesKnowledgeCoreRecordIdGuidPublish recipe:publish
GET /v1/apps/{saasAppId}/modules/knowledge-core/{recordId}/revisions List / view developerGetV1AppsModulesKnowledgeCoreRecordIdGuidRevisions recipe:verify-revisions
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
Headless SaaS DB (headless-saas-db)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: app-credential-then-delegated-user. Required recipe scopes: modules.dynamic-records.write, modules.record-graph.read, modules.record-graph.write, records.read, records.write, tenant-accounts.write, tenant-users.tokens.issue, tenant-users.write, webhooks.write.

Composed first-class capability route sets: dynamic-records, files

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
headless-domain-records Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
headless-api-client-profiles Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (revoke) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
headless-inbound-contracts Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
headless-webhook-policies Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
headless-operation-evidence Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
headless-native-api-clients headless-api-client-profiles Profiles link to the native Developer Console credential lifecycle; one-time secrets are never copied into dynamic records or browser output.
headless-delivery-diagnostics headless-operation-evidence Diagnostics are bounded projections; retries and state changes remain on authorized native Developer API operations.

Direct recipe/solution operations (20):

Method Route Action OpenAPI operationId Origin
POST /v1/apps/{saasAppId}/accounts Add / create / execute developerHeadlessIdentityCreateAccount recipe:create-account
POST /v1/apps/{saasAppId}/accounts/{appAccountId}/users Add / create / execute developerHeadlessIdentityCreateUser recipe:create-user
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite recipe:favorite-record, solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid recipe:remove-relation, solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid recipe:inspect-graph, solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations recipe:add-relation, solution-manifest
POST /v1/apps/{saasAppId}/objects/{objectKey}/records Add / create / execute developerRecordsCreate recipe:create-record
DELETE /v1/apps/{saasAppId}/objects/{objectKey}/records/{recordId} Delete / remove / deactivate developerRecordsDelete recipe:remove-record
GET /v1/apps/{saasAppId}/objects/{objectKey}/records/{recordId} List / view developerRecordsGet recipe:read-record
PATCH /v1/apps/{saasAppId}/objects/{objectKey}/records/{recordId} Edit / update / modify developerRecordsUpdate recipe:update-record
GET /v1/apps/{saasAppId}/objects/{objectKey}/schema Schema / field metadata developerRecordsGetSchema recipe:read-object-schema
POST /v1/apps/{saasAppId}/user-token-exchanges Add / create / execute developerHeadlessIdentityExchangeUserToken recipe:issue-token
POST /v1/apps/{saasAppId}/webhooks Add / create / execute developerWebhookSubscriptionsCreate recipe:create-webhook
PUT /v1/apps/{saasAppId}/webhooks/{subscriptionId} Edit / update / modify developerWebhookSubscriptionsUpdate recipe:deactivate-webhook
CaseFlow (case-flow)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.checklists-signoffs.write, modules.dynamic-records.read, modules.dynamic-records.write, modules.files.write, modules.universal-inbox.read.

Composed first-class capability route sets: ai-insights, checklists-signoffs, dynamic-records, files, record-activity, universal-inbox

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
caseflow-cases Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
caseflow-parties Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
caseflow-stage-transitions Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
caseflow-tasks Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
caseflow-evidence Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
caseflow-decisions Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
caseflow-approvals Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
caseflow-inbox caseflow-approvals Universal Inbox is the attention and approval surface; cases, decisions and signoff checklists retain native lifecycle ownership.
caseflow-ai-review caseflow-decisions AI may summarize permitted evidence and suggest next work but cannot decide or advance a case.
caseflow-activity caseflow-cases Activity is an audit projection with links back to the secured native case records.

Direct recipe/solution operations (15):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/inbox/items List / view developerGetV1AppsInboxItems recipe:verify-attention
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs Add / create / execute developerPostV1AppsModulesChecklistsSignoffsRuns recipe:start-checklist
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs/{checklistRunId}/submit Submit workflow developerPostV1AppsModulesChecklistsSignoffsRunsChecklistRunIdGuidSubmit recipe:submit-stage
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey recipe:create-case, solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/schema Schema / field metadata developerGetV1AppsModulesDynamicModuleKeySchema recipe:read-case-schema
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
POST /v1/apps/{saasAppId}/modules/files/upload File / attachment developerPostV1AppsModulesFilesUpload recipe:upload-proof
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
AssetOps (asset-ops)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.checklists-signoffs.write, modules.dynamic-records.write, modules.files.write, modules.record-graph.read, modules.work-orders.write.

Composed first-class capability route sets: ai-insights, checklists-signoffs, contacts, dynamic-records, files, record-activity, work-orders

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
assetops-sites Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (deactivate) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
assetops-assets Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (retire) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
assetops-inspection-findings Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
assetops-part-usages Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
assetops-service-events Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (archive) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
assetops-condition-signals assetops-assets AI condition summaries are suggestions over permitted history and cannot mutate asset or work state.
assetops-activity assetops-service-events Activity is an audit projection with links back to the secured native record.

Direct recipe/solution operations (13):

Method Route Action OpenAPI operationId Origin
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs Add / create / execute developerPostV1AppsModulesChecklistsSignoffsRuns recipe:start-inspection
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey recipe:create-asset, solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
POST /v1/apps/{saasAppId}/modules/files/upload File / attachment developerPostV1AppsModulesFilesUpload recipe:upload-evidence
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid recipe:verify-graph, solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
POST /v1/apps/{saasAppId}/modules/work-orders Add / create / execute developerPostV1AppsModulesWorkOrders recipe:create-work-order
ActiveWorkplace (active-workplace)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.active-workplace.read, modules.active-workplace.write.

Composed first-class capability route sets: active-workplace, dynamic-records, universal-inbox

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
activeworkplace-work-items Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (close) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET
activeworkplace-playbooks Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (retire) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
activeworkplace-playback activeworkplace-work-items Graph Playback re-applies current authorization and exposes no mutation controls.
activeworkplace-inbox activeworkplace-work-items Universal Inbox is the shared attention layer; the root Record and workplace remain native owners.

Direct recipe/solution operations (16):

Method Route Action OpenAPI operationId Origin
POST /v1/apps/{saasAppId}/modules/active-workplace Add / create / execute developerPostV1AppsModulesActiveWorkplace recipe:create-workplace
POST /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/activity Add / view activity developerPostV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidActivity recipe:append-activity
POST /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/graph/refresh Add / create / execute developerPostV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidGraphRefresh recipe:refresh-graph
POST /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/participants Participant management developerPostV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidParticipants recipe:add-participant
GET /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/participants/catalog List / view developerGetV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidParticipantsCatalog recipe:list-participants
GET /v1/apps/{saasAppId}/modules/active-workplace/{activeWorkplaceId}/playback Playback / history developerGetV1AppsModulesActiveWorkplaceActiveWorkplaceIdGuidPlayback recipe:playback
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
FieldService (field-service)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.calendar.write, modules.checklists-signoffs.write, modules.contacts.read, modules.work-orders.write.

Composed first-class capability route sets: ai-insights, calendar, contacts, conversations, dynamic-records, universal-inbox, work-orders

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
change-requests Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (cancel) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
fieldservice-ai-assistant change-requests The assistant returns cited permitted evidence and cannot mutate jobs, approvals or customer messages.
fieldservice-inbox change-requests Universal Inbox projects attention while native Records remain source of truth.

Direct recipe/solution operations (16):

Method Route Action OpenAPI operationId Origin
POST /v1/apps/{saasAppId}/modules/calendar Add / create / execute developerPostV1AppsModulesCalendar recipe:schedule
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs Add / create / execute developerPostV1AppsModulesChecklistsSignoffsRuns recipe:start-proof-checklist
GET /v1/apps/{saasAppId}/modules/contacts List / view developerGetV1AppsModulesContacts recipe:find-customer
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
POST /v1/apps/{saasAppId}/modules/work-orders Add / create / execute developerPostV1AppsModulesWorkOrders recipe:create-job
PUT /v1/apps/{saasAppId}/modules/work-orders/{recordId}/assignment Assignment update developerPutV1AppsModulesWorkOrdersRecordIdGuidAssignment recipe:assign-technician
PUT /v1/apps/{saasAppId}/modules/work-orders/{recordId}/status Status transition developerPutV1AppsModulesWorkOrdersRecordIdGuidStatus recipe:complete-job
Reservations (reservations)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.reservations.read, modules.reservations.write.

Composed first-class capability route sets: calendar, contacts, dynamic-records, reservations

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
reservation-policies Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (retire) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
reservation-payment-state reservation-policies Provider-synchronized payment state is displayed but never client-authored.
reservation-capacity reservation-policies Availability is derived from server-locked overlap checks, not editable counters.

Direct recipe/solution operations (16):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
GET /v1/apps/{saasAppId}/modules/reservations/products List / view developerGetV1AppsModulesReservationsProducts recipe:list-products
POST /v1/apps/{saasAppId}/modules/reservations/products Add / create / execute developerPostV1AppsModulesReservationsProducts recipe:publish-product
POST /v1/apps/{saasAppId}/modules/reservations/purchase Add / create / execute developerPostV1AppsModulesReservationsPurchase recipe:purchase
GET /v1/apps/{saasAppId}/modules/reservations/{recordId} List / view developerGetV1AppsModulesReservationsRecordIdGuid recipe:open-reservation
PUT /v1/apps/{saasAppId}/modules/reservations/{recordId}/followups Edit / update / modify developerPutV1AppsModulesReservationsRecordIdGuidFollowups recipe:set-follow-up
PUT /v1/apps/{saasAppId}/modules/reservations/{recordId}/status Status transition developerPutV1AppsModulesReservationsRecordIdGuidStatus recipe:set-status
Checkoff & Approval (checkoff-approval)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.checklists-signoffs.read, modules.checklists-signoffs.write, modules.files.write.

Composed first-class capability route sets: checklists-signoffs, dynamic-records, files, universal-inbox

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
verification-programs Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (retire) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
checklist-progress verification-programs Progress is derived from versioned native run items and validated evidence.
signoff-attention verification-programs Universal Inbox projects the native Workflow approval and preserves its ActivityVersion fence.

Direct recipe/solution operations (21):

Method Route Action OpenAPI operationId Origin
PUT /v1/apps/{saasAppId}/modules/checklists-signoffs/items/{checklistRunItemId} Edit / update / modify developerPutV1AppsModulesChecklistsSignoffsItemsChecklistRunItemIdGuid recipe:complete-item
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/items/{checklistRunItemId}/proof File proof / evidence developerPostV1AppsModulesChecklistsSignoffsItemsChecklistRunItemIdGuidProof recipe:attach-proof
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs Add / create / execute developerPostV1AppsModulesChecklistsSignoffsRuns recipe:start-run
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/runs/{checklistRunId} List / view developerGetV1AppsModulesChecklistsSignoffsRunsChecklistRunIdGuid recipe:verify
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/runs/{checklistRunId}/submit Submit workflow developerPostV1AppsModulesChecklistsSignoffsRunsChecklistRunIdGuidSubmit recipe:submit
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/templates List / view developerGetV1AppsModulesChecklistsSignoffsTemplates recipe:list-templates
POST /v1/apps/{saasAppId}/modules/checklists-signoffs/templates Add / create / execute developerPostV1AppsModulesChecklistsSignoffsTemplates recipe:create-template
DELETE /v1/apps/{saasAppId}/modules/checklists-signoffs/templates/{checklistTemplateId} Delete / remove / deactivate developerDeleteV1AppsModulesChecklistsSignoffsTemplatesChecklistTemplateIdGuid recipe:deactivate-template
GET /v1/apps/{saasAppId}/modules/checklists-signoffs/templates/{checklistTemplateId} List / view developerGetV1AppsModulesChecklistsSignoffsTemplatesChecklistTemplateIdGuid recipe:open-template
PUT /v1/apps/{saasAppId}/modules/checklists-signoffs/templates/{checklistTemplateId} Edit / update / modify developerPutV1AppsModulesChecklistsSignoffsTemplatesChecklistTemplateIdGuid recipe:update-template
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
POST /v1/apps/{saasAppId}/modules/files/upload File / attachment developerPostV1AppsModulesFilesUpload recipe:upload-proof
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest
Support Tickets (support-tickets)

Readiness: available — the product's published recipe and composed surfaces are shipped in this kit.

Identity mode: delegated-user. Required recipe scopes: modules.conversations.write, modules.universal-inbox.read, modules.universal-inbox.write.

Composed first-class capability route sets: conversations, dynamic-records, knowledge-core, record-relations, universal-inbox

Managed record day-to-day lifecycle:

Managed record type List View Add Edit / modify Remove Favorite Associate Files / evidence Activity
support-playbooks Yes — GET Yes — GET Yes — POST Yes — PUT Yes — DELETE (retire) Yes — PUT on/off Yes — GET/PUT/DELETE Shared Files by authorized recordId Yes — GET

Derived/read-only surfaces do not duplicate destructive lifecycle actions:

Surface Native owner / return path Why it is read-only here
support-ticket-attention support-playbooks Universal Inbox projects the Conversation into ticket identity, attention, assignment, SLA and audited resolution state; it does not replace the source thread.
support-customer-context support-playbooks Related customer and business records remain independently secured native records with paths to their owning modules.

Direct recipe/solution operations (16):

Method Route Action OpenAPI operationId Origin
GET /v1/apps/{saasAppId}/inbox/email-channels/ticketing Mailbox ticketing configuration developerGetV1AppsInboxEmailChannelsTicketing recipe:list-email-channels
PUT /v1/apps/{saasAppId}/inbox/email-channels/{channelConnectionId}/ticketing Mailbox ticketing configuration developerPutV1AppsInboxEmailChannelsChannelConnectionIdGuidTicketing recipe:enable-ticketing
GET /v1/apps/{saasAppId}/inbox/items List / view developerGetV1AppsInboxItems recipe:list-tickets
GET /v1/apps/{saasAppId}/inbox/items/{inboxItemId} List / view developerGetV1AppsInboxItemsInboxItemIdGuid recipe:open-ticket, recipe:verify
PUT /v1/apps/{saasAppId}/inbox/items/{inboxItemId}/human-state Human state / resolution developerPutV1AppsInboxItemsInboxItemIdGuidHumanState recipe:resolve
POST /v1/apps/{saasAppId}/modules/conversations/{recordId}/messages Message / reply developerPostV1AppsModulesConversationsRecordIdGuidMessages recipe:reply
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} List / view developerGetV1AppsModulesDynamicModuleKey solution-manifest
POST /v1/apps/{saasAppId}/modules/dynamic/{moduleKey} Add / create / execute developerPostV1AppsModulesDynamicModuleKey solution-manifest
DELETE /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Delete / remove / deactivate developerDeleteV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} List / view developerGetV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId} Edit / update / modify developerPutV1AppsModulesDynamicModuleKeyRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/dynamic/{moduleKey}/{recordId}/favorite Favorite / unfavorite developerPutV1AppsModulesDynamicModuleKeyRecordIdGuidFavorite solution-manifest
GET /v1/apps/{saasAppId}/modules/record-activity/{recordId} Activity / audit history developerGetV1AppsModulesRecordActivityRecordIdGuid solution-manifest
DELETE /v1/apps/{saasAppId}/modules/record-graph/relations/{recordRelationId} Associate / remove relationship developerDeleteV1AppsModulesRecordGraphRelationsRecordRelationIdGuid solution-manifest
GET /v1/apps/{saasAppId}/modules/record-graph/{recordId} Relationship graph developerGetV1AppsModulesRecordGraphRecordIdGuid solution-manifest
PUT /v1/apps/{saasAppId}/modules/record-graph/{recordId}/relations Associate / add developerPutV1AppsModulesRecordGraphRecordIdGuidRelations solution-manifest

Build This totals: 18 products, 73 recipe step references, and 76 unique direct recipe/solution routes after adding manifest operations and removing duplicates.

Interpretation constraints

  • A route's presence is not permission. The server derives SaaS, tenant account, user, DataRole, location, and capabilities from verified identity.
  • Route parameters such as {saasAppId}, {recordId}, or {moduleKey} are query targets, not authorization proof.
  • Build This products are compositions. Their direct table is deliberately limited to routes explicitly named by generated recipes or solution manifests; their linked first-class modules provide the complete native route surface above.
  • 'Every record' means every canonical record currently authorized for the caller. It never means tenant-wide disclosure, a relationship to a derived projection, or permission inherited through an edge.
  • SQL procedures are not HTTP routes. Procedure joins remain in the machine-readable catalog and current database exports and are not duplicated here.
  • This inventory is prospective technical documentation and does not reproduce private reasoning.

Capability review: 2026-09-14. See current features and setup requirements, the generated API Map and first-class module inventory.