Total Expert ALM Leads (formerly Lead Opportunities) API

The ALM Leads (formerly Lead Opportunities) API from Total Expert — 2 operation(s) for alm leads (formerly lead opportunities).

Business capability
Opportunity & Pipeline Management BC-410.30

Operations 3

GET /v1/leads/{lead_id} Fetch Lead Opportunity #
PATCH /v1/leads/{lead_id} Update Lead Opportunity #
POST /v1/leads Create Lead Opportunity #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/total-expert-alm-leads-formerly-lead-opportunities-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

total-expert-alm-leads-formerly-lead-opportunities-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Total Expert Public ALM Leads (formerly Lead Opportunities)…
  version: v1
  description: The Total Expert REST API allows you to programmatically create, retrieve, update, and delete information through various endpoints.
  contact:
    url: https://developer.totalexpert.net
servers:
- url: https://public.totalexpert.net
  description: Total Expert external API — production
- url: https://public.vt.totalexpert.net
  description: Total Expert external API — development/sandbox domain (isolated from live data; per the Vendor OAuth Integration Guide)
security:
- oauth2: []
tags:
- name: ALM Leads (formerly Lead Opportunities)
paths:
  /v1/leads/{lead_id}:
    get:
      operationId: fetchLeadOpportunity
      summary: Fetch Lead Opportunity
      description: 'The GET endpoint returns details about the lead record, including the lead_opportunity details, any existing lead_opportunity_offers, and more.


        Attributes unique to GET


        owner


        Details about the current owner of the lead, including the following:


        attribute

        value


        email

        The user''s e-mail address as stored in the Total Expert database


        external_id

        An assignable identifier of the user as represented in a third-party system


        id

        The user''s internal Total Expert identifier


        username

        The user''s internal Total Expert username


        related_entities


        Currently returns information about the contact record to which the lead is linked. parent.id represents the contact ID.


        "related_entities": [

        {

        "relationship_type": {

        "system_name": "Contact"

        },

        "parent": [

        {

        "id": "87987456"

        }

        ]

        }

        ]


        Example GET response:


        {

        "title": "Mr.",

        "first_name": "John",

        "last_name": "Smith",

        "suffix": "Jr.",

        "nickname": "Johnathon",

        "email": "jsmith@gmail.com",

        "address": "2744 Imaginary Ave",

        "address_2": "Apartment 8",

        "city": "Los Angeles",

        "state": "CA",

        "zip_code": 90210,

        "phone_cell": "5555555555",

        "phone_home": "2222222222",

        "phone_office": "7777777777",

        "ok_to_email": 1,

        "referred_by": "Jane Smith",

        "credit_score": "Excellent",

        "source": "leadSourceName",

        "assigned_to": 50,

        "owner_id": 50,

        "lead_opportunity": {

        "property_value": 350000,

        "property_county": "Alameda",

        "property_zip": 90010,

        "property_state": "CA",

        "property_msa": "LA",

        "loan_amount": 325000,

        "loan_down_payment": 25000,

        "loan_cash_out": 0,

        "property_type": "Single Family",

        "property_use": "Owner Occupied",

        "loan_request_type": "Purchase",

        "lead_price": 50,

        "tracking_number": "123456",

        "annual_income": 120000,

        "first_time_buyer": "true",

        "has_agent": "true",

        "is_military": "false",

        "self_credit_rating": "Good",

        "bankruptcy": "fales",

        "foreclosure": "false",

        "working_with_agent": "true",

        "found_home": "true",

        "property_purchase_price": 350000,

        "is_fha_eligible": "true",

        "is_va_loan": "false",

        "present_ltv": 92.00,

        "proposed_ltv": 92.00,

        "term": "30 year fixed",

        "estimated_payment": 1500,

        "apr": 3.789,

        "market_value": 355000,

        "rate_offer": 3.625

        },

        "lead_opportunity_offers": [

        {

        "offer_id": 1,

        "offer_type": "Fixed",

        "loan_program_name": "Conf 30 Yr Fixed",

        "loan_amount": 255000,

        "interest_rate": 3.625,

        "term": "30 ",

        "points": 0.75,

        "investor": "Total Expert(308)",

        "lock_term": 45,

        "monthly_payment": 1367.34,

        "down_payment": 295000,

        "apr": 5.171

        },

        {

        "offer_id": 2,

        "offer_type": "Fixed",

        "loan_program_name": "Conf 15 Yr Fixed ",

        "loan_amount": 255000,

        "interest_rate": 4.625,

        "term": "180",

        "points": 0.75,

        "investor": "Total Expert(308)",

        "lock_term": 30,

        "monthly_payment": 1067.34,

        "down_payment": 295000.00,

        "apr": 6.171

        }

        ],

        "custom": [

        {

        "field_name": "name",

        "value": "value"

        }

        ],

        "owner": {

        "email": "billfischer@example.com",

        "external_id": "",

        "id": "218923",

        "username": "billfischer-example"

        },

        "related_entities": [

        {

        "relationship_type": {

        "system_name": "Contact"

        },

        "parent": [

        {

        "id": "87987456"

        }

        ]

        }

        ]

        }'
      tags:
      - ALM Leads (formerly Lead Opportunities)
      responses:
        '200':
          description: Success. See the Total Expert Public API documentation for the response shape.
      parameters:
      - name: lead_id
        in: path
        required: true
        schema:
          type: string
    patch:
      operationId: updateLeadOpportunity2
      summary: Update Lead Opportunity
      description: 'The PATCH request accepts any variant of the body specified below, allowing for partial modifications of the existing lead resource. Fields that are


        Data Types


        The PATCH is sensitive to data types, and will error if types do not align with the types in the request body below.


        If the value of a given attribute does not match the type specified in PATCH validation, the request should fail and tell you why.


        Accepted type details:


        Integer values, real, positive values only


        String values must be wrapped in double quotation marks, as in "hello there"


        Decimals can be decimal values or integer values


        Booleans must be true, false, 0, or 1. Strings ''true'' and ''false'' are NOT accepted.


        Updating Lead Stage


        lead_stage can be updated with an integer, 1 through 5, represneting the following lifecycle stages of a lead:


        New Lead


        Contacted


        Application


        In Process


        Closed


        Other values can be updated concurrently with lead_stage.


        Updating Lead Opportunity Offers


        offers can also be updated, but for each desired offer update, the offer_id of the given offer must be included, along with at least one other offer attribute


        {

        "lead_opportunity": {

        "property_value": 50000000

        },

        "lead_opportunity_offers": [

        {

        "offer_id": 1,

        "investor": "Duckberg Inc"

        },

        {

        "offer_id": 2,

        "investor": "Duckberg Inc"

        },

        ]

        }


        Examples of Partial Modification Requests


        As long as attributes are nested in their correct parent attribute, they will be considered valid for updating.


        {

        "lead_stage": 2,

        }


        {

        "first_name": "Scrooge",

        "lead_stage": 2,

        }


        {

        "lead_opportunity": {

        "property_value": 50000000

        },

        "lead_opportunity_offers": [

        {

        "offer_id": 2,

        "investor": "Duckberg Inc"

        }

        ]

        }


        {

        "first_name": "Scrooge",

        "last_name": "McDuck",

        "lead_opportunity": {

        "property_value": 50000000

        },

        "lead_opportunity_offers": [

        {

        "offer_id": 2,

        "investor": "Duckberg Inc"

        }

        ]

        }'
      tags:
      - ALM Leads (formerly Lead Opportunities)
      responses:
        '200':
          description: Partial Modification
          content:
            application/json:
              example:
                message: Successfully updated lead.
      parameters:
      - name: lead_id
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            example:
              title: Mr.
              first_name: John
              last_name: Smith
              suffix: Jr.
              nickname: Johnathon
              email: jsmithtest@example.com
              address: 1234 Fake St
              address_2: Apartment 8
              city: Los Angeles
              state: CA
              zip_code: '90210'
              phone_cell: '5555555555'
              phone_home: '2222222222'
              phone_office: '7777777777'
              ok_to_email: true
              referred_by: Jane Smith
              credit_score: Excellent
              source: leadSourceName
              assigned_to: 50
              owner_id: 50
              lead_opportunity:
                property_value: 350000
                property_county: Alameda
                property_zip: '90010'
                property_state: CA
                property_msa: LA
                loan_amount: 325000
                loan_down_payment: 25000
                loan_cash_out: 0
                property_type: Single Family
                property_use: Owner Occupied
                loan_request_type: Purchase
                lead_price: 50
                lead_stage: 3
                tracking_number: '123456'
                annual_income: 120000
                first_time_buyer: true
                has_agent: true
                is_military: false
                self_credit_rating: Good
                assigned_credit_value: 700
                bankruptcy: false
                foreclosure: false
                working_with_agent: true
                found_home: true
                property_purchase_price: 350000
                is_fha_eligible: true
                is_va_loan: false
                present_ltv: 92.01
                proposed_ltv: 92.01
                term: 30 year fixed
                estimated_payment: 1500
                apr: 3.789
                market_value: 355000
                rate_offer: 3.625
                contact_phone_extension: '55555'
                consumer_geo_phone_area_code: '55555'
              lead_opportunity_offers:
              - offer_id: 1
                offer_type: Fixed
                loan_program_name: 'Conf 30 Yr Fixed '
                loan_amount: 255000.01
                interest_rate: 3.625
                term: '30'
                points: 0.75
                investor: Total Expert(308)
                lock_term: 45
                monthly_payment: 1367.34
                down_payment: 295000.99
                apr: 5.171
              - offer_id: 2
                offer_type: Fixed
                loan_program_name: 'Conf 15 Yr Fixed '
                loan_amount: 255000.01
                interest_rate: 4.625
                term: '180'
                points: 0.75
                investor: Total Expert
                lock_term: 30
                monthly_payment: 1067.34
                down_payment: 295000.01
                apr: 6.171
              custom:
              - field_name: my_custom_field
                value: Super special value
  /v1/leads:
    post:
      operationId: createLeadOpportunity
      summary: Create Lead Opportunity
      description: 'Leads and Contacts


        A POST request for a new lead wil also create a new contact record, but only if a matching contact is not found.'
      tags:
      - ALM Leads (formerly Lead Opportunities)
      responses:
        '200':
          description: With Owner
          content:
            application/json:
              example:
                contact_id: 58
                lead_id: 61
      requestBody:
        content:
          application/json:
            example:
              title: Dr.
              first_name: Bill
              last_name: Nye
              email: the_science_guy@aol.com
              address: 1234 Science Blvd
              city: Los Angeles
              state: CA
              zip_code: '90210'
              phone_cell: '2134447777'
              phone_home: '2134447777'
              phone_office: '2134447777'
              ok_to_email: true
              referred_by: Albert Einstein
              credit_score: Excellent
              source: GoodLeads
              owner:
                id: 1234
                external_id: external-system-123
                email: test@example.com
                username: testtesterson-te
              lead_opportunity:
                property_value: 850000
                property_county: Alameda
                property_zip: '90010'
                property_state: CA
                property_msa: LA
                loan_amount: 850000
                loan_down_payment: 25000.0
                loan_cash_out: 0.0
                property_type: Single Family
                property_use: Owner Occupied
                loan_request_type: Purchase
                lead_price: 50
                tracking_number: '123456'
                annual_income: 250000
                first_time_buyer: true
                has_agent: true
                is_military: false
                self_credit_rating: Good
                bankruptcy: false
                foreclosure: false
                working_with_agent: true
                found_home: true
                property_purchase_price: 850000
                is_fha_eligible: true
                present_ltv: 92.0
                proposed_ltv: 92.0
                term: 30 year fixed
                estimated_payment: 1500
                apr: 5.789
                market_value: 355000
                rate_offer: 3.625
              lead_opportunity_offers:
              - offer_id: 1
                offer_type: Fixed
                loan_program_name: 'Conf 30 Yr Fixed '
                loan_amount: 855000.0
              - offer_id: 2
                offer_type: Fixed
                loan_program_name: 'Conf 15 Yr Fixed '
                loan_amount: 855000.0
              custom:
              - field_name: my_custom_field
                value: Super special value
