> ## Documentation Index
> Fetch the complete documentation index at: https://docs.pomerado.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Open the team's Admin Portal

> Opens WorkOS's Admin Portal, where your team's IT admin sets up how your team signs in.

> [accordion] Details
>
> Owners only: whoever sets up the directory decides everyone's role.
>
> * intent: domain\_verification proves your team owns its email domain, sso connects your identity provider (SAML or OIDC, such as Okta), and dsync syncs your directory's people (SCIM). Set them up in that order: SSO needs a verified domain.
>
> * Only the Dashboard returns the portal's link, since anyone holding it can change your team's sign-in. Elsewhere this returns a dashboard\_url to the Single sign-on page, where an Owner opens it. To have your IT admin do it, send them a setup email with POST /v1/team/sso/it-admin-invitations.
>
> * On the Dashboard each call makes a new link, which stops working five minutes after it was made, at expires\_at; Pomerado keeps none.
>
> * **Callers:** an API key, an MCP OAuth token or a Dashboard session.
>
> * **Permission:** `team:manage`; an API key also needs `team:manage`.
>
> * **Effect:** Creates or changes something.
>
> * **Errors:** [`team_unavailable`](https://docs.pomerado.ai/errors#team_unavailable), [`role_permission_missing`](https://docs.pomerado.ai/errors#role_permission_missing), [`owner_required`](https://docs.pomerado.ai/errors#owner_required), and the [errors any request can get](https://docs.pomerado.ai/errors.md).


## OpenAPI

````yaml /api-reference/openapi.json post /v1/team/sso/setup-links
openapi: 3.1.0
info:
  title: Pomerado API
  version: '1'
  description: >-
    Run and build website tools, follow their jobs, and manage logins, API keys
    and webhooks. Authenticate with a Pomerado API key (pom_…), an MCP OAuth
    token or a Dashboard session as a Bearer token.
servers:
  - url: https://api.pomerado.ai
security: []
tags:
  - name: account
    x-group: Account
  - name: api_keys
    x-group: API keys
  - name: connected_apps
    x-group: Connected apps
  - name: usage
    x-group: Usage
  - name: quota
    x-group: Quota
  - name: billing
    x-group: Billing
  - name: integrations
    x-group: Integrations
  - name: connect
    x-group: Connect
  - name: code
    x-group: Code
  - name: logins
    x-group: Saved logins
  - name: two_factor
    x-group: 2FA
  - name: login_access
    x-group: Login access
  - name: tools
    x-group: Tools
  - name: webhooks
    x-group: Webhooks
  - name: runs
    x-group: Runs
  - name: builds
    x-group: Builds
  - name: jobs
    x-group: Jobs
  - name: suggestions
    x-group: Suggestions
  - name: audit
    x-group: Audit
  - name: files
    x-group: Files
  - name: team
    x-group: Team
  - name: sso
    x-group: Single sign-on
  - name: issue_reports
    x-group: Problem reports
paths:
  /v1/team/sso/setup-links:
    post:
      tags:
        - sso
      summary: Open the team's Admin Portal
      description: >-
        Opens WorkOS's Admin Portal, where your team's IT admin sets up how your
        team signs in.
      operationId: sso.create_setup_link
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - intent
              properties:
                intent:
                  type: string
                  enum:
                    - domain_verification
                    - sso
                    - dsync
              additionalProperties: false
      responses:
        '200':
          description: 'Elsewhere: the page that opens it'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DashboardDelivery'
        '201':
          description: 'On the Dashboard: the Admin Portal link'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TeamSsoSetupLink'
        '400':
          description: invalid_request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: unauthorized, reauthentication_required
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: team_unavailable, role_permission_missing, owner_required, forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '413':
          description: request_too_large
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: internal_error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: temporarily_unavailable
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearer: []
components:
  schemas:
    DashboardDelivery:
      type: object
      required:
        - dashboard_url
      properties:
        dashboard_url:
          type: string
          description: >-
            A signed-in Dashboard page where the person finishes this and sees
            the secret once
      additionalProperties: false
    TeamSsoSetupLink:
      type: object
      required:
        - link
        - intent
        - expires_at
      properties:
        link:
          type: string
          description: >-
            WorkOS's Admin Portal for your team. Open it at once: it stops
            working at expires_at, and anyone holding it until then can change
            your team's sign-in
        intent:
          type: string
          enum:
            - domain_verification
            - sso
            - dsync
        expires_at:
          $ref: '#/components/schemas/DateFromString'
      additionalProperties: false
    Error:
      type: object
      required:
        - error
      properties:
        error:
          type: object
          required:
            - code
            - message
            - retryable
            - docs_url
          properties:
            code:
              type: string
            message:
              type: string
            retryable:
              type: boolean
            docs_url:
              type: string
            details:
              type: object
              required: []
              properties: {}
              additionalProperties:
                $id: /schemas/unknown
          additionalProperties: false
      additionalProperties: false
    DateFromString:
      type: string
      description: a string to be decoded into a Date
  securitySchemes:
    bearer:
      type: http
      scheme: bearer

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.