Jeśli wystąpił błąd podczas wywoływania metody, wartość ta musi wynosić null. error – Określony kod błędu (jeśli wystąpił błąd podczas wywoływania metody), w przeciwnym razie null. id – Id zapytania, na które odpowiada.
Ponieważ istnieją sytuacje, w których odpowiedź nie jest potrzebna, a wręcz jest niepożądana, zostały wprowadzone zawiadomienia. Zawiadomienie jest podobne do zapytania. Różnica polega na braku id, które nie jest potrzebne, ponieważ nie oczekujemy odpowiedzi. W tym przypadku własności id powinny być pominięte (wersja 2.0) lub ustawione na null (wersja 1.0).
Przykłady Zapytanie Klienta {"id": 1, "jsonrpc":"2.0", "method": "echo", "params": ["hello"]}
Odpowiedź Serwera {"id": 1, "jsonrpc":"2.0", "error": null, "result": "hello"}
Istnieje także możliwość wywoływania wielu wywołań funkcji, wtedy poszczególne zapytanie przekazywane są w tablicy, a serwer zwraca tablicę odpowiedzi.
W poniższych przykładach --> oznacza dane wysyłane do serwisu (zapytanie), podczas gdy <-- oznacza dane pochodzące z serwisu (chociaż tym kierunku często nazywa się to odpowiedzią, w architekturze klient-serwer w zależności od wersji JSON-RPC nie musi to jednak oznaczać odpowiedzi na zapytanie).