components:
  securitySchemes:
    oauth2:
      type: oauth2
      description: OAuth 2.0. Obtain a token from POST /v1/token using HTTP Basic (client_id:client_secret base64-encoded) plus a grant_type body. Access tokens are bearer tokens, expires_in 3600.
      flows:
        clientCredentials:
          tokenUrl: https://public.totalexpert.net/v1/token
          scopes:
            crm: Documented example scope (Vendor OAuth Integration Guide authorize example)
            leadInteraction: Lead interaction access (documented in the collection token examples)
            loanInteraction: Loan interaction access (documented in the collection token examples)
            leadSurveyInteraction: Lead survey interaction access (documented example in the Vendor OAuth Integration Guide)
            postLeads: Post leads access (documented example in the Vendor OAuth Integration Guide)
        authorizationCode:
          authorizationUrl: https://public.totalexpert.net/v1/authorize
          tokenUrl: https://public.totalexpert.net/v1/token
          refreshUrl: https://public.totalexpert.net/v1/token
          scopes:
            crm: Documented example scope (Vendor OAuth Integration Guide authorize example)
            leadInteraction: Lead interaction access (documented in the collection token examples)
            loanInteraction: Loan interaction access (documented in the collection token examples)
            leadSurveyInteraction: Lead survey interaction access (documented example in the Vendor OAuth Integration Guide)
            postLeads: Post leads access (documented example in the Vendor OAuth Integration Guide)
externalDocs:
  description: Total Expert Public API documentation (Postman)
  url: https://documenter.getpostman.com/view/1929166/total-expert-public-api/6Z2RYyU