# Getting started # Getting Started Guidelines for using Praxedo REST APIs Before starting any integration please read our [documentation]() ## Authentication OAuth 2.0 application is required to authenticate your API calls ```plaintext Authorization: Bearer ``` See here how to configure in Praxedo your [Oauth2 application]() ## Rate Limiting Find here the different range of Rate limit set for our endpoints. | **Rate limit range** | **Bandwidth** | | --------------------- | ---------------------- | | High | 4000/PT1H or 110/PT1M | | Standard | 2000/PT1H or 55/PT1M | | Low | 1000/PT1H or 30/PT1M | ## HTTP errors code | Code | Status | Description | | ---- | ---------------------- | ---------------------------------------------------------------------------------------------- | | 200 | OK | The request was successfully completed. | | 201 | Created | A new resource was successfully created. | | 204 | Updated | A resource was successfully updated. | | 400 | Bad Request | The request was invalid. | | 401 | Unauthorized | The request did not include an authentication token or the authentication token was expired. | | 403 | Forbidden | The client did not have permission to access the requested resource. | | 404 | Not Found | The requested resource was not found. | | 500 | Internal Server Error | The request was not completed due to an internal error on the server side. | #### **Error Responses** All errors include: * errorReference: A unique identifier for each error—provide this when contacting support * errors: An array of specific error messages with codes * message: Human-readable description #### Empty and null management in POST & PUT actions * If non-required fields have an empty string value, they will be saved and retrieved as empty string. * If non-required fields have a null value, they will be saved and retrieved as null. * If non-required fields are absent, they will be saved and retrieved as null. ### **Date Formats** All dates follow ISO-8601UTC : * **Date only**: YYYY-MM-DD (e.g., 2024-12-25) * **DateTime**: YYYY-MM-DDTHH:MM (e.g., 2024-12-25T15:30) * **Time only**: HH:MM (e.g., 14:36) ### **Resource name** * singular, lower camelCase * the same rule applies for sub resources ### **Nullable fields** Fields marked as nullable can be omitted from requests or included as null. Both are valid. In responses, null fields indicate the property wasn't set. ### **Case Sensitivity** Code fields (customerCode, siteCode, etc.) are **case-insensitive**. Internally, they're normalized to uppercase. Queries like customer-123 and CUSTOMER-123 return the same result. ### **Hierarchical Resources** Some resources support parent-child relationships (sub-customers, sub-sites, sub-assets). A resource cannot be its own parent, and hierarchy depth is limited to 10 levels. ### **Custom Fields** Custom fields are included as a map of field codes to field values. Field availability depends on your configuration. Invalid or unknown field codes will be rejected with a 400 error. ### **Pagination for Lists** The endpoint returns paginated results. Use the continuationToken from the response to fetch the next page. An empty continuation token indicates the final page. ###