Skip to main content

Get Rate Periods

A rate period is a published bundle of rate programs and rate grids that a company makes available to its users. Use this endpoint to list every rate period your company can access — including each program's grids — without running a pricing search.

This is useful for:

  • Discovering which rate periods, programs, and grids exist before building a pricing request
  • Inspecting the configuration of a specific program/grid (terms, loan types, mortgage limits, etc.)
  • Populating a UI that lets users pick which products to price

How rate periods are structured

A company can have many rate periods. Each rate period contains many rate programs, and each rate program contains many rate grids. The response from this endpoint reflects that hierarchy exactly.

LevelWhat it represents
Rate PeriodA published bundle of rates (e.g. Wholesale, Retail, Correspondent). Companies typically publish several, each scoped to a channel or user group.
Rate ProgramA product category within a rate period (e.g. Conventional, FHA, VA, Jumbo).
Rate GridA specific rate sheet within a program — defined by loan term, loan type, mortgage limit, etc. (e.g. 30 Year Fixed Conforming). This is the unit that holds the actual rate/price pairs used during pricing.

Prerequisites

This endpoint authenticates using the PPE API Secret method — the same secret header used by /multisearch.

If you don't already have a secret, follow the steps in Authentication → PPE API Secret to:

  1. Create (or identify) a PPE-enabled user in your company.
  2. Call GET /encodeAES128/:apiKey/:userId to generate the secret value used in the header below.

You will also need your Company ID, available in Settings → Company Settings.

Request

GET {{domain}}/rest/ratePeriod

Headers

HeaderValue
secret{{token}} — the PPE API Secret from the prerequisites above
companyid{{companyID}} — your Lender Price company ID

Example

curl --location 'https://{{domain}}/rest/ratePeriod' \
--header 'secret: {{token}}' \
--header 'companyid: {{companyID}}'

Response

200 OK

Returns a JSON array of rate periods. Each rate period contains its rate programs, and each rate program contains its rate grids.

note

The example below shows a single rate program with a single rate grid for brevity. A rate period can contain many rate programs, and each rate program can contain many rate grids. The response also includes additional fields not shown here.

[
{
"id": "5aelk8c94cedfd00013g235q",
"name": "Wholesale Rates - Lender ABC",
"rateType": "All",
"isPublish": true,
"publish": true,
"ratePrograms": [
{
"id": "5aeceb225cedaz94513b496f",
"order": 0,
"name": "Conventional (DU & LP) Pricing",
"rateGrids": [
{
"id": "5aeceb2c4cedfd97013q8633",
"order": 0,
"name": "30 Year - 26 Year",
"displayName": "30 Year - 26 Year",
"enable": true,
"interestOnlyMonth": 0,
"mortgageLimits": ["Conforming", "HighBalance"],
"mortgageTypes": ["Conventional"],
"terms": [25, 30],
"termsInMonths": false,
"amortizationTerms": 0,
"loanType": "Fixed",
"varaiableLoanTypes": [],
"loanPurposes": [
"StreamLineRefinance",
"CashoutRefinance",
"Refinance",
"Purchase"
]
}
]
}
]
}
]

Rate Period fields

FieldTypeDescription
idstringUnique identifier for the rate period.
namestringDisplay name of the rate period.
rateTypestringScope of rates included (e.g. All).
isPublish / publishbooleanWhether the rate period is currently published and available for pricing.
rateProgramsarrayPrograms contained in this rate period — see below.

Rate Program fields

FieldTypeDescription
idstringUnique identifier for the rate program.
namestringDisplay name of the program (e.g. Conventional (DU & LP) Pricing).
orderintegerDisplay order within the parent rate period.
rateGridsarrayGrids contained in this program — see below.

Rate Grid fields

FieldTypeDescription
idstringUnique identifier for the rate grid.
namestringInternal name of the grid.
displayNamestringName shown to end users.
orderintegerDisplay order within the parent rate program.
enablebooleanWhether the grid is enabled.
interestOnlyMonthintegerNumber of interest-only months (0 if not interest-only).
mortgageLimitsarray<string>Mortgage limit categories — e.g. Conforming, HighBalance.
mortgageTypesarray<string>Mortgage types supported — e.g. Conventional, FHA, VA, USDA.
termsarray<integer>Loan terms supported (in years unless termsInMonths is true).
termsInMonthsbooleanIf true, terms values are interpreted as months instead of years.
amortizationTermsintegerAmortization term, if different from the loan term. 0 when not applicable.
loanTypestringPrimary loan type — e.g. Fixed, ARM.
varaiableLoanTypesarray<string>Variable loan type variants (used when loanType is ARM).
loanPurposesarray<string>Loan purposes supported — e.g. Purchase, Refinance, CashoutRefinance, StreamLineRefinance.
tip

The id values returned here can be used to reference specific rate periods, programs, or grids in pricing-search filters. See Search Filters & Options for details.