Webhook response
Curious about what happened to your request? After sending a query to the webhook, you receive a JSON response that provides full insight into its status, any potential errors, and the state of your limits.
Curious about what happened to your request? After sending a query to the webhook, you receive a JSON response that provides full insight into its status, any potential errors, and the state of your limits.
Automate trades and trigger actions by connecting external alerts through fully customizable webhooks.
After sending a request to the webhook, you will always receive a response in JSON format. This response contains detailed and structured information, allowing you to accurately understand how the processing of your order went. This gives you a complete picture of the operation status, actions taken by the system, and the current usage limits of your account and subscription plan. The JSON response is not only easy for machines to read but also facilitates the integration and automation of processes related to order management.
Each webhook response is returned in JSON format and contains a set of key elements that enable a full understanding of the process and outcome of the operation performed by the system. This response not only confirms the receipt and processing of the request but also provides detailed information about the status and essential technical data, which allows for easy diagnostics and further processing of the results.
{
"created": ...
"status": ...
"limit": {
"account": ...
"max_per_day": ...
"usage": ...
},
"message": ...
"request": {
"action": ...
"code": ...
"quantity": ...
"symbol": ...
},
"response": ...
}
The date the query was created in the format YYYY-MM-DD HH::MM:SS
, e.g., 2025-08-12 21:00:46
.
This indicates the overall result of the request sent to the webhook. This field typically takes values such as "success
", meaning the operation was executed correctly and without errors, or "error
", when a problem occurred that prevented the request from being completed successfully. Thanks to this field, the client calling the webhook can quickly assess whether further actions should be continued or if corrective steps are necessary.
This field contains a short yet very clear message describing the current state of the operation. This message is primarily intended for the user or the system calling the webhook and aims to provide easily understandable feedback. It can be a confirmation of success, e.g., "Order created successfully," or an indication of a specific problem, such as "Insufficient funds" or "Invalid API key." This message allows for quick problem diagnosis without the need to analyze the entire result.
This field contains detailed information about your account's limits on the platform, which are crucial, especially for systems based on subscription models or with a limited number of API queries. The information in this field includes:
Knowing this data is key to avoiding exceeding limits, which could lead to access being blocked or functionality being restricted.
This field contains an exact copy of the data sent in the original webhook request. Retaining this information in the response is extremely useful as it allows for easy tracking and verification of the data being transmitted. This makes it possible to quickly compare input data and the results returned by the system, which facilitates debugging and increases the transparency of the entire communication.
This field contains the detailed response returned by the exchange, service, or another target system to which the request was directed. This is where the technical data and operation results are placed, which are crucial for further analysis and potential result processing. This could be, for example, confirmation of a trading order creation, that order's identifier, its execution status, or other return data that accurately informs about the operation's progress.
Below you will find a detailed description of typical responses returned by the webhook, along with explanations and JSON examples.
In response to a correctly submitted request, the system returns a confirmation of order creation and information on the daily query limit usage. This way, you know that your order has been registered and you can monitor how many queries are left. Additionally, the system returns an order acceptance confirmation and a set of supplementary information. The key element is the "response" section, which contains the actual response from the exchange - that is, the result of the attempt to execute the order on the trading platform's side. It is based on this data that you can confirm whether the transaction was accepted, rejected, or partially processed, and also obtain the order identification number assigned by the exchange.
Thanks to this, you not only know that the webhook was correctly invoked but also have complete information about the status of the operation on the exchange's side, which is crucial for further handling and verifying transactions in your system.
{
"created": "2025-08-12 21:00:46",
"limit": {
"account": "FREE",
"max_per_day": 10,
"usage": 1
},
"status": "success",
"message": "Order created successfully",
"request": {
"action": "SET",
"code": "{WEBHOOK-CODE}",
"quantity": "0.0122",
"symbol": "BTCUSDT"
},
"response": {
"status": "success",
"message": "Order created successfully",
"orderID": 11233421423,
// ... więcej informacji z giełdy
}
}
Each webhook has a daily API query limit that depends on the subscription type. If this limit is exceeded, subsequent requests will be rejected until the limit resets, which happens every 24 hours.
{
"created": "2025-08-12 19:15:37",
"limit": {
"account": "PRO",
"max_per_day": 100,
"usage": 101
},
"message": "Daily limit exceeded",
"request": {
"action": "SET",
"code": "{WEBHOOK-CODE}",
"quantity": "1",
"symbol": "BTCUSDC"
},
"status": "error"
}
The webhook returns a message when the instrument balance already matches the requested amount. In this case, the system performs no operations, which prevents unnecessary costs or errors.
{
"created": "2025-08-12 20:48:42",
"limit": {
"account": "PRO",
"max_per_day": 100,
"usage": 1
},
"message": "No action required. Quantity is equal to current balance.",
"request": {
"action": "SET",
"code": "{WEBHOOK-CODE}",
"quantity": "0",
"symbol": "BTCUSDC"
},
"response": {
"message": "No action required.",
"status": "success"
},
"status": "success"
}
This error occurs when a request uses an instrument symbol that is not recognized by the system. Please verify the symbol's correctness and try again. Example response:
{
"created": "2025-08-12 19:15:37",
"limit": {
"account": "PRO",
"max_per_day": 100,
"usage": 4
},
"message": "Invalid symbol",
"request": {
"action": "SET",
"code": "{WEBHOOK-CODE}",
"quantity": "1",
"symbol": "BTCUSDC"
},
"response": {
"message": "No pair found",
"status": "error"
},
"status": "error"
}
If a problem occurs while processing an order, the response field will also contain detailed information about the error and the error code returned by the stock exchange or the target system. This allows for quick diagnosis and problem resolution.
{
"created": "2025-08-12 20:49:00",
"limit": {
"account": "PRO",
"max_per_day": 100,
"usage": 2
},
"message": "Account has insufficient balance for requested action.",
"request": {
"action": "BUY",
"code": "{WEBHOOK-CODE}",
"quantity": "1",
"symbol": "BTCUSDT"
},
"response": {
"code": -2010,
"msg": "Account has insufficient balance for requested action."
},
"status": "error"
}
In this instance, the exchange returned an error with code -2010 and a message about an insufficient account balance, which made it impossible to fulfill the order.
The response field in JSON format contains a detailed answer returned directly by an exchange or another system to which a webhook request is directed. It is in this field that you will find the most technical and precise information regarding the result of the executed operation, its status, and any potential issues that may have occurred.
Thanks to the data from the response field, you have full insight into the operation of your webhooks at the exchange level and can precisely track the progress of orders, monitor their execution, and quickly react to irregularities.
Example of an exchange's response in the response field:
...
"response": {
"orderId": 123456789,
"status": "FILLED",
"price": "27000.00",
"executedQty": "0.01",
"transactTime": 1691861322000
}
...
In the response field, you will find a complete set of data sent by the exchange, such as:
This information comes directly from the exchange's API and allows you to monitor the execution of orders in detail. The data varies depending on the exchange being supported.
Each webhook has a daily query limit assigned to it, which is determined by the subscription plan you have chosen. This limit is refreshed daily at midnight UTC+2, meaning you have a specific number of possible webhook calls available each day.
The JSON response will provide you with detailed information about:
If you accidentally or intentionally exceed your daily limit, the webhook will automatically stop processing further queries until the limit is renewed. In this case, the JSON response will contain an appropriate message about exceeding the limit, so you will immediately know the reason for the failure of further operations.
You can learn more about the limits in the "Limits" documentation.
Every user can easily and comprehensively monitor all webhook responses in a dedicated management panel. To access this tool, navigate to the following sections: Trading accounts > My webhooks > Select a bot
Here you will find a clear interface that allows you to view all responses returned by the webhook for the selected bot. The panel displays details regarding statuses, messages, and data returned by the exchange, which allows you to continuously track the correct functioning of your automated orders and quickly respond to any potential errors.
Thanks to this tool, you gain full control over the operation of your bots and convenient access to the history of communication with the server, without the need for manual log analysis or integration.
You can find more information and instructions on using the panel in the "Webhook management panel" documentation.
A webhook response in JSON format is your most important source of information about what is happening with the orders and queries you send. In it, you will find:
This allows you to:
Analyzing the "response" field allows you to fully utilize the potential of Psyll webhooks, ensuring trading automation with maximum security, transparency, and full control.