Appaloosa API V2 (Latest)
Changes in V2
This latest version :
-
Change key
application
tomobile_application_update
. -
Add
mobile_application_id
on all mobile application update objects. -
Add mobile_applications as new route.
-
Add the ability to fetch mobile application updates of a specific mobile application.
-
Add
unique_downloads
key for all mobile application updates objects. -
Add
changelog
key to mobile application updates objects.
Prerequisites ¶
Regardless of your objective, to use this API, you must be an admin of the store you are requesting.
Base URL
The base URL for this API is the following:
https://www.appaloosa-store.com/api/v2/...
Store id
You can find your store’s id in the “Settings” page of your store, in the API & SDK tab. Each request must contain your store id directly after the base URL. Example:
https://www.appaloosa-store.com/api/v2/YOUR_STORE_ID/...
Authentication
We use an authentication by api key for every request. You can find your store’s API key on the API settings. Once logged in your store, click on “Settings” then go to “API”. Each request must contain an api_key parameter. Example:
https://www.appaloosa-store.com/api/v2/YOUR_STORE_ID/...?api_key=YOUR_API_KEY
Not providing this parameter will return the HTTP status code 401.
Mobile Application Updates ¶
A mobile application update is the main resource of Appaloosa. A user can see Mobile Application Updates if he belongs to at least one group attached to the Mobile Application Update.
Mobile Application Update belongs to a Mobile Application. A Mobile Application can have many Mobile Application Updates.
Mobile Application Update ¶
Get Mobile Application UpdateGET/mobile_application_updates/{mobile_application_update_id}
Get a mobile application update’s details.
unique_downloads
is upated every 20 minutes.
Example URI
- mobile_application_update_id
integer
(required) Example: 1The mobile application update’s id
200
Headers
Content-Type: application/json
Body
{
mobile_application_update: {
id: 13,
mobile_application_id: 133,
name: "My app",
icon_url: ""https://appaloosa-production.s3.amazonaws.com/1/104/135/icon?..",
description: "This the my app",
version: "60",
version_release: "V5.60",
min_os_version: "10",
binary_file_size: 4138840,
application_id: "com.appaloosa.app",
download_url: "https://appaloosa-store.com/1/104/135/swe4p4e5it7/myapp.apk",
url: "https://play.google.com/apps/details?id=com.myapp.apk",
application_type": "native",
status: 1,
unique_downloads: 45662,
created_at: "2015-10-12T10:52:42.348+02:00",
updated_at: "2015-11-10T10:00:38.035+01:00",
notification_type": "classic",
screenshots_urls": [],
groups: [
"everybody"
],
groups_ids: [
33
],
categories: [],
platforms: [
"Android"
],
banner_url: "https://www.appaloosa-store.com/assets/banner.png",
catchphrase: "Best App!",
changelog: "Message api has been deprecated",
aab_url: "https://appaloosa-production.s3.amazonaws.com/1/104/135/fjkffdsjkdj/app.aab?.."
}
}
Patch Mobile Application UpdatePATCH/mobile_application_updates/{mobile_application_update_id}
Update mobile application update’s details. You can edit:
- mobile_application_update (object)
- name:
MyApp
(string, optional) - The name of your app - group_ids:
[8940]
(array, optional) - Mobile application update’s groups ids - catchphrase:
The best app
(string, optional) - Mobile application update’s catch phrase - description:
Never miss a deal
(string, optional) - Mobile application update’s description - icon: icon.png (attachement, optional) - Mobile application update’s icon
- banner: file (attachement, optional) - Mobile application update’s banner
- screenshot1: file1.png (attachement, optional) - Mobile application update’s screenshot 1
- screenshot2: file2.png (attachement, optional) - Mobile application update’s screenshot 2
- screenshot3: file3.png (attachement, optional) - Mobile application update’s screenshot 3
- screenshot4: file4.png (attachement, optional) - Mobile application update’s screenshot 4
- screenshot5: file5.png (attachement, optional) - Mobile application update’s screenshot 5
- push_force_install:
false
(boolean, optional) - Force install - changelog:
The user_ids parameter has been deprecated on the GET accounts/:account_id/scoped_timeline
(string, optional) - Application changelog
- name:
On Android Enterprise store, you cannot edit groups if the mobile_application_update is not the last version of your application. It will return a 422 error status.
Example URI
- mobile_application_update_id
integer
(required) Example: 1The mobile application update’s id
Headers
Content-Type: multipart/form-data; boundary=----BOUNDARY
Body
----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="mobile_application_update[name]"
MyApp
----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="mobile_application_update[catchphrase]"
This is the best business app!
----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="mobile_application_update[group_ids][]"
8940
----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="mobile_application_update[screenshot1]"; filename="MyAppScreensho1.png"
Content-Type: image/png
----WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="mobile_application_update[icon]"; filename="MyAppIcon.png"
Content-Type: image/png
----WebKitFormBoundary7MA4YWxkTrZu0gW
422
Headers
Content-Type: application/json
Body
{
"errors": "groups update on previous version is not authorized"
}
200
Headers
Content-Type: application/json
Body
{
"mobile_application_update": {
"id": 111605,
"mobile_application_id": 133,
"name": "MyApp",
"icon_url": "https://www.appaloosa-store.com/5282/28952/111605/icon.png",
"description": "My business app",
"version": "1.0",
"version_release": "1.0",
"min_os_version": "7.1",
"binary_file_size": 194680,
"application_id": "com.myapp.st",
"download_url": "https://www.appaloosa-store.com/5282/28952/111605/ga3i1/MyApp.ipa",
"url": "https://play.google.com/apps/details?id=com.myapp.apk",
"application_type": "native",
"status": 1,
"unique_downloads": 64562,
"created_at": "2015-07-21T10:36:22.441+02:00",
"updated_at": "2015-08-28T16:52:01.040+02:00",
"screenshots_urls": [
"https://www.appaloosa-store.com/5282/28952/111605/screenshots/1"
],
"groups": [
"myteam"
],
"groups_ids": [
8940
],
"categories": [],
"platforms": [
"iPad",
"iPhone"
],
"banner_url": "https://www.appaloosa-store.com/52/28952/111605/5488/banner/banner.png",
"catchphrase": "This is the best business app!",
"changelog": "The user_ids parameter has been deprecated on the GET accounts/:account_id/scoped_timeline",
"aab_url": "https://appaloosa-production.s3.amazonaws.com/1/104/135/fjkffdsjkdj/app.aab?.."
}
}
Upload Mobile Application Update ¶
Upload Mobile Application UpdatePOST/mobile_application_updates/upload
Upload a Mobile Application Update from a public link. All urls must be publicly available.
- mobile_application_update (object)
- binary_path:
https://www.box.com/d1f/my_app.ipa
(string, required) - The link where your Application is hosted. - group_ids:
[8940]
(array, optional) - Mobile application update’s groups ids - catchphrase:
The best app
(string, optional) - Mobile application update’s catch phrase - description:
Never miss a deal
(string, optional) - Mobile application update’s description - banner:
https://www.box.com/d1f/banner.png
(string, optional) - Mobile application update’s banner url - screenshot1:
https://www.box.com/d1f/file1.png
(string, optional) - Mobile application update’s screenshot 1 url - screenshot2:
https://www.box.com/d1f/file2.png
(string, optional) - Mobile application update’s screenshot 2 url - screenshot3:
https://www.box.com/d1f/file3.png
(string, optional) - Mobile application update’s screenshot 3 url - screenshot4:
https://www.box.com/d1f/file4.png
(string, optional) - Mobile application update’s screenshot 4 url - screenshot5:
https://www.box.com/d1f/file5.png
(string, optional) - Mobile application update’s screenshot 5 url - changelog:
The user_ids parameter has been deprecated on the GET accounts/:account_id/scoped_timeline
(string, optional) - Application changelog
- binary_path:
Example URI
Headers
Content-Type: application/json
Body
{
"mobile_application_update": {
"binary_path": "http://www.application.io/application.ipa",
"screenshot1": "http://www.application.io/screenshot1.png",
"screenshot2": "http://www.application.io/screenshot2.png",
"screenshot3": "http://www.application.io/screenshot3.png",
"screenshot4": "http://www.application.io/screenshot4.png",
"screenshot5": "http://www.application.io/screenshot5.png",
"banner": "http://www.application.io/banner.png",
"description": "Never miss a deal",
"catchphrase": "The best app",
"changelog": "The user_ids parameter has been deprecated on the GET accounts/:account_id/scoped_timeline",
"aab_url": "https://appaloosa-production.s3.amazonaws.com/1/104/135/fjkffdsjkdj/app.aab?.."
}
}
201
Headers
Content-Type: application/json
Body
{
"status": "Binary processing",
"link": "https://www.appaloosa-store.com/api/v2/52/mobile_application_updates/123?api_key=yourapikey"
}
Get Mobile Application Update ¶
Get Mobile Application UpdatesGET/mobile_application_updates{?user_email,group_name,platforms,page,per}
The mobile application updates visible for the user. If user_email is left blank, the mobile application updates returned will be the ones visible by the store’s admins.
-
unique_downloads
is upated every 20 minutes. -
Mobile Application Updates are sorted by creation date in descending order.
Example URI
- user_email
string
(optional) Example: martin.dupont@example.frUser’s email
- group_name
string
(optional) Default: empty Example: Groupe1User’s group name
- platforms
string
(optional) Default: all Example: AndroidFilter by platform
Choices:
all
Android
iPhone
iPad
WindowsPhone
- page
number
(optional) Default: 1 Example: 3Current results page
- per
number
(optional) Default: 10 Example: 2Number of results per page, the maximum is 20.
200
Headers
Content-Type: application/json
Link: <https://www.appaloosa-store.com/api/v2/store_id/mobile_application_updates?api_key=api_key&user_email=martin.dupont%40example.fr&group_name=Groupe1&page=1&platforms%5B%5D=Android>; rel="first", <https://www.appaloosa-store.com/api/v2/store_id/mobile_application_updates?api_key=api_key&user_email=martin.dupont%40example.fr&group_name=Groupe1&page=5&platforms%5B%5D=Android>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/mobile_application_updates?api_key=api_key&user_email=martin.dupont%40example.fr&group_name=Groupe1&page=4&platforms%5B%5D=Android>; rel="next", <https://www.appaloosa-store.com/api/v2/store_id/mobile_application_updates?api_key=api_key&user_email=martin.dupont%40example.fr&group_name=Groupe1&page=2&platforms%5B%5D=Android>; rel="prev"
Total: 10
Per-Page: 2
Body
{
mobile_application_updates:
[
{
id: 1,
mobile_application_id: 134,
name: "Mon Application",
icon_url: "http://s3.amazonaws.com/icon.png",
description: "La description de ma superbe application",
version: '12',
version_release: '12',
min_os_version: '8',
binary_file_size: 4567456,
application_id: "com.app.fr",
download_url: 'http://s3.amazonaws.com/my_app.apk',
url: 'https://play.google.com/apps/details?id=com.myapp.apk',
application_type: 'native',
status: 1,
unique_downloads: 33445,
created_at: "2014-01-31T18:49:18.258+01:00",
updated_at: "2015-05-26T14:33:06.214+02:00",
notification_type: "classic",
screenshots_urls: ["http://s3.amazonaws.com/screenshot_1.png"],
groups:["Appaloosa Team"],
groups_ids: [547],
categories: ["Productivité", "Business"],
platforms: ["Android"],
banner_url: "http://s3.amazonaws.com/banner_1.png",
catchphrase: "La meilleure app",
changelog: "Message api has been deprecated",
aab_url: "https://appaloosa-production.s3.amazonaws.com/1/104/135/fjkffdsjkdj/app.aab?.."
},
{
id: 4,
mobile_application_id: 154,
name: "Ma deuxieme app",
icon_url: "http://s3.amazonaws.com/icon.png",
description: "La description de ma superbe deuxieme application",
version: '10',
version_release: '9',
min_os_version: '8',
binary_file_size: 456456,
application_id: "com.app.fr",
download_url: 'http://s3.amazonaws.com/my_app2.apk',
url: 'https://play.google.com/apps/details?id=com.myapp.apk',
application_type: 'native',
status: 1,
unique_downloads: 33455,
created_at: "2014-03-31T18:49:18.258+01:00",
updated_at: "2015-06-26T14:33:06.214+02:00",
notification_type: "classic",
screenshots_urls: ["http://s3.amazonaws.com/screenshot_1.png"],
groups:["Appaloosa Team"],
groups_ids: [547],
categories: ["Productivité", "Business"],
platforms: ["Android"],
banner_url: "http://s3.amazonaws.com/banner_1.png",
catchphrase: "La deuxieme app",
changelog: "Message api has been deprecated",
aab_url: "https://appaloosa-production.s3.amazonaws.com/1/104/135/fjkffdsjkdj/app.aab?.."
}
]
}
Comments ¶
Comments are given by users through the native apps.
Get CommentsGET/mobile_application_updates/{mobile_application_update_id}/comments{?page,per,sort_by,sort_order}
Get the comments of a mobile application update.
Example URI
- mobile_application_update_id
integer
(required) Example: 4988The mobile application update’s id
- page
integer
(optional) Default: 1 Example: 1The number of the page to return
- per
integer
(optional) Default: 20 Example: 2The number of comments to return per page
- sort_by
string
(optional) Default: updated_at Example: updated_atThe attributes to sort the comments by date
Choices:
created_at
updated_at
- sort_order
string
(optional) Default: desc Example: ascThe order to sort the comments, by ascending or descending order
Choices:
asc
desc
200
Headers
Content-Type: application/json
Link: <https://www.appaloosa-store.com/api/v2/store_id/mobile_application_updates/4988/comments?api_key=api_key&page=3&sort_by=created_at&sort_order=asc>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/mobile_application_updates/comments?api_key=api_key&page=2&sort_by=created_at&sort_order=asc>; rel="next"
Body
{
comments: [
{
"id": "12",
"comment": "Awesome App",
"rating": 2.0,
"user_name":"A. PPALOOSA",
"user_id": "123",
"created_at": "2015-05-18T09:31:59.502+02:00" ,
"updated_at": "2015-05-18T09:31:59.502+02:00"
},
{
"id": "15",
"comment": "Best App Ever",
"rating": 4.0,
"user_name":"J. SMITH",
"user_id": "126",
"created_at": "2015-05-19T19:12:14.450+02:00",
"updated_at": "2015-05-20T18:43:56.542+02:00"
}
]
}
Google Play Enterprise ¶
Publish to Google PlayPOST/mobile_application_updates/{mobile_application_update_id}/google_play
This application will be publish to your Google Play Enterprise account. Only available if you are using an AE setup.
Example URI
- mobile_application_update_id
integer
(required) Example: 4988The mobile application update’s id
204
Headers
Content-Type: application/json
400
Headers
Content-Type: application/json
Body
{
error: {
message: 'Error message received from google.'
}
}
Mobile Applications ¶
A Mobile Application has many Mobile Application Updates representing its different versions.
Get Mobile Application Updates ¶
Get Mobile Application UpdatesGET/mobile_applications/{mobile_application_id}/mobile_application_updates{?page,per}
Get Mobile Application Updates from a specified mobile_application_id
.
-
unique_downloads
is upated every 20 minutes. -
Mobile Application Updates are sorted by creation date in descending order.
Example URI
- mobile_application_id
number
(required) Example: 124Id of the Mobile Application that you can find in any Mobile Application Update.
- page
number
(optional) Default: 1 Example: 3Current results page
- per
number
(optional) Default: 10 Example: 2Number of results per page, the maximum is 20.
200
Headers
Content-Type: application/json
Link: <https://www.appaloosa-store.com/api/v2/store_id/mobile_applications/45/mobile_application_updates?api_key=api_key&page=1>; rel="first", <https://www.appaloosa-store.com/api/v2/store_id/mobile_applications/45/mobile_application_updates?api_key=api_key&page=5>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/mobile_applications/45/mobile_application_updates?api_key=api_key&page=4>; rel="next", <https://www.appaloosa-store.com/api/v2/store_id/mobile_applications/45/mobile_application_updates?api_key=api_key&page=2>; rel="prev"
Total: 10
Per-Page: 2
Body
{
mobile_application_updates:
[
{
id: 5,
mobile_application_id: 134,
name: "Mon Application",
icon_url: "http://s3.amazonaws.com/icon.png",
description: "La description de ma superbe application",
version: '12',
version_release: '12',
min_os_version: '8',
binary_file_size: 4567456,
application_id: "com.app.fr",
download_url: 'http://s3.amazonaws.com/my_app.apk',
url: "https://play.google.com/apps/details?id=com.myapp.apk",
application_type: 'native',
status: 1,
unique_downloads: 34456,
created_at: "2014-04-31T18:49:18.258+01:00",
updated_at: "2015-05-26T14:33:06.214+02:00",
notification_type: "classic",
screenshots_urls: ["http://s3.amazonaws.com/screenshot_1.png"],
groups:["Appaloosa Team"],
groups_ids: [547],
categories: ["Productivité", "Business"],
platforms: ["Android"],
banner_url: "http://s3.amazonaws.com/banner_1.png",
catchphrase: "La meilleure app",
changelog: "Message api has been deprecated",
aab_url: "https://appaloosa-production.s3.amazonaws.com/1/104/135/fjkffdsjkdj/app.aab?.."
},
{
id: 4,
mobile_application_id: 134,
name: "Ma deuxieme app",
icon_url: "http://s3.amazonaws.com/icon.png",
description: "La description de ma superbe deuxieme application",
version: '10',
version_release: '9',
min_os_version: '8',
binary_file_size: 456456,
application_id: "com.app.fr",
download_url: 'http://s3.amazonaws.com/my_app2.apk',
url: "https://play.google.com/apps/details?id=com.myapp.apk",
application_type: 'native',
status: 1,
unique_downloads: 33458,
created_at: "2014-03-31T18:49:18.258+01:00",
updated_at: "2015-06-26T14:33:06.214+02:00",
notification_type: "classic",
screenshots_urls: ["http://s3.amazonaws.com/screenshot_1.png"],
groups:["Appaloosa Team"],
groups_ids: [547],
categories: ["Productivité", "Business"],
platforms: ["Android"],
banner_url: "http://s3.amazonaws.com/banner_1.png",
catchphrase: "La meilleure app",
changelog: "Message api has been deprecated",
aab_url: "https://appaloosa-production.s3.amazonaws.com/1/104/135/fjkffdsjkdj/app.aab?.."
}
]
}
Users ¶
User ¶
Create UserPOST/users/
Create a new user. API will return the created user when success. Parameters need to be in the request body. You must give the first name, last name and email.
- user (object)
- email:
olivier@dupont.com
(string, required) - User’s email, must be valid to receive welcome email - last_name:
Dupont
(string, required) - User’s last name - first_name:
Olivier
(string, required) - User’s first name - notify:
false
(boolean, optional) - Send a welcome email to the user- Default:
false
- Default:
- group_ids:
[10,23]
(array, optional) - User’s groups ids - is_admin:
true
(boolean, optional) - Whether the user is a store admin- Default:
false
- Default:
- admin_for_group_ids:
[11,53]
(array, optional) - User’s groups ids for which he will be a group admin
- email:
Example URI
Headers
Content-Type: application/json
Body
{
"user": {
"email": "olivier@dupont.com",
"first_name": "Olivier",
"last_name": "Dupont",
"group_ids": [
1,
2
]
}
}
201
Headers
Content-Type: application/json
Body
{
"user": {
"id": 1,
"first_name": "Olivier",
"last_name": "Dupont",
"email": "olivier@dupont.com",
"unique_identifier": null,
"currrent_sign_in_at": "2015-06-17T14:26:58.124+02:00",
"is_admin": false,
"group_ids": [
1,
2
],
"authentication_methods": []
}
}
Update UserPATCH/users/{user_id}
Patch an existing user. API will return the updated user. Parameters need to be in the request body. You must fill at least one field.
- user (object)
- email:
olivier@dupont.com
(string, optional) - User’s email, must be valid to receive welcome email - last_name:
Dupont
(string, optional) - User’s last name - first_name:
Olivier
(string, optional) - User’s first name - group_ids:
[10,23]
(array, optional) - User’s groups ids - is_admin:
true
(boolean, optional) - Whether the user is a store admin- Default:
false
- Default:
- admin_for_group_ids:
[11,53]
(array, optional) - User’s groups ids for which he will be a group admin.
- email:
Example URI
- user_id
integer
(required) Example: 1The user’s id
Headers
Content-Type: application/json
Body
{
"user": {
"email": "olivier@dup.com",
"first_name": "Olive",
"last_name": "Dup",
"group_ids": [
1,
2,
33
]
}
}
200
Headers
Content-Type: application/json
Body
{
"user": {
"id": 1,
"first_name": "Olive",
"last_name": "Dup",
"email": "olivier@dup.com",
"unique_identifier": null,
"currrent_sign_in_at": "2015-06-17T14:26:58.124+02:00",
"is_admin": false,
"group_ids": [
1,
2,
33
],
"authentication_methods": []
}
}
Get UserGET/users/{user_id}
Get a user’s details.
Example URI
- user_id
integer
(required) Example: 1The user’s id
200
Headers
Content-Type: application/json
Body
{
"user": {
"id": 1,
"first_name": "Olivier",
"last_name": "Dupont",
"email": "olivier@dupont.com",
"unique_identifier": null,
"currrent_sign_in_at": "2015-06-17T14:26:58.124+02:00",
"is_admin": false,
"group_ids": [
1,
2
],
"authentication_methods": []
}
}
Delete UserDELETE/users/{user_id}
Delete a specific user. It can’t be you or a super admin.
Example URI
- user_id
integer
(required) Example: 1The user’s id
204
Headers
Content-Type: application/json
Get user's devices ¶
Get User's devicesGET/users/{user_id}/devices
Get user’s devices.
Example URI
- user_id
integer
(required) Example: 1The user’s id
200
Headers
Content-Type: application/json
Body
{
"devices": [
{
"id": 1,
"model": "GT-I9195",
"udid": "040000000",
"adid": null,
"imei": "00003000000",
"created_at": "2015-06-03T18:15:53.314+02:00",
"updated_at": "2015-06-03T18:15:53.314+02:00",
"user_id": 19
}
]
}
Search User ¶
Search UserGET/users/search{?search,per,page}
Search a user’s details with his first name, last name or email.
Example URI
- search
string
(optional) Example: dupontComplete or partial user name or email
- page
integer
(optional) Default: 1 Example: 1The number of the page to return
- per
integer
(optional) Default: 20 Example: 2The number of comments to return per page
200
Headers
Content-Type: application/json
Link: https://www.appaloosa-store.com/api/v2/store_id/search.json?api_key=api_key&page=4>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/search.json?api_key=api_key&page=2>; rel="next"
Total: 6
Per-Page: 2
Body
{
"users": [
{
"id": 1,
"first_name": "Olivier",
"last_name": "Dupont",
"email": "olivier@dupont.com",
"unique_identifier": null,
"is_admin": false,
"group_count": 6
}
}
Get Users ¶
Get UsersGET/users{?per,page}
Get the detailed users’ list of the specified store.
Example URI
- page
integer
(optional) Default: 1 Example: 3The number of the page to return
- per
integer
(optional) Default: 20 Example: 2The number of users to return per page (maximum
20
)
200
Headers
Content-Type: application/json
Link: https://www.appaloosa-store.com/api/v2/store_id/users.json?api_key=api_key&page=4>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/users.json?api_key=api_key&page=2>; rel="next"
Total: 6
Per-Page: 2
Body
{
"page": 3,
"users": [
{
"id": 1194,
"first_name": "Marcel",
"last_name": "Dupont",
"email": "marcel@dupont.com",
"unique_identifier": null,
"is_admin": false,
"group_count": 1
},
{
"id": 1193,
"first_name": "Sophie",
"last_name": "Tucker",
"email": "sophie@tucker.net",
"unique_identifier": null,
"is_admin": false,
"group_count": 2
}
]
}
Groups ¶
Group ¶
Get groupGET/groups/{group_id}
Get info on a specific group. To get the group’s id you can list groups. To get users of a specific group you have to do an other request.
Example URI
- group_id
string
(required) Example: 10Group id of your Store
200
Headers
Content-Type: application/json
Body
{
"group": {
"id": 89,
"name": "Beta group",
"is_system": false,
"number_of_users": 8,
"number_of_admins": 2
}
}
Create groupPOST/groups/
Create a group.
- group (object)
- name:
west group
(string, required) - Group name - users_can_install_previous_versions:
true
(boolean, optional) - Indicates if users will be able to download previous app versions
- name:
Example URI
Headers
Content-Type: application/json
Body
{
"group": {
"name": "east group",
"users_can_install_previous_versions": "true"
}
}
201
Headers
Content-Type: application/json
Body
{
"group": {
"id": 8949,
"name": "east group",
"color": "9fcedf",
"store_id": 582,
"created_at": "2015-07-30T11:11:24.936+02:00",
"updated_at": "2015-07-30T11:11:24.936+02:00",
"users_can_install_previous_versions": true
}
}
Update groupPATCH/groups/{group_id}
Update a specific group.
- group (object)
- name:
west group
(string, required) - Group name - users_can_install_previous_versions:
true
(boolean, optional) - Tell if users will be able to download previous app versions
- name:
Example URI
- group_id
string
(required) Example: 10Group id of your Store
Headers
Content-Type: application/json
Body
{
"group": {
"name": "west group",
"users_can_install_previous_versions": "true"
}
}
200
Headers
Content-Type: application/json
Body
{
"group": {
"id": 8948,
"name": "west group",
"color": "9fcedf",
"store_id": 582,
"created_at": "2015-07-30T11:11:24.936+02:00",
"updated_at": "2015-07-30T11:11:24.936+02:00",
"users_can_install_previous_versions": true
}
}
Delete groupDELETE/groups/{group_id}
Delete a specific group.
Example URI
- group_id
string
(required) Example: 10Group id of your Store
204
Headers
Content-Type: application/json
Get Groups ¶
Get groupsGET/groups
Get a paginated list of groups.
Example URI
200
Headers
Content-Type: application/json
Link: https://www.appaloosa-store.com/api/v2/store_id/groups.json?api_key=api_key&page=2>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/groups.json?api_key=api_key&page=2>; rel="next"
Total: 32
Per-Page: 20
Body
{
"groups": [
{
"id": 8948,
"name": "west group",
"color": "9fcedf",
"store_id": 582,
"created_at": "2015-07-30T11:11:24.936+02:00",
"updated_at": "2015-07-30T11:11:24.936+02:00",
"users_can_install_previous_versions": true
},
{
"id": 8949,
"name": "east group",
"color": "9fdedf",
"store_id": 582,
"created_at": "2015-07-30T11:12:24.936+02:00",
"updated_at": "2015-07-30T11:12:24.936+02:00",
"users_can_install_previous_versions": false
}
]
}
Get Group's users ¶
Get group's usersGET/groups/{group_id}/users{?page,per}
Get the users’ list of a specific group.
Example URI
- group_id
string
(required) Example: 10Group id of your Store
- page
integer
(optional) Default: 1 Example: 3Current results page
- per
integer
(optional) Default: 30 Example: 2Number of results per page
200
Headers
Content-Type: application/json
Link: https://www.appaloosa-store.com/api/v2/store_id/groups/group_id/users.json?api_key=api_key&page=4>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/users.json?api_key=api_key&page=2>; rel="next"
Total: 3
Per-Page: 20
Body
{
"users": [
{
"id": 11,
"first_name": "Olivier",
"last_name": "Durand",
"roles": {
"is_store_admin": true
}
},
{
"id": 12,
"first_name": "Marcel",
"last_name": "Kittel",
"roles": {
"is_store_admin": false
}
},
{
"id": 13,
"first_name": "Pauline",
"last_name": "Ferrand",
"roles": {
"is_store_admin": true
}
}
]
}
Create group from other groups ¶
Create group from groupsPOST/groups/create_from_groups
Create a group by including or excluding users of other groups. The process will be run in background.
To get an update of the process you can access #show with the group_id
returned in the response.
- group (object)
- name:
my group name
(string, required) - Group’s name - group_ids_to_add:
10,12
(string, required) - Groups’ Ids to add to the new group - group_ids_to_remove:
13,14
(string, optional) - Groups’ Ids to remove from the new group
- name:
Example URI
Headers
Content-Type: application/json
Body
{
"group": {
"name": "my iles",
"group_ids_to_add": "8939",
"group_ids_to_remove": "8942, 8939"
}
}
201
Headers
Content-Type: application/json
Body
{
"group": {
"id": 8944,
"name": "my iles",
"color": "9fcedf",
"store_id": 5282,
"created_at": "2015-07-30T11:11:24.936+02:00",
"updated_at": "2015-07-30T11:11:24.936+02:00"
},
}
Manage users in group ¶
Add usersPOST/groups/{group_id}/users
Add users to a specific group.
- group (object)
- user_ids:
[10,12]
(array, required) - Users ids you need to add
- user_ids:
Example URI
- group_id
string
(required) Example: 10Group id of your Store
Headers
Content-Type: application/json
Body
{
"group": {
"user_ids": [
10,
12
]
}
}
200
Headers
Content-Type: application/json
Body
{
"group": {
"id": 8944,
"name": "myf iles",
"color": "9fcedf",
"store_id": 5282,
"created_at": "2015-07-30T11:11:24.936+02:00",
"updated_at": "2015-07-30T11:11:24.936+02:00",
"users_can_install_previous_versions": null
},
"number_of_users_added": 2
}
Remove usersDELETE/groups/{group_id}/users
Remove users from a specific group.
- group (object)
- user_ids:
[10,12]
(array, required) - Users ids you need to remove
- user_ids:
Example URI
- group_id
string
(required) Example: 10Group id of your Store
Headers
Content-Type: application/json
Body
{
"group": {
"user_ids": [
10,
12
]
}
}
200
Headers
Content-Type: application/json
Body
{
"group": {
"id": 8944,
"name": "myf iles",
"color": "9fcedf",
"store_id": 5282,
"created_at": "2015-07-30T11:11:24.936+02:00",
"updated_at": "2015-07-30T11:11:24.936+02:00",
"users_can_install_previous_versions": null
},
"number_of_users_removed": 2
}
Devices ¶
A device belongs to a user. A user can have many devices.
Device ¶
Get DeviceGET/devices/{device_id}
Get a device’s details.
Example URI
- device_id
integer
(required) Example: 1The device’s id
200
Headers
Content-Type: application/json
Body
{
"device": {
"id": 1,
"model": "GT-I9195",
"udid": "040000000",
"adid": null,
"imei": "00003000000",
"created_at": "2015-06-03T18:15:53.314+02:00",
"updated_at": "2015-06-03T18:15:53.314+02:00",
"user_id": 19
}
}
Delete DeviceDELETE/devices/{device_id}
Delete a device.
Example URI
- device_id
integer
(required) Example: 1The device’s id
204
Headers
Content-Type: application/json
Get Devices ¶
Get DevicesGET/devices
Get devices of your organisation.
Example URI
200
Headers
Content-Type: application/json
Link: <https://www.appaloosa-store.com/api/v2/store_id/devices.json?api_key=api_key&page=3>; rel="last", <https://www.appaloosa-store.com/api/v2/store_id/devices?api_key=api_key&page=2>; rel="next"
Total: 10
Per-Page: 2
Body
{
"devices": [
{
"id": 1,
"model": "GT-I9195",
"udid": "040000000",
"adid": null,
"imei": "00003000000",
"created_at": "2015-06-03T18:15:53.314+02:00",
"updated_at": "2015-06-03T18:15:53.314+02:00",
"user_id": 19
},
{
"id": 2,
"model": "GT-I9195",
"udid": "040200000",
"adid": null,
"imei": "00003020000",
"created_at": "2015-06-03T18:15:53.314+02:00",
"updated_at": "2015-06-03T18:15:53.314+02:00",
"user_id": 12
}
]
}
Categories ¶
A category will be linked to your application. Each category is available to the store’s apps.
Get Categories ¶
Get CategoriesGET/categories
Get categories of the store. The is_stock
field means that the category is generic for all stores. Contact support if you want to disable generic categories.
Example URI
200
Headers
Content-Type: application/json
Body
{
"categories": [
{
"id": 1,
"label": "Commerce",
"is_stock": true,
"created_at": "2014-10-21T14:33:39.642+02:00",
"updated_at": "2014-10-21T14:33:39.642+02:00"
},
{
"id": 2,
"label": "Catalogues",
"is_stock": true,
"created_at": "2014-10-21T14:33:39.845+02:00",
"updated_at": "2014-10-21T14:33:39.845+02:00"
}
]
}
Category ¶
Create CategoryPOST/categories/
Create a category for the store.
- category (object)
- label:
Financial
(string, required) - Name of the category
- label:
Example URI
Headers
Content-Type: application/json
Body
{
"category": {
"label": "Financial"
}
}
201
Headers
Content-Type: application/json
Body
{
"category": {
"id": 36,
"label": "Financial",
"is_stock": false,
"created_at": "2015-08-21T14:51:24.285+02:00",
"updated_at": "2015-08-21T14:51:24.306+02:00"
}
}
Edit categoryPATCH/categories/{category_id}
Edit a category’s label name.
- category (object)
- label:
Management
(string, required) - Name of the category
- label:
Example URI
- category_id
integer
(required) Example: 36The category’s id
Headers
Content-Type: application/json
Body
{
"category": {
"label": "Management"
}
}
200
Headers
Content-Type: application/json
Body
{
"category": {
"id": 36,
"label": "Management",
"is_stock": false,
"created_at": "2015-08-21T14:51:24.285+02:00",
"updated_at": "2015-08-21T14:51:24.306+02:00"
}
}
Delete categoryDELETE/categories/{category_id}
Delete a category.
Example URI
- category_id
integer
(required) Example: 36The category’s id
204
Headers
Content-Type: application/json