quickest-silver•2y ago
use api message for notification
How can i use the api response message for notifciaton of create and edit
11 Replies
Hi @jash.s. I'm kapa.ai, your friendly support bot. I will try to answer your question by searching through the knowledge base. :wave:
----------------------
You can use the API response message for notifications in Refine by customizing the
successNotification and errorNotification props in the useForm or useCreate hooks. These props allow you to define the message that will be shown when the mutation is successful or fails.
Here's an example of how you can do this:
In the successNotification prop, data is the response from the API. You can use data.message (or any other property from the response) to show the API response message in the notification.
Similarly, in the errorNotification prop, error is the error object from the API. You can use error.message to show the error message from the API in the notification.
Please note that NotificationProvider (https://refine.dev/docs/notification/notification-provider/) is required for these props to work.
For more information, you can check the documentation here (https://refine.dev/docs/data/hooks/use-form#successnotification-) and here (https://refine.dev/docs/data/hooks/use-form#errornotification-).
----------------------
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
----------------------<@1129363768661516329> kapa.ai is still learning and improving, please let us know how it did by reacting below
quickest-silverOP•2y ago
@kapa.ai can i make this changes in ii8 like this ? "createSuccess": "{{message}}",
Let me check the knowledge base for you. One moment! :books:
----------------------
Yes, you can customize the notification messages using i18n in Refine. However, the
{{message}} placeholder you're using might not work as expected because it's not a standard key that Refine recognizes.
Refine uses the following translation keys for notification titles:
You can customize these messages as per your requirements. For example, you can change the createSuccess message like this:
In this case, {{resource}} is a placeholder that Refine will replace with the actual resource name.
For more information, you can check the documentation here (https://refine.dev/docs/guides-concepts/notifications#notification-providers).
----------------------
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
----------------------<@1129363768661516329> kapa.ai is still learning and improving, please let us know how it did by reacting below
quickest-silverOP•2y ago
@kapa.ai can i make a notification provider which takes the message from api response and use it as the success or error notitication
Let me check the knowledge base for you. One moment! :books:
----------------------
Yes, you can create a custom notification provider that uses the message from the API response for success or error notifications. You can do this by customizing the
successNotification and errorNotification props in the data fetching or mutation hooks.
Here's an example of how you can do this:
In the successNotification prop, data is the response from the API. You can use data.message (or any other property from the response) to show the API response message in the notification.
Similarly, in the errorNotification prop, error is the error object from the API. You can use error.message to show the error message from the API in the notification.
Please note that NotificationProvider (https://refine.dev/docs/notification/notification-provider/) is required for these props to work.
For more information, you can check the documentation here (https://refine.dev/docs/data/hooks/use-form#successnotification-) and here (https://refine.dev/docs/data/hooks/use-form#errornotification-).
----------------------
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
----------------------<@1129363768661516329> kapa.ai is still learning and improving, please let us know how it did by reacting below
quickest-silverOP•2y ago
@kapa.ai how can i use identifier value in place of resource for the below
"notifications": {
"success": "Successful",
"error": "Error (status code: {{statusCode}})",
"undoable": "You have {{seconds}} seconds to undo",
"createSuccess": "Successfully created {{resource}}",
"createError": "There was an error creating {{resource}} (status code: {{statusCode}})",
"deleteSuccess": "Successfully deleted {{resource}}",
"deleteError": "Error when deleting {{resource}} (status code: {{statusCode}})",
"editSuccess": "Successfully edited {{resource}}",
"editError": "Error when editing {{resource}} (status code: {{statusCode}})",
"importProgress": "Importing: {{processed}}/{{total}}"
}
Let me check the knowledge base for you. One moment! :books:
----------------------
In the context of Refine's i18n notifications, the
{{resource}} placeholder is used to represent the name of the resource that the operation is being performed on. If you want to use the identifier value instead of the resource name, you would need to pass the identifier value when calling the data hooks.
However, the {{resource}} placeholder in the notification messages is automatically replaced by Refine with the name of the resource. There's no direct way to replace it with the identifier value in the i18n notification messages.
If you want to use the identifier value in the notification messages, you would need to handle it manually in the successNotification and errorNotification props when calling the data hooks. Here's an example:
In this case, resource.identifier should be the identifier value of the resource.
For more information, you can check the documentation here (https://refine.dev/docs/data/hooks/use-form#successnotification-) and here (https://refine.dev/docs/data/hooks/use-form#errornotification-).
----------------------
Note: you can ask me a follow up question by @ mentioning me again :speech_balloon:
----------------------<@1129363768661516329> kapa.ai is still learning and improving, please let us know how it did by reacting below