Search¶
This API allows search for apps by various properties.
Search¶
- GET /api/v1/apps/search/¶
Request
Parameters: - q (string) – The query string to search for.
- cat (int|string) – The category slug or ID to filter by. Use the category API to find the ids of the categories.
- device (string) – Filters by supported device. One of ‘desktop’, ‘mobile’, ‘tablet’, or ‘firefoxos’.
- dev (string) – Enables filtering by device profile if either ‘firefoxos’ or ‘android’.
- pro (string) – A feature profile describing the features to filter by.
- premium_types (string) – Filters by whether the app is free or premium or has in-app purchasing. Any of ‘free’, ‘free-inapp’, ‘premium’, ‘premium-inapp’, or ‘other’.
- type (string) – Filters by type of add-on. One of ‘app’ or ‘theme’.
- app_type (string) – Filters by type of web app. One of ‘hosted’ or ‘packaged’.
- manifest_url (string) – Filters by manifest URL. Requires an exact match and should only return a single result if a match is found.
- sort (string) – The fields to sort by. One or more of ‘downloads’, ‘rating’, ‘price’, ‘created’, separated by commas. Sorts by relevance by default.
Response
Parameters: - meta (object) – Listing response meta.
- objects (array) – A listing of apps, with the following additional fields:
{ "absolute_url": http://server.local/app/my-app/", }Status Codes: - 200 – successfully completed.
- 401 – if attempting to filter by status, you do not have that role.
Featured App Listing¶
- GET /api/v1/fireplace/search/featured/¶
Request
Accepts the same parameters and returns the same objects as the normal search interface: Search. Includes ‘featured’ list of apps, listing featured apps for the requested category, if any. When no category is specified, frontpage featured apps are listed.
Response:
Parameters: - meta (object) – Listing response meta.
- objects (array) – A listing of apps satisfying the search parameters.
- featured (array) – A list of apps featured for the requested category, if any
Status Codes: - 200 – successfully completed.
Feature Profile Signatures¶
Feature profile signatures indicate what features a device supports or does not support, so the search results can exclude apps that require features your device doesn’t provide.
The format of a signature is FEATURES.SIZE.VERSION, where FEATURES is a bitfield in hexadecimal, SIZE is its length in bits as a decimal number, and VERSION is a decimal number indicating the version of the features table.
Each bit in the features bitfield represents the presence or absence of a feature.
Feature table version 1:
| bit | feature |
|---|---|
| 0 | Quota Management |
| 1 | Gamepad |
| 2 | Full Screen |
| 3 | WebM |
| 4 | H.264 |
| 5 | Web Audio |
| 6 | Audio |
| 7 | MP3 |
| 8 | Smartphone-Sized Displays |
| 9 | Touch |
| 10 | WebSMS |
| 11 | WebFM |
| 12 | Vibration |
| 13 | Time/Clock |
| 14 | Screen Orientation |
| 15 | Simple Push |
| 16 | Proximity |
| 17 | Network Stats |
| 18 | Network Information |
| 19 | Idle |
| 20 | Geolocation |
| 21 | IndexedDB |
| 22 | Device Storage |
| 23 | Contacts |
| 24 | Bluetooth |
| 25 | Battery |
| 26 | Archive |
| 27 | Ambient Light Sensor |
| 28 | Web Activities |
| 29 | Web Payment |
| 30 | Packaged Apps Install API |
| 31 | App Management API |
For example, a device with the ‘App Management API’, ‘Proximity’, ‘Ambient Light Sensor’, and ‘Vibration’ features would send this feature profile signature:
88011000.32.1
Mozilla Developer Network