App bundle lists can be created, edited and viewed using the api. When you have created an app bundle list, you can attach that list to a demand or supply tag for targeting.
Table of Contents
...
App bundle lists can be created, edited and viewed using the api. When you have created an app bundle list, you can attach that list to a demand or supply tag for targeting.
Table of Contents
Creating an App Bundle List
SDK
Use tab completion with SDK to auto-complete function names or show field options!
Code Block | ||
---|---|---|
| ||
In [1]: import springserve
In [2]: app_bundle_list = springserve.app_bundle_lists.new({"name":"My Test App Bundle List"})
In [3]: print app_bundle_list.ok, app_bundle_list.id
True 9 |
REST API
POST /api/v0/app_bundle_lists
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Body (example)
{ "name" : "My App Bundle List" , "description": "My description" } |
Required parameters: name
Response
Status code 200
Code Block |
---|
{
"account_id": 1,
"active": True,
"created_at": "2018-02-20T14:05:34.029Z",
"description": "My description",
"id": 9,
"name": "My Test App Bundle List",
"partial_match": False
} |
Get an App Bundle List
SDK
Use tab completion with SDK to auto-complete function names or show field options!
Code Block | ||
---|---|---|
| ||
In [1]: import springserve In [2]: app_bundle_list = springserve.app_bundle_lists.new({"name":"My Test App Bundle List"}get(9) In [32]: print app_bundle_list.ok, app_bundle_list.id True 9name "My Test App Bundle List" |
REST API
POST GET /api/v0/app_bundle_lists/<id>
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Body (example)
...
{
"name"
:
"My App Bundle List"
,
}
Required parameters: name
Authorization "yourAuthToken" |
Response
Status code 200
Code Block |
---|
{
"account_id": 1,
"active": True,
"created_at": "2018-02-20T14:05:34.029Z",
"description": "My description",
"id": 9,
"name": "My Test App Bundle List",
"partial_match": False
} |
Get an App Bundle List
SDK
Code Block | ||
---|---|---|
| ||
In [1]: app_bundle_list = springserve.app_bundle_lists.get(9)
In [2]: print app_bundle_list.name
"My Test App Bundle List" |
REST API
GET /api/v0/app_bundle_lists/<id>
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Response
Status code 200
Code Block |
---|
{
"account_id": 1,
"active": True,
"created_at": "2018-02-20T14:05:34.029Z",
"description": "My description",
"id": 9,
"name": "My Test App Bundle List",
"partial_match": False
} |
Add App Bundles
SDK
Code Block |
---|
In [1]: app_bundle_list = springserve.app_lists.get(9)
In [2]: add = app_bundle_list.add_bundles(['app1', 'app2'])
In [3]: print add.ok
True |
REST API
...
": "My Test App Bundle List",
"partial_match": False
} |
Add App Bundles
SDK
Code Block |
---|
In [1]: app_bundle_list = springserve.app_lists.get(9)
In [2]: add = app_bundle_list.add_bundles(['app1', 'app2'])
In [3]: print add.ok
True |
REST API
POST /api/v0/app_bundle_lists/<id>/app_bundles/bulk_create
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Body (example)
Code Block |
---|
{
"app_bundles": ["app1", "app2"]
}
|
Response
Status code 200
Code Block |
---|
{"created": True} |
Add App Bundles from a File
Appends app bundles in the csv file to the list
SDK
Code Block |
---|
In [1]: app_bundle_list = springserve.app_bundle_lists.get(<id>)
In [2]: add = app_bundle_list.bulk_create(file_path='/<filepath>/app_bundle_list.csv')
In [3]: add.ok
Out [3]: True
In [4]: print add.created
True |
REST API
POST /api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_create
Code Block |
---|
curl --location --request POST 'https://console.springserve.com/api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_create' \
--header 'Content-Type: application/json' \
--header 'Authorization: <yourAuthToken>' \
--form 'csv_file=@"/<filepath>/appending_app_bundle_list.csv"'
|
Response
Status code 201
Code Block |
---|
{"created": True} |
Replace Entire App Bundle List
REST API
POST /api/v0/app_bundle_lists/<id>/app_bundles/bulk_createreplace
Headers
Code Block |
---|
Content-Type application/json Authorization "yourAuthToken" |
...
Code Block |
---|
{ "app_bundles": ["app1", "app2"] } |
Response
Status code 200201
Code Block |
---|
{"created": True} |
...
Replace Entire App Bundles
...
with a File
Appends Replaces app bundle list with the app bundles in the csv file to the list
REST API
POST /api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_create
Code Block |
---|
curl --location --request POST 'https://console.springserve.com/api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_create' \
--header 'Content-Type: application/json' \
--header 'Authorization: <yourAuthToken>' \
--form 'csv_file=@"/<filepath>/appending_app_bundle_list.csv"'
|
Response
Status code 201
Code Block |
---|
{"created": True} |
Replace Entire App Bundle List
REST API
POST
SDK
Code Block |
---|
In [13]: app_bundle_list = springserve.app_bundle_lists.get(<id>)
In [14]: resp = app_bundle_list.bulk_replace(file_path='/<filepath>/replacement_app_bundle_list.csv')
In [15]: resp.ok
Out [15]: True |
REST API
POST /api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_replace
Code Block |
---|
curl --location --request POST 'https://console.springserve.com/api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_replace |
...
Headers
Code Block |
---|
' \ --header 'Content-Type: application/json' \ --header 'Authorization "yourAuthToken" |
Body (example)
Code Block |
---|
{ "app_bundles": ["app1", "app2"] } : <yourAuthToken>' \ --form 'csv_file=@"/<filepath>/replacement_app_bundle_list.csv"' |
Response
Status code 201
Code Block |
---|
{"created": True} |
Replace Entire App Bundles with a File
Replaces app bundle list with the app bundles in the csv file
REST API
POST /api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_replace
Code Block |
---|
curl --location --request POST 'https://console.springserve.com/api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_replace' \
--header 'Content-Type: application/json' \
--header 'Authorization: <yourAuthToken>' \
--form 'csv_file=@"/<filepath>/replacement_app_bundle_list.csv"'
|
Response
Status code 201
Code Block |
---|
{"created": True} |
Get App Bundles in App Bundle List
SDK
Code Block |
---|
In [15]: resp = app_bundle_list.get_bundles()
In [16]: for bundle in resp:
....: print bundle.app_bundle
....:
app1
app2 |
REST API
GET /api/v0/app_bundle_lists/<id>/app_bundles
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Response (note you need to pagenate)
Status code 200
Code Block |
---|
[
{"app_bundle": "app1"},
{"app_bundle": "app2"}
] |
Remove App Bundles
SDK
Code Block |
---|
In [13]: app_bundle_list = springserve.app_bundle_lists.get(9)
In [14]: resp = app_bundle_list.remove_bundles(['app2'])
In [15]: resp.ok
Out [15]: True
In [16]: print resp.deleted
True |
REST API
DELETE /api/v0/app_bundle_lists/<id>/app_bundles/bulk_delete
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Body (example)
Code Block |
---|
{
"app_bundles": ["app2"]
}
|
Response (note you need to paginate)
Status code 200
Code Block |
---|
{"deleted": True} |
Remove App Bundles Using a File
...
Get App Bundles in App Bundle List
SDK
Code Block |
---|
In [15]: resp = app_bundle_list.get_bundles()
In [16]: for bundle in resp:
....: print bundle.app_bundle
....:
app1
app2 |
REST API
GET /api/v0/app_bundle_lists/<id>/app_bundles
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Response (note you need to pagenate)
Status code 200
Code Block |
---|
[
{"app_bundle": "app1"},
{"app_bundle": "app2"}
] |
Remove App Bundles
SDK
Code Block |
---|
In [13]: app_bundle_list = springserve.app_bundle_lists.get(9)
In [14]: resp = app_bundle_list.remove_bundles(['app2'])
In [15]: resp.ok
Out [15]: True
In [16]: print resp.deleted
True |
REST API
DELETE /api/v0/app_bundle_lists/<id>/app_bundles/bulk_delete
Headers
Code Block |
---|
Content-Type application/json
Authorization "yourAuthToken" |
Body (example)
Code Block |
---|
{
"app_bundles": ["app2"]
}
|
Response (note you need to paginate)
Status code 200
Code Block |
---|
{"deleted": True} |
Remove App Bundles Using a File
Removes app bundles in the csv file from the list
SDK
Code Block |
---|
In [13]: app_bundle_list = springserve.app_bundle_lists.get(<id>)
In [14]: resp = app_bundle_list.bulk_delete(file_url='/<filepath>/deletion_app_bundle_list.csv')
In [15]: resp.ok
Out [15]: True
In [16]: resp.deleted
Out [16]: True |
REST API
DELETE /api/v0/app_bundle_lists/<id>/app_bundles/file_bulk_delete
Code Block |
---|
curl --location --request POST 'https://console.springserve.com/api/v0/app_bundle_lists/<id>/app_bundless/file_bulk_delete' \ --header 'Content-Type: application/json' \ --header 'Authorization: <yourAuthToken>' \ --form 'csv_file=@"/<filepath>/delete_these_app_bundles.csv"' |
Response
Status code 200
Code Block |
---|
{"deleted": True} |
Attach to a Demand or Supply Tag
To attach an app bundle list to a supply or demand tag you must set the following fields on a supply or demand tag
- app_bundle_list_ids → this is a list of app bundle list ids that you want to target on the supply or demand tag
- app_bundle_targeting → Whether or not to treat it like an 'Allowlist' or 'Blocklist'
SDK
Code Block |
---|
In [18]: tag = springserve.demand_tags.get(2) In [19]: tag.app_bundle_list_ids.append(9) In [20]: tag.app_bundle_targeting = "Allowlist" In [21]: print tag.save().ok True |
REST API
See documentation on the Supply and Demand Tag APIs