Hostfully GraphQL Api

We highly recommend using Postman for exploring and interacting with our GraphQL API. To load our GraphQL schema into Postman, please follow these steps:

  • Create a new request in Postman and load the schema: Load GraphQL schema and create new request using this URL: https://sandbox-api.hostfully.com/api/v3/graphql. You can find instructions described in this link
  • Authenticate: Authenticate the request by adding proper authorization headers.
  • At this point the GraphQL schema should be automatically fetched: As described in Postman instruction link. Keep in mind that you cannot load the GraphQL schema without adding authorization headers.
  • Start Sending Requests: Now, you're all set to start sending GraphQL requests to our API. Use the following API endpoint to send your requests: https://sandbox-api.hostfully.com/api/v3/graphql

Pagination and Filtering

GraphQL queries offer a range of filters that you can explore directly within the schema. You can use these filters to customize and fine-tune your queries to suit your specific needs.

You can paginate the results using _limit and _cursor parameters. By default, value of _limit is 20, and the upper boundary of that is 100. In each response, the nextCursor value will be provided within the extensions section, which can be utilized for pagination purposes.

Sub-types

We offer multiple sub-types to cater to various data requirements. To ensure faster request times and minimize computational load, we kindly request that you only query the specific sub-types that are necessary for your use case. This selective querying approach not only optimizes performance but also helps streamline your GraphQL requests, delivering the data you need efficiently.

Examples

Get Property by UID

query {
  property(uid: "${propertyUid}") {
    uid
    agencyUid
    name
    isActive
    pictureLink
    webLink
    bedrooms
    beds
    bathrooms
    numberOfFloors
    rentalLicenseNumber
    rentalLicenseExpirationDate
  }
}

Get Properties by agencyUid

query {
  properties(agencyUid:"90f0faa5-4786-4c0a-bd18-d2960d67da3c") {
    uid
    agencyUid
    name
    isActive
    pictureLink
    webLink
    bedrooms
    beds
    bathrooms
  }
}

Get Lead by UID

query {
  lead(uid: "${uid}") {
    uid
    propertyUid
    agencyUid
    checkInZonedDateTime
    checkOutZonedDateTime
    checkInLocalDateTime
    checkOutLocalDateTime
    status
  }
}

Get Leads by agencyUid

query {
  leads(agencyUid:"90f0faa5-4786-4c0a-bd18-d2960d67da3c") {
    uid
    propertyUid
    agencyUid
    checkInZonedDateTime
    checkOutZonedDateTime
    checkInLocalDateTime
    checkOutLocalDateTime
    status
  }
}