public function getStrings(
        string $project,
        string $resource,
        string $lang,
        bool $details = false,
        array $options = []
    ): ResponseInterface {
        $uri   = $this->createUri("/api/2/project/$project/resource/$resource/translation/$lang/strings/");
        $query = [];

        if ($details) {
            // Add details now because `http_build_query()` can't handle something that isn't a key/value pair
            $uri = $uri->withQuery('details');
        }

        if (isset($options['key'])) {
            $query['key'] = $options['key'];
        }

        if (isset($options['context'])) {
            $query['context'] = $options['context'];
        }

        if (!empty($query)) {
            if ($uri->getQuery() === '') {
                $uri = $uri->withQuery(\http_build_query($query));
            } else {
                $uri = $uri->withQuery($uri->getQuery() . '&' . \http_build_query($query));
            }
        }

        return $this->client->sendRequest($this->createRequest('GET', $uri));
    }