self.api should always be defined.

If the data was provided, the fetch param was empty (even if an api endpoint
was provided.)