All successful API calls must result in an HTTP 200 OK response whose body is the UTF-8 encoded JSON of the response data.
Error responses must result in non-200 response (it is recommended to use the appropriate HTTP error code when possible) whose body is a JSON object structured like so:
Returns an Instance object containing information about this instance and this Fervor implementation.
**This endpoint does not require authentication.** It should be used by clients prior to completing the login/authentication flow to ensure that the server implementation is compatible with the client.
## Groups
### `GET /api/v1/groups/`
Returns an array of all available Group objects.
### `GET /api/v1/groups/:id`
Returns the Group object for the given ID.
### `GET /api/v1/groups/:id/feeds`
Returns an array of all Feed objects belonging to the group with the given ID.
Equivalent to retrieving the Group object and then looking up all the feeds specified by its `feed_ids`.
### `GET /api/v1/groups/:id/items`
[Paginated](./pagination.md).
Returns an array of the most recent Items (read or unread) from all the feeds in this group.
| `title` | String. The title of this group. | Yes |
| `feed_ids` | String of comma-delimited Integers. The IDs of any already existing feeds to add to this group. | No |
#### Response
If group creation was successful, the server will return the new Group object.
**Note:** Specific server implementations may require additional information to be provided, so a request with the bare minimum parameters may not be successful.
### `POST /api/v1/groups/:id/delete`
Deletes the group with the given ID. In some server implementations, this request may also delete all feeds belonging to the deleted group.
| `feed_url` | URL. The URL of the RSS document for this feed. | Yes |
| `group_ids` | String of comma-delimited Integers. The IDs of any already existing groups that this feed should be part of. | No |
#### Response
If feed creation was successful, the server will return the new Feed object.
**Note:** Specific server implementations may require additional information to be provided, so a request with the bare minimum parameters may not be successful.