Skip to content
Start Trading

Locates

Query locate requests, granted locates, and cached locate borrow rates.

List Locate Rates
LocateGetLocateRatesResponse v1().locates().getLocateRates(LocateGetLocateRatesParamsparams, RequestOptionsrequestOptions = RequestOptions.none())
GET/v1/locates/rates
Get Locate Rate
LocateGetLocateRateByIdResponse v1().locates().getLocateRateById(LocateGetLocateRateByIdParamsparams = LocateGetLocateRateByIdParams.none(), RequestOptionsrequestOptions = RequestOptions.none())
GET/v1/locates/rates/{instrument_id}
List Locates
LocateGetLocatesResponse v1().locates().getLocates(LocateGetLocatesParamsparams = LocateGetLocatesParams.none(), RequestOptionsrequestOptions = RequestOptions.none())
GET/v1/accounts/{account_id}/locates
Get Locate
LocateGetLocateByIdResponse v1().locates().getLocateById(LocateGetLocateByIdParamsparams, RequestOptionsrequestOptions = RequestOptions.none())
GET/v1/accounts/{account_id}/locates/{id}
ModelsExpand Collapse
class Locate:

A locate request joined with the locate granted for it, if any.

long accountId

Account the locate is booked to.

formatint64
String clientRequestId

Caller-assigned id of the locate request.

LocalDate effectiveDate

New York calendar date the locate is in force for.

formatdate
String instrumentId

Instrument id.

formatuuid
String locateRequestId

Engine-assigned locate request id.

formatuuid
long requestedQuantity

Number of shares requested.

formatint64

Presented status of the locate.

One of the following:
REQUESTED("REQUESTED")
ACCEPTED("ACCEPTED")
REJECTED("REJECTED")
EXPIRED("EXPIRED")
Optional<String> locateId

Engine-assigned locate id; set once the locate is granted. When a null/undefined value is observed, it indicates it does not apply.

formatuuid
Optional<Long> quantity

Number of shares granted; set once the locate is granted. When a null/undefined value is observed, it indicates it does not apply.

formatint64

Client order id the request relates to, if any. When a null/undefined value is observed, it indicates it does not apply.

formatuuid
Optional<Long> reservedQuantity

Number of granted shares reserved. When a null/undefined value is observed, it indicates it does not apply.

formatint64
Optional<Long> usedQuantity

Number of granted shares already used. When a null/undefined value is observed, it indicates it does not apply.

formatint64
class LocateRate:

A locate borrow rate for an instrument.

String instrumentId

Instrument id the rate applies to.

formatuuid
String rate

Borrow rate, expressed as a decimal (e.g. 0.037012 for 3.7012%).

Optional<LocalDateTime> asOf

When the rate was requested from the locates venue.

formatdate-time
class LocateRateResult:

A requested instrument with either its cached borrow rate or an error.

String instrument

The instrument id (UUID) or symbol, echoed exactly as requested, so each result maps back to its request.

minLength1
Optional<ApiError> error

Why no rate is present — a 404 when the instrument is unknown or has no cached rate. Omitted when rate is present.

long code

The error code is used to identify the nature of the error. It corresponds to an HTTP status code.

formatint32
minimum0
String message

A human-readable message providing more details about the error.

Optional<List<Detail>> details

Additional error details, if any. This can include structured information such as field violations or error metadata.

Optional<LocateRate> rate

The cached borrow rate. Present when a rate was found; omitted when error is present.

String instrumentId

Instrument id the rate applies to.

formatuuid
String rate

Borrow rate, expressed as a decimal (e.g. 0.037012 for 3.7012%).

Optional<LocalDateTime> asOf

When the rate was requested from the locates venue.

formatdate-time
enum LocateStatus:

The presented status of a locate: the locate-request lifecycle plus EXPIRED for accepted locates whose effective date has passed.

REQUESTED("REQUESTED")
ACCEPTED("ACCEPTED")
REJECTED("REJECTED")
EXPIRED("EXPIRED")