workload:client portal

{"catalogRevision":"cat_026bc982d1b49a94","nodeId":"workload:client-portal","label":"Client portal","facet":"workload","nodeType":"atom","canonicalPath":"/discover/workload/client-portal","breadcrumbs":[{"id":"discovery","label":"Agent hosting discovery","canonicalPath":"/discover/discovery","kind":"root"},{"id":"workload","label":"Applications and workloads","canonicalPath":"/discover/workload","kind":"facet"},{"id":"workload:portals-and-communities","label":"Portals and communities","canonicalPath":"/discover/workload/portals-and-communities","kind":"group"},{"id":"workload:client-portal","label":"Client portal","canonicalPath":"/discover/workload/client-portal","kind":"atom"}],"parents":{"items":[{"id":"workload:portals-and-communities","label":"Portals and communities","canonicalPath":"/discover/workload/portals-and-communities","kind":"group"}],"total":1,"offset":0,"limit":100},"children":{"items":[],"total":0,"offset":0,"limit":50},"recipes":{"items":[{"id":"page:recipes:client-portal:next-js:tenant-workspaces","label":"Host client portal with Next.js: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/next-js/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:next-js:private-documents","label":"Host client portal with Next.js: private documents","canonicalPath":"/recipes/client-portal/next-js/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:next-js:public-profiles","label":"Host client portal with Next.js: public profile assets","canonicalPath":"/recipes/client-portal/next-js/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:next-js:activity-history","label":"Host client portal with Next.js: application activity history","canonicalPath":"/recipes/client-portal/next-js/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:nuxt:tenant-workspaces","label":"Host client portal with Nuxt: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/nuxt/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:nuxt:private-documents","label":"Host client portal with Nuxt: private documents","canonicalPath":"/recipes/client-portal/nuxt/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:nuxt:public-profiles","label":"Host client portal with Nuxt: public profile assets","canonicalPath":"/recipes/client-portal/nuxt/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:nuxt:activity-history","label":"Host client portal with Nuxt: application activity history","canonicalPath":"/recipes/client-portal/nuxt/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:sveltekit:tenant-workspaces","label":"Host client portal with SvelteKit: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/sveltekit/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:sveltekit:private-documents","label":"Host client portal with SvelteKit: private documents","canonicalPath":"/recipes/client-portal/sveltekit/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:sveltekit:public-profiles","label":"Host client portal with SvelteKit: public profile assets","canonicalPath":"/recipes/client-portal/sveltekit/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:sveltekit:activity-history","label":"Host client portal with SvelteKit: application activity history","canonicalPath":"/recipes/client-portal/sveltekit/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:django:tenant-workspaces","label":"Host client portal with Django: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/django/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:django:private-documents","label":"Host client portal with Django: private documents","canonicalPath":"/recipes/client-portal/django/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:django:public-profiles","label":"Host client portal with Django: public profile assets","canonicalPath":"/recipes/client-portal/django/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:django:activity-history","label":"Host client portal with Django: application activity history","canonicalPath":"/recipes/client-portal/django/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:laravel:tenant-workspaces","label":"Host client portal with Laravel: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/laravel/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:laravel:private-documents","label":"Host client portal with Laravel: private documents","canonicalPath":"/recipes/client-portal/laravel/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:laravel:public-profiles","label":"Host client portal with Laravel: public profile assets","canonicalPath":"/recipes/client-portal/laravel/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:laravel:activity-history","label":"Host client portal with Laravel: application activity history","canonicalPath":"/recipes/client-portal/laravel/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:rails:tenant-workspaces","label":"Host client portal with Rails: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/rails/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:rails:private-documents","label":"Host client portal with Rails: private documents","canonicalPath":"/recipes/client-portal/rails/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:rails:public-profiles","label":"Host client portal with Rails: public profile assets","canonicalPath":"/recipes/client-portal/rails/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:rails:activity-history","label":"Host client portal with Rails: application activity history","canonicalPath":"/recipes/client-portal/rails/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:phoenix:tenant-workspaces","label":"Host client portal with Phoenix: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/phoenix/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:phoenix:private-documents","label":"Host client portal with Phoenix: private documents","canonicalPath":"/recipes/client-portal/phoenix/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:phoenix:public-profiles","label":"Host client portal with Phoenix: public profile assets","canonicalPath":"/recipes/client-portal/phoenix/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:phoenix:activity-history","label":"Host client portal with Phoenix: application activity history","canonicalPath":"/recipes/client-portal/phoenix/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:asp-net-core:tenant-workspaces","label":"Host client portal with ASP.NET Core: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/asp-net-core/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:asp-net-core:private-documents","label":"Host client portal with ASP.NET Core: private documents","canonicalPath":"/recipes/client-portal/asp-net-core/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:asp-net-core:public-profiles","label":"Host client portal with ASP.NET Core: public profile assets","canonicalPath":"/recipes/client-portal/asp-net-core/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:asp-net-core:activity-history","label":"Host client portal with ASP.NET Core: application activity history","canonicalPath":"/recipes/client-portal/asp-net-core/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:spring-boot:tenant-workspaces","label":"Host client portal with Spring Boot: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/spring-boot/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:spring-boot:private-documents","label":"Host client portal with Spring Boot: private documents","canonicalPath":"/recipes/client-portal/spring-boot/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:spring-boot:public-profiles","label":"Host client portal with Spring Boot: public profile assets","canonicalPath":"/recipes/client-portal/spring-boot/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:spring-boot:activity-history","label":"Host client portal with Spring Boot: application activity history","canonicalPath":"/recipes/client-portal/spring-boot/activity-history","kind":"recipe"},{"id":"page:recipes:client-portal:flask:tenant-workspaces","label":"Host client portal with Flask: tenant-scoped workspaces","canonicalPath":"/recipes/client-portal/flask/tenant-workspaces","kind":"recipe"},{"id":"page:recipes:client-portal:flask:private-documents","label":"Host client portal with Flask: private documents","canonicalPath":"/recipes/client-portal/flask/private-documents","kind":"recipe"},{"id":"page:recipes:client-portal:flask:public-profiles","label":"Host client portal with Flask: public profile assets","canonicalPath":"/recipes/client-portal/flask/public-profiles","kind":"recipe"},{"id":"page:recipes:client-portal:flask:activity-history","label":"Host client portal with Flask: application activity history","canonicalPath":"/recipes/client-portal/flask/activity-history","kind":"recipe"},{"id":"page:blueprints:accounting-firms:client-portal:next-js","label":"Accounting firms: client portal using Next.js","canonicalPath":"/blueprints/accounting-firms/client-portal/next-js","kind":"recipe"},{"id":"page:blueprints:accounting-firms:client-portal:django","label":"Accounting firms: client portal using Django","canonicalPath":"/blueprints/accounting-firms/client-portal/django","kind":"recipe"},{"id":"page:blueprints:accounting-firms:client-portal:laravel","label":"Accounting firms: client portal using Laravel","canonicalPath":"/blueprints/accounting-firms/client-portal/laravel","kind":"recipe"},{"id":"page:blueprints:bookkeeping-practices:client-portal:next-js","label":"Bookkeeping practices: client portal using Next.js","canonicalPath":"/blueprints/bookkeeping-practices/client-portal/next-js","kind":"recipe"},{"id":"page:blueprints:bookkeeping-practices:client-portal:django","label":"Bookkeeping practices: client portal using Django","canonicalPath":"/blueprints/bookkeeping-practices/client-portal/django","kind":"recipe"},{"id":"page:blueprints:bookkeeping-practices:client-portal:laravel","label":"Bookkeeping practices: client portal using Laravel","canonicalPath":"/blueprints/bookkeeping-practices/client-portal/laravel","kind":"recipe"},{"id":"page:blueprints:law-firms:client-portal:next-js","label":"Law firms: client portal using Next.js","canonicalPath":"/blueprints/law-firms/client-portal/next-js","kind":"recipe"},{"id":"page:blueprints:law-firms:client-portal:django","label":"Law firms: client portal using Django","canonicalPath":"/blueprints/law-firms/client-portal/django","kind":"recipe"},{"id":"page:blueprints:law-firms:client-portal:laravel","label":"Law firms: client portal using Laravel","canonicalPath":"/blueprints/law-firms/client-portal/laravel","kind":"recipe"},{"id":"page:blueprints:management-consultancies:client-portal:next-js","label":"Management consultancies: client portal using Next.js","canonicalPath":"/blueprints/management-consultancies/client-portal/next-js","kind":"recipe"}],"total":76,"offset":0,"limit":50},"related":[],"requiredBy":{"items":[],"total":0,"offset":0,"limit":50},"publishedRecipeCount":76,"nextActions":[{"actionId":"browse-catalog","label":"Browse the catalog index","operationId":"catalog_index","method":"GET","relativePath":"/v1/catalog","origin":"api","parameters":{},"requiresAuthentication":false,"requiresApproval":false},{"actionId":"search-recipes","label":"Search published recipes by intent, stack and constraints","operationId":"search_recipes","method":"POST","relativePath":"/v1/catalog/search","origin":"api","parameters":{"body":{"limit":5,"query":"Client portal"}},"requiresAuthentication":false,"requiresApproval":false},{"actionId":"inspect:page:recipes:client-portal:next-js:tenant-workspaces","label":"Inspect the full recipe contract","operationId":"inspect_recipe","method":"GET","relativePath":"/v1/catalog/recipes/page%3Arecipes%3Aclient-portal%3Anext-js%3Atenant-workspaces","origin":"api","parameters":{"recipeId":"page:recipes:client-portal:next-js:tenant-workspaces"},"requiresAuthentication":false,"requiresApproval":false},{"actionId":"inspect:page:recipes:client-portal:next-js:private-documents","label":"Inspect the full recipe contract","operationId":"inspect_recipe","method":"GET","relativePath":"/v1/catalog/recipes/page%3Arecipes%3Aclient-portal%3Anext-js%3Aprivate-documents","origin":"api","parameters":{"recipeId":"page:recipes:client-portal:next-js:private-documents"},"requiresAuthentication":false,"requiresApproval":false},{"actionId":"inspect:page:recipes:client-portal:next-js:public-profiles","label":"Inspect the full recipe contract","operationId":"inspect_recipe","method":"GET","relativePath":"/v1/catalog/recipes/page%3Arecipes%3Aclient-portal%3Anext-js%3Apublic-profiles","origin":"api","parameters":{"recipeId":"page:recipes:client-portal:next-js:public-profiles"},"requiresAuthentication":false,"requiresApproval":false},{"actionId":"inspect:page:recipes:client-portal:next-js:activity-history","label":"Inspect the full recipe contract","operationId":"inspect_recipe","method":"GET","relativePath":"/v1/catalog/recipes/page%3Arecipes%3Aclient-portal%3Anext-js%3Aactivity-history","origin":"api","parameters":{"recipeId":"page:recipes:client-portal:next-js:activity-history"},"requiresAuthentication":false,"requiresApproval":false},{"actionId":"inspect:page:recipes:client-portal:nuxt:tenant-workspaces","label":"Inspect the full recipe contract","operationId":"inspect_recipe","method":"GET","relativePath":"/v1/catalog/recipes/page%3Arecipes%3Aclient-portal%3Anuxt%3Atenant-workspaces","origin":"api","parameters":{"recipeId":"page:recipes:client-portal:nuxt:tenant-workspaces"},"requiresAuthentication":false,"requiresApproval":false}]}