Encompass Webhooks API

Event subscriptions, resources, events, and custom auth functions.

OpenAPI Specification

encompass-webhooks-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Encompass Developer Connect Authentication Webhooks API
  description: 'Encompass Developer Connect is the ICE Mortgage Technology (formerly Ellie Mae) REST API platform for the Encompass loan origination system (LOS). It lets partners and lenders configure, customize, and administer loan information and resources programmatically - loan manufacturing, loan pipeline, borrower pairs, contacts, eFolder documents and attachments, milestones, conditions, users, and event webhooks.


    Access is partner/tenant-gated: every call is authenticated with an OAuth 2.0 bearer token issued for a specific Encompass instance. Credentials (Client ID and secret / API key) are provisioned in the developer portal and distributed by an Encompass user with the super administrator persona. The data and features a token can reach are governed by the caller''s assigned Encompass persona.


    Versioning is path-based; v3 is current and v1/v2 are deprecated. This document grounds endpoints in the public API reference at developer.icemortgagetechnology.com. Endpoints tagged x-endpoint-status "confirmed" are read directly from the public reference; those tagged "modeled" follow Encompass''s documented, consistent path conventions but were authored behind the login-gated request builder and should be verified against the live reference before use.'
  version: '2026-07-04'
  contact:
    name: ICE Mortgage Technology - Encompass Developer Connect
    url: https://developer.icemortgagetechnology.com/developer-connect/docs/welcome
  x-lineage: Encompass is a product of ICE Mortgage Technology, formerly Ellie Mae, acquired by Intercontinental Exchange (ICE) in 2020. The API host api.elliemae.com reflects the Ellie Mae lineage.
servers:
- url: https://api.elliemae.com
  description: Encompass Developer Connect production API host (Ellie Mae lineage)
security:
- oAuth2: []
- bearerAuth: []
tags:
- name: Webhooks
  description: Event subscriptions, resources, events, and custom auth functions.
paths:
  /webhook/v1/subscriptions:
    get:
      operationId: listWebhookSubscriptions
      tags:
      - Webhooks
      summary: Get all subscriptions
      description: List all webhook subscriptions for the instance.
      x-endpoint-status: confirmed
      responses:
        '200':
          description: A list of subscriptions.
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createWebhookSubscription
      tags:
      - Webhooks
      summary: Create a subscription
      description: Subscribe to resource events (for example loan.created, loan.updated, loan.deleted, loan.locked, loan.unlocked) delivered to an HTTPS endpoint.
      x-endpoint-status: confirmed
      responses:
        '201':
          description: Subscription created.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /webhook/v1/subscriptions/{id}:
    get:
      operationId: getWebhookSubscription
      tags:
      - Webhooks
      summary: Get a subscription
      x-endpoint-status: confirmed
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      responses:
        '200':
          description: The subscription.
        '401':
          $ref: '#/components/responses/Unauthorized'
    put:
      operationId: updateWebhookSubscription
      tags:
      - Webhooks
      summary: Update a subscription
      x-endpoint-status: confirmed
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      responses:
        '200':
          description: The updated subscription.
        '401':
          $ref: '#/components/responses/Unauthorized'
    delete:
      operationId: deleteWebhookSubscription
      tags:
      - Webhooks
      summary: Delete a subscription
      x-endpoint-status: confirmed
      parameters:
      - $ref: '#/components/parameters/SubscriptionId'
      responses:
        '204':
          description: Subscription deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /webhook/v1/resources:
    get:
      operationId: listWebhookResources
      tags:
      - Webhooks
      summary: Get all resources
      description: List the resource types available for webhook subscriptions.
      x-endpoint-status: confirmed
      responses:
        '200':
          description: A list of resources.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /webhook/v1/resources/{id}/events:
    get:
      operationId: getWebhookResourceEvents
      tags:
      - Webhooks
      summary: Get resource events
      description: List the events available for a given webhook resource.
      x-endpoint-status: confirmed
      parameters:
      - $ref: '#/components/parameters/ResourceId'
      responses:
        '200':
          description: A list of resource events.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /webhook/v1/events:
    get:
      operationId: listWebhookEvents
      tags:
      - Webhooks
      summary: Get all events
      description: Query the history of webhook events delivered to your subscriptions.
      x-endpoint-status: confirmed
      responses:
        '200':
          description: A list of events.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /webhook/v1/events/{id}:
    get:
      operationId: getWebhookEvent
      tags:
      - Webhooks
      summary: Get an event
      x-endpoint-status: confirmed
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The event.
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    Unauthorized:
      description: Missing or invalid OAuth 2.0 bearer token.
  parameters:
    ResourceId:
      name: id
      in: path
      required: true
      description: The webhook resource identifier.
      schema:
        type: string
    SubscriptionId:
      name: id
      in: path
      required: true
      description: The webhook subscription identifier.
      schema:
        type: string
  securitySchemes:
    oAuth2:
      type: oauth2
      description: OAuth 2.0 client credentials / authorization code issued per Encompass instance.
      flows:
        clientCredentials:
          tokenUrl: https://api.elliemae.com/oauth2/v1/token
          scopes: {}
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT