# Authentication
Source: https://dev.ownright.com/fundamentals/authentication
Learn how to authenticate with the Ownright Developer Platform
To use any Ownright API, you must authenticate each request with a set of headers that
identify your application and prove that the request is authorized. The authentication process
is simple and stateless β just supply three headers with each request.
## Overview
Every API request must include the following headers:
- `X-Ownright-Client-Id` - Identifies your registered API client
- `X-Ownright-API-Key` - Authenticates your request
-
`X-Ownright-Organization-Id` - Specifies the Ownright platform organization
All three headers are required for every request, regardless of which API you
are using.
## Steps to obtain and use an API key
Contact the Ownright team ([developers@ownright.com](mailto:developers@ownright.com)) to register your application. Once registered, you'll
receive a unique client ID. You must include this in the `X-Ownright-Client-Id` header
in every request.
Self-service client registration will be available soon.
Our team will issue one or more long-lived API keys tied to your API client record.
These act like permanent access tokens. You must include the API key in the `X-Ownright-API-Key`
header with every request.
Treat your API keys like secrets β keep them out of client-side code and version control.
All requests must include a shared `X-Ownright-Organization-Id` header. This value is
constant and identifies the core Ownright platform internally.
We'll provide the correct value during onboarding. There is no need to manage or
change this identifier.
### Sample request
Refer to the **Connecting** page in your API's reference section for the specific endpoint URL. Here's the general shape of a request:
```http theme={null}
POST //graphql HTTP/1.1
Host: api.ownright.com
X-Ownright-Client-Id: your-client-id
X-Ownright-API-Key: your-api-key
X-Ownright-Organization-Id: ownright-prod-org
Content-Type: application/json
{
"query": "query { ... }"
}
```
## Security and key management
- API keys are tied to your business account and logged internally
- Store them securely β rotate if compromised
- Contact [developers@ownright.com](mailto:developers@ownright.com) to revoke or generate new keys
-
Webhook signature verification is covered separately in the [Webhooks
section](/fundamentals/webhooks)
# Errors and response codes
Source: https://dev.ownright.com/fundamentals/errors-and-response-codes
Understand how our server communicates error states
When working with the Ownright Developer Platform, errors can occur for a variety of reasons β
from invalid headers to malformed input. This page outlines how we communicate
those errors, how you can distinguish between different types, and how to get
help if something doesn't seem right.
## π§ Two types of errors
Our APIs use GraphQL, which means responses can contain both:
- GraphQL errors β for structural or authentication-level issues
-
User errors β for problems with your request's input, like validation
failures
### 1. GraphQL errors
These errors appear in the top-level errors array of the response. They are used to
communicate problems with the request itself β typically related to authorization,
malformed headers, or server-side issues.
#### Example
```json theme={null}
{
"errors": [
{
"message": "Invalid request `X-Ownright-Client-ID` header, could not find registered API client.",
"code": "INVALID_API_CLIENT"
}
]
}
```
| Error Code | HTTP Status | Description |
| ----------------------- | ----------- | ------------------------------------------------------------------------ |
| `INVALID_API_CLIENT` | 403 | Used when the supplied `X-Ownright-Client-ID` header is invalid. |
| `INVALID_TOKEN` | 403 | Used when the supplied access or refresh token is invalid. |
| `EXPIRED_TOKEN` | 403 | Used when the supplied access or refresh token is expired. |
| `BAD_REQUEST` | 400 | Used when the request is incorrectly formatted. |
| `INTERNAL_SERVER_ERROR` | 500 | Used when there is a server error (likely a bug that needs to be fixed). |
When these errors occur, the HTTP status code of the response will reflect the
issue (e.g. 403 Forbidden for an invalid token).
### 2. User errors
User errors are returned inside the data object of a successful GraphQL response. These
indicate issues with the input provided β for example, a missing field or an invalid value.
```json theme={null}
{
"data": {
"purchaseReferralCreate": {
"userErrors": [
{
"code": "INVALID_INPUT",
"message": "Email must be a valid format."
}
]
}
}
}
```
#### Handling user errors
-
User errors do not result in a failed HTTP request. The status will be 200
OK but the mutation will have no effect.
-
Always check for `userErrors` in the response, especially when calling
mutations.
You can build resilient integrations by displaying these error messages to your clients or logging them for review.
## π·οΈ Request ID for debugging
Every API response includes a `X-Request-Id` header. If you're seeing an unexpected error or behavior, please include this Request-Id when contacting support β it allows us to trace and investigate the request quickly.
```
X-Request-Id: req_8e9f2aa02189423d9b2a71e9c4b15e1d
```
## π Tips for working with errors
-
Log GraphQL and user errors separately β they represent different classes of
problems.
-
Use GraphQL IDEs (e.g. Insomnia, GraphiQL) to catch schema errors before
deployment.
-
Always include a Request-Id when reporting issues to
[developers@ownright.com](mailto:developers@ownright.com).
# GraphQL
Source: https://dev.ownright.com/fundamentals/graphql
The underlying technology that powers our platform
The Ownright Developer Platform is built using [GraphQL](https://graphql.org/), a modern query language for APIs that
gives you precise control over the data you request. While GraphQL may be less familiar
than traditional REST APIs, it unlocks a more flexible and efficient way to interact with
our platform.
## π§ What is GraphQL?
GraphQL is a query language and runtime for APIs originally developed by Facebook.
Unlike REST, which requires multiple endpoints for different data needs, GraphQL exposes
a single endpoint that allows clients to:
- Ask for exactly the data they need, and nothing more
- Retrieve nested, related data in a single request
-
Use a strongly-typed schema to understand what's possible to query or mutate
All requests to our APIs are made as POST requests to a GraphQL endpoint.
Queries and mutations are written in the GraphQL syntax, and responses are returned in
predictable JSON format.
## π Why we chose GraphQL
We chose GraphQL because our integrators range from fast-moving startups to established platforms β all with different integration needs.
GraphQL gives your team:
- **Flexibility**: Fetch exactly the data you needβno more, no less.
-
**Efficiency**: Minimize payload size and reduce over-fetching to improve
performance.
-
**Discoverability**: Explore the schema with introspection, enabling faster
onboarding.
-
**Scalability**: Confidently build on top of an API that evolves without
breaking your integration.
Put simply: GraphQL helps you build faster, cleaner integrations that grow with your product.
## π GraphQL in action
Here's an example of a simple GraphQL query:
```graphql GraphQL query example theme={null}
query GetReferral {
referral(id: "gid://ownright/Referral/1") {
id
kind
status
...
# other fields
...
createdAt
updatedAt
}
}
```
And here's an example mutation:
```graphql GraphQL mutation example theme={null}
mutation CreatePurchaseReferral {
purchaseReferralCreate(
input: {
address: {
street: "123 Main St"
city: "Toronto"
# ... other input
}
# ... other input
}
) {
referral {
id
status
}
}
}
```
Each API has its own endpoint β refer to the **Connecting** page in your API's reference section for the specific URL.
## π Learn more about GraphQL
If you're new to GraphQL or want to brush up your skills, here are some great resources:
-
[graphql.org/learn](https://graphql.org/learn) β The official GraphQL
introduction
-
[How to GraphQL](https://www.howtographql.com/) β A free fullstack GraphQL
tutorial
-
[Apollo GraphQL Docs](https://www.apollographql.com/docs/) β For tooling,
best practices, and client-side usage
-
[Postman GraphQL
Guide](https://learning.postman.com/docs/sending-requests/graphql/graphql-overview/)
β GraphQL in familiar tools
## π‘ Developer tip
Many GraphQL clients (like [Insomnia](https://insomnia.rest/), [Postman](https://www.postman.com/), or [GraphiQL](https://github.com/graphql/graphiql))
offer built-in schema explorers. This lets you view available queries, mutations, and types without leaving your
dev environment.
# Pagination
Source: https://dev.ownright.com/fundamentals/pagination
For responses that return lists it's important to understand how we paginate
The Ownright Developer Platform uses the GraphQL "Connection" pattern for pagination β
a powerful and flexible way to request data in chunks while maintaining full control over
ordering and navigation.
If you're used to page and per\_page style pagination, this might feel different at first,
but it offers more precision and consistency β especially in real-time environments where
data can change frequently.
## π What are GraphQL connections?
Connections are a GraphQL pattern for handling lists of objects (like referrals or matters)
in a standardized way. Instead of simple arrays, connections return a structured object with:
**A list of edges, each containing:**
- A node (the item you care about)
- A cursor (a pointer used for pagination)
**A pageInfo object that helps you know:**
- If there's a `hasNextPage` or `hasPreviousPage`
- What the `startCursor` and `endCursor` are for the current page
This model helps avoid missing or duplicate items when new data is created during pagination.
## π¦ Example paginated query
Let's say you want to fetch a list of items, 10 at a time:
```graphql theme={null}
query FetchMatters {
matters(first: 10) {
edges {
node {
id
kind
...
}
cursor
}
pageInfo {
hasNextPage
endCursor
}
}
}
```
When you get the response, you'll receive a list of items, and if `hasNextPage` is true,
you can request the next page using the `endCursor`:
```graphql theme={null}
query FetchMoreMatters {
matters(first: 10, after: "cursor_from_previous_page") {
...
}
}
```
This gives you cursor-based pagination, which is more reliable than
offset-based pagination when the data is constantly changing.
## π§ Common use cases
Here are a few common ways to use connections:
- List all records using a query with `first: N` and pagination
- Build an activity feed by scrolling through updates
- Export historical data one page at a time for internal reporting
- Sync new records incrementally by storing the last cursor you've seen
## π Learn more about GraphQL connections
If you're new to GraphQL pagination, here are some great resources:
-
[GraphQL Cursor Connections
Specification](https://relay.dev/graphql/connections.htm) β the original
spec
-
[Apollo Pagination
Docs](https://www.apollographql.com/docs/react/pagination/overview/) β
practical client-side usage
-
[Hasura Pagination Primer](https://hasura.io/learn/graphql/pagination/) β
friendly intro with visual examples
## π‘ Tips for implementation
- Always check `pageInfo.hasNextPage` before paginating
-
Don't assume cursors are sequential strings β treat them as opaque tokens
- Use cursors to resume pagination if a sync job is interrupted
-
Avoid using GraphQL offset or skip patterns β they're not supported in our
APIs
# Rate limits
Source: https://dev.ownright.com/fundamentals/rate-limits
Understand the protections we have in place to protect our platform
We are in the early stages of rolling out rate limits. No rate limits are currently
enforced, but we are monitoring usage patterns and will implement fair-use protections soon.
When enforcement is introduced, this page will be updated to reflect:
- The exact request limits per minute/hour
- Which endpoints or operations are affected
- How to identify when you're being throttled
- How to handle rate limit errors gracefully
To ensure reliability and fairness across all integrators, the Ownright Developer
Platform implements rate limiting β a set of controls that prevent any one client
from overwhelming the system.
These limits help us maintain:
- β
Fast and consistent performance for all integrators
- π Protection against accidental or malicious overuse
- π Platform scalability as usage grows
## π§ How to handle rate limits (future)
When limits are enforced, you'll receive a `429 Too Many Requests` response if you exceed them.
We will include headers like:
| Header | HTTP Status |
| -------------------------------- | ----------------------------------------- |
| `Retry-After` | Number of seconds to wait before retrying |
| `X-Ownright-RateLimit-Limit` | Your current rate limit |
| `X-Ownright-RateLimit-Remaining` | How many requests you have left |
| `X-Ownright-RateLimit-Reset` | Timestamp when the limit resets |
Your app should monitor these headers and implement backoff logic where possible.
Limits apply per API client, not globally across all integrators.
## π¬ Need higher limits?
If you expect higher volume or have batch processing needs, reach out to our team ([developers@ownright.com](mailto:developers@ownright.com)).
We're happy to review your use case and adjust limits accordingly.
## π Reminder
Even in the absence of hard limits, we log and monitor usage to ensure platform health.
Please avoid excessive polling and always use webhooks for real-time updates.
# Webhooks
Source: https://dev.ownright.com/fundamentals/webhooks
Enable real time updates in your system by using our webhooks
Webhooks allow Ownright to proactively notify your system when important events happen β
without requiring you to constantly poll the API. They're the best way to keep your platform
in sync with activity on the Ownright platform as it evolves in real time.
## π What are webhooks?
A webhook is a lightweight HTTP request sent from Ownright to your server when a specific
event occurs. For example, when a referral is converted into a matter, you'll receive a
webhook event immediately β no need to poll for updates.
Webhooks enable:
- Real-time updates to your internal systems
- Triggering business logic or workflows (e.g. status sync, UI changes)
- Scalable and event-driven integrations
## π― Why we use webhooks
Real estate transactions move fast. Webhooks help you:
- Stay informed the moment something progresses
- Automatically update client records or timelines
- Reduce polling overhead and keep your app performant
## π¬ Webhook subscriptions
To get started with webhooks you will need to create a "webhook subscription".
Webhook subscriptions allow you to register your server to receive specific events.
Each subscription includes:
- A callback URL: The endpoint Ownright will send events to
- A list of event types the URL should receive
- A webhook secret used to verify authenticity
### Registering a webhook subscription
Webhook subscriptions are registered via the API. Refer to your API's reference section for the specific mutations available.
When creating a subscription, Ownright will:
- Generate a verification token
- Send an HTTP POST request to your callback URL with the token
- Expect a response with the same token in the body
If verification succeeds, the webhook subscription will be created and your
callback URL will begin to receive events.
#### Verification example
**Request sent by Ownright:**
```http theme={null}
POST /your/callback/url HTTP/1.1
Content-Type: application/json
X-Ownright-Webhook-Signature: signature
X-Ownright-Webhook-Timestamp: timestamp
{
"verification_token": "abc123"
}
```
**Expected response from your server:**
```http theme={null}
{
"verification_token": "abc123"
}
```
## π¦ Receiving webhook events
When an event occurs, we send an HTTP POST request to your callback URL with a JSON payload.
| Header | HTTP Status |
| ------------------------------ | --------------------------------------------------------- |
| `X-Ownright-Webhook-Signature` | HMAC SHA256 signature of the request |
| `X-Ownright-Webhook-Timestamp` | Timestamp of the request (used to prevent replay attacks) |
### Verifying the webhook
To confirm that a webhook request is legitimate:
-
Concatenate: `"{timestamp}.{raw_request_body}"`
- Hash it using `HMAC SHA256` with your webhook secret
- Compare the result to the value in `X-Ownright-Webhook-Signature`
If they match, the event is authentic.
Tip: You can also use the timestamp to reject requests that are too old (e.g.,
more than 5 minutes) to guard against replay attacks.
## π Supported events
The specific events available depend on which API you are using. Refer to the **Webhooks** section in your API's reference for the full list of supported events and their schemas.
## π‘ Best practices
-
Respond with a 2xx status code within 5 seconds to acknowledge receipt
-
Retry logic is built in β failed deliveries will be retried with exponential
backoff
- Your webhook URL should be HTTPS and publicly accessible
- Always verify webhook signatures for security
# Introduction
Source: https://dev.ownright.com/introduction
Welcome to the Ownright Developer Platform documentation
Welcome to the **Ownright Developer Platform** β a suite of APIs and tools that enable
companies to deliver exceptional residential real estate closing experiences for their clients.
Our platform is designed to give you secure, programmatic access to key Ownright services so
you can integrate legal workflows directly into your product.
## Our APIs
For proptech companies to make referrals, track matters, and receive webhook
updates as closings progress.
For lenders to interact with Ownright's platform and streamline their real
estate legal workflows.
## Learn more
Understand the current scope and limitations of the Ownright Developer
Platform.
Get in touch with our team for help or to share feedback.
# Engagements
Source: https://dev.ownright.com/lender-api/core-concepts/engagements
The foundational object representing a real estate legal file in the Lender API
An **engagement** is the core object in the Lender API. It represents a real estate legal file
that Ownright manages on behalf of your lending organization. When you submit a new file through
the API, you're creating an engagement that our legal team will open, work on, and close.
## Types of engagements
The Lender API supports two types of engagements, each corresponding to a different kind of
real estate transaction:
-
**Purchase** β A transaction where your borrower is purchasing a property.
Created using the `purchase` field on `EngagementCreateInput`.
-
**Refinance** β A transaction where your borrower is refinancing an existing
mortgage on their property. Created using the `refinance` field on
`EngagementCreateInput`.
Both types share a common set of fields through the `Engagement` interface (such as `id`,
`clients`, `owner`, and `type`), but each has its own status model and type-specific fields
like `property` and `closingDate`.
## Engagement lifecycle
Every engagement follows a predictable lifecycle from the moment it's received to when
the transaction is fully closed (or cancelled). The diagram below illustrates the typical
progression:
### Engagement states
Both purchase and refinance engagements share the same set of states:
-
**Received** β Ownright has received engagement details and is actively
reviewing the information.
-
**Setting up** β Ownright is actively setting up the engagement to begin
closing preparation.
-
**In progress** β The engagement is actively being worked on by the Ownright
legal team.
-
**Preparing for closing** β The engagement is being prepared for closing
day. Documents are being reviewed, title work is underway, and the legal
team is coordinating with all parties.
-
**Closing in progress** β Final closing actions are in motion and the deal
is set to close today.
- **Closed** β The engagement has been successfully funded and closed.
-
**Complete** β All post-closing tasks have been finalized and the engagement
is fully complete.
-
**Cancelled** β The engagement has been cancelled and is no longer being
worked on. This can happen at any point in the lifecycle.
The `status` field on `PurchaseEngagement` and `RefinanceEngagement` is an
interface (`PurchaseEngagementStatus` / `RefinanceEngagementStatus`) that
contains a `state` enum. Use inline fragments to access the state β see the
[Fetching engagement details](/lender-api/guides/fetching-engagement-details)
guide for examples.
## Key related objects
Each engagement is associated with several important objects:
* **EngagementClient** β The borrower(s) on the engagement. Each client has a `firstName`,
`lastName`, `email`, and optional `middleName` and `phoneNumber`.
* **Property** β The real estate property involved in the transaction. Contains an `Address`
with the full street address, city, province, and postal code.
* **TeamMember** β The person within your lending organization who owns the engagement.
The `owner` field on an engagement displays this team member's name. See the
[Lender and team members](/lender-api/core-concepts/lender-and-team-members) core concept
for more details.
## Next steps
Now that you understand engagements, you're ready to start working with them:
Learn about your organization and team member objects.
Learn how to submit a new file to Ownright through the API.
Filter, sort, and paginate through your engagements.
Retrieve detailed information about a specific engagement.
Understand the staged file upload flow for attaching documents.
# Lender and team members
Source: https://dev.ownright.com/lender-api/core-concepts/lender-and-team-members
Your organization and the people within it β the account-level objects in the Lender API
Before creating engagements, it's important to understand the two account-level objects
that represent your organization and its users within the Ownright platform.
## The Lender object
The `Lender` type represents your authenticated lending organization. Think of it as the
"who am I?" object β it tells you about the organization that the current API credentials
belong to.
You can retrieve your lender information using the `lender` query:
```graphql theme={null}
query GetLender {
lender {
name
logoUrl
members {
id
firstName
lastName
email
}
}
}
```
The response includes:
* **name** β Your organization's name as registered with Ownright.
* **logoUrl** β A URL to your organization's logo, if one has been uploaded.
* **members** β The full list of team members in your organization (see below).
## Team members
A `TeamMember` represents an individual user within your lending organization. Team members
are the people who own and manage engagements on your side.
Each team member has:
| Field | Type | Description |
| ----------- | ---------------- | ------------------------------- |
| `id` | `TeamMemberGID!` | Unique identifier in GID format |
| `firstName` | `String` | The team member's first name |
| `lastName` | `String` | The team member's last name |
| `email` | `String` | The team member's email address |
You can also fetch team members directly using the top-level `teamMembers` query:
```graphql theme={null}
query ListTeamMembers {
teamMembers {
id
firstName
lastName
email
}
}
```
**Sample response:**
```json theme={null}
{
"data": {
"teamMembers": [
{
"id": "gid://ownright/TeamMember/1",
"firstName": "Jane",
"lastName": "Smith",
"email": "jane.smith@examplelender.com"
},
{
"id": "gid://ownright/TeamMember/2",
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@examplelender.com"
}
]
}
}
```
## How they relate to engagements
When you create an engagement, you must assign an **owner** β this is the team member
responsible for the file on your side. The `owner` field on `PurchaseEngagementCreateInput`
and `RefinanceEngagementCreateInput` requires a `TeamMemberGID`.
This means you'll typically want to fetch your team members first to get valid owner IDs
before creating engagements.
If you pass a `TeamMemberGID` that doesn't belong to your organization, the
`engagementCreate` mutation will return a `TEAM_MEMBER_NOT_FOUND` error.
## Practical workflow
A common pattern when integrating with the Lender API:
Call the `teamMembers` query to get the list of people in your organization.
Cache these IDs in your system so you can assign owners when creating
engagements.
Match each `TeamMemberGID` to the corresponding user in your system β for
example, by email address. This allows your internal workflows to
automatically assign the correct owner.
Pass the `TeamMemberGID` as the `owner` field in your `engagementCreate`
mutation. See the [Creating an
engagement](/lender-api/guides/creating-an-engagement) guide for a full
walkthrough.
## Next steps
Submit your first real estate file to Ownright through the API.
Filter, sort, and paginate through your engagements.
# Cancelling an engagement
Source: https://dev.ownright.com/lender-api/guides/cancelling-an-engagement
How to cancel an engagement that is no longer needed
If an engagement is no longer needed β for example, the deal fell through or was submitted
in error β you can cancel it using the `engagementCancel` mutation.
## Which engagements can be cancelled?
Currently, an engagement can only be cancelled when it is in the **Received** or
**Setting up** state.
Support for cancelling engagements in additional states is planned for a
future release. Check back for updates.
You can check whether a specific engagement is cancellable by querying the `cancellable`
field:
```graphql theme={null}
query CheckCancellable($id: EngagementGID!) {
engagement(id: $id) {
... on PurchaseEngagement {
id
cancellable
status {
state
}
}
... on RefinanceEngagement {
id
cancellable
status {
state
}
}
}
}
```
If `cancellable` is `true`, you can proceed with the cancellation.
## Cancelling an engagement
Query the engagement and check that `cancellable` returns `true`. If the engagement
has already progressed past the Setting up state, the cancellation will be rejected.
Call `engagementCancel` with the engagement's GID:
```graphql Request theme={null}
mutation CancelEngagement($id: EngagementGID!) {
engagementCancel(id: $id) {
engagement {
... on PurchaseEngagement {
id
shortId
cancellable
status {
state
}
}
... on RefinanceEngagement {
id
shortId
cancellable
status {
state
}
}
}
userErrors {
code
field
message
}
}
}
```
**Variables:**
```json Variables theme={null}
{
"id": "gid://ownright/Engagement/42"
}
```
On success, the engagement is returned with its status set to **Cancelled**:
```json Successful response [expandable] theme={null}
{
"data": {
"engagementCancel": {
"engagement": {
"id": "gid://ownright/Engagement/42",
"shortId": "ENG-42",
"cancellable": false,
"status": {
"state": "CANCELLED"
}
},
"userErrors": []
}
}
}
```
If the engagement cannot be cancelled, the `userErrors` array will contain the
reason:
```json Error response [expandable] theme={null}
{
"data": {
"engagementCancel": {
"engagement": null,
"userErrors": [
{
"code": "ENGAGEMENT_NOT_CANCELLABLE",
"field": ["id"],
"message": "The specified engagement cannot be cancelled."
}
]
}
}
}
```
## Error codes
The `engagementCancel` mutation can return the following error codes:
| Code | Description |
| ---------------------------- | --------------------------------------------------------------------- |
| `ENGAGEMENT_NOT_CANCELLABLE` | The engagement is not in a state that allows cancellation |
| `ENGAGEMENT_NOT_FOUND` | The specified `EngagementGID` does not exist or you don't have access |
Cancellation is irreversible. Once an engagement is cancelled, it cannot be
reopened. Make sure you confirm the cancellation with the appropriate
stakeholders before proceeding.
## Next steps
Learn the staged upload flow for attaching mortgage documents.
Explore all queries, mutations, and types available in the Lender API.
# Creating an engagement
Source: https://dev.ownright.com/lender-api/guides/creating-an-engagement
A step-by-step guide to submitting a new real estate file to Ownright
To create an engagement, use the `engagementCreate` mutation. This allows you to submit
a new real estate legal file to Ownright for either a purchase or refinance transaction.
## Understanding `@oneOf`
The `EngagementCreateInput` uses the `@oneOf` directive, which means you must provide
**exactly one** of the type-specific inputs:
* `purchase` β for a purchase engagement
* `refinance` β for a refinance engagement
You cannot supply both at the same time. This pattern ensures the engagement is created
with the correct type-specific fields.
## Steps to create an engagement
Decide whether you're creating a **purchase** or **refinance** engagement. This
determines which input field you'll use:
| Engagement type | Input field | Input type |
| --------------- | ----------- | -------------------------------- |
| Purchase | `purchase` | `PurchaseEngagementCreateInput` |
| Refinance | `refinance` | `RefinanceEngagementCreateInput` |
Both input types share the same set of fields: `clients`, `closingDate`, `owner`,
`newMortgageFileIds`, `newMortgageNumber`, `notes`, and `propertyAddress`.
Before constructing the mutation, make sure you have:
* **Owner** β A `TeamMemberGID` for the team member who will own this engagement.
See [Lender and team members](/lender-api/core-concepts/lender-and-team-members)
for how to fetch these.
* **At least one client** β Each client needs a `firstName`, `lastName`, and `email`.
Phone number and middle name are optional.
* **Closing date** β The expected closing date in ISO 8601 format (e.g., `2025-09-15`).
* **Mortgage files** (if any) β Upload documents first using the
[staged file upload flow](/lender-api/guides/file-uploads), then pass the
resulting `FileRecordGID` values.
Here's a complete example for creating a purchase engagement:
```graphql Request [expandable] theme={null}
mutation CreatePurchaseEngagement($input: EngagementCreateInput!) {
engagementCreate(input: $input) {
engagement {
... on PurchaseEngagement {
id
shortId
type
closingDate
owner
clients {
firstName
lastName
email
}
property {
address {
street
city
province
postalCode
}
}
status {
state
}
}
}
userErrors {
code
field
message
}
}
}
```
**Variables:**
```json Variables [expandable] theme={null}
{
"input": {
"purchase": {
"owner": "gid://ownright/TeamMember/1",
"closingDate": "2025-09-15",
"clients": [
{
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@example.com",
"phoneNumber": "+14165551234"
}
],
"propertyAddress": {
"street": "123 Main Street",
"unitNumber": "Unit 4B",
"city": "Toronto",
"province": "ONTARIO",
"postalCode": "M5V 2T6",
"country": "CANADA"
},
"newMortgageNumber": "MTG-2025-001",
"newMortgageFileIds": [],
"notes": "Client prefers email communication."
}
}
}
```
To create a refinance engagement instead, use the `refinance` key in the input
with a `RefinanceEngagementCreateInput`. The fields are identical.
On success, the response includes the newly created engagement:
```json Successful response [expandable] theme={null}
{
"data": {
"engagementCreate": {
"engagement": {
"id": "gid://ownright/Engagement/42",
"shortId": "ENG-42",
"type": "PURCHASE",
"closingDate": "2025-09-15",
"owner": "Jane Smith",
"clients": [
{
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@example.com"
}
],
"property": {
"address": {
"street": "123 Main Street",
"city": "Toronto",
"province": "ONTARIO",
"postalCode": "M5V 2T6"
}
},
"status": {
"state": "RECEIVED"
}
},
"userErrors": []
}
}
}
```
If something goes wrong, check the `userErrors` array:
```json Error response [expandable] theme={null}
{
"data": {
"engagementCreate": {
"engagement": null,
"userErrors": [
{
"code": "TEAM_MEMBER_NOT_FOUND",
"field": ["input", "purchase", "owner"],
"message": "The specified team member could not be found."
}
]
}
}
}
```
## Error codes
The `engagementCreate` mutation can return the following error codes:
| Code | Description |
| -------------------------- | ---------------------------------------------------------------- |
| `INVALID_ENGAGEMENT_INPUT` | The engagement input is invalid (e.g., missing required fields) |
| `TEAM_MEMBER_NOT_FOUND` | The specified `TeamMemberGID` doesn't exist in your organization |
| `FILE_RECORD_NOT_FOUND` | A `FileRecordGID` in `newMortgageFileIds` could not be found |
| `FILE_RECORD_NOT_STAGED` | A file record hasn't been uploaded yet via the staged upload URL |
## Tips
-
Always fetch your team members first so you have valid `TeamMemberGID`
values to assign as owners.
-
If you need to attach mortgage documents, complete the [file upload
flow](/lender-api/guides/file-uploads) before calling `engagementCreate`.
-
The `newMortgageFileIds` array can be empty if you don't have documents to
attach at creation time.
- New engagements always start in the **Received** state.
## Next steps
Filter, sort, and paginate through your engagements.
Learn the staged upload flow for attaching mortgage documents.
# Fetching engagement details
Source: https://dev.ownright.com/lender-api/guides/fetching-engagement-details
How to retrieve detailed information about a specific engagement
To retrieve information about a specific engagement, use the `engagement` query with
the engagement's GID. Since the `Engagement` type is an interface implemented by
`PurchaseEngagement` and `RefinanceEngagement`, you'll use inline fragments to access
type-specific fields.
## Fetching a single engagement
Use the `engagement(id: EngagementGID!)` query to retrieve details about one engagement:
```graphql Request theme={null}
query GetEngagementDetails($id: EngagementGID!) {
engagement(id: $id) {
... on PurchaseEngagement {
id
shortId
type
closingDate
owner
createdAt
clients {
firstName
lastName
email
phoneNumber
}
property {
address {
street
unitNumber
city
province
postalCode
country
}
}
status {
state
}
}
... on RefinanceEngagement {
id
shortId
type
closingDate
owner
createdAt
clients {
firstName
lastName
email
phoneNumber
}
property {
address {
street
unitNumber
city
province
postalCode
country
}
}
status {
state
}
}
}
}
```
**Variables:**
```json Variables theme={null}
{
"id": "gid://ownright/Engagement/42"
}
```
**Sample response:**
```json Response [expandable] theme={null}
{
"data": {
"engagement": {
"id": "gid://ownright/Engagement/42",
"shortId": "ENG-42",
"type": "PURCHASE",
"closingDate": "2025-09-15",
"owner": "Jane Smith",
"createdAt": "2025-08-01T14:30:00Z",
"clients": [
{
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@example.com",
"phoneNumber": "+14165551234"
}
],
"property": {
"address": {
"street": "123 Main Street",
"unitNumber": "Unit 4B",
"city": "Toronto",
"province": "ONTARIO",
"postalCode": "M5V 2T6",
"country": "CANADA"
}
},
"status": {
"state": "PREPARING_FOR_CLOSING"
}
}
}
}
```
## Understanding inline fragments
Since the `engagement` query returns the `Engagement` interface, you need inline fragments
to access the concrete type's fields. The interface provides a common set of fields
(`id`, `shortId`, `type`, `owner`, `clients`, `createdAt`), but type-specific fields
like `closingDate`, `property`, and `status` are only available on the concrete types.
```graphql theme={null}
{
engagement(id: "gid://ownright/Engagement/42") {
# Fields from the Engagement interface (available on all types)
id
shortId
type
owner
# Type-specific fields require inline fragments
... on PurchaseEngagement {
closingDate
property {
address {
street
city
}
}
status {
state
}
}
... on RefinanceEngagement {
closingDate
property {
address {
street
city
}
}
status {
state
}
}
}
}
```
The `status` field is itself an interface with multiple concrete status types
(one per state). Each status type currently exposes a `state` field, but this
pattern allows for additional status-specific fields to be added in the future
without breaking changes.
## Handling a null response
If the engagement ID doesn't exist or you don't have access to it, the query returns
`null`:
```json theme={null}
{
"data": {
"engagement": null
}
}
```
Make sure your integration handles this case gracefully.
## Next steps
Learn how to cancel an engagement that is no longer needed.
Learn the staged upload flow for attaching mortgage documents.
# File uploads
Source: https://dev.ownright.com/lender-api/guides/file-uploads
How to upload mortgage documents using the staged file upload flow
The Lender API uses a **staged file upload** pattern to securely handle document uploads.
Rather than sending file data directly through the GraphQL API, you first create a staged
upload to get a signed URL, upload the file to that URL, and then reference the staged file
when creating an engagement.
## The 3-step upload flow
Call the `stagedFileUploadCreate` mutation with the filename and MIME type of the
document you want to upload:
```graphql Request theme={null}
mutation CreateStagedUpload($input: StagedFileUploadInput!) {
stagedFileUploadCreate(input: $input) {
stagedFileUpload {
file {
id
filename
staged
}
signedUploadUrl
signedUploadUrlExpiryDate
}
userErrors {
code
field
message
}
}
}
```
**Variables:**
```json Variables theme={null}
{
"input": {
"filename": "mortgage-commitment-letter.pdf",
"mimeType": "DOCUMENT_PDF"
}
}
```
**Response:**
```json Response [expandable] theme={null}
{
"data": {
"stagedFileUploadCreate": {
"stagedFileUpload": {
"file": {
"id": "gid://ownright/FileRecord/123",
"filename": "mortgage-commitment-letter.pdf",
"staged": true
},
"signedUploadUrl": "https://storage.example.com/uploads/abc123?signature=xyz",
"signedUploadUrlExpiryDate": "2025-09-01T15:00:00Z"
},
"userErrors": []
}
}
}
```
The `signedUploadUrl` expires at the date/time indicated by
`signedUploadUrlExpiryDate`. Make sure you upload the file before this time,
or you'll need to create a new staged upload.
Use an HTTP `PUT` request to upload the file binary to the `signedUploadUrl`
returned in step 1. Set the `Content-Type` header to match the file's MIME type:
```bash theme={null}
curl -X PUT \
-H "Content-Type: application/pdf" \
--data-binary @mortgage-commitment-letter.pdf \
"https://storage.example.com/uploads/abc123?signature=xyz"
```
This is a direct upload to the storage service β it does not go through the
GraphQL API and does not require your API authentication headers.
Once the file is uploaded, use the `FileRecordGID` (the `id` from step 1) in
the `newMortgageFileIds` array when creating an engagement:
```graphql Request theme={null}
mutation CreateEngagementWithFiles($input: EngagementCreateInput!) {
engagementCreate(input: $input) {
engagement {
... on PurchaseEngagement {
id
shortId
}
}
userErrors {
code
field
message
}
}
}
```
```json Variables [expandable] theme={null}
{
"input": {
"purchase": {
"owner": "gid://ownright/TeamMember/1",
"closingDate": "2025-09-15",
"clients": [
{
"firstName": "Jane",
"lastName": "Doe",
"email": "jane.doe@example.com"
}
],
"newMortgageFileIds": [
"gid://ownright/FileRecord/123"
],
"propertyAddress": {
"street": "123 Main Street",
"city": "Toronto",
"province": "ONTARIO",
"postalCode": "M5V 2T6",
"country": "CANADA"
}
}
}
}
```
## Uploading multiple files
You can upload multiple files by repeating steps 1 and 2 for each file, then passing
all of the `FileRecordGID` values in the `newMortgageFileIds` array:
```json theme={null}
{
"newMortgageFileIds": [
"gid://ownright/FileRecord/123",
"gid://ownright/FileRecord/124",
"gid://ownright/FileRecord/125"
]
}
```
## Supported MIME types
The `FileMimeType` enum defines the file types you can upload:
| Enum value | MIME type | Description |
| --------------- | -------------------------------------------------------------------------- | -------------- |
| `DOCUMENT_PDF` | `application/pdf` | PDF documents |
| `DOCUMENT_DOC` | `application/msword` | Word documents |
| `DOCUMENT_DOCX` | `application/vnd.openxmlformats-officedocument.wordprocessingml.documents` | Word documents |
| `IMAGE_JPEG` | `image/jpeg` | JPEG images |
| `IMAGE_PNG` | `image/png` | PNG images |
| `IMAGE_HEIC` | `image/heic` | HEIC images |
| `IMAGE_TIFF` | `image/tiff` | TIFF images |
## Error handling
### Staged upload errors
The `stagedFileUploadCreate` mutation can return:
| Code | Description |
| ------------------ | ----------------------------------------------- |
| `INVALID_FILENAME` | The supplied filename is invalid or unsupported |
### Engagement creation errors (file-related)
When passing file IDs to `engagementCreate`, you may encounter:
| Code | Description |
| ------------------------ | ------------------------------------------------------------ |
| `FILE_RECORD_NOT_FOUND` | A `FileRecordGID` in `newMortgageFileIds` could not be found |
| `FILE_RECORD_NOT_STAGED` | The file hasn't been uploaded to the signed URL yet |
The `FILE_RECORD_NOT_STAGED` error means you created the staged upload (step
1. but haven't completed the actual file upload (step 2) before trying to use
the file in step 3. Make sure the HTTP PUT to the signed URL completes
successfully before referencing the file.
## Next steps
Explore all queries, mutations, and types available in the Lender API.
Stay up to date with changes to the Lender API.
# Searching engagements
Source: https://dev.ownright.com/lender-api/guides/searching-engagements
How to filter, sort, search, and paginate through your engagements
The `engagements` query provides a powerful way to list and search through all of your
engagements. It supports filtering, text search, sorting, and cursor-based pagination.
## Basic paginated list
To retrieve a simple paginated list of engagements, use the `first` argument to specify
how many results you want:
```graphql theme={null}
query ListEngagements {
engagements(first: 10) {
edges {
cursor
node {
... on PurchaseEngagement {
id
shortId
type
closingDate
owner
status {
state
}
}
... on RefinanceEngagement {
id
shortId
type
closingDate
owner
status {
state
}
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
```
## Filtering
Use the `filters` argument with an `EngagementSearchFilterInput` to narrow down results.
All filter fields are optional and can be combined:
### By status
```graphql theme={null}
query ActiveEngagements {
engagements(
first: 20
filters: { statuses: [RECEIVED, SETTING_UP, PREPARING_FOR_CLOSING] }
) {
edges {
node {
... on PurchaseEngagement {
id
shortId
type
}
... on RefinanceEngagement {
id
shortId
type
}
}
}
}
}
```
### By type
```graphql theme={null}
query PurchaseEngagementsOnly {
engagements(first: 20, filters: { types: [PURCHASE] }) {
edges {
node {
... on PurchaseEngagement {
id
shortId
closingDate
}
}
}
}
}
```
### By province
```graphql theme={null}
query OntarioEngagements {
engagements(first: 20, filters: { provinces: [ONTARIO, BRITISH_COLUMBIA] }) {
edges {
node {
... on PurchaseEngagement {
id
shortId
}
... on RefinanceEngagement {
id
shortId
}
}
}
}
}
```
### By date range
Both `closingDate` and `createdAt` support date range filtering:
```graphql theme={null}
query EngagementsClosingThisMonth {
engagements(
first: 20
filters: { closingDate: { startDate: "2025-09-01", endDate: "2025-09-30" } }
) {
edges {
node {
... on PurchaseEngagement {
id
shortId
closingDate
}
... on RefinanceEngagement {
id
shortId
closingDate
}
}
}
}
}
```
### Combining filters
All filter fields can be used together. When multiple filters are specified, results must
match all of them:
```graphql theme={null}
query FilteredEngagements {
engagements(
first: 20
filters: {
types: [PURCHASE]
statuses: [PREPARING_FOR_CLOSING, CLOSING_IN_PROGRESS]
provinces: [ONTARIO]
closingDate: { startDate: "2025-09-01", endDate: "2025-12-31" }
}
) {
edges {
node {
... on PurchaseEngagement {
id
shortId
closingDate
owner
}
}
}
}
}
```
## Text search
Use the `query` parameter to perform a text search across engagements. This is useful
for finding engagements by client name, short ID, or other searchable fields:
```graphql theme={null}
query SearchEngagements {
engagements(first: 10, query: "Jane Doe") {
edges {
node {
... on PurchaseEngagement {
id
shortId
clients {
firstName
lastName
}
}
... on RefinanceEngagement {
id
shortId
clients {
firstName
lastName
}
}
}
}
}
}
```
The `query` and `filters` parameters can be combined to perform a text search
within a filtered set of results.
## Sorting
Control the order of results with the `sortOrder` argument using the
`EngagementSearchSortOrder` enum:
| Sort order | Description |
| ------------------- | ------------------------------- |
| `CLOSING_DATE_ASC` | Closing date, earliest first |
| `CLOSING_DATE_DESC` | Closing date, most recent first |
| `CREATED_AT_ASC` | Creation date, oldest first |
| `CREATED_AT_DESC` | Creation date, newest first |
```graphql theme={null}
query EngagementsByClosingDate {
engagements(first: 20, sortOrder: CLOSING_DATE_ASC) {
edges {
node {
... on PurchaseEngagement {
id
shortId
closingDate
}
... on RefinanceEngagement {
id
shortId
closingDate
}
}
}
}
}
```
## Pagination
The `engagements` query uses cursor-based pagination. Use `pageInfo` to determine if
there are more results, and pass the `endCursor` value as the `after` argument to
fetch the next page:
```graphql theme={null}
query NextPage {
engagements(first: 10, after: "eyJpZCI6MTB9") {
edges {
cursor
node {
... on PurchaseEngagement {
id
shortId
}
... on RefinanceEngagement {
id
shortId
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
```
A typical pagination loop:
Call `engagements(first: 20)` without an `after` cursor.
If `pageInfo.hasNextPage` is `true`, there are more results to fetch.
Pass `pageInfo.endCursor` as the `after` argument in the next request.
Repeat until `hasNextPage` is `false`.
For more details on cursor-based pagination patterns, see the
[Pagination](/fundamentals/pagination) documentation.
## Next steps
Retrieve detailed information about a specific engagement.
Learn how to cancel an engagement that is no longer needed.
# Overview
Source: https://dev.ownright.com/lender-api/overview
Streamline your real estate legal workflows by integrating with the Ownright Lender API
The **Lender API** enables lending institutions to programmatically manage their real estate
legal files with Ownright. Instead of manually submitting engagement details, your systems
can create engagements, upload mortgage documents, and track the status of every closing
β all through a single GraphQL API.
With the Lender API, you can:
-
**Create engagements** β Submit new purchase and refinance files to Ownright
directly from your loan origination system.
-
**Track engagement status** β Monitor the progress of every closing from
received through to funded and closed.
-
**Upload documents** β Securely attach mortgage commitment letters and other
documents using the staged file upload flow.
-
**Manage your team** β Retrieve your team members and assign ownership of
engagements to the right people.
## Get started
Understand engagements β the core object representing a real estate legal
file.
Learn about your organization and team member objects.
Understand how to authenticate your requests to the Lender API.
Submit your first real estate file to Ownright through the API.
Learn the staged upload flow for attaching mortgage documents.
Explore all queries, mutations, and types available in the Lender API.
# Changelog
Source: https://dev.ownright.com/lender-api/reference/changelog
Stay up to date with the changes we make to the Lender API
## Changelog
The initial release of the Ownright Lender API, including:
- **Engagement management** β Create purchase and refinance engagements via the `engagementCreate` mutation.
- **Engagement queries** β Fetch a single engagement by GID or search/filter/sort across all engagements with the `engagements` query.
- **File uploads** β Upload mortgage documents using the staged file upload flow with `stagedFileUploadCreate`.
- **Lender and team members** β Retrieve your organization details and team member list via the `lender` and `teamMembers` queries.
# Connecting
Source: https://dev.ownright.com/lender-api/reference/connecting
General details on how to connect to the Lender API
Before you start sending queries and mutations, you need to know where to
send requests and what headers to include. This page covers the basics of
making a successful connection to the Ownright Lender API.
## API endpoint
All GraphQL requests are sent to a single HTTPS endpoint:
```
POST https://api.ownright.com/lenders/graphql
```
## Required headers
Every request to the Lender API must include the following headers:
| Header | Description |
| -------------------------------- | ----------------------------------------------- |
| `Content-Type: application/json` | Indicates the request body is JSON |
| `X-Ownright-Client-Id` | Your unique API client ID |
| `X-Ownright-API-Key` | Your long-lived API key used for authentication |
| `X-Ownright-Organization-Id` | A constant identifier for the Ownright platform |
These headers are used to authenticate your requests and route them correctly.
## Example request
Here's an example of a basic GraphQL request using curl to fetch your lender
organization details:
```bash Example request theme={null}
curl -X POST https://api.ownright.com/lenders/graphql \
-H "Content-Type: application/json" \
-H "X-Ownright-Client-Id: your-client-id" \
-H "X-Ownright-API-Key: your-api-key" \
-H "X-Ownright-Organization-Id: ownright-prod-org" \
-d '{
"query": "query { lender { name members { id firstName lastName email } } }"
}'
```
**Example response:**
```json Example response theme={null}
{
"data": {
"lender": {
"name": "Example Lending Corp",
"members": [
{
"id": "gid://ownright/TeamMember/1",
"firstName": "Jane",
"lastName": "Smith",
"email": "jane.smith@examplelender.com"
}
]
}
}
}
```
Use tools like [Postman](https://www.postman.com/),
[Insomnia](https://insomnia.rest/), or
[GraphiQL](https://github.com/graphql/graphiql) for easier request building
and testing.
## Differences from the Partner API
If you've already integrated with the Partner API, the Lender API works the same way β the
only difference is the endpoint URL:
| API | Endpoint |
| ----------- | ------------------------------------------- |
| Partner API | `https://api.ownright.com/partners/graphql` |
| Lender API | `https://api.ownright.com/lenders/graphql` |
Your authentication credentials (client ID, API key, organization ID) are issued per API.
Lender API credentials cannot be used with the Partner API endpoint and vice versa.
## Need help?
If you haven't received your client ID or API key yet, read the
[Authentication](/fundamentals/authentication) documentation or reach out to our
team at [developers@ownright.com](mailto:developers@ownright.com).
# Country
Source: https://dev.ownright.com/lender-api/reference/members/enums/country
Possible countries.
## Values
| Value | Description |
| -------- | ------------------------------ |
| `CANADA` | Represents Canada the country. |
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# EngagementSearchSortOrder
Source: https://dev.ownright.com/lender-api/reference/members/enums/engagement-search-sort-order
Possible ways to sort results when searching engagements.
## Values
| Value | Description |
| ------------------- | ----------------------------------------- |
| `CLOSING_DATE_ASC` | Sort by closing date in ascending order. |
| `CLOSING_DATE_DESC` | Sort by closing date in descending order. |
| `CREATED_AT_ASC` | Sort by created at in ascending order. |
| `CREATED_AT_DESC` | Sort by created at in descending order. |
## Used by
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
# EngagementStatus
Source: https://dev.ownright.com/lender-api/reference/members/enums/engagement-status
Possible statuses for engagements.
## Values
| Value | Description |
| ----------------------- | -------------------------------------------- |
| `CANCELLED` | Represents the cancelled status. |
| `CLOSED` | Represents the closed status. |
| `CLOSING_IN_PROGRESS` | Represents the closing in progress status. |
| `COMPLETE` | Represents the complete status. |
| `IN_PROGRESS` | Represents the in progress status. |
| `PREPARING_FOR_CLOSING` | Represents the preparing for closing status. |
| `RECEIVED` | Represents the received status. |
| `SETTING_UP` | Represents the setting up status. |
## Used by
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
# EngagementType
Source: https://dev.ownright.com/lender-api/reference/members/enums/engagement-type
The type of engagement.
## Values
| Value | Description |
| ----------- | ----------------------- |
| `PURCHASE` | A purchase engagement. |
| `REFINANCE` | A refinance engagement. |
## Used by
* [`engagement`](/lender-api/reference/queries/engagements/engagement) (query)
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
* [`engagementCancel`](/lender-api/reference/mutations/engagements/engagement-cancel) (mutation)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# FileMimeType
Source: https://dev.ownright.com/lender-api/reference/members/enums/file-mime-type
Possible MIME types for files.
## Values
| Value | Description |
| --------------- | ---------------------------------------------------------------------------------------------------- |
| `DOCUMENT_DOC` | Represents the `application/msword` MIME type. |
| `DOCUMENT_DOCX` | Represents the `application/vnd.openxmlformats-officedocument.wordprocessingml.documents` MIME type. |
| `DOCUMENT_PDF` | Represents the `application/pdf` MIME type. |
| `IMAGE_HEIC` | Represents the `image/heic` MIME type. |
| `IMAGE_JPEG` | Represents the `image/jpeg` MIME type. |
| `IMAGE_PNG` | Represents the `image/png` MIME type. |
| `IMAGE_TIFF` | Represents the `image/tiff` MIME type. |
## Used by
* [`stagedFileUploadCreate`](/lender-api/reference/mutations/files/staged-file-upload-create) (mutation)
# Province
Source: https://dev.ownright.com/lender-api/reference/members/enums/province
Possible provinces.
## Values
| Value | Description |
| --------------------------- | -------------------------------------------------- |
| `ALBERTA` | Represents Alberta the province. |
| `BRITISH_COLUMBIA` | Represents British Columbia the province. |
| `MANITOBA` | Represents Manitoba the province. |
| `NEWFOUNDLAND_AND_LABRADOR` | Represents Newfoundland And Labrador the province. |
| `NEW_BRUNSWICK` | Represents New Brunswick the province. |
| `NORTHWEST_TERRITORIES` | Represents Northwest Territories the province. |
| `NOVA_SCOTIA` | Represents Nova Scotia the province. |
| `NUNAVUT` | Represents Nunavut the province. |
| `ONTARIO` | Represents Ontario the province. |
| `PRINCE_EDWARD_ISLAND` | Represents Prince Edward Island the province. |
| `QUEBEC` | Represents Quebec the province. |
| `SASKATCHEWAN` | Represents Saskatchewan the province. |
| `YUKON` | Represents Yukon the province. |
## Used by
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# PurchaseEngagementState
Source: https://dev.ownright.com/lender-api/reference/members/enums/purchase-engagement-state
Possible states for purchase engagements.
## Values
| Value | Description |
| ----------------------- | ------------------------------------------------------------------------------- |
| `CANCELLED` | Engagement has been cancelled and is no longer being worked on. |
| `CLOSED` | Engagement has been successfully funded and closed. |
| `CLOSING_IN_PROGRESS` | Final closing actions are in motion and this deal is set to close today. |
| `PREPARING_FOR_CLOSING` | Engagement is being prepared for closing day. |
| `RECEIVED` | Ownright has received engagement details and is actively reviewing information. |
| `SETTING_UP` | Ownright is actively setting up this engagement to begin closing prep. |
# RefinanceEngagementState
Source: https://dev.ownright.com/lender-api/reference/members/enums/refinance-engagement-state
Possible states for refinance engagements.
## Values
| Value | Description |
| ----------------------- | ------------------------------------------------------------------------------- |
| `CANCELLED` | Engagement has been cancelled and is no longer being worked on. |
| `CLOSED` | Engagement has been successfully funded and closed. |
| `CLOSING_IN_PROGRESS` | Final closing actions are in motion and this deal is set to close today. |
| `PREPARING_FOR_CLOSING` | Engagement is being prepared for closing day. |
| `RECEIVED` | Ownright has received engagement details and is actively reviewing information. |
| `SETTING_UP` | Ownright is actively setting up this engagement to begin closing prep. |
# AddressInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/address-input
Input for an address.
## Fields
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# DateRangeInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/date-range-input
Input for a date range.
## Fields
The end date of the date range.
The start date of the date range.
## Used by
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
# EngagementClientInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/engagement-client-input
Input for a client on an engagement.
## Fields
The email address of the client.
The first name of the client.
The last name of the client.
The middle name of the client.
The phone number of the client in E.164 format.
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# EngagementCreateInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/engagement-create-input
Input to create an engagement. Exactly one of the type-specific inputs must be provided.
Exactly one of the following fields must be provided.
## Fields
Input to create a purchase engagement.
Input to create a refinance engagement.
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# EngagementSearchFilterInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/engagement-search-filter-input
Input to filter results when performing an engagements search.
## Fields
Filter based on engagement closing date.
Filter based on engagement creation date.
Filter based on province.
Filter based on engagement status.
Filter based on engagement type.
## Used by
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
# PurchaseEngagementCreateInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/purchase-engagement-create-input
Input to create a purchase engagement.
## Fields
The clients for this engagement.
The closing date.
GIDs of staged file records for new mortgage files.
The new mortgage number.
Notes for the engagement.
The team member who owns this engagement.
The property address.
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# RefinanceEngagementCreateInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/refinance-engagement-create-input
Input to create a refinance engagement.
## Fields
The clients for this engagement.
The expected closing date.
GIDs of staged file records for new mortgage files.
The new mortgage number.
Notes for the engagement.
The team member who owns this engagement.
The property address.
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# StagedFileUploadInput
Source: https://dev.ownright.com/lender-api/reference/members/inputs/staged-file-upload-input
Input to create a staged file upload.
## Fields
The name of the file that is being uploaded.
The MIME type of the file that is being uploaded.
## Used by
* [`stagedFileUploadCreate`](/lender-api/reference/mutations/files/staged-file-upload-create) (mutation)
# Engagement
Source: https://dev.ownright.com/lender-api/reference/members/interfaces/engagement
Represents an engagement.
## Fields
Whether the engagement can be cancelled.
The clients on this engagement.
The time the engagement was created.
The unique identifier of the engagement.
The name of the engagement owner.
A short human-readable identifier for the engagement.
The type of the engagement.
## Implementations
* [PurchaseEngagement](/lender-api/reference/members/objects/purchase-engagement)
* [RefinanceEngagement](/lender-api/reference/members/objects/refinance-engagement)
## Used by
* [`engagement`](/lender-api/reference/queries/engagements/engagement) (query)
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
* [`engagementCancel`](/lender-api/reference/mutations/engagements/engagement-cancel) (mutation)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# File
Source: https://dev.ownright.com/lender-api/reference/members/interfaces/file
Represents a file.
## Fields
The date the file was created.
The name of the file.
The size of the file in a human-readable format.
The GID of the file record.
The MIME type of the file.
The size of the file in bytes.
Whether the file is staged for upload or not.
The date the file was last updated.
## Implementations
* [Document](/lender-api/reference/members/objects/document)
* [Image](/lender-api/reference/members/objects/image)
* [Media](/lender-api/reference/members/objects/media)
## Used by
* [`stagedFileUploadCreate`](/lender-api/reference/mutations/files/staged-file-upload-create) (mutation)
# PurchaseEngagementStatus
Source: https://dev.ownright.com/lender-api/reference/members/interfaces/purchase-engagement-status
Represents the status of a purchase engagement.
## Fields
The state of the purchase engagement.
## Implementations
* [PurchaseEngagementCancelledStatus](/lender-api/reference/members/objects/purchase-engagement-cancelled-status)
* [PurchaseEngagementClosedStatus](/lender-api/reference/members/objects/purchase-engagement-closed-status)
* [PurchaseEngagementClosingInProgressStatus](/lender-api/reference/members/objects/purchase-engagement-closing-in-progress-status)
* [PurchaseEngagementPreparingForClosingStatus](/lender-api/reference/members/objects/purchase-engagement-preparing-for-closing-status)
* [PurchaseEngagementReceivedStatus](/lender-api/reference/members/objects/purchase-engagement-received-status)
* [PurchaseEngagementSettingUpStatus](/lender-api/reference/members/objects/purchase-engagement-setting-up-status)
# RefinanceEngagementStatus
Source: https://dev.ownright.com/lender-api/reference/members/interfaces/refinance-engagement-status
Represents the status of a refinance engagement.
## Fields
The state of the refinance engagement.
## Implementations
* [RefinanceEngagementCancelledStatus](/lender-api/reference/members/objects/refinance-engagement-cancelled-status)
* [RefinanceEngagementClosedStatus](/lender-api/reference/members/objects/refinance-engagement-closed-status)
* [RefinanceEngagementClosingInProgressStatus](/lender-api/reference/members/objects/refinance-engagement-closing-in-progress-status)
* [RefinanceEngagementPreparingForClosingStatus](/lender-api/reference/members/objects/refinance-engagement-preparing-for-closing-status)
* [RefinanceEngagementReceivedStatus](/lender-api/reference/members/objects/refinance-engagement-received-status)
* [RefinanceEngagementSettingUpStatus](/lender-api/reference/members/objects/refinance-engagement-setting-up-status)
# Address
Source: https://dev.ownright.com/lender-api/reference/members/objects/address
Represents an address.
## Fields
The city of the address.
The country of the address.
The latitude of the address.
The longitude of the address.
The postal code of the address.
The province of the address.
The shortened title for the address.
The street name and number of the address.
The full title for the address.
The unit number, apartment number, suite number etc.
# Document
Source: https://dev.ownright.com/lender-api/reference/members/objects/document
Represents a document.
## Fields
The date the file was created.
The name of the file.
The size of the file in a human-readable format.
The GID of the file record.
The MIME type of the file.
The size of the file in bytes.
Whether the file is staged for upload or not.
The date the file was last updated.
The URL to the document.
# EngagementClient
Source: https://dev.ownright.com/lender-api/reference/members/objects/engagement-client
A client contact on an engagement.
## Fields
The email address of the client.
The first name of the client.
The last name of the client.
The middle name of the client.
The phone number of the client.
## Used by
* [`engagement`](/lender-api/reference/queries/engagements/engagement) (query)
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
* [`engagementCancel`](/lender-api/reference/mutations/engagements/engagement-cancel) (mutation)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# Image
Source: https://dev.ownright.com/lender-api/reference/members/objects/image
Represents an image.
## Fields
The date the file was created.
The name of the file.
The size of the file in a human-readable format.
The GID of the file record.
The MIME type of the file.
The size of the file in bytes.
Whether the file is staged for upload or not.
The date the file was last updated.
The URL to the image.
# Lender
Source: https://dev.ownright.com/lender-api/reference/members/objects/lender
The authenticated lender entity.
## Fields
The URL of the lender logo.
The team members of the lender.
The name of the lender.
## Used by
* [`lender`](/lender-api/reference/queries/lender/lender) (query)
# Media
Source: https://dev.ownright.com/lender-api/reference/members/objects/media
Represents a media file.
## Fields
The date the file was created.
The name of the file.
The size of the file in a human-readable format.
The GID of the file record.
The MIME type of the file.
The size of the file in bytes.
Whether the file is staged for upload or not.
The date the file was last updated.
The URL to the media file.
# Property
Source: https://dev.ownright.com/lender-api/reference/members/objects/property
Represents a property associated with an engagement.
## Fields
The address of the property.
# PurchaseEngagement
Source: https://dev.ownright.com/lender-api/reference/members/objects/purchase-engagement
A purchase engagement.
## Fields
Whether the engagement can be cancelled.
The clients on this engagement.
The closing date of the engagement.
The time the engagement was created.
The unique identifier of the engagement.
The name of the engagement owner.
The property associated with this engagement.
A short human-readable identifier for the engagement.
The current status of the purchase engagement.
The type of the engagement.
# PurchaseEngagementCancelledStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/purchase-engagement-cancelled-status
Status information for purchase engagements that have been cancelled.
## Fields
The state of the purchase engagement.
# PurchaseEngagementClosedStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/purchase-engagement-closed-status
Status information for purchase engagements that have been closed.
## Fields
The state of the purchase engagement.
# PurchaseEngagementClosingInProgressStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/purchase-engagement-closing-in-progress-status
Status information for purchase engagements where closing is in progress.
## Fields
The state of the purchase engagement.
# PurchaseEngagementPreparingForClosingStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/purchase-engagement-preparing-for-closing-status
Status information for purchase engagements being prepared for closing.
## Fields
The state of the purchase engagement.
# PurchaseEngagementReceivedStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/purchase-engagement-received-status
Status information for purchase engagements that have been received.
## Fields
The state of the purchase engagement.
# PurchaseEngagementSettingUpStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/purchase-engagement-setting-up-status
Status information for purchase engagements that are being set up.
## Fields
The state of the purchase engagement.
# RefinanceEngagement
Source: https://dev.ownright.com/lender-api/reference/members/objects/refinance-engagement
A refinance engagement.
## Fields
Whether the engagement can be cancelled.
The clients on this engagement.
The closing date of the engagement.
The time the engagement was created.
The unique identifier of the engagement.
The name of the engagement owner.
The property associated with this engagement.
A short human-readable identifier for the engagement.
The current status of the refinance engagement.
The type of the engagement.
# RefinanceEngagementCancelledStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/refinance-engagement-cancelled-status
Status information for refinance engagements that have been cancelled.
## Fields
The state of the refinance engagement.
# RefinanceEngagementClosedStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/refinance-engagement-closed-status
Status information for refinance engagements that have been closed.
## Fields
The state of the refinance engagement.
# RefinanceEngagementClosingInProgressStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/refinance-engagement-closing-in-progress-status
Status information for refinance engagements where closing is in progress.
## Fields
The state of the refinance engagement.
# RefinanceEngagementPreparingForClosingStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/refinance-engagement-preparing-for-closing-status
Status information for refinance engagements being prepared for closing.
## Fields
The state of the refinance engagement.
# RefinanceEngagementReceivedStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/refinance-engagement-received-status
Status information for refinance engagements that have been received.
## Fields
The state of the refinance engagement.
# RefinanceEngagementSettingUpStatus
Source: https://dev.ownright.com/lender-api/reference/members/objects/refinance-engagement-setting-up-status
Status information for refinance engagements that are being set up.
## Fields
The state of the refinance engagement.
# StagedFileUpload
Source: https://dev.ownright.com/lender-api/reference/members/objects/staged-file-upload
Represents a staged file upload.
## Fields
The file that is staged for upload.
A signed upload URL to use when uploading file.
Date when upload URL expires.
## Used by
* [`stagedFileUploadCreate`](/lender-api/reference/mutations/files/staged-file-upload-create) (mutation)
# TeamMember
Source: https://dev.ownright.com/lender-api/reference/members/objects/team-member
A team member in a lender entity.
## Fields
The email address of the team member.
The first name of the team member.
The unique identifier of the team member.
The last name of the team member.
## Used by
* [`lender`](/lender-api/reference/queries/lender/lender) (query)
* [`teamMembers`](/lender-api/reference/queries/lender/team-members) (query)
# E164PhoneNumber
Source: https://dev.ownright.com/lender-api/reference/members/scalars/e164-phone-number
A valid phone number string in the E.164 format.
## Description
A valid phone number string in the E.164 format.
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# EngagementGID
Source: https://dev.ownright.com/lender-api/reference/members/scalars/engagement-gid
A global identifier for a Engagement object in format of 'gid://ownright/Engagement/ID'.
## Description
A global identifier for a Engagement object in format of '`gid://ownright/Engagement/ID`'.
## Used by
* [`engagement`](/lender-api/reference/queries/engagements/engagement) (query)
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
* [`engagementCancel`](/lender-api/reference/mutations/engagements/engagement-cancel) (mutation)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# FileRecordGID
Source: https://dev.ownright.com/lender-api/reference/members/scalars/file-record-gid
A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
## Description
A global identifier for a FileRecord object in format of '`gid://ownright/FileRecord/ID`'.
## Used by
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
* [`stagedFileUploadCreate`](/lender-api/reference/mutations/files/staged-file-upload-create) (mutation)
# ISO8601Date
Source: https://dev.ownright.com/lender-api/reference/members/scalars/iso8601-date
An ISO 8601-encoded date
## Description
An ISO 8601-encoded date
## Used by
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# ISO8601DateTime
Source: https://dev.ownright.com/lender-api/reference/members/scalars/iso8601-date-time
An ISO 8601-encoded datetime
## Description
An ISO 8601-encoded datetime
## Used by
* [`engagement`](/lender-api/reference/queries/engagements/engagement) (query)
* [`engagements`](/lender-api/reference/queries/engagements/engagements) (query)
* [`engagementCancel`](/lender-api/reference/mutations/engagements/engagement-cancel) (mutation)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
* [`stagedFileUploadCreate`](/lender-api/reference/mutations/files/staged-file-upload-create) (mutation)
# TeamMemberGID
Source: https://dev.ownright.com/lender-api/reference/members/scalars/team-member-gid
A global identifier for a TeamMember object in format of 'gid://ownright/TeamMember/ID'.
## Description
A global identifier for a TeamMember object in format of '`gid://ownright/TeamMember/ID`'.
## Used by
* [`lender`](/lender-api/reference/queries/lender/lender) (query)
* [`teamMembers`](/lender-api/reference/queries/lender/team-members) (query)
* [`engagementCreate`](/lender-api/reference/mutations/engagements/engagement-create) (mutation)
# Url
Source: https://dev.ownright.com/lender-api/reference/members/scalars/url
A valid URL, transported as a string.
## Description
A valid URL, transported as a string.
## Used by
* [`lender`](/lender-api/reference/queries/lender/lender) (query)
* [`stagedFileUploadCreate`](/lender-api/reference/mutations/files/staged-file-upload-create) (mutation)
# Engagement Cancel
Source: https://dev.ownright.com/lender-api/reference/mutations/engagements/engagement-cancel
Cancels an engagement.
```graphql Request [expandable] theme={null}
mutation EngagementCancel($id: EngagementGID!) {
engagementCancel(id: $id) {
engagement {
cancellable
createdAt
id
owner
shortId
type
clients {
email
firstName
lastName
middleName
phoneNumber
}
... on PurchaseEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
... on RefinanceEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"id": "gid://ownright/Engagement/1"
}
```
```json Response theme={null}
{
"data": {
"engagementCancel": {
"engagement": {
"cancellable": true,
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Engagement/1",
"owner": "Jane Doe",
"shortId": "ABC-123",
"type": "PURCHASE",
"clients": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"middleName": "M",
"phoneNumber": "+14165551234"
}
],
"closingDate": "2025-06-15",
"property": {
"address": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"status": {
"state": "CANCELLED"
}
},
"userErrors": []
}
}
}
```
## Mutation field
`engagementCancel`
### Arguments
The GID of the engagement to cancel.
### Return fields
The cancelled engagement.
Whether the engagement can be cancelled.
The clients on this engagement.
The email address of the client.
The first name of the client.
The last name of the client.
The middle name of the client.
The phone number of the client.
The time the engagement was created.
The unique identifier of the engagement.
The name of the engagement owner.
A short human-readable identifier for the engagement.
The type of the engagement.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`Engagement`](/lender-api/reference/members/interfaces/engagement) (interface) β Represents an engagement.
* [`EngagementCancelPayload`](/lender-api/reference/members/objects/engagement-cancel-payload) (object) β Return type for the `engagementCancel` mutation.
* [`EngagementCancelUserError`](/lender-api/reference/members/objects/engagement-cancel-user-error) (object) β An error that could occur during the execution of the `engagementCancel` mutation.
* [`EngagementCancelUserErrorCode`](/lender-api/reference/members/enums/engagement-cancel-user-error-code) (enum) β Possible error codes that can be returned by EngagementCancelUserError.
* [`EngagementClient`](/lender-api/reference/members/objects/engagement-client) (object) β A client contact on an engagement.
* [`EngagementGID`](/lender-api/reference/members/scalars/engagement-gid) (scalar) β A global identifier for a Engagement object in format of 'gid://ownright/Engagement/ID'.
* [`EngagementType`](/lender-api/reference/members/enums/engagement-type) (enum) β The type of engagement.
* [`ISO8601DateTime`](/lender-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
# Engagement Create
Source: https://dev.ownright.com/lender-api/reference/mutations/engagements/engagement-create
Creates a new engagement.
```graphql Request [expandable] theme={null}
mutation EngagementCreate($input: EngagementCreateInput!) {
engagementCreate(input: $input) {
engagement {
cancellable
createdAt
id
owner
shortId
type
clients {
email
firstName
lastName
middleName
phoneNumber
}
... on PurchaseEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
... on RefinanceEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": {
"purchase": {
"clients": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"middleName": "M",
"phoneNumber": "+14165551234"
}
],
"closingDate": "2025-06-15",
"newMortgageFileIds": [
"gid://ownright/FileRecord/1"
],
"newMortgageNumber": "example-new-mortgage-number",
"notes": "Additional notes here",
"owner": "gid://ownright/TeamMember/1",
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
}
}
}
}
```
```json Response theme={null}
{
"data": {
"engagementCreate": {
"engagement": {
"cancellable": true,
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Engagement/1",
"owner": "Jane Doe",
"shortId": "ABC-123",
"type": "PURCHASE",
"clients": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"middleName": "M",
"phoneNumber": "+14165551234"
}
],
"closingDate": "2025-06-15",
"property": {
"address": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"status": {
"state": "CANCELLED"
}
},
"userErrors": []
}
}
}
```
## Mutation field
`engagementCreate`
### Arguments
Input required to create an engagement.
Exactly one of the following fields must be provided.
Input to create a purchase engagement.
The clients for this engagement.
The closing date.
GIDs of staged file records for new mortgage files.
The new mortgage number.
Notes for the engagement.
The team member who owns this engagement.
The property address.
Input to create a refinance engagement.
The clients for this engagement.
The expected closing date.
GIDs of staged file records for new mortgage files.
The new mortgage number.
Notes for the engagement.
The team member who owns this engagement.
The property address.
### Return fields
The created engagement.
Whether the engagement can be cancelled.
The clients on this engagement.
The email address of the client.
The first name of the client.
The last name of the client.
The middle name of the client.
The phone number of the client.
The time the engagement was created.
The unique identifier of the engagement.
The name of the engagement owner.
A short human-readable identifier for the engagement.
The type of the engagement.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`AddressInput`](/lender-api/reference/members/inputs/address-input) (input) β Input for an address.
* [`Country`](/lender-api/reference/members/enums/country) (enum) β Possible countries.
* [`E164PhoneNumber`](/lender-api/reference/members/scalars/e164-phone-number) (scalar) β A valid phone number string in the E.164 format.
* [`Engagement`](/lender-api/reference/members/interfaces/engagement) (interface) β Represents an engagement.
* [`EngagementClient`](/lender-api/reference/members/objects/engagement-client) (object) β A client contact on an engagement.
* [`EngagementClientInput`](/lender-api/reference/members/inputs/engagement-client-input) (input) β Input for a client on an engagement.
* [`EngagementCreateInput`](/lender-api/reference/members/inputs/engagement-create-input) (input) β Input to create an engagement. Exactly one of the type-specific inputs must be provided.
* [`EngagementCreatePayload`](/lender-api/reference/members/objects/engagement-create-payload) (object) β Return type for the `engagementCreate` mutation.
* [`EngagementCreateUserError`](/lender-api/reference/members/objects/engagement-create-user-error) (object) β An error that could occur during the execution of the `engagementCreate` mutation.
* [`EngagementCreateUserErrorCode`](/lender-api/reference/members/enums/engagement-create-user-error-code) (enum) β Possible error codes that can be returned by EngagementCreateUserError.
* [`EngagementGID`](/lender-api/reference/members/scalars/engagement-gid) (scalar) β A global identifier for a Engagement object in format of 'gid://ownright/Engagement/ID'.
* [`EngagementType`](/lender-api/reference/members/enums/engagement-type) (enum) β The type of engagement.
* [`FileRecordGID`](/lender-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`ISO8601Date`](/lender-api/reference/members/scalars/iso8601-date) (scalar) β An ISO 8601-encoded date
* [`ISO8601DateTime`](/lender-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`Province`](/lender-api/reference/members/enums/province) (enum) β Possible provinces.
* [`PurchaseEngagementCreateInput`](/lender-api/reference/members/inputs/purchase-engagement-create-input) (input) β Input to create a purchase engagement.
* [`RefinanceEngagementCreateInput`](/lender-api/reference/members/inputs/refinance-engagement-create-input) (input) β Input to create a refinance engagement.
* [`TeamMemberGID`](/lender-api/reference/members/scalars/team-member-gid) (scalar) β A global identifier for a TeamMember object in format of 'gid://ownright/TeamMember/ID'.
# Staged File Upload Create
Source: https://dev.ownright.com/lender-api/reference/mutations/files/staged-file-upload-create
Creates a staged file upload.
```graphql Request [expandable] theme={null}
mutation StagedFileUploadCreate($input: StagedFileUploadInput!) {
stagedFileUploadCreate(input: $input) {
stagedFileUpload {
signedUploadUrl
signedUploadUrlExpiryDate
file {
createdAt
filename
formattedSize
id
mimeType
size
staged
updatedAt
... on Document {
url
}
... on Image {
url
}
... on Media {
url
}
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": {
"filename": "document.pdf",
"mimeType": "DOCUMENT_DOC"
}
}
```
```json Response theme={null}
{
"data": {
"stagedFileUploadCreate": {
"stagedFileUpload": {
"signedUploadUrl": "https://example.com",
"signedUploadUrlExpiryDate": "2025-01-15T10:30:00Z",
"file": {
"createdAt": "2025-01-15T10:30:00Z",
"filename": "document.pdf",
"formattedSize": "example-formatted-size",
"id": "gid://ownright/FileRecord/1",
"mimeType": "DOCUMENT_DOC",
"size": 1024,
"staged": true,
"updatedAt": "2025-01-15T10:30:00Z",
"url": "https://example.com"
}
},
"userErrors": []
}
}
}
```
## Mutation field
`stagedFileUploadCreate`
### Arguments
Input required to make a staged file upload.
The name of the file that is being uploaded.
The MIME type of the file that is being uploaded.
### Return fields
The newly created staged file upload.
The file that is staged for upload.
The date the file was created.
The name of the file.
The size of the file in a human-readable format.
The GID of the file record.
The MIME type of the file.
The size of the file in bytes.
Whether the file is staged for upload or not.
The date the file was last updated.
A signed upload URL to use when uploading file.
Date when upload URL expires.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`File`](/lender-api/reference/members/interfaces/file) (interface) β Represents a file.
* [`FileMimeType`](/lender-api/reference/members/enums/file-mime-type) (enum) β Possible MIME types for files.
* [`FileRecordGID`](/lender-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`ISO8601DateTime`](/lender-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`StagedFileUpload`](/lender-api/reference/members/objects/staged-file-upload) (object) β Represents a staged file upload.
* [`StagedFileUploadCreatePayload`](/lender-api/reference/members/objects/staged-file-upload-create-payload) (object) β Return type for the `stagedFileUploadCreate` mutation.
* [`StagedFileUploadCreateUserError`](/lender-api/reference/members/objects/staged-file-upload-create-user-error) (object) β An error that could occur during the execution of the `stagedFileUploadCreate` mutation.
* [`StagedFileUploadCreateUserErrorCode`](/lender-api/reference/members/enums/staged-file-upload-create-user-error-code) (enum) β Possible error codes that can be returned by StagedFileUploadCreateUserError.
* [`StagedFileUploadInput`](/lender-api/reference/members/inputs/staged-file-upload-input) (input) β Input to create a staged file upload.
* [`Url`](/lender-api/reference/members/scalars/url) (scalar) β A valid URL, transported as a string.
# Engagement
Source: https://dev.ownright.com/lender-api/reference/queries/engagements/engagement
Retrieve a single engagement by GID.
```graphql Request [expandable] theme={null}
query GetEngagement($id: EngagementGID!) {
engagement(id: $id) {
cancellable
createdAt
id
owner
shortId
type
clients {
email
firstName
lastName
middleName
phoneNumber
}
... on PurchaseEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
... on RefinanceEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
}
}
```
```graphql Variables theme={null}
{
"id": "gid://ownright/Engagement/1"
}
```
```json Response theme={null}
{
"data": {
"engagement": {
"cancellable": true,
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Engagement/1",
"owner": "Jane Doe",
"shortId": "ABC-123",
"type": "PURCHASE",
"clients": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"middleName": "M",
"phoneNumber": "+14165551234"
}
],
"closingDate": "2025-06-15",
"property": {
"address": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"status": {
"state": "CANCELLED"
}
}
}
}
```
## Query field
`engagement`
### Arguments
The GID of the engagement.
### Return fields
Retrieve a single engagement by GID.
Whether the engagement can be cancelled.
The clients on this engagement.
The email address of the client.
The first name of the client.
The last name of the client.
The middle name of the client.
The phone number of the client.
The time the engagement was created.
The unique identifier of the engagement.
The name of the engagement owner.
A short human-readable identifier for the engagement.
The type of the engagement.
### Types
* [`Engagement`](/lender-api/reference/members/interfaces/engagement) (interface) β Represents an engagement.
* [`EngagementClient`](/lender-api/reference/members/objects/engagement-client) (object) β A client contact on an engagement.
* [`EngagementGID`](/lender-api/reference/members/scalars/engagement-gid) (scalar) β A global identifier for a Engagement object in format of 'gid://ownright/Engagement/ID'.
* [`EngagementType`](/lender-api/reference/members/enums/engagement-type) (enum) β The type of engagement.
* [`ISO8601DateTime`](/lender-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
# Engagements
Source: https://dev.ownright.com/lender-api/reference/queries/engagements/engagements
Search and list engagements.
```graphql Request [expandable] theme={null}
query GetEngagements($after: String, $before: String, $filters: EngagementSearchFilterInput, $first: Int, $last: Int, $query: String, $sortOrder: EngagementSearchSortOrder) {
engagements(after: $after, before: $before, filters: $filters, first: $first, last: $last, query: $query, sortOrder: $sortOrder) {
nodes {
cancellable
createdAt
id
owner
shortId
type
clients {
email
firstName
lastName
middleName
phoneNumber
}
... on PurchaseEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
... on RefinanceEngagement {
closingDate
property {
address {
city
country
latitude
longitude
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
```
```graphql Variables theme={null}
{
"after": "example-after",
"before": "example-before",
"filters": {
"closingDate": {
"endDate": "2025-06-15",
"startDate": "2025-06-15"
},
"createdAt": {
"endDate": "2025-06-15",
"startDate": "2025-06-15"
},
"provinces": [
"ALBERTA"
],
"statuses": [
"CANCELLED"
],
"types": [
"PURCHASE"
]
},
"first": 10,
"last": 10,
"query": "search term",
"sortOrder": "CLOSING_DATE_ASC"
}
```
```json Response theme={null}
{
"data": {
"engagements": {
"nodes": [
{
"cancellable": true,
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Engagement/1",
"owner": "Jane Doe",
"shortId": "ABC-123",
"type": "PURCHASE",
"clients": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"middleName": "M",
"phoneNumber": "+14165551234"
}
],
"closingDate": "2025-06-15",
"property": {
"address": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"status": {
"state": "CANCELLED"
}
}
],
"pageInfo": {
"hasNextPage": true,
"endCursor": "cursor_abc123"
}
}
}
}
```
## Query field
`engagements`
### Arguments
Returns the elements in the list that come after the specified cursor.
Returns the elements in the list that come before the specified cursor.
Filters to apply to the engagement search.
Filter based on engagement closing date.
The end date of the date range.
The start date of the date range.
Filter based on engagement creation date.
The end date of the date range.
The start date of the date range.
Filter based on province.
Filter based on engagement status.
Filter based on engagement type.
Returns the first *n* elements from the list.
Returns the last *n* elements from the list.
Text query to search engagements.
Sort order for results.
### Return fields
Search and list engagements.
A list of edges.
A cursor for use in pagination.
The item at the end of the edge.
A list of nodes.
Whether the engagement can be cancelled.
The clients on this engagement.
The time the engagement was created.
The unique identifier of the engagement.
The name of the engagement owner.
A short human-readable identifier for the engagement.
The type of the engagement.
Information to aid in pagination.
When paginating forwards, the cursor to continue.
When paginating forwards, are there more items?
When paginating backwards, are there more items?
When paginating backwards, the cursor to continue.
### Types
* [`DateRangeInput`](/lender-api/reference/members/inputs/date-range-input) (input) β Input for a date range.
* [`Engagement`](/lender-api/reference/members/interfaces/engagement) (interface) β Represents an engagement.
* [`EngagementClient`](/lender-api/reference/members/objects/engagement-client) (object) β A client contact on an engagement.
* [`EngagementConnection`](/lender-api/reference/members/objects/engagement-connection) (object) β The connection type for Engagement.
* [`EngagementEdge`](/lender-api/reference/members/objects/engagement-edge) (object) β An edge in a connection.
* [`EngagementGID`](/lender-api/reference/members/scalars/engagement-gid) (scalar) β A global identifier for a Engagement object in format of 'gid://ownright/Engagement/ID'.
* [`EngagementSearchFilterInput`](/lender-api/reference/members/inputs/engagement-search-filter-input) (input) β Input to filter results when performing an engagements search.
* [`EngagementSearchSortOrder`](/lender-api/reference/members/enums/engagement-search-sort-order) (enum) β Possible ways to sort results when searching engagements.
* [`EngagementStatus`](/lender-api/reference/members/enums/engagement-status) (enum) β Possible statuses for engagements.
* [`EngagementType`](/lender-api/reference/members/enums/engagement-type) (enum) β The type of engagement.
* [`ISO8601Date`](/lender-api/reference/members/scalars/iso8601-date) (scalar) β An ISO 8601-encoded date
* [`ISO8601DateTime`](/lender-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`PageInfo`](/lender-api/reference/members/objects/page-info) (object) β Information about pagination in a connection.
* [`Province`](/lender-api/reference/members/enums/province) (enum) β Possible provinces.
# Lender
Source: https://dev.ownright.com/lender-api/reference/queries/lender/lender
The authenticated lender entity.
```graphql Request [expandable] theme={null}
query GetLender {
lender {
logoUrl
name
members {
email
firstName
id
lastName
}
}
}
```
```json Response theme={null}
{
"data": {
"lender": {
"logoUrl": "https://example.com",
"name": "example-name",
"members": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/TeamMember/1",
"lastName": "Doe"
}
]
}
}
}
```
## Query field
`lender`
### Return fields
The authenticated lender entity.
The URL of the lender logo.
The team members of the lender.
The email address of the team member.
The first name of the team member.
The unique identifier of the team member.
The last name of the team member.
The name of the lender.
### Types
* [`Lender`](/lender-api/reference/members/objects/lender) (object) β The authenticated lender entity.
* [`TeamMember`](/lender-api/reference/members/objects/team-member) (object) β A team member in a lender entity.
* [`TeamMemberGID`](/lender-api/reference/members/scalars/team-member-gid) (scalar) β A global identifier for a TeamMember object in format of 'gid://ownright/TeamMember/ID'.
* [`Url`](/lender-api/reference/members/scalars/url) (scalar) β A valid URL, transported as a string.
# Team Members
Source: https://dev.ownright.com/lender-api/reference/queries/lender/team-members
List all team members for the authenticated lender entity.
```graphql Request [expandable] theme={null}
query GetTeamMembers {
teamMembers {
email
firstName
id
lastName
}
}
```
```json Response theme={null}
{
"data": {
"teamMembers": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/TeamMember/1",
"lastName": "Doe"
}
]
}
}
```
## Query field
`teamMembers`
### Return fields
List all team members for the authenticated lender entity.
The email address of the team member.
The first name of the team member.
The unique identifier of the team member.
The last name of the team member.
### Types
* [`TeamMember`](/lender-api/reference/members/objects/team-member) (object) β A team member in a lender entity.
* [`TeamMemberGID`](/lender-api/reference/members/scalars/team-member-gid) (scalar) β A global identifier for a TeamMember object in format of 'gid://ownright/TeamMember/ID'.
# Event list
Source: https://dev.ownright.com/lender-api/reference/webhooks/event-list
A complete list of the webhook events supported by the Lender API
Webhook support for the Lender API is coming soon. We're actively working on
adding event-driven notifications so you can receive real-time updates as
engagements progress through their lifecycle. Check back for updates or reach
out to [developers@ownright.com](mailto:developers@ownright.com) for early
access information.
# Limitations
Source: https://dev.ownright.com/limitations
There are a few limitations to be aware of when using the Ownright Developer Platform
The Ownright Developer Platform is built to help you deliver seamless legal support to your clients β
but there are a few limitations to be aware of. These apply both to our current product capabilities
and to the Partner APIβs operational scope.
## π Geographic coverage
We currently operate in Ontario, Alberta, and British Columbia, Canada. Referrals for properties outside of these provinces cannot be serviced at this time.
## π Transaction type scope
Ownright focuses on residential resale transactions. We do not support:
- Commercial or mixed-use properties
- New build or pre-construction transactions
- Developer or builder-side work
Our services are optimized for homebuyers, sellers, and refinancing clients transacting on existing homes.
## π Human-powered, not fully automated
The platform is backed by a dedicated legal and client success team.
While our API's are always online, some events are triggered by human activity, not automation.
For example:
-
Referrals submitted outside of business hours may not generate immediate
webhook updates.
-
Matter status changes depend on actions taken by legal professionals, which
may happen during business hours only.
Our business hours are Monday-Friday, 8 AM to 6 PM EST. Excluding Canadian public and bank holidays.
## π« Referral eligibility and rejections
Referrals may be declined if they fall outside of our operating parameters. These include:
- Property location outside Ontario, Alberta, or British Columbia
- Ineligible transaction type (e.g., new build)
- Missing or invalid client contact details
- Legal complexity that exceeds our current scope
If a referral cannot be accepted, a webhook will be sent notifying you of the status and reason (where possible).
## π§ͺ No sandbox environment (Yet)
We currently do not offer a sandbox or test environment.
All API interactions happen in our live environment. Please use test referral data and flag your integrations clearly when conducting integration testing.
We are exploring options for a partner sandbox in future updates.
## π¬ Webhook delivery reliability
Webhooks are delivered as best-effort HTTP POST requests. While we aim for reliability:
-
Webhooks may be delayed slightly depending on event timing and processing
queue
-
If a delivery fails, we automatically retry up to 3 times with exponential
backoff
-
After failed retries, the event is marked as undelivered (logging and replay
functionality coming soon)
We strongly recommend verifying all webhook signatures and building your integration to be idempotent.
## π§ Stability and API versioning
While we aim for stability, breaking changes may occasionally occur. We will always aim to:
- Provide early notice via changelog
- Version the API if changes are significant
- Limit disruption to existing integrations
Subscribe to our changelog's to stay informed.
## π¬ Still have questions?
If youβre not sure whether your use case is supported or need help assessing an integration, reach out to our team at [developers@ownright.com](mailto:developers@ownright.com).
# Referrals and matters
Source: https://dev.ownright.com/partner-api/core-concepts/referrals-and-matters
The two foundational objects that play a critical role in the Partner API
Understanding how referrals and matters work is essential to integrating with the
Ownright Developer Platform. These are the two foundational objects that represent
the lifecycle of a real estate legal transaction β from initial client handoff to final
legal completion.
## π§© The real-world analogy
Think of a **referral** as a warm introduction β you or your product has identified someone
who needs real estate legal support, and youβre handing them off to Ownright to help with
their transaction.
Once that referral is accepted and the client agrees to move forward, it becomes a **matter** β
the actual legal file that our team opens, works on, and completes.
These two stages mirror the real-world journey of a client:
### Why we modeled it this way
Real estate transactions are complex, dynamic, and timeline-sensitive.
Weβve structured the referral and matter models to reflect how legal work happens in the real world:
-
**Separation of referral vs matter** helps partners track both pipeline and
active files
-
**Status-driven lifecycles** allow for clear communication and automation
-
**Granular types and transitions** give you transparency and actionable
insights throughout the transaction
## π€ Referrals
A **referral** is your way of introducing a potential client to Ownright. It contains basic
information about the client, the type of matter, and any contextual details.
Once a referral is submitted, our client success team attempts to contact the client,
confirm matter details, and determine if the matter is serviceable.
Right now, Ownright supports accepting four different types of referrals:
- Purchase - a purchase where your client is the purchaser.
- Sale - a sale where your client is the seller.
- Refinance - a refinance where your client is the borrower.
-
Status Certificate Review - a status certificate review where your client is
the prospective purchaser.
### Referral lifecycle
A referral has a relatively straightforward lifecycle:
-
**Open** - The referral has been received and is awaiting contact or
qualification.
-
**Converted** - The referral was successful β the client has agreed and a
matter has been created.
-
**Retired** - The referral is closed without conversion. This can happen if
the client chose another provider, the transaction is no longer proceeding,
or Ownright could not service it.
Every referral object returned in the API includes a `status` field to
indicate where it stands in its lifecycle. Similarly you can subscribe to
webhook events to get notified about changes to a referral's status. It is
possible for a referral to be reopened after it has been marked converted or
retired. Read the [Partner API Reference](/partner-api/reference/connecting)
to better understand the structure of a referral object.
## π‘ Matters
A matter represents an active legal file. This is where real legal work happens: title searches, document signing, registration, and more.
Each matter is handled by our legal team and tracked within the Ownright platform.
It is not surprising that Ownright supports the same kind of matters as it does referrals, this is because referrals feed into matters.
To reiterate, the currently supported matters are purchase, sale, refinance, and status certificate reviews.
### Purchase, sale, and refinance lifecycle
Purchases, sales, and refinances all share the same lifecycle (for now):
-
**Before closing** - The file has been opened and legal prep is underway.
-
**Closing in progress** - Weβre actively handling closing day tasks β
registration, etc.
-
**After closing** - The matter has closed, but post-closing tasks (e.g.,
reporting, final communication) are being finalized.
- **Completed** - The legal work is fully done.
- **Abandoned** - The matter fell through or was cancelled.
### Status certificate review lifecycle
Status certificate reviews are slightly different from the other types of matters:
- **In Progress** - The review is underway by our team.
- **Completed** - The review has been completed.
-
**Abandoned** - Review was cancelled, withdrawn, or otherwise stopped.
## π Ready to go!
By understanding referrals and matters, youβre equipped to guide your clients through every step
of the closing journey, while keeping your systems in sync with the legal work being done by Ownright
behind the scenes.
## Next steps
Start sending clients to Ownright programmatically by creating a referral.
Understand how to authenticate your requests to the Partner API.
# Fetching matter details
Source: https://dev.ownright.com/partner-api/guides/fetching-matter-details
An overview of how you can fetch details on matters you have access to
To retrieve information about a real estate transaction (a βmatterβ), you can query our
GraphQL API using either the `matter` query (for a specific matter) or the `matters`
query (to retrieve a list).
## π Fetching a specific matter
Use the `matter(id: MatterGID!)` query to retrieve details about a single matter.
```graphql Request theme={null}
query GetMatterDetails {
matter(id: "gid://ownright/Transaction/1") {
matter {
id
... on Transaction {
status
# ... other fields
}
}
}
}
```
**Sample response**:
```graphql Response theme={null}
{
"data": {
"matter": {
"id": "gid://ownright/Transaction/1",
"status": "CLOSING_IN_PROGRESS"
}
}
}
```
## π Fetching multiple matters
If you donβt know the matter ID or want to browse multiple matters,
you can use the matters query to list them.
```graphql Request theme={null}
query ListMatters {
matters(first: 10) {
edges {
node {
id
... on Transaction {
status
# ... other fields
}
}
}
}
}
```
This query retrieves the first 10 matters, along with their status.
## Next steps
Get automatic updates when referral statuses change.
Get automatic updates when matter statuses change.
# Fetching referral details
Source: https://dev.ownright.com/partner-api/guides/fetching-referral-details
An overview of how you can fetch details on referrals you have access to
To retrieve information about a referral, you can query our
GraphQL API using either the `referral` query (for a specific referral) or the `referrals`
query (to retrieve a list).
## π Fetching a specific referral
Use the `referral(id: ReferralGID!)` query to retrieve details about a single referral.
```graphql Request theme={null}
query GetReferralDetails {
referral(id: "gid://ownright/Referral/1") {
referral {
id
status
# ... other fields
}
}
}
```
**Sample response**:
```graphql Response theme={null}
{
"data": {
"referral": {
"id": "gid://ownright/Referral/1",
"status": "OPEN"
}
}
}
```
## π Fetching multiple referrals
If you donβt know the referral ID or want to browse multiple referrals,
you can use the referrals query to list them.
```graphql Request theme={null}
query ListReferrals {
referrals(first: 10) {
edges {
node {
id
status
# ... other fields
}
}
}
}
```
This query retrieves the first 10 referrals, along with their status.
## Next steps
Track the progress of your client's legal transaction.
Get automatic updates when referral statuses change.
# Making referrals
Source: https://dev.ownright.com/partner-api/guides/making-referrals
A quick how-to guide on sending client referrals to Ownright
To create a referral, make a GraphQL mutation request to our API using one of the
available referral create mutations (e.g. `propertyClosingReferralCreate`). This allows
you to refer a client for a specific type of real estate transaction.
## π οΈ Steps to create a referral
Youβll need to specify the type of referral you'd like to make. Once you know what kind of referral,
choose to use the appropriate GraphQL mutation:
| Referral type | Mutation | Notes |
| ------------------------- | ------------------------------- | -------------------------------------------- |
| Purchase | `propertyClosingReferralCreate` | Supply the `PURCHASE_PROPERTY_CLOSING` type. |
| Sale | `propertyClosingReferralCreate` | Supply the `SALE_PROPERTY_CLOSING` type. |
| Refinance | `refinanceReferralCreate` | |
| Status Certificate Review | `statusCertificateReviewCreate` | |
Read our [Partner API reference](/partner-api/reference/connecting) for all of the details on each mutation.
Once you know what type of referral you want to make, you need to construct the
request with your desired inputs, for example:
```graphql Request [expandable] theme={null}
mutation PropertyClosingReferralCreate {
propertyClosingReferralCreate(input: {
type: PURCHASE_PROPERTY_CLOSING,
contacts: [
{
firstName: "John",
email: "something@something.com",
primary: true
}
],
# ... other input
}) {
referral {
id
}
userErrors {
code
message
}
}
}
```
On success, the response will include the newly created referral and any fields you have queried for.
If something goes wrong, check the `userErrors` array for the error code and message (read more about
errors in our [Errors and response codes](/fundamentals/errors-and-response-codes) documentation)
β
**Example response**
```json Successful response [expandable] theme={null}
{
"data": {
"propertyClosingReferralCreate": {
"referral": {
"id": "ref_12345"
},
"userErrors": []
}
}
}
```
β **Error response**
```json Error response [expandable] theme={null}
{
"data": {
"propertyClosingReferralCreate": {
"referral": null,
"userErrors": [
{
"code": "INVALID_EMAIL",
"message": "Email must be a valid email address."
}
]
}
}
}
```
## π§ Tips
- Ensure the email is valid and unique for each contact.
-
You can include multiple contacts, but only one should be marked primary:
true.
## Next steps
Retrieve detailed information about a specific referral.
Track the progress of your client's legal transaction.
# Receiving webhooks on matter updates
Source: https://dev.ownright.com/partner-api/guides/receiving-webhooks-on-matter-updates
A practical example of how you can receive automatic updates on matters
This guide isnβt available yet, but itβs on our roadmap. Weβre actively
working on expanding our documentation β check back soon or reach out to
[developers@ownright.com](mailto:developers@ownright.com) if you need help in the meantime.
## Next steps
Explore all queries, mutations, and webhooks available in the Partner API.
Stay up to date with changes to the Partner API.
# Receiving webhooks on referral updates
Source: https://dev.ownright.com/partner-api/guides/receiving-webhooks-on-referral-updates
A practical example of how you can receive automatic updates on referrals
This guide isnβt available yet, but itβs on our roadmap. Weβre actively
working on expanding our documentation β check back soon or reach out to
[developers@ownright.com](mailto:developers@ownright.com) if you need help in the meantime.
## Next steps
Get automatic updates when matter statuses change.
Explore all queries, mutations, and webhooks available in the Partner API.
# Overview
Source: https://dev.ownright.com/partner-api/overview
Integrate referral and matter workflows into your product with the Ownright Partner API
The **Partner API** enables proptech companies to programmatically refer clients to Ownright for
their real estate legal needs and track the progress of their transactions.
With the Partner API, you can:
-
π€ **Make referrals**: Seamlessly hand off your client to Ownright for their
legal needs.
-
π **Track matters**: Get real-time visibility into the status of your
client's closing.
-
π **Receive webhook updates**: Stay in sync as closings move forward, with
key event notifications pushed to your system from ours.
## Get started
Learn about referrals and matters β the two foundational objects in the
Partner API.
Understand how to authenticate your requests to the Partner API.
Start sending clients to Ownright programmatically by creating a referral.
Explore all queries, mutations, and webhooks available in the Partner API.
# Changelog
Source: https://dev.ownright.com/partner-api/reference/changelog
Stay up to date with the changes we make to our platform
## Changelog
The initial release of the Ownright Developer Platform documentation.
# Connecting
Source: https://dev.ownright.com/partner-api/reference/connecting
General details on how to connect to the Partner API
Before you start sending queries and mutations, you need to know where to
send requests and what headers to include. This page covers the basics of
making a successful connection to the Ownright Partner API.
## π API endpoint
All GraphQL requests are sent to a single HTTPS endpoint:
```
POST https://api.ownright.com/partners/graphql
```
## π§Ύ Required headers
Every request to the Partner API must include the following headers:
| Header | HTTP Status |
| -------------------------------- | ----------------------------------------------- |
| `Content-Type: application/json` | HMAC SHA256 signature of the request |
| `X-Ownright-Client-Id` | Your unique API client ID |
| `X-Ownright-API-Key` | Your long-lived API key used for authentication |
| `X-Ownright-Organization-Id` | A constant identifier for the Ownright platform |
These headers are used to authenticate your requests and route them correctly.
## π¦ Example Request
Hereβs an example of a basic GraphQL request using curl:
```bash Example request theme={null}
curl -X POST https://api.ownright.com/partners/graphql \
-H "Content-Type: application/json" \
-H "X-Ownright-Client-Id: your-client-id" \
-H "X-Ownright-API-Key: your-api-key" \
-H "X-Ownright-Organization-Id: ownright-prod-org" \
-d '{"query": "query { referral(id: "gid://ownright/Referral/1") { id } }"}'
```
Use tools like [Postman](https://www.postman.com/),
[Insomnia](https://insomnia.rest/), or
[GraphiQL](https://github.com/graphql/graphiql) for easier request building
and testing.
## π Need Help?
If you havenβt received your client ID or API key yet, read the [Authentication]() documentation.
# Country
Source: https://dev.ownright.com/partner-api/reference/members/enums/country
Possible countries.
## Values
| Value | Description |
| -------- | ------------------------------ |
| `CANADA` | Represents Canada the country. |
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# CurrencyCode
Source: https://dev.ownright.com/partner-api/reference/members/enums/currency-code
Possible currency codes.
## Values
| Value | Description |
| ----- | --------------------------------- |
| `CAD` | Represents the CAD currency code. |
| `USD` | Represents the USD currency code. |
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
# CustomAttributeType
Source: https://dev.ownright.com/partner-api/reference/members/enums/custom-attribute-type
Possible custom attribute types.
## Values
| Value | Description |
| -------------- | ------------------------------------------------------------------------------------------------------------------- |
| `BOOLEAN` | A boolean value ("true" or "false"). |
| `COLOR` | A hex color code starting with # (e.g., "#FF0000" or "#F00"). |
| `DATE` | A date in ISO8601 format (YYYY-MM-DD, e.g., "2024-03-19"). |
| `DATE_TIME` | A datetime in ISO8601 format with timezone (YYYY-MM-DDThh:mm:ssZ, e.g., "2024-03-19T12:00:00Z"). |
| `EMAIL` | A valid email address (e.g., "[test@example.com](mailto:test@example.com)"). |
| `FLOAT` | A decimal number value (e.g., "3.14"). |
| `INTEGER` | A whole number value (e.g., "42"). |
| `JSON` | A valid JSON value of any type. |
| `MONEY` | A money value as a JSON object with amount and currency code (e.g., \{"amount": "10.99", "currency\_code": "CAD"}). |
| `PHONE_NUMBER` | A valid E.164 phone number (e.g., "+1234567890"). |
| `STRING` | A simple text value. |
| `URL` | A valid HTTP or HTTPS URL (e.g., "[https://example.com](https://example.com)"). |
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# FileMimeType
Source: https://dev.ownright.com/partner-api/reference/members/enums/file-mime-type
Possible MIME types for files.
## Values
| Value | Description |
| --------------------- | ----------------------------------------------------------------------------------------------------- |
| `AUDIO_M4A` | Represents the `audio/x-m4a` MIME type. |
| `AUDIO_MPEG` | Represents the `audio/mpeg` MIME type. |
| `AUDIO_WAV` | Represents the `audio/wav` MIME type. |
| `CSS` | Represents the `text/css` MIME type. |
| `CSV` | Represents the `text/csv` MIME type. |
| `DOCUMENT_DOC` | Represents the `application/msword` MIME type. |
| `DOCUMENT_DOCX` | Represents the `application/vnd.openxmlformats-officedocument.wordprocessingml.documents` MIME type. |
| `DOCUMENT_ODP` | Represents the `application/vnd.oasis.opendocument.presentation` MIME type. |
| `DOCUMENT_ODS` | Represents the `application/vnd.oasis.opendocument.spreadsheet` MIME type. |
| `DOCUMENT_ODT` | Represents the `application/vnd.oasis.opendocument.text` MIME type. |
| `DOCUMENT_OFFICE_PPT` | Represents the `application/vnd.ms-powerpoint` MIME type. |
| `DOCUMENT_OFFICE_XLS` | Represents the `application/vnd.ms-excel` MIME type. |
| `DOCUMENT_PDF` | Represents the `application/pdf` MIME type. |
| `DOCUMENT_PPTX` | Represents the `application/vnd.openxmlformats-officedocument.presentationml.presentation` MIME type. |
| `DOCUMENT_RTF` | Represents the `application/rtf` MIME type. |
| `DOCUMENT_XLSX` | Represents the `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet` MIME type. |
| `FONT_TTF` | Represents the `application/x-font-ttf` MIME type. |
| `GZIP` | Represents the `application/gzip` MIME type. |
| `HTML` | Represents the `text/html` MIME type. |
| `IMAGE_BMP` | Represents the `image/bmp` MIME type. |
| `IMAGE_GIF` | Represents the `image/gif` MIME type. |
| `IMAGE_HEIC` | Represents the `image/heic` MIME type. |
| `IMAGE_HEIF` | Represents the `image/heif` MIME type. |
| `IMAGE_JPEG` | Represents the `image/jpeg` MIME type. |
| `IMAGE_PNG` | Represents the `image/png` MIME type. |
| `IMAGE_SVG` | Represents the `image/svg+xml` MIME type. |
| `IMAGE_TIFF` | Represents the `image/tiff` MIME type. |
| `IMAGE_WEBP` | Represents the `image/webp` MIME type. |
| `JSON` | Represents the `application/json` MIME type. |
| `MARKDOWN` | Represents the `text/markdown` MIME type. |
| `TEXT_PLAIN` | Represents the `text/plain` MIME type. |
| `VIDEO_AVI` | Represents the `video/x-msvideo` MIME type. |
| `VIDEO_MOV` | Represents the `video/quicktime` MIME type. |
| `VIDEO_MP4` | Represents the `video/mp4` MIME type. |
| `ZIP` | Represents the `application/zip` MIME type. |
## Used by
* [`stagedFileUploadCreate`](/partner-api/reference/mutations/files/staged-file-upload-create) (mutation)
# LoanType
Source: https://dev.ownright.com/partner-api/reference/members/enums/loan-type
The type of loan.
## Values
| Value | Description |
| ------------------ | ------------------------------- |
| `BRIDGE_LOAN` | The bridge loan loan type. |
| `LINE_OF_CREDIT` | The line of credit loan type. |
| `MORTGAGE` | The mortgage loan type. |
| `VENDOR_TAKE_BACK` | The vendor take back loan type. |
# MatterClosingActionItemState
Source: https://dev.ownright.com/partner-api/reference/members/enums/matter-closing-action-item-state
Possible states for matters closing action items.
## Values
| Value | Description |
| ------------- | --------------------------------------------- |
| `COMPLETED` | The action item has been completed. |
| `IN_PROGRESS` | The action item is currently being actioned. |
| `LATE` | The action item is past its expected at date. |
| `PENDING` | The action item is waiting to be actioned on. |
# MatterMilestoneHandle
Source: https://dev.ownright.com/partner-api/reference/members/enums/matter-milestone-handle
Possible types of matter milestones.
## Values
| Value | Description |
| --------------------------------- | ------------------------------------------------------------------- |
| `ADJUSTMENTS_CONFIRMED` | Represents the adjustments confirmed milestone. |
| `ALIGNED_WITH_BUYER` | Represents the aligned with buyer milestone. |
| `ALIGNED_WITH_SELLER` | Represents the aligned with seller milestone. |
| `FINANCING_FIRM` | Represents the financing firm milestone. |
| `FINANCING_INFORMATION_CONFIRMED` | Represents the financing information confirmed milestone. |
| `KEY_HANDOVER_CONFIRMED` | Represents the key handover confirmed milestone. |
| `LOAN_INSTRUCTIONS_RECEIVED` | Represents the loan instructions received milestone. |
| `MONEY_RECEIVED` | Represents the money received milestone. |
| `PAYOUTS_CONFIRMED` | Represents the payouts confirmed milestone. |
| `PURCHASE_CLOSING_DAY` | Represents the purchase closing day milestone. |
| `PURCHASE_DOCUMENTS_SIGNED` | Represents the purchase documents signed milestone. |
| `PURCHASE_FINAL_REPORT` | Represents the purchase final report milestone. |
| `PURCHASE_OFFER_FIRM` | Represents the purchase offer firm milestone. |
| `PURCHASE_TITLE_SEARCH` | Represents the purchase title search milestone. |
| `REFINANCE_CLOSING_DAY` | Represents the refinance closing day milestone. |
| `REFINANCE_DOCUMENTS_SIGNED` | Represents the refinance documents signed milestone. |
| `REFINANCE_FINAL_REPORT` | Represents the refinance final report milestone. |
| `REFINANCE_FINANCING_CONFIRMED` | Represents the refinance financing information confirmed milestone. |
| `REFINANCE_PAYOUTS_CONFIRMED` | Represents the refinance payouts confirmed milestone. |
| `REFINANCE_TITLE_SEARCH` | Represents the refinance title search milestone. |
| `SALE_CLOSING_DAY` | Represents the sale closing day milestone. |
| `SALE_DOCUMENTS_SIGNED` | Represents the sale documents signed milestone. |
| `SALE_FINAL_REPORT` | Represents the sale final report milestone. |
| `SALE_OFFER_FIRM` | Represents the sale offer firm milestone. |
| `SALE_TITLE_SEARCH` | Represents the sale title search milestone. |
# MatterMilestoneStatus
Source: https://dev.ownright.com/partner-api/reference/members/enums/matter-milestone-status
Possible types of matter milestone statuses.
## Values
| Value | Description |
| ----------- | ------------------------------------------ |
| `COMPLETED` | Represents the completed milestone status. |
| `PENDING` | Represents the pending milestone status. |
# MatterParticipantRepresentation
Source: https://dev.ownright.com/partner-api/reference/members/enums/matter-participant-representation
Possible representations matter participants can have.
## Values
| Value | Description |
| ------------------- | ----------------------------------------------------------------- |
| `ESTATE_TRUSTEE` | Given to participants that are represented by estate trustees. |
| `POWER_OF_ATTORNEY` | Given to participants that are represented by power of attorneys. |
# MatterParticipantTrait
Source: https://dev.ownright.com/partner-api/reference/members/enums/matter-participant-trait
Possible traits matter participants can have.
## Values
| Value | Description |
| ----------------------------- | ------------------------------------------------------------------ |
| `BORROWER` | Trait given to participants that are borrowers. |
| `CORPORATION_SIGNING_OFFICER` | Trait given to participants that are corporation signing officers. |
| `ESTATE_TRUSTEE` | Trait given to participants that are estate trustees. |
| `GUARANTOR` | Trait given to participants that are guarantors. |
| `LENDER` | Trait given to participants that are lenders. |
| `NEW_OWNER` | Trait given to participants that are new owners. |
| `OLD_OWNER` | Trait given to participants that are old owners. |
| `POWER_OF_ATTORNEY` | Trait given to participants that are power of attorneys. |
| `PURCHASER` | Trait given to participants that are purchasers. |
| `SELLER` | Trait given to participants that are sellers. |
| `SPOUSE` | Trait given to participants that are spouses. |
# NotificationDeliveryMechanism
Source: https://dev.ownright.com/partner-api/reference/members/enums/notification-delivery-mechanism
Possible types of delivery mechanisms to deliver a notification.
## Values
| Value | Description |
| ------- | ----------------------------- |
| `EMAIL` | The email delivery mechanism. |
| `SMS` | The SMS delivery mechanism. |
## Used by
* [`matter`](/partner-api/reference/queries/matters/matter) (query)
* [`matters`](/partner-api/reference/queries/matters/matters) (query)
# PersonRole
Source: https://dev.ownright.com/partner-api/reference/members/enums/person-role
Possible roles for a person.
## Values
| Value | Description |
| -------------------- | --------------------- |
| `MORTGAGE_AGENT` | A mortgage agent. |
| `MORTGAGE_BROKER` | A mortgage broker. |
| `OTHER` | Other. |
| `REAL_ESTATE_AGENT` | A real estate agent. |
| `REAL_ESTATE_BROKER` | A real estate broker. |
# PropertyType
Source: https://dev.ownright.com/partner-api/reference/members/enums/property-type
Possible types of properties.
## Values
| Value | Description |
| --------------------- | ------------------------------------------------------------ |
| `CONDO` | A property that is within a condominum building. |
| `DETACHED_HOUSE` | A property that is a detached house. |
| `LAND` | A property that doesn't have any meaningful buildings on it. |
| `SEMI_DETACHED_HOUSE` | A property that is a semi-detached house. |
# Province
Source: https://dev.ownright.com/partner-api/reference/members/enums/province
Possible provinces.
## Values
| Value | Description |
| --------------------------- | -------------------------------------------------- |
| `ALBERTA` | Represents Alberta the province. |
| `BRITISH_COLUMBIA` | Represents British Columbia the province. |
| `MANITOBA` | Represents Manitoba the province. |
| `NEWFOUNDLAND_AND_LABRADOR` | Represents Newfoundland And Labrador the province. |
| `NEW_BRUNSWICK` | Represents New Brunswick the province. |
| `NORTHWEST_TERRITORIES` | Represents Northwest Territories the province. |
| `NOVA_SCOTIA` | Represents Nova Scotia the province. |
| `NUNAVUT` | Represents Nunavut the province. |
| `ONTARIO` | Represents Ontario the province. |
| `PRINCE_EDWARD_ISLAND` | Represents Prince Edward Island the province. |
| `QUEBEC` | Represents Quebec the province. |
| `SASKATCHEWAN` | Represents Saskatchewan the province. |
| `YUKON` | Represents Yukon the province. |
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# ReferralIntentLevel
Source: https://dev.ownright.com/partner-api/reference/members/enums/referral-intent-level
Possible levels of intent for a referral.
## Values
| Value | Description |
| -------- | ------------------------------------------------ |
| `HIGH` | Represents a high intent level for a referral. |
| `LOW` | Represents a low intent level for a referral. |
| `MEDIUM` | Represents a medium intent level for a referral. |
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# ReferralStatus
Source: https://dev.ownright.com/partner-api/reference/members/enums/referral-status
Possible statuses for referrals.
## Values
| Value | Description |
| ----------- | -------------------------------------------------------- |
| `CONVERTED` | Given to referrals that have been converted to a matter. |
| `OPEN` | Given to referrals that are currently open. |
| `RETIRED` | Given to referrals that are no longer being pursued. |
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# ReferralType
Source: https://dev.ownright.com/partner-api/reference/members/enums/referral-type
Possible types of referrals.
## Values
| Value | Description |
| --------------------------- | ------------------------------------------------------ |
| `PURCHASE_PROPERTY_CLOSING` | Represents a referral for a purchase property closing. |
| `REFINANCE` | Represents a referral for a refinance. |
| `SALE_PROPERTY_CLOSING` | Represents a referral for a sale property closing. |
| `STATUS_CERTIFICATE_REVIEW` | Represents a referral for a status certificate review. |
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# RefinanceOwnershipStatus
Source: https://dev.ownright.com/partner-api/reference/members/enums/refinance-ownership-status
The ownership status of a refinance participant or corporation.
## Values
| Value | Description |
| -------------------------- | ------------------------------------------------ |
| `BEING_REMOVED_FROM_TITLE` | The "being removed from title" ownership status. |
| `NEW_ON_TITLE` | The "new on title" ownership status. |
| `REMAINING_ON_TITLE` | The "remaining on title" ownership status. |
# RefinanceState
Source: https://dev.ownright.com/partner-api/reference/members/enums/refinance-state
Possible states for refinances.
## Values
| Value | Description |
| --------------------- | ------------------------------------------------------------------------------------------ |
| `ABANDONED` | Given to refinances that are no longer active and have been abandoned. |
| `AFTER_CLOSING` | Given to refinances that have closed. |
| `BEFORE_CLOSING` | Given to refinances that are active and before the scheduled closing date. |
| `CLOSING_IN_PROGRESS` | Given to refinances that are actively closing on the closing date. |
| `COMPLETED` | Given to refinances that are fully complete, no further work on the refinance is required. |
| `PENDING` | Given to refinances that are yet to be setup by the primary clients. |
# StatusCertificateReviewAssessmentAnswerStatus
Source: https://dev.ownright.com/partner-api/reference/members/enums/status-certificate-review-assessment-answer-status
Represents the status of a status certificate review assessment answer.
## Values
| Value | Description |
| ---------- | -------------------------------------- |
| `INFO` | Represents the INFO answer status. |
| `NEGATIVE` | Represents the NEGATIVE answer status. |
| `POSITIVE` | Represents the POSITIVE answer status. |
# StatusCertificateReviewAssessmentSchemaVersion
Source: https://dev.ownright.com/partner-api/reference/members/enums/status-certificate-review-assessment-schema-version
Available schema versions for status certificate review assessment.
## Values
| Value | Description |
| -------------------------- | ------------------------------------------------------ |
| `VERSION_2025_06_26_00_00` | The schema version from VERSION\_2025\_06\_26\_00\_00. |
# StatusCertificateReviewAssessmentSectionRating
Source: https://dev.ownright.com/partner-api/reference/members/enums/status-certificate-review-assessment-section-rating
Represents the rating of a status certificate review assessment section.
## Values
| Value | Description |
| ----------- | ---------------------------------------- |
| `EXCELLENT` | Represents the EXCELLENT section rating. |
| `FAIR` | Represents the FAIR section rating. |
| `GOOD` | Represents the GOOD section rating. |
| `POOR` | Represents the POOR section rating. |
# StatusCertificateReviewAssessmentState
Source: https://dev.ownright.com/partner-api/reference/members/enums/status-certificate-review-assessment-state
Represents the current state of a status certificate review assessment.
## Values
| Value | Description |
| ------------- | ---------------------------------- |
| `COMPLETED` | Represents the COMPLETED state. |
| `IN_PROGRESS` | Represents the IN\_PROGRESS state. |
| `NOT_STARTED` | Represents the NOT\_STARTED state. |
# StatusCertificateReviewState
Source: https://dev.ownright.com/partner-api/reference/members/enums/status-certificate-review-state
Possible states for status certificate reviews.
## Values
| Value | Description |
| ------------- | ------------------------------------------------------------- |
| `ABANDONED` | Given to status certificate reviews that have been abandoned. |
| `COMPLETED` | Given to status certificate reviews that have been completed. |
| `DRAFT` | Given to status certificate reviews that are in draft. |
| `IN_PROGRESS` | Given to status certificate reviews that are in progress. |
# TransactionClosingStatus
Source: https://dev.ownright.com/partner-api/reference/members/enums/transaction-closing-status
Represents the closing status of a transaction.
## Values
| Value | Description |
| ------------- | --------------------------------- |
| `ACTIVE` | The `ACTIVE` closing status. |
| `COMPLETED` | The `COMPLETED` closing status. |
| `IN_ESCROW` | The `IN_ESCROW` closing status. |
| `NOT_STARTED` | The `NOT_STARTED` closing status. |
| `PAUSED` | The `PAUSED` closing status. |
# TransactionSideName
Source: https://dev.ownright.com/partner-api/reference/members/enums/transaction-side-name
Possible sides of a transactions.
## Values
| Value | Description |
| ----------- | ---------------------------------- |
| `PURCHASER` | The buying side of a transaction. |
| `SELLER` | The selling side of a transaction. |
# TransactionState
Source: https://dev.ownright.com/partner-api/reference/members/enums/transaction-state
Possible states for transactions.
## Values
| Value | Description |
| --------------------- | ---------------------------------------------------------------------------------------------- |
| `ABANDONED` | Given to transactions that are no longer active and have been abandoned. |
| `AFTER_CLOSING` | Given to transactions that have closed. |
| `BEFORE_CLOSING` | Given to transactions that are active and before the scheduled closing date. |
| `CLOSING_IN_PROGRESS` | Given to transactions that are actively closing on the closing date. |
| `COMPLETED` | Given to transactions that are fully complete, no further work on the transaction is required. |
| `PENDING` | Given to transactions that are yet to be setup by the primary clients. |
# TransactionType
Source: https://dev.ownright.com/partner-api/reference/members/enums/transaction-type
Possible types of transactions.
## Values
| Value | Description |
| ---------- | ------------------------------------- |
| `PURCHASE` | A transaction to purchase a property. |
| `SALE` | A transaction to sell a property. |
# AddressInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/address-input
Input to create or update an address.
## Fields
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# BusinessContactUpdateInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/business-contact-update-input
Input to update a business contact.
## Fields
The first name of the partner.
The last name of the partner.
The phone number of the partner.
# CustomAttributeCreateInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/custom-attribute-create-input
Input to create a custom attribute.
## Fields
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# FileBulkCommitInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/file-bulk-commit-input
Input for a file to committed as part of a bulk file commit.
## Fields
The identifier of a staged file record to commit.
Tags to add to the committed versioned file.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# ImageTransformInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/image-transform-input
Input to transform an image.
## Fields
The height of the image.
The width of the image.
## Used by
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# MoneyInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/money-input
Input that represents money.
## Fields
The amount of money.
The currency of the money.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
# PartnerInquiryPersonInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/partner-inquiry-person-input
Input required to create a partner inquiry for a person.
## Fields
Custom attributes for the person.
Email address of the person.
Name of the entity associated with the person.
First name of the person.
Last name of the person.
Phone number of the person.
Role of the person.
# PropertyClosingReferralInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/property-closing-referral-input
Input to create a property closing referral.
## Fields
Contacts to be associated with the referral.
Custom attributes to be associated with the referral.
The files to be associated with the referral.
The intent level of the referral.
The amount the purchase property is being purchased for.
The address of the property the person is buying.
The address of the property the person is selling.
The type of the referral.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
# ReferralContactCreateInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/referral-contact-create-input
The input to create a referral contact.
## Fields
The email for the referral contact.
The first name for the referral contact.
The last name for the referral contact.
The phone number for the referral contact.
Whether this contact is the primary contact for the referral.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# RefinanceReferralInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/refinance-referral-input
Input to create a refinance referral.
## Fields
Contacts to be associated with the referral.
Custom attributes to be associated with the referral.
The files to be associated with the referral.
The intent level of the referral.
The amount of the new mortgage.
The address of the property being refinanced.
## Used by
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
# StagedFileUploadInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/staged-file-upload-input
Input to create a staged file upload.
## Fields
The name of the file that is being uploaded.
The MIME type of the file that is being uploaded.
## Used by
* [`stagedFileUploadCreate`](/partner-api/reference/mutations/files/staged-file-upload-create) (mutation)
# StatusCertificateReviewReferralInput
Source: https://dev.ownright.com/partner-api/reference/members/inputs/status-certificate-review-referral-input
Input to create a status certificate review referral.
## Fields
Whether or not the client has made an offer on the property already.
Contacts to be associated with the referral.
Custom attributes to be associated with the referral.
Whether or not the status certificate review requires an earlier than normal
review.
The files to be associated with the referral.
The intent level of the referral.
The preferred completion time for the status certificate review.
The address of the property for which the status certificate review is being
requested.
## Used by
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# File
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/file
Represents a file.
## Fields
The date the file was created.
The name of the file.
ID of the object.
The MIME type of the file.
Whether the file is staged for upload or not.
The date the file was last updated.
## Implementations
* [Document](/partner-api/reference/members/objects/document)
* [Image](/partner-api/reference/members/objects/image)
## Used by
* [`stagedFileUploadCreate`](/partner-api/reference/mutations/files/staged-file-upload-create) (mutation)
# Matter
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/matter
Represents a matter.
## Fields
The currently authenticated matter business contact information (if any).
ID of the object.
The matter's short identifier.
Whether the matter is a test matter or not.
## Implementations
* [PurchaseTransaction](/partner-api/reference/members/objects/purchase-transaction)
* [Refinance](/partner-api/reference/members/objects/refinance)
* [SaleTransaction](/partner-api/reference/members/objects/sale-transaction)
* [StatusCertificateReview](/partner-api/reference/members/objects/status-certificate-review)
## Used by
* [`matter`](/partner-api/reference/queries/matters/matter) (query)
* [`matters`](/partner-api/reference/queries/matters/matters) (query)
# MatterParticipant
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/matter-participant
Represents a matter participant.
## Fields
Whether the participant is a corporation signing officer or not.
The corporations the participant is a signing officer for (if any).
The first name of the participant.
The full name of the participant.
ID of the object.
The last name of the participant.
Whether the participant is a primary client for the matter or not.
The representation of the participant (if any).
Whether the participant is represented or not.
The participants that the participant is representing (if any).
The participants that are representing the participant (if any).
Whether the participant represents a primary client for the matter or not.
The traits of the participant.
## Implementations
* [RefinanceParticipant](/partner-api/reference/members/objects/refinance-participant)
* [StatusCertificateReviewParticipant](/partner-api/reference/members/objects/status-certificate-review-participant)
* [TransactionParticipant](/partner-api/reference/members/objects/transaction-participant)
# PurchaseTransactionStatus
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/purchase-transaction-status
Represents the status of a purchase transaction.
## Fields
The state of the transaction.
## Implementations
* [PurchaseTransactionAbandonedStatus](/partner-api/reference/members/objects/purchase-transaction-abandoned-status)
* [PurchaseTransactionAfterClosingStatus](/partner-api/reference/members/objects/purchase-transaction-after-closing-status)
* [PurchaseTransactionBeforeClosingStatus](/partner-api/reference/members/objects/purchase-transaction-before-closing-status)
* [PurchaseTransactionClosingInProgressStatus](/partner-api/reference/members/objects/purchase-transaction-closing-in-progress-status)
* [PurchaseTransactionCompletedStatus](/partner-api/reference/members/objects/purchase-transaction-completed-status)
* [PurchaseTransactionPendingStatus](/partner-api/reference/members/objects/purchase-transaction-pending-status)
# Referral
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/referral
Represents a referral.
## Fields
The contacts for the referral.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The primary contact for the referral.
The current status of the referral.
The type of the referral.
The time the referral was updated.
## Implementations
* [PurchasePropertyClosingReferral](/partner-api/reference/members/objects/purchase-property-closing-referral)
* [RefinanceReferral](/partner-api/reference/members/objects/refinance-referral)
* [SalePropertyClosingReferral](/partner-api/reference/members/objects/sale-property-closing-referral)
* [StatusCertificateReviewReferral](/partner-api/reference/members/objects/status-certificate-review-referral)
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
# RefinanceStatus
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/refinance-status
Represents the status of a refinance.
## Fields
The state of the refinance.
## Implementations
* [RefinanceAbandonedStatus](/partner-api/reference/members/objects/refinance-abandoned-status)
* [RefinanceAfterClosingStatus](/partner-api/reference/members/objects/refinance-after-closing-status)
* [RefinanceBeforeClosingStatus](/partner-api/reference/members/objects/refinance-before-closing-status)
* [RefinanceClosingInProgressStatus](/partner-api/reference/members/objects/refinance-closing-in-progress-status)
* [RefinanceCompletedStatus](/partner-api/reference/members/objects/refinance-completed-status)
* [RefinancePendingStatus](/partner-api/reference/members/objects/refinance-pending-status)
# SaleTransactionStatus
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/sale-transaction-status
Represents the status of a sale transaction.
## Fields
The state of the transaction.
## Implementations
* [SaleTransactionAbandonedStatus](/partner-api/reference/members/objects/sale-transaction-abandoned-status)
* [SaleTransactionAfterClosingStatus](/partner-api/reference/members/objects/sale-transaction-after-closing-status)
* [SaleTransactionBeforeClosingStatus](/partner-api/reference/members/objects/sale-transaction-before-closing-status)
* [SaleTransactionClosingInProgressStatus](/partner-api/reference/members/objects/sale-transaction-closing-in-progress-status)
* [SaleTransactionCompletedStatus](/partner-api/reference/members/objects/sale-transaction-completed-status)
* [SaleTransactionPendingStatus](/partner-api/reference/members/objects/sale-transaction-pending-status)
# StatusCertificateReviewAssessmentStatus
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/status-certificate-review-assessment-status
Represents the status of a status certificate review assessment.
## Fields
The state of the status certificate review assessment.
## Implementations
* [StatusCertificateReviewAssessmentCompletedStatus](/partner-api/reference/members/objects/status-certificate-review-assessment-completed-status)
* [StatusCertificateReviewAssessmentInProgressStatus](/partner-api/reference/members/objects/status-certificate-review-assessment-in-progress-status)
* [StatusCertificateReviewAssessmentNotStartedStatus](/partner-api/reference/members/objects/status-certificate-review-assessment-not-started-status)
# StatusCertificateReviewStatus
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/status-certificate-review-status
Represents the status of a status certificate review.
## Fields
The state of the status certificate review.
## Implementations
* [StatusCertificateReviewAbandonedStatus](/partner-api/reference/members/objects/status-certificate-review-abandoned-status)
* [StatusCertificateReviewCompletedStatus](/partner-api/reference/members/objects/status-certificate-review-completed-status)
* [StatusCertificateReviewDraftStatus](/partner-api/reference/members/objects/status-certificate-review-draft-status)
* [StatusCertificateReviewInProgressStatus](/partner-api/reference/members/objects/status-certificate-review-in-progress-status)
# Transaction
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/transaction
Represents a transaction.
## Fields
The date the agreement to purchase or sell was made.
The date the purchase is set to close on.
The currently authenticated matter business contact information (if any).
The amount of money deposited with the offer to purchase.
ID of the object.
The transaction's milestones
The property the transaction is for.
The side of the transaction that is being represented by Ownright.
The matter's short identifier.
The status of the transaction.
Whether the matter is a test matter or not.
The type of the transaction.
## Implementations
* [PurchaseTransaction](/partner-api/reference/members/objects/purchase-transaction)
* [SaleTransaction](/partner-api/reference/members/objects/sale-transaction)
# TransactionStatus
Source: https://dev.ownright.com/partner-api/reference/members/interfaces/transaction-status
Represents the status of a transaction.
## Fields
The state of the transaction.
## Implementations
* [PurchaseTransactionAbandonedStatus](/partner-api/reference/members/objects/purchase-transaction-abandoned-status)
* [PurchaseTransactionAfterClosingStatus](/partner-api/reference/members/objects/purchase-transaction-after-closing-status)
* [PurchaseTransactionBeforeClosingStatus](/partner-api/reference/members/objects/purchase-transaction-before-closing-status)
* [PurchaseTransactionClosingInProgressStatus](/partner-api/reference/members/objects/purchase-transaction-closing-in-progress-status)
* [PurchaseTransactionCompletedStatus](/partner-api/reference/members/objects/purchase-transaction-completed-status)
* [PurchaseTransactionPendingStatus](/partner-api/reference/members/objects/purchase-transaction-pending-status)
* [SaleTransactionAbandonedStatus](/partner-api/reference/members/objects/sale-transaction-abandoned-status)
* [SaleTransactionAfterClosingStatus](/partner-api/reference/members/objects/sale-transaction-after-closing-status)
* [SaleTransactionBeforeClosingStatus](/partner-api/reference/members/objects/sale-transaction-before-closing-status)
* [SaleTransactionClosingInProgressStatus](/partner-api/reference/members/objects/sale-transaction-closing-in-progress-status)
* [SaleTransactionCompletedStatus](/partner-api/reference/members/objects/sale-transaction-completed-status)
* [SaleTransactionPendingStatus](/partner-api/reference/members/objects/sale-transaction-pending-status)
# Address
Source: https://dev.ownright.com/partner-api/reference/members/objects/address
Represents an address.
## Fields
The city of the address.
The country of the address.
The latitude of the address.
The longitude of the address.
A link to a map with a pointer on the address's location.
The postal code of the address.
The province of the address.
The shortened title for the address.
The street name and number of the address.
The full title for the address.
The unit number, apartment number, suite number etc.
## Used by
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# BuildingRule
Source: https://dev.ownright.com/partner-api/reference/members/objects/building-rule
A building rule or allowance.
## Fields
The detailed description of this building rule.
The unique handle identifying this building rule.
The icon representing this building rule.
The human-readable label for this building rule.
# BusinessContact
Source: https://dev.ownright.com/partner-api/reference/members/objects/business-contact
A business contact.
## Fields
The email of the business contact.
The fax number of the business contact.
The first name of the business contact.
The Front user ID hash of the business contact.
The full name of the business contact.
ID of the object.
The last name of the business contact.
The notification delivery mechanisms the business contact is subscribed to.
The phone number of the business contact.
## Used by
* [`matter`](/partner-api/reference/queries/matters/matter) (query)
* [`matters`](/partner-api/reference/queries/matters/matters) (query)
# CustomAttribute
Source: https://dev.ownright.com/partner-api/reference/members/objects/custom-attribute
A custom attribute.
## Fields
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# Document
Source: https://dev.ownright.com/partner-api/reference/members/objects/document
Represents a document.
## Fields
The date the file was created.
The name of the file.
ID of the object.
The MIME type of the file.
Whether the file is staged for upload or not.
The date the file was last updated.
The URL to the document.
# Image
Source: https://dev.ownright.com/partner-api/reference/members/objects/image
Represents an image.
## Fields
The date the file was created.
The name of the file.
ID of the object.
The MIME type of the file.
Whether the file is staged for upload or not.
The date the file was last updated.
The URL to the image.
# Lender
Source: https://dev.ownright.com/partner-api/reference/members/objects/lender
Represents a lender.
## Fields
ID of the object.
The URL of the lender's logo.
The name of the lender.
The URL of the lender's website.
# Loan
Source: https://dev.ownright.com/partner-api/reference/members/objects/loan
Represents a loan.
## Fields
ID of the object.
The lenders of the loan.
The principal amount of the loan.
The type of loan.
# MatterBusinessContact
Source: https://dev.ownright.com/partner-api/reference/members/objects/matter-business-contact
A business contact that is associated with a matter.
## Fields
The contact for the business.
ID of the object.
Whether or not the contact has a partner account linked.
Whether the partner has muted notifications for the matter or not.
## Used by
* [`matter`](/partner-api/reference/queries/matters/matter) (query)
* [`matters`](/partner-api/reference/queries/matters/matters) (query)
# MatterClosingActionItem
Source: https://dev.ownright.com/partner-api/reference/members/objects/matter-closing-action-item
Represents an action item that is completed during a matters closing.
## Fields
The date the action item was completed.
The description of the action item.
The date the action item is expected to be completed by.
ID of the object.
The state of the action item.
The title of the action item.
# MatterCorporation
Source: https://dev.ownright.com/partner-api/reference/members/objects/matter-corporation
Represents a matter corporation.
## Fields
ID of the object.
The name of the corporation.
The ownership status of the corporation (only applies for corporations on
refinances).
# MatterMilestone
Source: https://dev.ownright.com/partner-api/reference/members/objects/matter-milestone
Represents a matter milestone.
## Fields
The date the matter milestone was completed (if any).
The description of the matter milestone.
The handle of the matter milestone.
The oneliner of the matter milestone.
The status of the matter milestone.
The title of the matter milestone.
# Money
Source: https://dev.ownright.com/partner-api/reference/members/objects/money
Represents money.
## Fields
The amount of money.
The currency of the money.
## Used by
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
# Organization
Source: https://dev.ownright.com/partner-api/reference/members/objects/organization
Represents an organization.
## Fields
The address of the organization.
The email address of the organization.
The fax number of the organization.
ID of the object.
The members of the organization.
The name of the organization.
The phone number of the organization.
The website of the organization.
# OrganizationMember
Source: https://dev.ownright.com/partner-api/reference/members/objects/organization-member
Represents an organization member.
## Fields
The email address of the member.
The first name of the member.
The full name of the member.
ID of the object.
The last name of the member.
Whether the member is a lawyer.
The profile image of the member.
# Property
Source: https://dev.ownright.com/partner-api/reference/members/objects/property
Represents a property.
## Fields
The address of the property.
ID of the object.
The type of the property.
# PurchasePropertyClosingReferral
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-property-closing-referral
A referral for a purchase property closing.
## Fields
The contacts for the referral.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The primary contact for the referral.
The address of the property being purchased.
The amount of money to purchase the property.
The current status of the referral.
The type of the referral.
The time the referral was updated.
# PurchaseTransaction
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-transaction
Represents a purchase transaction.
## Fields
The date the agreement to purchase or sell was made.
The date the purchase is set to close on.
The currently authenticated matter business contact information (if any).
The amount of money deposited with the offer to purchase.
ID of the object.
The transaction's milestones
The property the transaction is for.
The amount of money to purchase the property.
The side of the transaction that is being represented by Ownright.
The matter's short identifier.
The status of the transaction.
Whether the matter is a test matter or not.
The type of the transaction.
# PurchaseTransactionAbandonedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-transaction-abandoned-status
Status information for purchase transactions that have been abandoned.
## Fields
The state of the transaction.
# PurchaseTransactionAfterClosingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-transaction-after-closing-status
Status information for purchase transactions that have closed but are not complete.
## Fields
The state of the transaction.
# PurchaseTransactionBeforeClosingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-transaction-before-closing-status
Status information for purchase transactions that have not closed yet.
## Fields
The state of the transaction.
# PurchaseTransactionClosingInProgressStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-transaction-closing-in-progress-status
Status information for purchase transactions that are actively closing.
## Fields
The closing action items and their statuses for the closing.
Whether the closing date has been amended.
The closing status of the transaction.
The state of the transaction.
# PurchaseTransactionCompletedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-transaction-completed-status
Status information for purchase transactions that are complete.
## Fields
The state of the transaction.
# PurchaseTransactionPendingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/purchase-transaction-pending-status
Status information for purchase transactions that are yet to be setup by the primary clients.
## Fields
The state of the transaction.
# ReferralContact
Source: https://dev.ownright.com/partner-api/reference/members/objects/referral-contact
A contact for a referral.
## Fields
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# Refinance
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance
Represents a refinance.
## Fields
The date the refinance is closing on.
The date the refinance was committed by the borrowers.
The corporations associated with the refinance.
The currently authenticated matter business contact information (if any).
ID of the object.
The loans associated with the refinance.
The matter's milestones.
The participants in the refinance.
The property the refinance is for.
The matter's short identifier.
The status of the refinance.
Whether the matter is a test matter or not.
# RefinanceAbandonedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-abandoned-status
Status information for refinances that have been abandoned.
## Fields
The state of the refinance.
# RefinanceAfterClosingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-after-closing-status
Status information for refinances that are after closing.
## Fields
The state of the refinance.
# RefinanceBeforeClosingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-before-closing-status
Status information for refinances that are before closing.
## Fields
The state of the refinance.
# RefinanceClosingInProgressStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-closing-in-progress-status
Status information for refinances that are closing in progress.
## Fields
The closing action items and their statuses for the closing.
The state of the refinance.
# RefinanceCompletedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-completed-status
Status information for refinances that are completed.
## Fields
The state of the refinance.
# RefinanceParticipant
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-participant
Represents a refinance participant.
## Fields
Whether the participant is a corporation signing officer or not.
The corporations the participant is a signing officer for (if any).
The first name of the participant.
The full name of the participant.
ID of the object.
The last name of the participant.
The ownership status of the participant.
Whether the participant is a primary client for the matter or not.
The representation of the participant (if any).
Whether the participant is represented or not.
The participants that the participant is representing (if any).
The participants that are representing the participant (if any).
Whether the participant represents a primary client for the matter or not.
The traits of the participant.
# RefinancePendingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-pending-status
Status information for refinances that are yet to be setup by the primary clients.
## Fields
The state of the refinance.
# RefinanceReferral
Source: https://dev.ownright.com/partner-api/reference/members/objects/refinance-referral
A referral for a refinance.
## Fields
The contacts for the referral.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The amount of the new mortgage involved in the refinance.
The primary contact for the referral.
The address of the property that is involved in the refinance.
The current status of the referral.
The type of the referral.
The time the referral was updated.
## Used by
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
# SalePropertyClosingReferral
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-property-closing-referral
A referral for a sale property closing.
## Fields
The contacts for the referral.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The primary contact for the referral.
The address of the property being sold.
The current status of the referral.
The type of the referral.
The time the referral was updated.
# SaleTransaction
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-transaction
Represents a sale transaction.
## Fields
The date the agreement to purchase or sell was made.
The date the purchase is set to close on.
The currently authenticated matter business contact information (if any).
The amount of money deposited with the offer to purchase.
ID of the object.
The transaction's milestones
The property the transaction is for.
The side of the transaction that is being represented by Ownright.
The amount of money the property is being sold for.
The matter's short identifier.
The status of the transaction.
Whether the matter is a test matter or not.
The type of the transaction.
# SaleTransactionAbandonedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-transaction-abandoned-status
Status information for sale transactions that have been abandoned.
## Fields
The state of the transaction.
# SaleTransactionAfterClosingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-transaction-after-closing-status
Status information for sale transactions that have closed but are not complete.
## Fields
The state of the transaction.
# SaleTransactionBeforeClosingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-transaction-before-closing-status
Status information for sale transactions that have not closed yet.
## Fields
The state of the transaction.
# SaleTransactionClosingInProgressStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-transaction-closing-in-progress-status
Status information for sale transactions that are actively closing.
## Fields
The closing action items and their statuses for the closing.
Whether the closing date has been amended.
The closing status of the transaction.
The state of the transaction.
# SaleTransactionCompletedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-transaction-completed-status
Status information for sale transactions that are complete.
## Fields
The state of the transaction.
# SaleTransactionPendingStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/sale-transaction-pending-status
Status information for sale transactions that are yet to be setup by the primary clients.
## Fields
The state of the transaction.
# StagedFileUpload
Source: https://dev.ownright.com/partner-api/reference/members/objects/staged-file-upload
Represents a staged file upload.
## Fields
The file that is staged for upload.
A signed upload URL to use when uploading file.
Date when upload URL expires.
## Used by
* [`stagedFileUploadCreate`](/partner-api/reference/mutations/files/staged-file-upload-create) (mutation)
# StatusCertificateReview
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review
Represents a status certificate review.
## Fields
The assessment associated with the status certificate review.
The date the status certificate review was completed.
The date the status certificate review was committed to be completed by.
The corporations associated with the status certificate review.
The currently authenticated matter business contact information (if any).
ID of the object.
The participants in the status certificate review.
The property the status certificate review is for.
The matter's short identifier.
The status of the status certificate review.
Whether the matter is a test matter or not.
# StatusCertificateReviewAbandonedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-abandoned-status
Status information for status certificate reviews that have been abandoned.
## Fields
The state of the status certificate review.
# StatusCertificateReviewAssessment
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment
A status certificate review assessment.
## Fields
The information about the building.
The date and time when the assessment was created.
ID of the object.
General remarks and notes about the assessment.
The reviewer of the status certificate review assessment.
The version of the assessment schema being used.
The sections of the assessment.
The current status of the assessment.
The date and time when the assessment was last modified.
# StatusCertificateReviewAssessmentBuildingInformation
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-building-information
Information about a building.
## Fields
Additional comments about the property information.
The image of the building.
The name of the building.
The rules of the building.
The condo corporation number.
The management company of the building.
The registration date of the building.
Whether the building is rent controlled.
# StatusCertificateReviewAssessmentBuildingRule
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-building-rule
A building rule and whether it has a restriction.
## Fields
Indicates whether any restriction was found for the building rule.
The building rule.
# StatusCertificateReviewAssessmentCompletedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-completed-status
Status information for status certificate review assessments that have been completed.
## Fields
The date the status certificate review assessment was completed.
The state of the status certificate review assessment.
# StatusCertificateReviewAssessmentInProgressStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-in-progress-status
Status information for status certificate review assessments that are in progress.
## Fields
The state of the status certificate review assessment.
# StatusCertificateReviewAssessmentNotStartedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-not-started-status
Status information for status certificate review assessments that are not started.
## Fields
The state of the status certificate review assessment.
# StatusCertificateReviewAssessmentQuestion
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-question
A status certificate review assessment question.
## Fields
The answer of the assessment question.
The client description of the assessment question.
The handle of the assessment question.
The options for the assessment question.
The title of the assessment question.
# StatusCertificateReviewAssessmentQuestionAnswer
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-question-answer
A status certificate review assessment answer.
## Fields
The answer of the assessment question in JSON format.
The status of the assessment question answer.
The client description of the assessment question answer.
# StatusCertificateReviewAssessmentQuestionOption
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-question-option
A status certificate review assessment question option.
## Fields
The client message for the option.
The status of the option.
The value of the option.
# StatusCertificateReviewAssessmentSection
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-assessment-section
A status certificate review assessment section.
## Fields
The client description of the assessment section.
The handle of the assessment section.
The questions of the assessment section.
The rating of the assessment section.
The title of the assessment section.
# StatusCertificateReviewCompletedStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-completed-status
Status information for status certificate reviews that have been completed.
## Fields
The date the status certificate review was completed.
The state of the status certificate review.
# StatusCertificateReviewDraftStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-draft-status
Status information for status certificate reviews that are in draft.
## Fields
The state of the status certificate review.
# StatusCertificateReviewInProgressStatus
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-in-progress-status
Status information for status certificate reviews that are in progress.
## Fields
The state of the status certificate review.
# StatusCertificateReviewParticipant
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-participant
Represents a status certificate review participant.
## Fields
Whether the participant is a corporation signing officer or not.
The corporations the participant is a signing officer for (if any).
The first name of the participant.
The full name of the participant.
ID of the object.
The last name of the participant.
Whether the participant is a primary client for the matter or not.
The representation of the participant (if any).
Whether the participant is represented or not.
The participants that the participant is representing (if any).
The participants that are representing the participant (if any).
Whether the participant represents a primary client for the matter or not.
The traits of the participant.
# StatusCertificateReviewReferral
Source: https://dev.ownright.com/partner-api/reference/members/objects/status-certificate-review-referral
A referral for a status certificate review.
## Fields
Indicates whether the client has made an offer on a property already or not.
The contacts for the referral.
The time the referral was created.
The custom attributes for the referral.
Indicates whether the status certificate review requires an earlier than
normal review.
ID of the object.
The preferred completion time for the status certificate review.
The primary contact for the referral.
The address of the property that is involved in the status certificate review.
The current status of the referral.
The type of the referral.
The time the referral was updated.
## Used by
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# TransactionParticipant
Source: https://dev.ownright.com/partner-api/reference/members/objects/transaction-participant
Represents a transaction participant.
## Fields
Whether the participant is a corporation signing officer or not.
The corporations the participant is a signing officer for (if any).
The first name of the participant.
The full name of the participant.
ID of the object.
The last name of the participant.
Whether the participant is a primary client for the matter or not.
The representation of the participant (if any).
Whether the participant is represented or not.
The participants that the participant is representing (if any).
The participants that are representing the participant (if any).
Whether the participant represents a primary client for the matter or not.
The traits of the participant.
The side of the transaction the participant belongs to.
# TransactionSide
Source: https://dev.ownright.com/partner-api/reference/members/objects/transaction-side
A side of a transaction.
## Fields
The corporations in the transaction.
The name of the transaction side.
The participants in the transaction.
# Decimal
Source: https://dev.ownright.com/partner-api/reference/members/scalars/decimal
A signed decimal number, which supports arbitrary precision and is serialized as a string.
## Description
A signed decimal number, which supports arbitrary precision and is serialized as a string.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
# E164PhoneNumber
Source: https://dev.ownright.com/partner-api/reference/members/scalars/e164-phone-number
A valid phone number string in the E.164 format.
## Description
A valid phone number string in the E.164 format.
## Used by
* [`matter`](/partner-api/reference/queries/matters/matter) (query)
* [`matters`](/partner-api/reference/queries/matters/matters) (query)
# FileRecordGID
Source: https://dev.ownright.com/partner-api/reference/members/scalars/file-record-gid
A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
## Description
A global identifier for a FileRecord object in format of '`gid://ownright/FileRecord/ID`'.
## Used by
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# GID
Source: https://dev.ownright.com/partner-api/reference/members/scalars/gid
A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
## Description
A global identifier for an object in the format of '`gid://ownright/ObjectType/ID`'.
## Used by
* [`matter`](/partner-api/reference/queries/matters/matter) (query)
* [`matters`](/partner-api/reference/queries/matters/matters) (query)
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`stagedFileUploadCreate`](/partner-api/reference/mutations/files/staged-file-upload-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# ISO8601Date
Source: https://dev.ownright.com/partner-api/reference/members/scalars/iso8601-date
An ISO 8601-encoded date
## Description
An ISO 8601-encoded date
# ISO8601DateTime
Source: https://dev.ownright.com/partner-api/reference/members/scalars/iso8601-date-time
An ISO 8601-encoded datetime
## Description
An ISO 8601-encoded datetime
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
* [`referrals`](/partner-api/reference/queries/referrals/referrals) (query)
* [`propertyClosingReferralBulkCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create) (mutation)
* [`propertyClosingReferralCreate`](/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create) (mutation)
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`stagedFileUploadCreate`](/partner-api/reference/mutations/files/staged-file-upload-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# JSON
Source: https://dev.ownright.com/partner-api/reference/members/scalars/json
Represents untyped JSON
## Description
Represents untyped JSON
# MatterGID
Source: https://dev.ownright.com/partner-api/reference/members/scalars/matter-gid
A global identifier for a matter object (ex. Transaction) in format of 'gid://ownright/{MatterKind}/ID'.
## Description
A global identifier for a matter object (ex. Transaction) in format of '`gid://ownright/{MatterKind}/ID`'.
## Used by
* [`matter`](/partner-api/reference/queries/matters/matter) (query)
# ReferralGID
Source: https://dev.ownright.com/partner-api/reference/members/scalars/referral-gid
A global identifier for a Referral object in format of 'gid://ownright/Referral/ID'.
## Description
A global identifier for a Referral object in format of '`gid://ownright/Referral/ID`'.
## Used by
* [`referral`](/partner-api/reference/queries/referrals/referral) (query)
# Url
Source: https://dev.ownright.com/partner-api/reference/members/scalars/url
A valid URL, transported as a string.
## Description
A valid URL, transported as a string.
## Used by
* [`refinanceReferralBulkCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create) (mutation)
* [`refinanceReferralCreate`](/partner-api/reference/mutations/referrals/refinance/refinance-referral-create) (mutation)
* [`stagedFileUploadCreate`](/partner-api/reference/mutations/files/staged-file-upload-create) (mutation)
* [`statusCertificateReviewReferralBulkCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create) (mutation)
* [`statusCertificateReviewReferralCreate`](/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create) (mutation)
# Staged File Upload Create
Source: https://dev.ownright.com/partner-api/reference/mutations/files/staged-file-upload-create
Creates a staged file upload.
```graphql Request [expandable] theme={null}
mutation StagedFileUploadCreate($input: StagedFileUploadInput!) {
stagedFileUploadCreate(input: $input) {
stagedFileUpload {
signedUploadUrl
signedUploadUrlExpiryDate
file {
createdAt
filename
id
mimeType
staged
updatedAt
... on Document {
url
}
... on Image {
url
}
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": {
"filename": "document.pdf",
"mimeType": "AUDIO_M4A"
}
}
```
```json Response theme={null}
{
"data": {
"stagedFileUploadCreate": {
"stagedFileUpload": {
"signedUploadUrl": "https://example.com",
"signedUploadUrlExpiryDate": "2025-01-15T10:30:00Z",
"file": {
"createdAt": "2025-01-15T10:30:00Z",
"filename": "document.pdf",
"id": "gid://ownright/Object/1",
"mimeType": "AUDIO_M4A",
"staged": true,
"updatedAt": "2025-01-15T10:30:00Z",
"url": "https://example.com"
}
},
"userErrors": []
}
}
}
```
## Mutation field
`stagedFileUploadCreate`
### Arguments
Input required to make a staged file upload.
The name of the file that is being uploaded.
The MIME type of the file that is being uploaded.
### Return fields
The newly created staged file upload.
The file that is staged for upload.
The date the file was created.
The name of the file.
ID of the object.
The MIME type of the file.
Whether the file is staged for upload or not.
The date the file was last updated.
A signed upload URL to use when uploading file.
Date when upload URL expires.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`File`](/partner-api/reference/members/interfaces/file) (interface) β Represents a file.
* [`FileMimeType`](/partner-api/reference/members/enums/file-mime-type) (enum) β Possible MIME types for files.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`StagedFileUpload`](/partner-api/reference/members/objects/staged-file-upload) (object) β Represents a staged file upload.
* [`StagedFileUploadCreatePayload`](/partner-api/reference/members/objects/staged-file-upload-create-payload) (object) β Return type for the `stagedFileUploadCreate` mutation.
* [`StagedFileUploadCreateUserError`](/partner-api/reference/members/objects/staged-file-upload-create-user-error) (object) β An error that could occur during the execution of the `stagedFileUploadCreate` mutation.
* [`StagedFileUploadCreateUserErrorCode`](/partner-api/reference/members/enums/staged-file-upload-create-user-error-code) (enum) β Possible error codes that can be returned by StagedFileUploadCreateUserError.
* [`StagedFileUploadInput`](/partner-api/reference/members/inputs/staged-file-upload-input) (input) β Input to create a staged file upload.
* [`Url`](/partner-api/reference/members/scalars/url) (scalar) β A valid URL, transported as a string.
# Property Closing Referral Bulk Create
Source: https://dev.ownright.com/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-bulk-create
Creates multiple property closing referrals.
```graphql Request [expandable] theme={null}
mutation PropertyClosingReferralBulkCreate($input: [PropertyClosingReferralInput!]!) {
propertyClosingReferralBulkCreate(input: $input) {
referrals {
createdAt
id
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
... on PurchasePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
purchaseAmount {
amount
currencyCode
}
}
... on RefinanceReferral {
mortgageAmount {
amount
currencyCode
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
... on SalePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": [
{
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"phoneNumber": "+14165551234",
"primary": true
}
],
"customAttributes": [
{
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"files": [
{
"fileRecordId": "gid://ownright/FileRecord/1",
"tags": [
"example-tags"
]
}
],
"intentLevel": "HIGH",
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"purchasePropertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
},
"salePropertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
},
"type": "PURCHASE_PROPERTY_CLOSING"
}
]
}
```
```json Response theme={null}
{
"data": {
"propertyClosingReferralBulkCreate": {
"referrals": [
{
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
},
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
}
],
"userErrors": []
}
}
}
```
## Mutation field
`propertyClosingReferralBulkCreate`
### Arguments
Input required to create property closing referrals.
Contacts to be associated with the referral.
The email for the referral contact.
The first name for the referral contact.
The last name for the referral contact.
The phone number for the referral contact.
Whether this contact is the primary contact for the referral.
Custom attributes to be associated with the referral.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
The files to be associated with the referral.
The identifier of a staged file record to commit.
Tags to add to the committed versioned file.
The intent level of the referral.
The amount the purchase property is being purchased for.
The amount of money.
The currency of the money.
The address of the property the person is buying.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
The address of the property the person is selling.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
The type of the referral.
### Return fields
The created referrals.
The contacts for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
ID of the object.
The primary contact for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The current status of the referral.
The type of the referral.
The time the referral was updated.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`AddressInput`](/partner-api/reference/members/inputs/address-input) (input) β Input to create or update an address.
* [`Country`](/partner-api/reference/members/enums/country) (enum) β Possible countries.
* [`CurrencyCode`](/partner-api/reference/members/enums/currency-code) (enum) β Possible currency codes.
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeCreateInput`](/partner-api/reference/members/inputs/custom-attribute-create-input) (input) β Input to create a custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`Decimal`](/partner-api/reference/members/scalars/decimal) (scalar) β A signed decimal number, which supports arbitrary precision and is serialized as a string.
* [`FileBulkCommitInput`](/partner-api/reference/members/inputs/file-bulk-commit-input) (input) β Input for a file to committed as part of a bulk file commit.
* [`FileRecordGID`](/partner-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`MoneyInput`](/partner-api/reference/members/inputs/money-input) (input) β Input that represents money.
* [`PropertyClosingReferralBulkCreatePayload`](/partner-api/reference/members/objects/property-closing-referral-bulk-create-payload) (object) β Return type for the `propertyClosingReferralBulkCreate` mutation.
* [`PropertyClosingReferralBulkCreateUserError`](/partner-api/reference/members/objects/property-closing-referral-bulk-create-user-error) (object) β An error that could occur during the execution of the `propertyClosingReferralBulkCreate` mutation.
* [`PropertyClosingReferralBulkCreateUserErrorCode`](/partner-api/reference/members/enums/property-closing-referral-bulk-create-user-error-code) (enum) β Possible error codes that can be returned by PropertyClosingReferralBulkCreateUserError.
* [`PropertyClosingReferralInput`](/partner-api/reference/members/inputs/property-closing-referral-input) (input) β Input to create a property closing referral.
* [`Province`](/partner-api/reference/members/enums/province) (enum) β Possible provinces.
* [`Referral`](/partner-api/reference/members/interfaces/referral) (interface) β Represents a referral.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralContactCreateInput`](/partner-api/reference/members/inputs/referral-contact-create-input) (input) β The input to create a referral contact.
* [`ReferralIntentLevel`](/partner-api/reference/members/enums/referral-intent-level) (enum) β Possible levels of intent for a referral.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
# Property Closing Referral Create
Source: https://dev.ownright.com/partner-api/reference/mutations/referrals/property-closings/property-closing-referral-create
Creates a new property closing referral.
```graphql Request [expandable] theme={null}
mutation PropertyClosingReferralCreate($input: PropertyClosingReferralInput!) {
propertyClosingReferralCreate(input: $input) {
referral {
createdAt
id
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
... on PurchasePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
purchaseAmount {
amount
currencyCode
}
}
... on RefinanceReferral {
mortgageAmount {
amount
currencyCode
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
... on SalePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": {
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"phoneNumber": "+14165551234",
"primary": true
}
],
"customAttributes": [
{
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"files": [
{
"fileRecordId": "gid://ownright/FileRecord/1",
"tags": [
"example-tags"
]
}
],
"intentLevel": "HIGH",
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"purchasePropertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
},
"salePropertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
},
"type": "PURCHASE_PROPERTY_CLOSING"
}
}
```
```json Response theme={null}
{
"data": {
"propertyClosingReferralCreate": {
"referral": {
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
},
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
},
"userErrors": []
}
}
}
```
## Mutation field
`propertyClosingReferralCreate`
### Arguments
Input required to create a property closing referral.
Contacts to be associated with the referral.
The email for the referral contact.
The first name for the referral contact.
The last name for the referral contact.
The phone number for the referral contact.
Whether this contact is the primary contact for the referral.
Custom attributes to be associated with the referral.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
The files to be associated with the referral.
The identifier of a staged file record to commit.
Tags to add to the committed versioned file.
The intent level of the referral.
The amount the purchase property is being purchased for.
The amount of money.
The currency of the money.
The address of the property the person is buying.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
The address of the property the person is selling.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
The type of the referral.
### Return fields
The created referral.
The contacts for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
ID of the object.
The primary contact for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The current status of the referral.
The type of the referral.
The time the referral was updated.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`AddressInput`](/partner-api/reference/members/inputs/address-input) (input) β Input to create or update an address.
* [`Country`](/partner-api/reference/members/enums/country) (enum) β Possible countries.
* [`CurrencyCode`](/partner-api/reference/members/enums/currency-code) (enum) β Possible currency codes.
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeCreateInput`](/partner-api/reference/members/inputs/custom-attribute-create-input) (input) β Input to create a custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`Decimal`](/partner-api/reference/members/scalars/decimal) (scalar) β A signed decimal number, which supports arbitrary precision and is serialized as a string.
* [`FileBulkCommitInput`](/partner-api/reference/members/inputs/file-bulk-commit-input) (input) β Input for a file to committed as part of a bulk file commit.
* [`FileRecordGID`](/partner-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`MoneyInput`](/partner-api/reference/members/inputs/money-input) (input) β Input that represents money.
* [`PropertyClosingReferralCreatePayload`](/partner-api/reference/members/objects/property-closing-referral-create-payload) (object) β Return type for the `propertyClosingReferralCreate` mutation.
* [`PropertyClosingReferralCreateUserError`](/partner-api/reference/members/objects/property-closing-referral-create-user-error) (object) β An error that could occur during the execution of the `propertyClosingReferralCreate` mutation.
* [`PropertyClosingReferralCreateUserErrorCode`](/partner-api/reference/members/enums/property-closing-referral-create-user-error-code) (enum) β Possible error codes that can be returned by PropertyClosingReferralCreateUserError.
* [`PropertyClosingReferralInput`](/partner-api/reference/members/inputs/property-closing-referral-input) (input) β Input to create a property closing referral.
* [`Province`](/partner-api/reference/members/enums/province) (enum) β Possible provinces.
* [`Referral`](/partner-api/reference/members/interfaces/referral) (interface) β Represents a referral.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralContactCreateInput`](/partner-api/reference/members/inputs/referral-contact-create-input) (input) β The input to create a referral contact.
* [`ReferralIntentLevel`](/partner-api/reference/members/enums/referral-intent-level) (enum) β Possible levels of intent for a referral.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
# Refinance Referral Bulk Create
Source: https://dev.ownright.com/partner-api/reference/mutations/referrals/refinance/refinance-referral-bulk-create
Creates multiple refinance referrals.
```graphql Request [expandable] theme={null}
mutation RefinanceReferralBulkCreate($input: [RefinanceReferralInput!]!) {
refinanceReferralBulkCreate(input: $input) {
referrals {
createdAt
id
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
mortgageAmount {
amount
currencyCode
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": [
{
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"phoneNumber": "+14165551234",
"primary": true
}
],
"customAttributes": [
{
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"files": [
{
"fileRecordId": "gid://ownright/FileRecord/1",
"tags": [
"example-tags"
]
}
],
"intentLevel": "HIGH",
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
}
}
]
}
```
```json Response theme={null}
{
"data": {
"refinanceReferralBulkCreate": {
"referrals": [
{
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
}
],
"userErrors": []
}
}
}
```
## Mutation field
`refinanceReferralBulkCreate`
### Arguments
Input required to create refinance referrals.
Contacts to be associated with the referral.
The email for the referral contact.
The first name for the referral contact.
The last name for the referral contact.
The phone number for the referral contact.
Whether this contact is the primary contact for the referral.
Custom attributes to be associated with the referral.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
The files to be associated with the referral.
The identifier of a staged file record to commit.
Tags to add to the committed versioned file.
The intent level of the referral.
The amount of the new mortgage.
The amount of money.
The currency of the money.
The address of the property being refinanced.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
### Return fields
The created referrals.
The contacts for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
ID of the object.
The amount of the new mortgage involved in the refinance.
The amount of money.
The currency of the money.
The primary contact for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The address of the property that is involved in the refinance.
The city of the address.
The country of the address.
The latitude of the address.
The longitude of the address.
A link to a map with a pointer on the address's location.
The postal code of the address.
The province of the address.
The shortened title for the address.
The street name and number of the address.
The full title for the address.
The unit number, apartment number, suite number etc.
The current status of the referral.
The type of the referral.
The time the referral was updated.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`Address`](/partner-api/reference/members/objects/address) (object) β Represents an address.
* [`AddressInput`](/partner-api/reference/members/inputs/address-input) (input) β Input to create or update an address.
* [`Country`](/partner-api/reference/members/enums/country) (enum) β Possible countries.
* [`CurrencyCode`](/partner-api/reference/members/enums/currency-code) (enum) β Possible currency codes.
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeCreateInput`](/partner-api/reference/members/inputs/custom-attribute-create-input) (input) β Input to create a custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`Decimal`](/partner-api/reference/members/scalars/decimal) (scalar) β A signed decimal number, which supports arbitrary precision and is serialized as a string.
* [`FileBulkCommitInput`](/partner-api/reference/members/inputs/file-bulk-commit-input) (input) β Input for a file to committed as part of a bulk file commit.
* [`FileRecordGID`](/partner-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`ImageTransformInput`](/partner-api/reference/members/inputs/image-transform-input) (input) β Input to transform an image.
* [`Money`](/partner-api/reference/members/objects/money) (object) β Represents money.
* [`MoneyInput`](/partner-api/reference/members/inputs/money-input) (input) β Input that represents money.
* [`Province`](/partner-api/reference/members/enums/province) (enum) β Possible provinces.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralContactCreateInput`](/partner-api/reference/members/inputs/referral-contact-create-input) (input) β The input to create a referral contact.
* [`ReferralIntentLevel`](/partner-api/reference/members/enums/referral-intent-level) (enum) β Possible levels of intent for a referral.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
* [`RefinanceReferral`](/partner-api/reference/members/objects/refinance-referral) (object) β A referral for a refinance.
* [`RefinanceReferralBulkCreatePayload`](/partner-api/reference/members/objects/refinance-referral-bulk-create-payload) (object) β Return type for the `refinanceReferralBulkCreate` mutation.
* [`RefinanceReferralBulkCreateUserError`](/partner-api/reference/members/objects/refinance-referral-bulk-create-user-error) (object) β An error that could occur during the execution of the `refinanceReferralBulkCreate` mutation.
* [`RefinanceReferralBulkCreateUserErrorCode`](/partner-api/reference/members/enums/refinance-referral-bulk-create-user-error-code) (enum) β Possible error codes that can be returned by RefinanceReferralBulkCreateUserError.
* [`RefinanceReferralInput`](/partner-api/reference/members/inputs/refinance-referral-input) (input) β Input to create a refinance referral.
* [`Url`](/partner-api/reference/members/scalars/url) (scalar) β A valid URL, transported as a string.
# Refinance Referral Create
Source: https://dev.ownright.com/partner-api/reference/mutations/referrals/refinance/refinance-referral-create
Creates a new refinance referral.
```graphql Request [expandable] theme={null}
mutation RefinanceReferralCreate($input: RefinanceReferralInput!) {
refinanceReferralCreate(input: $input) {
referral {
createdAt
id
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
mortgageAmount {
amount
currencyCode
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": {
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"phoneNumber": "+14165551234",
"primary": true
}
],
"customAttributes": [
{
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"files": [
{
"fileRecordId": "gid://ownright/FileRecord/1",
"tags": [
"example-tags"
]
}
],
"intentLevel": "HIGH",
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
}
}
}
```
```json Response theme={null}
{
"data": {
"refinanceReferralCreate": {
"referral": {
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"userErrors": []
}
}
}
```
## Mutation field
`refinanceReferralCreate`
### Arguments
Input required to create a refinance referral.
Contacts to be associated with the referral.
The email for the referral contact.
The first name for the referral contact.
The last name for the referral contact.
The phone number for the referral contact.
Whether this contact is the primary contact for the referral.
Custom attributes to be associated with the referral.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
The files to be associated with the referral.
The identifier of a staged file record to commit.
Tags to add to the committed versioned file.
The intent level of the referral.
The amount of the new mortgage.
The amount of money.
The currency of the money.
The address of the property being refinanced.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
### Return fields
The created referral.
The contacts for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
ID of the object.
The amount of the new mortgage involved in the refinance.
The amount of money.
The currency of the money.
The primary contact for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The address of the property that is involved in the refinance.
The city of the address.
The country of the address.
The latitude of the address.
The longitude of the address.
A link to a map with a pointer on the address's location.
The postal code of the address.
The province of the address.
The shortened title for the address.
The street name and number of the address.
The full title for the address.
The unit number, apartment number, suite number etc.
The current status of the referral.
The type of the referral.
The time the referral was updated.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`Address`](/partner-api/reference/members/objects/address) (object) β Represents an address.
* [`AddressInput`](/partner-api/reference/members/inputs/address-input) (input) β Input to create or update an address.
* [`Country`](/partner-api/reference/members/enums/country) (enum) β Possible countries.
* [`CurrencyCode`](/partner-api/reference/members/enums/currency-code) (enum) β Possible currency codes.
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeCreateInput`](/partner-api/reference/members/inputs/custom-attribute-create-input) (input) β Input to create a custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`Decimal`](/partner-api/reference/members/scalars/decimal) (scalar) β A signed decimal number, which supports arbitrary precision and is serialized as a string.
* [`FileBulkCommitInput`](/partner-api/reference/members/inputs/file-bulk-commit-input) (input) β Input for a file to committed as part of a bulk file commit.
* [`FileRecordGID`](/partner-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`ImageTransformInput`](/partner-api/reference/members/inputs/image-transform-input) (input) β Input to transform an image.
* [`Money`](/partner-api/reference/members/objects/money) (object) β Represents money.
* [`MoneyInput`](/partner-api/reference/members/inputs/money-input) (input) β Input that represents money.
* [`Province`](/partner-api/reference/members/enums/province) (enum) β Possible provinces.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralContactCreateInput`](/partner-api/reference/members/inputs/referral-contact-create-input) (input) β The input to create a referral contact.
* [`ReferralIntentLevel`](/partner-api/reference/members/enums/referral-intent-level) (enum) β Possible levels of intent for a referral.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
* [`RefinanceReferral`](/partner-api/reference/members/objects/refinance-referral) (object) β A referral for a refinance.
* [`RefinanceReferralCreatePayload`](/partner-api/reference/members/objects/refinance-referral-create-payload) (object) β Return type for the `refinanceReferralCreate` mutation.
* [`RefinanceReferralCreateUserError`](/partner-api/reference/members/objects/refinance-referral-create-user-error) (object) β An error that could occur during the execution of the `refinanceReferralCreate` mutation.
* [`RefinanceReferralCreateUserErrorCode`](/partner-api/reference/members/enums/refinance-referral-create-user-error-code) (enum) β Possible error codes that can be returned by RefinanceReferralCreateUserError.
* [`RefinanceReferralInput`](/partner-api/reference/members/inputs/refinance-referral-input) (input) β Input to create a refinance referral.
* [`Url`](/partner-api/reference/members/scalars/url) (scalar) β A valid URL, transported as a string.
# Status Certificate Review Referral Bulk Create
Source: https://dev.ownright.com/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-bulk-create
Creates multiple status certificate review referrals.
```graphql Request [expandable] theme={null}
mutation StatusCertificateReviewReferralBulkCreate($input: [StatusCertificateReviewReferralInput!]!) {
statusCertificateReviewReferralBulkCreate(input: $input) {
referrals {
clientHasMadeOffer
createdAt
earlyDeadlineRequest
id
preferredCompletionTime
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": [
{
"clientHasMadeOffer": true,
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"phoneNumber": "+14165551234",
"primary": true
}
],
"customAttributes": [
{
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"earlyDeadlineRequest": true,
"files": [
{
"fileRecordId": "gid://ownright/FileRecord/1",
"tags": [
"example-tags"
]
}
],
"intentLevel": "HIGH",
"preferredCompletionTime": "2025-01-15T10:30:00Z",
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
}
}
]
}
```
```json Response theme={null}
{
"data": {
"statusCertificateReviewReferralBulkCreate": {
"referrals": [
{
"clientHasMadeOffer": true,
"createdAt": "2025-01-15T10:30:00Z",
"earlyDeadlineRequest": true,
"id": "gid://ownright/Object/1",
"preferredCompletionTime": "2025-01-15T10:30:00Z",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
}
],
"userErrors": []
}
}
}
```
## Mutation field
`statusCertificateReviewReferralBulkCreate`
### Arguments
Input required to create status certificate review referrals.
Whether or not the client has made an offer on the property already.
Contacts to be associated with the referral.
The email for the referral contact.
The first name for the referral contact.
The last name for the referral contact.
The phone number for the referral contact.
Whether this contact is the primary contact for the referral.
Custom attributes to be associated with the referral.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
Whether or not the status certificate review requires an earlier than normal
review.
The files to be associated with the referral.
The identifier of a staged file record to commit.
Tags to add to the committed versioned file.
The intent level of the referral.
The preferred completion time for the status certificate review.
The address of the property for which the status certificate review is being requested.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
### Return fields
The created referrals.
Indicates whether the client has made an offer on a property already or not.
The contacts for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
Indicates whether the status certificate review requires an earlier than
normal review.
ID of the object.
The preferred completion time for the status certificate review.
The primary contact for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The address of the property that is involved in the status certificate review.
The city of the address.
The country of the address.
The latitude of the address.
The longitude of the address.
A link to a map with a pointer on the address's location.
The postal code of the address.
The province of the address.
The shortened title for the address.
The street name and number of the address.
The full title for the address.
The unit number, apartment number, suite number etc.
The current status of the referral.
The type of the referral.
The time the referral was updated.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`Address`](/partner-api/reference/members/objects/address) (object) β Represents an address.
* [`AddressInput`](/partner-api/reference/members/inputs/address-input) (input) β Input to create or update an address.
* [`Country`](/partner-api/reference/members/enums/country) (enum) β Possible countries.
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeCreateInput`](/partner-api/reference/members/inputs/custom-attribute-create-input) (input) β Input to create a custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`FileBulkCommitInput`](/partner-api/reference/members/inputs/file-bulk-commit-input) (input) β Input for a file to committed as part of a bulk file commit.
* [`FileRecordGID`](/partner-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`ImageTransformInput`](/partner-api/reference/members/inputs/image-transform-input) (input) β Input to transform an image.
* [`Province`](/partner-api/reference/members/enums/province) (enum) β Possible provinces.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralContactCreateInput`](/partner-api/reference/members/inputs/referral-contact-create-input) (input) β The input to create a referral contact.
* [`ReferralIntentLevel`](/partner-api/reference/members/enums/referral-intent-level) (enum) β Possible levels of intent for a referral.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
* [`StatusCertificateReviewReferral`](/partner-api/reference/members/objects/status-certificate-review-referral) (object) β A referral for a status certificate review.
* [`StatusCertificateReviewReferralBulkCreatePayload`](/partner-api/reference/members/objects/status-certificate-review-referral-bulk-create-payload) (object) β Return type for the `statusCertificateReviewReferralBulkCreate` mutation.
* [`StatusCertificateReviewReferralBulkCreateUserError`](/partner-api/reference/members/objects/status-certificate-review-referral-bulk-create-user-error) (object) β An error that could occur during the execution of the `statusCertificateReviewReferralBulkCreate` mutation.
* [`StatusCertificateReviewReferralBulkCreateUserErrorCode`](/partner-api/reference/members/enums/status-certificate-review-referral-bulk-create-user-error-code) (enum) β Possible error codes that can be returned by StatusCertificateReviewReferralBulkCreateUserError.
* [`StatusCertificateReviewReferralInput`](/partner-api/reference/members/inputs/status-certificate-review-referral-input) (input) β Input to create a status certificate review referral.
* [`Url`](/partner-api/reference/members/scalars/url) (scalar) β A valid URL, transported as a string.
# Status Certificate Review Referral Create
Source: https://dev.ownright.com/partner-api/reference/mutations/referrals/status-certificate-review/status-certificate-review-referral-create
Creates a new status certificate review referral.
```graphql Request [expandable] theme={null}
mutation StatusCertificateReviewReferralCreate($input: StatusCertificateReviewReferralInput!) {
statusCertificateReviewReferralCreate(input: $input) {
referral {
clientHasMadeOffer
createdAt
earlyDeadlineRequest
id
preferredCompletionTime
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
userErrors {
code
field
message
}
}
}
```
```graphql Variables theme={null}
{
"input": {
"clientHasMadeOffer": true,
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"lastName": "Doe",
"phoneNumber": "+14165551234",
"primary": true
}
],
"customAttributes": [
{
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"earlyDeadlineRequest": true,
"files": [
{
"fileRecordId": "gid://ownright/FileRecord/1",
"tags": [
"example-tags"
]
}
],
"intentLevel": "HIGH",
"preferredCompletionTime": "2025-01-15T10:30:00Z",
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"street": "123 Main St",
"unitNumber": "Suite 100"
}
}
}
```
```json Response theme={null}
{
"data": {
"statusCertificateReviewReferralCreate": {
"referral": {
"clientHasMadeOffer": true,
"createdAt": "2025-01-15T10:30:00Z",
"earlyDeadlineRequest": true,
"id": "gid://ownright/Object/1",
"preferredCompletionTime": "2025-01-15T10:30:00Z",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"userErrors": []
}
}
}
```
## Mutation field
`statusCertificateReviewReferralCreate`
### Arguments
Input required to create a status certificate review referral.
Whether or not the client has made an offer on the property already.
Contacts to be associated with the referral.
The email for the referral contact.
The first name for the referral contact.
The last name for the referral contact.
The phone number for the referral contact.
Whether this contact is the primary contact for the referral.
Custom attributes to be associated with the referral.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
Whether or not the status certificate review requires an earlier than normal
review.
The files to be associated with the referral.
The identifier of a staged file record to commit.
Tags to add to the committed versioned file.
The intent level of the referral.
The preferred completion time for the status certificate review.
The address of the property for which the status certificate review is being requested.
The city of the address.
The country of the address.
The postal code of the address.
The province of the address.
The street name and number of the address.
The unit number, suite number, apartment number, etc. of the address.
### Return fields
The created referral.
Indicates whether the client has made an offer on a property already or not.
The contacts for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
Indicates whether the status certificate review requires an earlier than
normal review.
ID of the object.
The preferred completion time for the status certificate review.
The primary contact for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The address of the property that is involved in the status certificate review.
The city of the address.
The country of the address.
The latitude of the address.
The longitude of the address.
A link to a map with a pointer on the address's location.
The postal code of the address.
The province of the address.
The shortened title for the address.
The street name and number of the address.
The full title for the address.
The unit number, apartment number, suite number etc.
The current status of the referral.
The type of the referral.
The time the referral was updated.
List of errors that occurred while executing the mutation.
Error code associated with the error.
The path to the input field that caused the error.
A description of the error.
### Types
* [`Address`](/partner-api/reference/members/objects/address) (object) β Represents an address.
* [`AddressInput`](/partner-api/reference/members/inputs/address-input) (input) β Input to create or update an address.
* [`Country`](/partner-api/reference/members/enums/country) (enum) β Possible countries.
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeCreateInput`](/partner-api/reference/members/inputs/custom-attribute-create-input) (input) β Input to create a custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`FileBulkCommitInput`](/partner-api/reference/members/inputs/file-bulk-commit-input) (input) β Input for a file to committed as part of a bulk file commit.
* [`FileRecordGID`](/partner-api/reference/members/scalars/file-record-gid) (scalar) β A global identifier for a FileRecord object in format of 'gid://ownright/FileRecord/ID'.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`ImageTransformInput`](/partner-api/reference/members/inputs/image-transform-input) (input) β Input to transform an image.
* [`Province`](/partner-api/reference/members/enums/province) (enum) β Possible provinces.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralContactCreateInput`](/partner-api/reference/members/inputs/referral-contact-create-input) (input) β The input to create a referral contact.
* [`ReferralIntentLevel`](/partner-api/reference/members/enums/referral-intent-level) (enum) β Possible levels of intent for a referral.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
* [`StatusCertificateReviewReferral`](/partner-api/reference/members/objects/status-certificate-review-referral) (object) β A referral for a status certificate review.
* [`StatusCertificateReviewReferralCreatePayload`](/partner-api/reference/members/objects/status-certificate-review-referral-create-payload) (object) β Return type for the `statusCertificateReviewReferralCreate` mutation.
* [`StatusCertificateReviewReferralCreateUserError`](/partner-api/reference/members/objects/status-certificate-review-referral-create-user-error) (object) β An error that could occur during the execution of the `statusCertificateReviewReferralCreate` mutation.
* [`StatusCertificateReviewReferralCreateUserErrorCode`](/partner-api/reference/members/enums/status-certificate-review-referral-create-user-error-code) (enum) β Possible error codes that can be returned by StatusCertificateReviewReferralCreateUserError.
* [`StatusCertificateReviewReferralInput`](/partner-api/reference/members/inputs/status-certificate-review-referral-input) (input) β Input to create a status certificate review referral.
* [`Url`](/partner-api/reference/members/scalars/url) (scalar) β A valid URL, transported as a string.
# Matter
Source: https://dev.ownright.com/partner-api/reference/queries/matters/matter
Returns a matter.
```graphql Request [expandable] theme={null}
query GetMatter($id: MatterGID!) {
matter(id: $id) {
id
shortId
test
currentUserMatterBusinessContact {
id
partnerAccountLinked
partnerNotificationsMuted
contact {
email
faxNumber
firstName
frontUserIdHash
fullName
id
lastName
notificationDeliveryMechanisms
phoneNumber
}
}
... on PurchaseTransaction {
agreementDate
closingDate
depositAmount {
amount
currencyCode
}
milestones {
completedAt
description
handle
oneliner
status
title
}
property {
id
type
address {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
purchaseAmount {
amount
currencyCode
}
representedSide {
name
corporations {
id
name
refinanceOwnershipStatus
}
participants {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
corporations {
id
name
refinanceOwnershipStatus
}
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
}
status {
state
... on PurchaseTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
... on SaleTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
}
type
}
... on Refinance {
closingDate
commitmentDate
corporations {
id
name
refinanceOwnershipStatus
}
loans {
id
type
lenders {
id
logoImageUrl
name
websiteUrl
}
principalAmount {
amount
currencyCode
}
}
milestones {
completedAt
description
handle
oneliner
status
title
}
participants {
corporationSigningOfficer
firstName
fullName
id
lastName
ownershipStatus
primaryClient
representation
represented
representsPrimaryClient
traits
corporations {
id
name
refinanceOwnershipStatus
}
representees {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
corporations {
id
name
refinanceOwnershipStatus
}
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
representors {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
corporations {
id
name
refinanceOwnershipStatus
}
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
}
property {
id
type
address {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
... on RefinanceClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
}
}
}
... on SaleTransaction {
agreementDate
closingDate
depositAmount {
amount
currencyCode
}
milestones {
completedAt
description
handle
oneliner
status
title
}
property {
id
type
address {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
representedSide {
name
corporations {
id
name
refinanceOwnershipStatus
}
participants {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
corporations {
id
name
refinanceOwnershipStatus
}
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
}
saleAmount {
amount
currencyCode
}
status {
state
... on PurchaseTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
... on SaleTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
}
type
}
}
}
```
```graphql Variables theme={null}
{
"id": "gid://ownright/Matter/1"
}
```
```json Response theme={null}
{
"data": {
"matter": {
"id": "gid://ownright/Object/1",
"shortId": "ABC-123",
"test": true,
"currentUserMatterBusinessContact": {
"id": "gid://ownright/Object/1",
"partnerAccountLinked": true,
"partnerNotificationsMuted": true,
"contact": {
"email": "jane@example.com",
"faxNumber": "+14165551234",
"firstName": "Jane",
"frontUserIdHash": "example-front-user-id-hash",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"notificationDeliveryMechanisms": [
"EMAIL"
],
"phoneNumber": "+14165551234"
}
},
"agreementDate": "2025-06-15",
"closingDate": "2025-06-15",
"depositAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"milestones": [
{
"completedAt": "2025-01-15T10:30:00Z",
"description": "example-description",
"handle": "ADJUSTMENTS_CONFIRMED",
"oneliner": "example-oneliner",
"status": "COMPLETED",
"title": "123 Main St, Toronto"
}
],
"property": {
"id": "gid://ownright/Object/1",
"type": "CONDO",
"address": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"representedSide": {
"name": "PURCHASER",
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"participants": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"transactionSide": "PURCHASER"
}
]
},
"status": {
"state": "ABANDONED",
"closingActionItems": [
{
"completedAt": "2025-01-15T10:30:00Z",
"description": "example-description",
"expectedBy": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"state": "COMPLETED",
"title": "123 Main St, Toronto"
}
],
"closingDateAmended": true,
"closingStatus": "ACTIVE"
},
"type": "PURCHASE",
"commitmentDate": "2025-06-15",
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"loans": [
{
"id": "gid://ownright/Object/1",
"type": "BRIDGE_LOAN",
"lenders": [
{
"id": "gid://ownright/Object/1",
"logoImageUrl": "https://example.com",
"name": "example-name",
"websiteUrl": "https://example.com"
}
],
"principalAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
}
],
"participants": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"representees": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"transactionSide": "PURCHASER"
}
],
"representors": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"transactionSide": "PURCHASER"
}
]
}
],
"saleAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
}
}
}
```
## Query field
`matter`
### Arguments
The identifier of the matter to find.
### Return fields
Returns a matter.
The currently authenticated matter business contact information (if any).
The contact for the business.
ID of the object.
Whether or not the contact has a partner account linked.
Whether the partner has muted notifications for the matter or not.
ID of the object.
The matter's short identifier.
Whether the matter is a test matter or not.
### Types
* [`BusinessContact`](/partner-api/reference/members/objects/business-contact) (object) β A business contact.
* [`E164PhoneNumber`](/partner-api/reference/members/scalars/e164-phone-number) (scalar) β A valid phone number string in the E.164 format.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`Matter`](/partner-api/reference/members/interfaces/matter) (interface) β Represents a matter.
* [`MatterBusinessContact`](/partner-api/reference/members/objects/matter-business-contact) (object) β A business contact that is associated with a matter.
* [`MatterGID`](/partner-api/reference/members/scalars/matter-gid) (scalar) β A global identifier for a matter object (ex. Transaction) in format of 'gid://ownright//ID'.
* [`NotificationDeliveryMechanism`](/partner-api/reference/members/enums/notification-delivery-mechanism) (enum) β Possible types of delivery mechanisms to deliver a notification.
# Matters
Source: https://dev.ownright.com/partner-api/reference/queries/matters/matters
Returns all matters the business contact is involved in.
```graphql Request [expandable] theme={null}
query GetMatters($after: String, $before: String, $first: Int, $last: Int) {
matters(after: $after, before: $before, first: $first, last: $last) {
nodes {
id
shortId
test
currentUserMatterBusinessContact {
id
partnerAccountLinked
partnerNotificationsMuted
contact {
email
faxNumber
firstName
frontUserIdHash
fullName
id
lastName
notificationDeliveryMechanisms
phoneNumber
}
}
... on PurchaseTransaction {
agreementDate
closingDate
depositAmount {
amount
currencyCode
}
milestones {
completedAt
description
handle
oneliner
status
title
}
property {
id
type
address {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
purchaseAmount {
amount
currencyCode
}
representedSide {
name
corporations {
id
name
refinanceOwnershipStatus
}
participants {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
}
status {
state
... on PurchaseTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
... on SaleTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
}
type
}
... on Refinance {
closingDate
commitmentDate
corporations {
id
name
refinanceOwnershipStatus
}
loans {
id
type
lenders {
id
logoImageUrl
name
websiteUrl
}
principalAmount {
amount
currencyCode
}
}
milestones {
completedAt
description
handle
oneliner
status
title
}
participants {
corporationSigningOfficer
firstName
fullName
id
lastName
ownershipStatus
primaryClient
representation
represented
representsPrimaryClient
traits
corporations {
id
name
refinanceOwnershipStatus
}
representees {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
representors {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
}
property {
id
type
address {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
status {
state
... on RefinanceClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
}
}
}
... on SaleTransaction {
agreementDate
closingDate
depositAmount {
amount
currencyCode
}
milestones {
completedAt
description
handle
oneliner
status
title
}
property {
id
type
address {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
representedSide {
name
corporations {
id
name
refinanceOwnershipStatus
}
participants {
corporationSigningOfficer
firstName
fullName
id
lastName
primaryClient
representation
represented
representsPrimaryClient
traits
... on RefinanceParticipant {
ownershipStatus
}
... on TransactionParticipant {
transactionSide
}
}
}
saleAmount {
amount
currencyCode
}
status {
state
... on PurchaseTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
... on SaleTransactionClosingInProgressStatus {
closingActionItems {
completedAt
description
expectedBy
id
state
title
}
closingDateAmended
closingStatus
}
}
type
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
```
```graphql Variables theme={null}
{
"after": "example-after",
"before": "example-before",
"first": 10,
"last": 10
}
```
```json Response theme={null}
{
"data": {
"matters": {
"nodes": [
{
"id": "gid://ownright/Object/1",
"shortId": "ABC-123",
"test": true,
"currentUserMatterBusinessContact": {
"id": "gid://ownright/Object/1",
"partnerAccountLinked": true,
"partnerNotificationsMuted": true,
"contact": {
"email": "jane@example.com",
"faxNumber": "+14165551234",
"firstName": "Jane",
"frontUserIdHash": "example-front-user-id-hash",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"notificationDeliveryMechanisms": [
"EMAIL"
],
"phoneNumber": "+14165551234"
}
},
"agreementDate": "2025-06-15",
"closingDate": "2025-06-15",
"depositAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"milestones": [
{
"completedAt": "2025-01-15T10:30:00Z",
"description": "example-description",
"handle": "ADJUSTMENTS_CONFIRMED",
"oneliner": "example-oneliner",
"status": "COMPLETED",
"title": "123 Main St, Toronto"
}
],
"property": {
"id": "gid://ownright/Object/1",
"type": "CONDO",
"address": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
}
},
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"representedSide": {
"name": "PURCHASER",
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"participants": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"transactionSide": "PURCHASER"
}
]
},
"status": {
"state": "ABANDONED",
"closingActionItems": [
{
"completedAt": "2025-01-15T10:30:00Z",
"description": "example-description",
"expectedBy": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"state": "COMPLETED",
"title": "123 Main St, Toronto"
}
],
"closingDateAmended": true,
"closingStatus": "ACTIVE"
},
"type": "PURCHASE",
"commitmentDate": "2025-06-15",
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"loans": [
{
"id": "gid://ownright/Object/1",
"type": "BRIDGE_LOAN",
"lenders": [
{
"id": "gid://ownright/Object/1",
"logoImageUrl": "https://example.com",
"name": "example-name",
"websiteUrl": "https://example.com"
}
],
"principalAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
}
],
"participants": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"corporations": [
{
"id": "gid://ownright/Object/1",
"name": "example-name",
"refinanceOwnershipStatus": "BEING_REMOVED_FROM_TITLE"
}
],
"representees": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"transactionSide": "PURCHASER"
}
],
"representors": [
{
"corporationSigningOfficer": true,
"firstName": "Jane",
"fullName": "example-full-name",
"id": "gid://ownright/Object/1",
"lastName": "Doe",
"primaryClient": true,
"representation": "ESTATE_TRUSTEE",
"represented": true,
"representsPrimaryClient": true,
"traits": [
"BORROWER"
],
"ownershipStatus": "BEING_REMOVED_FROM_TITLE",
"transactionSide": "PURCHASER"
}
]
}
],
"saleAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
}
],
"pageInfo": {
"hasNextPage": true,
"endCursor": "cursor_abc123"
}
}
}
}
```
## Query field
`matters`
### Arguments
Returns the elements in the list that come after the specified cursor.
Returns the elements in the list that come before the specified cursor.
Returns the first *n* elements from the list.
Returns the last *n* elements from the list.
### Return fields
Returns all matters the business contact is involved in.
A list of edges.
A cursor for use in pagination.
The item at the end of the edge.
A list of nodes.
The currently authenticated matter business contact information (if any).
ID of the object.
The matter's short identifier.
Whether the matter is a test matter or not.
Information to aid in pagination.
When paginating forwards, the cursor to continue.
When paginating forwards, are there more items?
When paginating backwards, are there more items?
When paginating backwards, the cursor to continue.
### Types
* [`BusinessContact`](/partner-api/reference/members/objects/business-contact) (object) β A business contact.
* [`E164PhoneNumber`](/partner-api/reference/members/scalars/e164-phone-number) (scalar) β A valid phone number string in the E.164 format.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`Matter`](/partner-api/reference/members/interfaces/matter) (interface) β Represents a matter.
* [`MatterBusinessContact`](/partner-api/reference/members/objects/matter-business-contact) (object) β A business contact that is associated with a matter.
* [`MatterConnection`](/partner-api/reference/members/objects/matter-connection) (object) β The connection type for Matter.
* [`MatterEdge`](/partner-api/reference/members/objects/matter-edge) (object) β An edge in a connection.
* [`NotificationDeliveryMechanism`](/partner-api/reference/members/enums/notification-delivery-mechanism) (enum) β Possible types of delivery mechanisms to deliver a notification.
* [`PageInfo`](/partner-api/reference/members/objects/page-info) (object) β Information about pagination in a connection.
# Referral
Source: https://dev.ownright.com/partner-api/reference/queries/referrals/referral
Returns a referral.
```graphql Request [expandable] theme={null}
query GetReferral($id: ReferralGID!) {
referral(id: $id) {
createdAt
id
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
... on PurchasePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
purchaseAmount {
amount
currencyCode
}
}
... on RefinanceReferral {
mortgageAmount {
amount
currencyCode
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
... on SalePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
}
}
```
```graphql Variables theme={null}
{
"id": "gid://ownright/Referral/1"
}
```
```json Response theme={null}
{
"data": {
"referral": {
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
},
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
}
}
}
```
## Query field
`referral`
### Arguments
The identifier of the referral to find.
### Return fields
Returns a referral.
The contacts for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The key of the custom attribute.
The type of the custom attribute.
The value of the custom attribute.
ID of the object.
The primary contact for the referral.
The email of the contact.
The first name of the contact.
ID of the object.
Whether the contact is the primary contact.
The last name of the contact.
The phone number of the contact.
The current status of the referral.
The type of the referral.
The time the referral was updated.
### Types
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`Referral`](/partner-api/reference/members/interfaces/referral) (interface) β Represents a referral.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralGID`](/partner-api/reference/members/scalars/referral-gid) (scalar) β A global identifier for a Referral object in format of 'gid://ownright/Referral/ID'.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
# Referrals
Source: https://dev.ownright.com/partner-api/reference/queries/referrals/referrals
Returns all referrals the business contact is involved in.
```graphql Request [expandable] theme={null}
query GetReferrals($after: String, $before: String, $first: Int, $last: Int) {
referrals(after: $after, before: $before, first: $first, last: $last) {
nodes {
createdAt
id
status
type
updatedAt
contacts {
email
firstName
id
isPrimary
lastName
phoneNumber
}
customAttributes {
id
key
type
value
}
primaryContact {
email
firstName
id
isPrimary
lastName
phoneNumber
}
... on PurchasePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
purchaseAmount {
amount
currencyCode
}
}
... on RefinanceReferral {
mortgageAmount {
amount
currencyCode
}
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
... on SalePropertyClosingReferral {
propertyAddress {
city
country
latitude
longitude
mapImageUrl
postalCode
province
shortTitle
street
title
unitNumber
}
}
}
pageInfo {
hasNextPage
endCursor
}
}
}
```
```graphql Variables theme={null}
{
"after": "example-after",
"before": "example-before",
"first": 10,
"last": 10
}
```
```json Response theme={null}
{
"data": {
"referrals": {
"nodes": [
{
"createdAt": "2025-01-15T10:30:00Z",
"id": "gid://ownright/Object/1",
"status": "CONVERTED",
"type": "PURCHASE_PROPERTY_CLOSING",
"updatedAt": "2025-01-15T10:30:00Z",
"contacts": [
{
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
}
],
"customAttributes": [
{
"id": "gid://ownright/Object/1",
"key": "example-key",
"type": "BOOLEAN",
"value": "example-value"
}
],
"primaryContact": {
"email": "jane@example.com",
"firstName": "Jane",
"id": "gid://ownright/Object/1",
"isPrimary": true,
"lastName": "Doe",
"phoneNumber": "+14165551234"
},
"propertyAddress": {
"city": "Toronto",
"country": "CANADA",
"latitude": 1,
"longitude": 1,
"mapImageUrl": "https://example.com",
"postalCode": "M5V 1A1",
"province": "ALBERTA",
"shortTitle": "123 Main St, Toronto",
"street": "123 Main St",
"title": "123 Main St, Toronto",
"unitNumber": "Suite 100"
},
"purchaseAmount": {
"amount": "100.00",
"currencyCode": "CAD"
},
"mortgageAmount": {
"amount": "100.00",
"currencyCode": "CAD"
}
}
],
"pageInfo": {
"hasNextPage": true,
"endCursor": "cursor_abc123"
}
}
}
}
```
## Query field
`referrals`
### Arguments
Returns the elements in the list that come after the specified cursor.
Returns the elements in the list that come before the specified cursor.
Returns the first *n* elements from the list.
Returns the last *n* elements from the list.
### Return fields
Returns all referrals the business contact is involved in.
A list of edges.
A cursor for use in pagination.
The item at the end of the edge.
A list of nodes.
The contacts for the referral.
The time the referral was created.
The custom attributes for the referral.
ID of the object.
The primary contact for the referral.
The current status of the referral.
The type of the referral.
The time the referral was updated.
Information to aid in pagination.
When paginating forwards, the cursor to continue.
When paginating forwards, are there more items?
When paginating backwards, are there more items?
When paginating backwards, the cursor to continue.
### Types
* [`CustomAttribute`](/partner-api/reference/members/objects/custom-attribute) (object) β A custom attribute.
* [`CustomAttributeType`](/partner-api/reference/members/enums/custom-attribute-type) (enum) β Possible custom attribute types.
* [`GID`](/partner-api/reference/members/scalars/gid) (scalar) β A global identifier for an object in the format of 'gid://ownright/ObjectType/ID'.
* [`ISO8601DateTime`](/partner-api/reference/members/scalars/iso8601-date-time) (scalar) β An ISO 8601-encoded datetime
* [`PageInfo`](/partner-api/reference/members/objects/page-info) (object) β Information about pagination in a connection.
* [`Referral`](/partner-api/reference/members/interfaces/referral) (interface) β Represents a referral.
* [`ReferralConnection`](/partner-api/reference/members/objects/referral-connection) (object) β The connection type for Referral.
* [`ReferralContact`](/partner-api/reference/members/objects/referral-contact) (object) β A contact for a referral.
* [`ReferralEdge`](/partner-api/reference/members/objects/referral-edge) (object) β An edge in a connection.
* [`ReferralStatus`](/partner-api/reference/members/enums/referral-status) (enum) β Possible statuses for referrals.
* [`ReferralType`](/partner-api/reference/members/enums/referral-type) (enum) β Possible types of referrals.
# Event list
Source: https://dev.ownright.com/partner-api/reference/webhooks/event-list
A complete list of the webhook events that are supported
Weβre actively working on expanding our webhook documentation β check back
soon or reach out to [developers@ownright.com](mailto:developers@ownright.com) if you need help in the meantime.
# Create
Source: https://dev.ownright.com/partner-api/reference/webhooks/webhook-subscriptions/create-webhook-subscription
Reference for creating a webhook subscription
Weβre actively working on expanding our webhook documentation β check back
soon or reach out to [developers@ownright.com](mailto:developers@ownright.com) if you need help in the meantime.
# Delete
Source: https://dev.ownright.com/partner-api/reference/webhooks/webhook-subscriptions/delete-webhook-subscription
Reference for deleting a webhook subscription
Weβre actively working on expanding our webhook documentation β check back
soon or reach out to [developers@ownright.com](mailto:developers@ownright.com) if you need help in the meantime.
# Update
Source: https://dev.ownright.com/partner-api/reference/webhooks/webhook-subscriptions/update-webhook-subscription
Reference for updating a webhook subscription
Weβre actively working on expanding our webhook documentation β check back
soon or reach out to [developers@ownright.com](mailto:developers@ownright.com) if you need help in the meantime.
# Support and feedback
Source: https://dev.ownright.com/support-feedback
We're here to help and to listen to your feedback
Weβre here to help you build a smooth and reliable integration with the
Ownright Developer Platform. Whether youβre setting up your first referral flow or
debugging a webhook, we want to ensure you get the support you need.
## π Technical support
If you run into issues or have questions about any of our APIs, our team is available to help.
- **Email support**: [developers@ownright.com](mailto:developers@ownright.com)
-
**Response time**: We aim to respond to partner technical requests within 1
business day
When reaching out, please include:
- A clear description of the issue
- Any relevant request IDs, referral or matter IDs
- Timestamps or logs (especially for webhook troubleshooting)
- Screenshots or API payloads are helpful
## π Feedback and feature requests
Weβre actively evolving the Developer Platform and would love your input.
If there are features youβd like to see β such as:
- Additional webhook events
- New mutation or query capabilities
- Sandbox support
- Better observability or retry tools
Please let us know at [developers@ownright.com](mailto:developers@ownright.com) or through your direct contact if you have one.
## π’ Stay updated
To stay informed about changes to the platform:
-
Check the changelog for your API regularly for updates, enhancements, and
deprecations.
-
Weβll notify all registered partners via email of major updates or breaking
changes.