> ## Documentation Index
> Fetch the complete documentation index at: https://docs.easystreetoffers.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Buyer Quickstart

> Make cash offers in under 10 minutes

## Accessing your Opportunities

During the discovery calls, we should have set up your customized access based on your use case, buy boxes, and other requirements. To view your current opportunities,
you can view the list of our active cash offer requests ("offer requests") by getting the `/offer-requests` endpoint:

```sh theme={null}
curl --request GET \
  --url https://v2.easystreetoffers.com/api/v2/offer-requests \
  --header 'Authorization: <api-key>'
```

<Note>
  You can make this call and view response payload directly in our
  [playground](/api-reference/endpoint/get-offer-requests)
</Note>

You will get something like this:

```json theme={null}
[
    {
        "request": {
            "offer_request_id": 188,
            "offer_requested_at": "2024-05-22T21:52:19.588454+00:00",
            "offer_request_asking": 420000,
            "offer_request_status": "receiving_offers"
        },
        "property": {
            "City": "Mesa",
            "sl_id": "1",
            "ListPrice": 420000,
            "MlsStatus": "Active",
            "YearBuilt": 1998,
            "LivingArea": 1388,
            "PostalCode": "85207",
            "StreetName": "E Contessa St",
            "cbsa_title": "Phoenix-Mesa-Chandler, AZ",
            "updated_at": "2024-05-22T21:52:19.367658+00:00",
            "inputted_at": "2024-05-22T21:52:19.367658+00:00",
            "StreetNumber": "11538",
            "BathroomsFull": 3,
            "BedroomsTotal": 2,
            "CountyOrParish": "Mesa",
            "StateOrProvince": "AZ",
            "UnparsedAddress": "11538 E Contessa St",
            "ListAgentFullName": "VREI TEST",
            "LotSizeSquareFeet": 5258,
            "inventory_property_id": 250
        },
        "media": [
            "https://picsum.photos/200"
        ]
    },
  ...
  ]
```

Fields named with Pascal Case convention follow the [RESO 2.0](https://ddwiki.reso.org/display/DDW20/Data+Dictionary+2.0+Wiki) standard. Because we have 100+ fields per property, we've hidden the fields with null as values.
To view a list of all possible return fields, please visit our [API Reference](/api-reference/endpoint/get-offer-requests).

## Making a cash offer

The `offer_request_id` uniquely identifies a cash offer request. To make a cash offer, you can post to the `/offers` endpoint:

```sh theme={null}
curl --request POST \
  --url https://v2.easystreetoffers.com/api/v2/offers \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '{
    "offer_request_id": 2639,
    "created_at": "2024-08-1 14:21:01.61138+00",
    "offer_amount": 500000,
    "buyer_pays_buyer_broker_commission": false,
    "buyer_pays_listing_broker_commission": false,
    "offer_expires": "2024-05-20 14:19:59.057+00",
    "offer_memo": "I'\''m interested in buying your property",
    "offer_status": "active",
    "additional_terms": null,
    "earnest_money": 40000,
    "em_hard_post_inspection": true,
    "lease_back": true,
    "lease_back_period": 90,
    "flexible_closing": true,
    "post_possession": true,
    "waive_warranty": true,
    "inspection_period": 10,
    "post_possession_period": 90,
    "offer_is_counter_offer": null,
    "offer_decided_at": null,
    "test": true
}'
```

In the above offer, you are making a `$500,000` offer on the property with `offer_request_id` 2639.
Your our specifies that the seller should pay **both** the buyer and listing broker commissions.
You are willing to pay **\$40,000** in earnest money to lock in the deal.

<Note>
  Note the `"test":true` field. This offer will be sent to the void and not
  visible to our agents, so be sure to remove it or set it as false in
  production
</Note>

## Configure a webhook

We will send a POST request to the webhook URL you provide when you receive a decision on your offer. You can create one by posting:

```sh theme={null}
curl --request POST \
  --url https://v2.easystreetoffers.com/api/v2/wh \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '{
  "url": "https://example.com/webhook"
}'
```

If the listing agent decides on the cash offer, you will receive an `UPDATE` webhook to your callback url.
Otherwise, if an agent counters your offer, you will receive an `INSERT` webhook with a `counter-offer` payload.

## Receiving offer updates

```json theme={null}
{
  "event": "offer_updated",
  "offer_request_id": 188,
  "offer_id": 235,
  "offer_status": "offer_accepted"
}
```

View all the possible webhook payload here.

If an agent accepts your offer, our acquistion team will contact you to move this deal forward.

## Viewing your cash offers

You can view your cash offers by getting the `/offers` endpoint:

```sh theme={null}
curl --request GET \
  --url https://v2.easystreetoffers.com/api/v2/offers \
  --header 'Authorization: <api-key>'
```

## Buyer Lead Submit

To create a lead from buyer platform, send a POST request to the `/api/v2/buyer/lead` endpoint with the following information: first name, last name, email, phone number, property address (including `offer_request_id` and `inventory_property_id`). The `offer_request_id` and `inventory_property_id` can be obtained from the `/api/v2/offer-requests` API.

```sh theme={null}
curl --request POST \
  --url https://v2.easystreetoffers.com/api/v2/buyer/lead \
  --header 'Authorization: <api-key>' \
  --header 'Content-Type: application/json' \
  --data '{
      "first_name": "My lead",
      "last_name": "My",
      "primary_email": "lead@yourdomain.com",
      "primary_phone": "+1111111",
      "property_address": {
        "offer_request_id": 56641,
        "inventory_property_id": 116775
      }
}'
```

<Note>Ready? Head to our API Reference for full range of functions.</Note>
