name: B2B Enterprise Onboarding description: End-to-end workflow for onboarding a new enterprise customer to a B2B SaaS app — create the organization, generate an Admin Portal link so the customer's IT admin configures SSO and SCIM, then verify that an enterprise user can authenticate and that directory users are syncing. specification: Naftiko Capability Composition specificationVersion: '0.1' provider: WorkOS providerId: workos api: workos created: '2026-05-22' modified: '2026-05-22' tags: - Onboarding - SSO - SCIM - Admin Portal inputs: - name: organization_name type: string required: true - name: domains type: array items: string required: true - name: admin_email type: string required: true steps: - id: create-organization capability: manage-organizations operation: OrganizationsController_create description: Create a WorkOS organization for the new customer with their corporate domain(s). - id: generate-admin-portal-link capability: admin-portal operation: AdminPortalController_create description: Generate a short-lived Admin Portal magic link the IT admin uses to configure their identity provider. intent: sso - id: send-portal-link description: Email the Admin Portal link to admin_email so the customer's IT admin can connect Okta/Entra/Google Workspace. external: true - id: poll-connection-active capability: enterprise-sso operation: ConnectionsController_list description: Poll the connections endpoint until the new organization shows an active SAML/OIDC connection. - id: verify-directory capability: directory-sync operation: DirectoriesController_list description: Confirm that a directory has been linked and is in a Linked state. - id: verify-directory-users capability: directory-sync operation: DirectoryUsersController_list description: Confirm that directory users are syncing through SCIM. outputs: - name: organization_id source: create-organization.id - name: admin_portal_link source: generate-admin-portal-link.link - name: connection_id source: poll-connection-active.data[0].id - name: directory_id source: verify-directory.data[0].id