Write Status: Failure
Understanding how to handle write status failure is crucial for ensuring that your data is correctly written to the PMS.
Understanding the Propexo API: Failed Write Requests (Part 2)
Hi, I’m Nick, co-founder and CTO at Propexo. Following our previous discussion about successful write requests, let’s examine what happens when a write request fails.
Example Scenario
We’ll use a similar setup to our previous example, with a minor change: I’ve modified the resident name to “Jane Doe” to distinguish it from our earlier demonstration.
The Write Request Process
Initial Response
When we send the request, we receive a 200 OK response with the correct payload for Jane Doe. However, it’s crucial to remember that this 200 OK status only confirms that we’ve successfully created the job for the write request—it doesn’t indicate whether the actual write operation succeeded.
Checking the Write Status
After receiving our job ID, we can query the write status endpoint to check the operation’s outcome. In this demonstration, despite receiving the initial 200 OK response, the write request ultimately failed.
Understanding Failed Requests
For this demonstration, I deliberately created a failure scenario on my local machine. The response includes:
- A failure status
- An error with stringified JSON
- An example error message
Common Failure Scenarios
Write requests often fail due to circumstances such as:
- Unresponsive PMS API servers
- Scheduled maintenance downtime
- Other temporary service interruptions
Handling Failures
When encountering a failed write request, you should:
- Manually review the failure
- Evaluate the error messages (which come directly from the PMS API, not Propexo)
- Decide whether to retry the operation
For example, if a write request fails at 2 AM due to scheduled maintenance, retrying the same request at 9 AM the next day might succeed.
Important Notes
The error response includes an array of stringified JSON errors. Understanding this structure is crucial for debugging and determining your next steps when handling failed requests. We’ll explore this aspect in more detail in our next section.


