Download OpenAPI specification:Download
The SkySlope Offers API is organized around REST. Our API has predictable resource-oriented URLs, accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.
The SkySlope Offers API uses OAuth 2.0 client credentials flow to obtain an access token that can be used to authenticate subsequent API requests.
To obtain an access token, see this endpoint.
Authentication to the API is performed by including your access token in the Authorization header of your API requests with the Bearer authentication scheme.
All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.
Retrieve the ten listings owned by this agent, that have most recently received offers. Sorted descending by offer submission date (most recent first).
| agentId | string The agent id used to filter the listings. Contact SkySlope for your MLS field mapping. |
| startDate | Date
Optional parameter in ISO format If If there exists listings with offers newer than |
| Authorization required | string
"ACCESS_TOKEN" is the token returned from /ext/token |
curl -X GET "https://offers.skyslope.com/offers-api/ext/agent/:agentId/listings?startDate=2023-01-01" -H "Authorization: Bearer ACCESS_TOKEN"
{- "hasNewOffers": true,
- "listings": [
- {
- "fileId": 12345,
- "listingName": "property X",
- "offersCount": 3,
- "hasNewOffers": true,
- "latestOfferDate": "2023-06-27T14:58:25.439Z",
}, - {
- "fileId": 67890,
- "listingName": "property Y",
- "offersCount": 4,
- "hasNewOffers": false,
- "latestOfferDate": "2022-06-27T14:58:25.439Z",
}
]
}Retrieves the offer details given the offer identifier
| offerId required | String Offer Identifier |
| Authorization required | string
"ACCESS_TOKEN" is the token returned from /ext/token |
curl -X GET "https://offers.skyslope.com/offers-api/ext/offer/64510abe7d7e1f1dfac47393" -H "Authorization: Bearer ACCESS_TOKEN"
{- "OfferId": "64510abe7d7e1f1dfac47393",
- "OfferOriginatingSystemId": "SkySlope",
- "OfferSourceSystemId": "SkySlope",
- "ModificationTimestamp": "2023-05-02T13:18:21.439Z",
- "OfferSubmissionDate": "2023-05-01T13:18:21.439Z",
- "OfferProperty": {
- "OfferAgentId": "Agent123",
- "ListingId": "Listing456",
- "ListingKey": "Key789",
- "Market": "Residential",
- "PropertyType": "Single Family",
- "ListingStatus": "Active",
- "StreetNumber": "1266",
- "StreetName": "Ocala",
- "UnitNumber": "Apt 4",
- "City": "TALLAHASSEE",
- "StateOrProvince": "FL",
- "PostalCode": "32304",
- "CountyOrParish": "Leon",
- "ParcelNumber": "Parcel123"
}, - "OfferTerms": {
- "OfferPrice": 250000,
- "OfferStatus": "Submitted",
- "CreditAtClosing": "To be determined",
- "EarnestMoney": 1000,
- "OfferClosingDate": "2023-06-01T04:00:00.000Z",
- "OfferClosingDays": 30,
- "Deposit": 3000,
- "OfferExpirationDate": "2023-05-15T04:00:00.000Z",
- "AdditionalTerms": "Small pets allowed",
- "Contingencies": [ ],
- "EscalationClause": "None",
- "HomeWarranty": "Seller",
- "IncreasedDeposit": 500,
- "BuyerFinancing": "Conventional",
- "OfferVersionNumber": 1
}
}Retrieve all offers for a given date range.
| startDate required | Date
The start of the date range in UTC format |
| endDate | Date
The end of the date range in UTC format. Max date range is 31 days. When larger range is requested, result for 31 days is returned. |
| page | Number Page number |
| pageSize | Number Page size |
| Authorization required | string
"ACCESS_TOKEN" is the token returned from /ext/token |
curl -X GET "https://offers.skyslope.com/offers-api/ext/offers/?startDate=2023-01-01&endDate=2023-01-31" -H "Authorization: Bearer ACCESS_TOKEN"
[- {
- "OfferId": "64510abe7d7e1f1dfac47393",
- "OfferOriginatingSystemId": "SkySlope",
- "OfferSourceSystemId": "SkySlope",
- "ModificationTimestamp": "2023-05-02T13:18:21.439Z",
- "OfferSubmissionDate": "2023-05-01T13:18:21.439Z",
- "OfferProperty": {
- "OfferAgentId": "Agent123",
- "ListingId": "Listing456",
- "ListingKey": "Key789",
- "Market": "Residential",
- "PropertyType": "Single Family",
- "ListingStatus": "Active",
- "StreetNumber": "1266",
- "StreetName": "Ocala",
- "UnitNumber": "Apt 4",
- "City": "TALLAHASSEE",
- "StateOrProvince": "FL",
- "PostalCode": "32304",
- "CountyOrParish": "Leon",
- "ParcelNumber": "Parcel123"
}, - "OfferTerms": {
- "OfferPrice": 250000,
- "OfferStatus": "Submitted",
- "CreditAtClosing": "To be determined",
- "EarnestMoney": 1000,
- "OfferClosingDate": "2023-06-01T04:00:00.000Z",
- "OfferClosingDays": 30,
- "Deposit": 3000,
- "OfferExpirationDate": "2023-05-15T04:00:00.000Z",
- "AdditionalTerms": "Small pets allowed",
- "Contingencies": [ ],
- "EscalationClause": "None",
- "HomeWarranty": "Seller",
- "IncreasedDeposit": 500,
- "BuyerFinancing": "Conventional",
- "OfferVersionNumber": 1
}
}
]Retrieves a count of listings & offers for the provided date range.
| startDate required | Date
The start of the date range in UTC format |
| endDate required | Date
The end of the date range in UTC format |
| Authorization required | string
"ACCESS_TOKEN" is the token returned from /ext/token |
curl -X GET "https://offers.skyslope.com/offers-api/ext/report?startDate=2023-01-01&endDate=2023-04-26" -H "Authorization: Bearer ACCESS_TOKEN"
{- "mlsMarket": "your-market",
- "offerCount": 100,
- "listingCount": 10
}Retrieve an access token to authenticate requests with.
| Authorization required | string
"BASE64_CREDENTIALS" is the Base64-encoded value of your Client ID and Client Secret, separated by a colon |
curl --location --request POST 'https://offers.skyslope.com/offers-api/ext/token' \ --header 'Authorization: Basic BASE64_CREDENTIALS'
{- "token_type": "Bearer",
- "expires_in": 3600,
- "access_token": "ACCESS_TOKEN"
}