Appendix B – Ed-Fi Response Codes
Screenshot of Ed-Fi API Design and Implementation Guidelines, Response Codes page. This page describes the codes that TEA would be expected to implement in their Ed-Fi SDK per Ed-Fi standards.
Response and Status Codes
HTTP Response Code | Name | Reason(s) |
200 | OK | Returned after a successful publishing of a record. This is not seen in DEX Cloud, but is shown as a successfully published record. |
400 | Bad Request | Returned if the request is malformed. The body of the response may contain a descriptive error message. This requires a support ticket to review the publishing. |
401 | Unauthorized | Returned if the access token is invalid. Check the key/secret and verify that a successful test and can be done. |
403 | Forbidden | Returned when the request is not authorized to publish this record. One reason for this can be if the claimset does not allow for this record to be published (such as trying to publish an SSA record from the SIS, but not having the SIS/HR/Finance claimset) and the other reason would be if there is a parent record that has not been published correctly before (such as a staff record not being sent from the HR system, but trying to publish staff sections association from the SIS). The error message should have an indication of what the problem is. |
404 | Not Found | Returned if a resource is not found. A support ticket is required if this occurs as there is a disconnect between the state ODS and our publishing. |
409 | Conflict | Returned when there is any type of referential integrity violation. The returned error message should indicate the issue. If the message is something like “value A is not a valid XYZ descriptor type”, the downloaded descriptors should be checked and/or redownloaded to see if the value is valid and the download is just missing. If it was missing and now is there, then republish will solve. Otherwise, a ticket may be required. |
500 | Internal Server Error | Returned if the server encountered an unexpected error during the operation. Generally a republish a few minutes later will solve this. |
NOTE: A 403 error is most often caused by a dependency issue. While DEX does internal dependency checks and withholds records from publishing where dependencies are identified, not all situations can be anticipated. There will be cases where DEX attempts to publish a record that passed the internal dependency checks but was still rejected by the API because of a dependency.