Sandbox Banking Integrations API

Integration workflow management.

OpenAPI Specification

sandbox-banking-integrations-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Sandbox Banking Glyue Integration Gateway Adapters Integrations API
  description: The Glyue Integration Gateway API provides programmatic access to the Sandbox Banking (nCino Integration Gateway) platform for building, managing, and monitoring banking integrations. The API supports creating and executing integration workflows, managing service request adapters, configuring field mappings, value mappings, validation rules, and accessing run history audit logs. Designed for financial institutions connecting core banking systems (Fiserv, Jack Henry, FIS) with fintech applications and loan origination systems.
  version: 1.0.0
  contact:
    name: Sandbox Banking Support
    url: https://glyue.docs.sandboxbanking.com/
  license:
    name: Proprietary
servers:
- url: https://{tenant}.sandboxbanking.com/api
  description: Glyue tenant API endpoint
  variables:
    tenant:
      default: your-institution
      description: Your institution's Glyue tenant subdomain
security:
- TokenAuth: []
tags:
- name: Integrations
  description: Integration workflow management.
paths:
  /integrations:
    get:
      operationId: listIntegrations
      summary: List Integrations
      description: Returns a list of all integration workflows configured in the Glyue platform for the authenticated tenant.
      tags:
      - Integrations
      parameters:
      - name: status
        in: query
        required: false
        description: Filter integrations by status.
        schema:
          type: string
          enum:
          - active
          - inactive
          - draft
          - testing
          - deprecated
      - name: page
        in: query
        required: false
        description: Page number for pagination.
        schema:
          type: integer
          default: 1
      - name: page_size
        in: query
        required: false
        description: Number of results per page.
        schema:
          type: integer
          default: 20
          maximum: 100
      responses:
        '200':
          description: List of integrations.
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                    description: Total number of integrations.
                  next:
                    type: string
                    format: uri
                    description: URL to the next page.
                  previous:
                    type: string
                    format: uri
                    description: URL to the previous page.
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/Integration'
        '401':
          description: Unauthorized.
        '403':
          description: Forbidden.
    post:
      operationId: createIntegration
      summary: Create Integration
      description: Creates a new integration workflow in the Glyue platform.
      tags:
      - Integrations
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateIntegrationRequest'
      responses:
        '201':
          description: Integration created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integration'
        '400':
          description: Validation error.
        '401':
          description: Unauthorized.
  /integrations/{integrationId}:
    get:
      operationId: getIntegration
      summary: Get Integration
      description: Returns details for a specific integration workflow.
      tags:
      - Integrations
      parameters:
      - $ref: '#/components/parameters/IntegrationIdParam'
      responses:
        '200':
          description: Integration details.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IntegrationDetail'
        '401':
          description: Unauthorized.
        '404':
          description: Integration not found.
    put:
      operationId: updateIntegration
      summary: Update Integration
      description: Updates an existing integration workflow configuration.
      tags:
      - Integrations
      parameters:
      - $ref: '#/components/parameters/IntegrationIdParam'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateIntegrationRequest'
      responses:
        '200':
          description: Integration updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Integration'
        '400':
          description: Validation error.
        '401':
          description: Unauthorized.
        '404':
          description: Integration not found.
    delete:
      operationId: deleteIntegration
      summary: Delete Integration
      description: Deletes an integration workflow from the platform.
      tags:
      - Integrations
      parameters:
      - $ref: '#/components/parameters/IntegrationIdParam'
      responses:
        '204':
          description: Integration deleted.
        '401':
          description: Unauthorized.
        '404':
          description: Integration not found.
  /integrations/{integrationId}/run:
    post:
      operationId: runIntegration
      summary: Run Integration
      description: Executes an integration workflow synchronously or asynchronously with the provided input payload. Returns the run ID for status tracking.
      tags:
      - Integrations
      parameters:
      - $ref: '#/components/parameters/IntegrationIdParam'
      requestBody:
        required: false
        content:
          application/json:
            schema:
              type: object
              description: Input payload for the integration run.
              additionalProperties: true
            examples:
              LoanBooking:
                summary: Loan booking integration input
                value:
                  loan_number: LN-2026-001234
                  borrower_id: CUST-98765
                  loan_amount: 250000.0
                  loan_type: mortgage
      responses:
        '200':
          description: Integration run completed or initiated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RunResult'
        '400':
          description: Invalid input payload.
        '401':
          description: Unauthorized.
        '404':
          description: Integration not found.
