openapi: 3.2.0 info: title: Pipeshub Connectors API version: 1.0.0 contact: name: API Support email: support@pipeshub.com description: 'Operations tagged Connectors across 2 of this provider''s published API definitions: pipeshub-openapi.yaml, pipeshub-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: '{instance_url}/api/v1' description: Base API URL variables: instance_url: default: https://app.pipeshub.com description: Base server URL (without /api/v1) - url: '{instance_url}' description: Root URL (used for MCP endpoints mounted at /mcp) variables: instance_url: default: https://app.pipeshub.com description: Base server URL security: - bearerAuth: [] - oauth2: [] tags: - name: Connectors paths: /connectors/internal/all-scheduled: get: tags: - Connectors summary: List all connectors configured for SCHEDULED sync (internal) description: 'Internal service-to-service endpoint. Used exclusively by the Node.js scheduled-jobs backfill migration to enumerate connector instances whose etcd sync config has selectedStrategy = SCHEDULED. Pagination: Callers step through 1-based pages. Each response returns up to limit items that are active (isActive: true) and have a SCHEDULED strategy, plus a hasMore flag so the caller knows when to stop. Database-level LIMIT/OFFSET is used so memory stays proportional to limit regardless of total connector count. Auth: Requires a scoped service JWT with CONNECTOR_READ scope. Not intended for end-user clients.' operationId: getAllScheduledConnectorInstancesInternal security: - bearerAuth: [] parameters: - name: page in: query required: false description: 1-based page number (default 1) schema: type: integer minimum: 1 default: 1 example: 1 - name: limit in: query required: false description: Maximum active-connector candidates to fetch from the database per call (default 50, max 200) schema: type: integer minimum: 1 maximum: 200 default: 50 example: 50 responses: '200': description: Page of scheduled connector instances content: application/json: schema: type: object properties: success: type: boolean example: true items: type: array items: type: object properties: connectorId: type: string description: Connector instance UUID (_key in ArangoDB) example: 8f792208-6d61-4e16-9eda-5b1b62f28e8a type: type: string description: Connector type (e.g. Confluence, Slack) example: Confluence orgId: type: string description: Organisation identifier example: 69f4b91882152b165f748e2c ownerUserId: type: string description: User who created the connector example: 69f4b91882152b165f748e2d isActive: type: boolean example: true sync: type: object description: Full sync block from etcd config properties: selectedStrategy: type: string example: SCHEDULED scheduledConfig: type: object properties: intervalMinutes: type: integer example: 5 timezone: type: string example: UTC hasMore: type: boolean description: True if more pages remain; false when this is the last page example: false '401': description: Unauthorized — missing or invalid JWT '404': description: No organisations found in the system '500': description: Internal server error servers: - url: '{instance_url}/api/v1' description: Base API URL variables: instance_url: default: https://app.pipeshub.com description: Base server URL (without /api/v1) - url: '{instance_url}' description: Root URL (used for MCP endpoints mounted at /mcp) variables: instance_url: default: https://app.pipeshub.com description: Base server URL components: securitySchemes: bearerAuth: type: http scheme: bearer bearerFormat: JWT description: 'JWT Bearer token for authenticated requests. A personal access token (see the **Personal Access Tokens** tag) is a `phpat_`-prefixed variant of this same JWT — e.g. `phpat_eyJhbGci...`. The prefix is display-only, added for secret-scanner detectability; the gateway strips it before verifying the token, so send it exactly as issued, prefix included. ' scopedToken: type: http scheme: bearer bearerFormat: JWT description: 'Scoped JWT token for service-to-service authentication. Format: "Bearer {scoped_token}" Required scopes vary by endpoint. ' oauth2: type: oauth2 description: 'OAuth 2.0 authentication with fine-grained scopes. Supports authorization_code (with PKCE) and client_credentials flows. OAuth tokens are Bearer JWTs — use the same Authorization header as regular tokens. For **client_credentials**, machine JWTs may use `userId === client_id`; the Node gateway resolves the OAuth app creator — see **OAuth Provider** tag. ' flows: authorizationCode: authorizationUrl: /api/v1/oauth2/authorize tokenUrl: /api/v1/oauth2/token refreshUrl: /api/v1/oauth2/token scopes: openid: OpenID Connect authentication profile: User profile information email: User email address offline_access: Offline access (refresh tokens) org:read: Read organization information org:write: Update organization settings org:admin: Full organization administration user:read: Read user profiles user:write: Update user profiles user:invite: Invite new users user:delete: Delete users usergroup:read: Read user groups usergroup:write: Create and manage user groups team:read: Read team information team:write: Create and manage teams kb:read: Read knowledge bases and records kb:write: Create and update knowledge bases kb:delete: Delete knowledge bases and records kb:upload: Upload files to knowledge bases semantic:read: Read semantic search results and history semantic:write: Execute semantic search semantic:delete: Delete semantic search history conversation:read: Read conversations conversation:write: Create and manage conversations conversation:chat: Send messages in conversations project:read: Read projects and their conversations project:write: Create and manage projects project:delete: Delete projects agent:read: Read AI agents agent:write: Create and manage AI agents agent:execute: Execute AI agents connector:read: Read connector configurations connector:write: Create and update connectors connector:sync: Trigger connector synchronization connector:delete: Delete connectors config:read: Read system configuration config:write: Update system configuration crawl:read: Read crawling jobs crawl:write: Create and manage crawling jobs crawl:delete: Delete crawling jobs clientCredentials: tokenUrl: /api/v1/oauth2/token scopes: openid: OpenID Connect authentication profile: User profile information email: User email address offline_access: Offline access (refresh tokens) org:read: Read organization information org:write: Update organization settings org:admin: Full organization administration user:read: Read user profiles user:write: Update user profiles user:invite: Invite new users user:delete: Delete users usergroup:read: Read user groups usergroup:write: Create and manage user groups team:read: Read team information team:write: Create and manage teams kb:read: Read knowledge bases and records kb:write: Create and update knowledge bases kb:delete: Delete knowledge bases and records kb:upload: Upload files to knowledge bases semantic:write: Execute semantic search semantic:read: Read semantic search results and history semantic:delete: Delete semantic search history conversation:read: Read conversations conversation:write: Create and manage conversations conversation:chat: Send messages in conversations project:read: Read projects and their conversations project:write: Create and manage projects project:delete: Delete projects agent:read: Read AI agents agent:write: Create and manage AI agents agent:execute: Execute AI agents connector:read: Read connector configurations connector:write: Create and update connectors connector:sync: Trigger connector synchronization connector:delete: Delete connectors config:read: Read system configuration config:write: Update system configuration crawl:read: Read crawling jobs crawl:write: Create and manage crawling jobs x-refined-from: - pipeshub-openapi.yaml - pipeshub-openapi.yml