components:
  schemas:
    ServiceRequest:
      type: object
      description: A service request adapter step within an integration.
      properties:
        id:
          type: string
          description: Service request identifier.
        name:
          type: string
          description: Service request name.
        adapter:
          type: string
          description: Adapter used (e.g., fiserv_signature, jack_henry_symitar).
        operation:
          type: string
          description: Operation name (e.g., createLoan, getAccount, postTransaction).
        sequence:
          type: integer
          description: Execution order within the integration.
        callForEach:
          type: boolean
          description: Whether this iterates over a list of inputs.
        enabled:
          type: boolean
          description: Whether this service request is active.
    FieldMapping:
      type: object
      description: A field mapping rule transforming source data to target format.
      properties:
        id:
          type: string
          description: Field mapping identifier.
        sourceField:
          type: string
          description: Source field path or expression.
        targetField:
          type: string
          description: Target field path.
        transform:
          type: string
          description: Optional Python transformation formula or expression.
        valueMapping:
          type: string
          description: Reference to a value mapping table for enum translation.
        required:
          type: boolean
          description: Whether this mapping is required.
    ValidationRule:
      type: object
      description: A validation rule that must pass before integration proceeds.
      properties:
        id:
          type: string
        name:
          type: string
          description: Rule name.
        condition:
          type: string
          description: Boolean expression that must be true.
        errorMessage:
          type: string
          description: Error message returned if validation fails.
        sequence:
          type: integer
          description: Validation order.
    Integration:
      type: object
      description: A Glyue integration workflow.
      properties:
        id:
          type: string
          description: Unique integration identifier.
        name:
          type: string
          description: Integration name (e.g., Loan Booking to Fiserv Signature).
        description:
          type: string
          description: What this integration does and which systems it connects.
        status:
          type: string
          description: Current integration status.
          enum:
          - active
          - inactive
          - draft
          - testing
          - deprecated
        integrationType:
          type: string
          description: Integration pattern type.
          enum:
          - web_service_api
          - batch_etl
          - file_transfer
          - event_pubsub
          - webhook
        sourceSystem:
          type: string
          description: Source system name.
        targetSystem:
          type: string
          description: Target system name.
        serviceRequestCount:
          type: integer
          description: Number of service requests in this integration.
        createdAt:
          type: string
          format: date-time
          description: Creation timestamp.
        updatedAt:
          type: string
          format: date-time
          description: Last modification timestamp.
    RunResult:
      type: object
      description: Result of an integration run execution.
      properties:
        runId:
          type: string
          description: Unique run identifier for status tracking.
        status:
          type: string
          description: Run status.
          enum:
          - success
          - failure
          - running
          - pending
        integrationId:
          type: string
          description: Integration that was run.
        startTime:
          type: string
          format: date-time
          description: Run start timestamp.
        endTime:
          type: string
          format: date-time
          description: Run completion timestamp.
        responseBody:
          type: object
          description: Integration output payload.
          additionalProperties: true
        errorMessage:
          type: string
          description: Error message if run failed.
    IntegrationDetail:
      allOf:
      - $ref: '#/components/schemas/Integration'
      properties:
        serviceRequests:
          type: array
          description: Service request adapters in execution order.
          items:
            $ref: '#/components/schemas/ServiceRequest'
        fieldMappings:
          type: array
          description: Field mapping rules.
          items:
            $ref: '#/components/schemas/FieldMapping'
        validationRules:
          type: array
          description: Validation rules.
          items:
            $ref: '#/components/schemas/ValidationRule'
    CreateIntegrationRequest:
      type: object
      required:
      - name
      - status
      properties:
        name:
          type: string
          description: Integration name.
        description:
          type: string
          description: Integration description.
        status:
          type: string
          enum:
          - active
          - inactive
          - draft
          - testing
        integrationType:
          type: string
          enum:
          - web_service_api
          - batch_etl
          - file_transfer
          - event_pubsub
          - webhook
        sourceSystem:
          type: string
          description: Source system name.
        targetSystem:
          type: string
          description: Target system name.
  parameters:
    IntegrationIdParam:
      name: integrationId
      in: path
      required: true
      description: Unique integration identifier.
      schema:
        type: string
  securitySchemes:
    TokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: 'Token-based authentication. Include your API token as: Authorization: Token <your-token>'