Customer API for the accelerator

Group Customer

This section groups opt_pipeline Customer resources.

Customers Collection [/presentation-api/v1/customer/]

A Collection of Customers.

Retrieve all Customers [GET]

Retrieves all customers.

Customer [/presentation-api/v1/customer/{customer_id}/]

Retrieve Customer [GET]

Returns a specific Customer.

Update Customer [PUT]

Update the Customer.

Delete Customer [DELETE]

Delete a Customer. The current user must be the same user who created the Customer. It returns the deleted Customer on success.

Group DeploymentSite

This section groups opt_pipeline DeploymentSite resources.

DeploymentSites Collection [/presentation-api/v1/deployment-site/]

A Collection of DeploymentSite.

Create a DeploymentSite [POST]

Create a new DeploymentSite object.

Retrieve all DeploymentSites [GET]

Retrieves all deployment sites.

DeploymentSite [/presentation-api/v1/deployment-site/{deployment_site_id}/]

Retrieve a DeploymentSite [GET]

Returns a specific DeploymentSite.

Delete a DeploymentSite [DELETE]

Delete a DeploymentSite. The current user must be the same user who created the DeploymentSite. It returns the deleted DeploymentSite on success.

Group Domain

This section groups opt_pipeline Domain resources.

Domains Collection [/presentation-api/v1/domain/]

A Collection of Domain.

Create a Domain [POST]

Create a new Domain object.

Retrieve all Domains [GET]

Retrieves all domains.

Domain [/presentation-api/v1/domain/{domain_id}/]

Retrieve a Domain [GET]

Returns a specific Domain.

Update a Domain [PUT]

Updates a specific Domain.

Updates a specific Domain to link it with the requested deployment site.

Delete a Domain [DELETE]

Delete a Domain. The current user must be the same user who created the Domain. It returns the deleted Domain on success.

Group IncomingLogs

This section groups opt_pipeline incoming logs of customer's domains resources.

IncomingLogs Collection [/presentation-api/v1/incominglogs/]

A Collection of incoming logs.

Retrieve Incoming Logs [GET]

Retrieves a set of incoming logs of customer's domains.

Data Structures

DeploymentLogs

DomainLogs

Log

Group SymmetricEncryptionKey

This section groups opt_pipeline SymmetricEncryptionKey resources.

SymmetricEncryptionKey Collection [/presentation-api/v1/symenckeys/]

A Collection of SymmetricEncryptionKey.

Create a SymmetricEncryptionKey [POST]

Create a new SymmetricEncryptionKey object.

Retrieve all SymmetricEncryptionKey [GET]

Retrieves all SymmetricEncryptionKey.

SymmetricEncryptionKey [/presentation-api/v1/symenckeys/{symenckey_id}/]

Retrieve a SymmetricEncryptionKey [GET]

Returns a specific SymmetricEncryptionKey.

Update a SymmetricEncryptionKey [PUT]

Updates a specific SymmetricEncryptionKey.

Group DevloveFile

This section groups opt_pipeline DevloveFile resources.

DevloveFile Collection [/presentation-api/v1/{domain_name}/devlove/{viewset_name}/]

Create a DevloveFile [POST]

Create new DevloveFile object.

Retrieve all DevloveFile [GET]

Retrieves all DevloveFile.

DevloveFile [/presentation-api/v1/{domain_name}/devlove/{viewset_name}/{devlove_id}/]

Retrieve a DevloveFile [GET]

Returns a specific DevloveFile.

Update a DevloveFile [PUT]

Updates a specific DevloveFile.

Data Structures

DevloveFile (object)

Group DevloveFileValidate

This section groups opt_pipeline devlove file validate action.

DevloveFileValidate [/presentation-api/v1/devlove/validate/]

Validate the content of a devlove file configuration.

Execute a DevloveFileValidate [POST]

Validate the content using schema.

Group ServiceStatus

This section groups the accelerator services status.

ServiceStatus [/presentation-api/v1/{domain_name}/status/]

A list of services status per deployment site.

Retrieve ServiceStatus [GET]

Retrieves a set of services status per deployment site.

Group ImportDevloveAndViews

This section groups opt_pipeline import devlove file and views endpoint.

ImportDevloveAndViews [/presentation-api/v1/import-viewset/{domain}/{deployment_id}/{viewset}/]

Start import devlove file and views from customer's deployment site

Exec ImportDevloveAndViews [POST]

Execute task and retrieve the id

Group CustomerViewsetVersion

This section groups opt_pipeline customer's viewset versions.

CustomerViewsetVersion Collection [/presentation-api/v1/active-viewset/{domain}/]

A Collection of CustomerViewsetVersion.

Retrieve all CustomerViewsetVersion [GET]

Get all customer's viewset versions

CustomerViewsetVersion [/presentation-api/v1/active-viewset/{domain}/{viewset_id}/]

Retrieve CustomerViewsetVersion [GET]

Returns a specific CustomerViewsetVersion.

Active CustomerViewsetVersion [PUT]

Sets a specific CustomerViewsetVersion as active viewset.

Group ScPackVersion

This section groups opt_pipeline Shimmercat pack versions.

ScPackVersion Download [/presentation-api/v1/download/sc_pack/]

Retrieve ScPackVersion [GET]

Returns the latest ScPackVersion

ScPackVersion Upload [/presentation-api/v1/upload/sc_pack/{version}/]

Create ScPackVersion [POST]

Create new entry of ScPackVersion

From Linux shell we could use the curl tool as the example below:

  $ USER="username"
  $ PASSWD="password"
  $ VERSION="0.1.9"
  $ FILENAME="sc_pack-${VERSION}-py3-none-any.whl"
  $ URL="https://accelerator.shimmercat.com/presentation-api/v1/upload/sc_pack/$VERSION/"
  $ curl --user "$USER:$PASSWD" \
         -X POST \
         -H "Content-Type: multipart/form-data" \
         -F "file=@$FILENAME" \
         $URL

Group Certificate

This section groups opt_pipeline Certificate resources.

Certificate [/presentation-api/v1/upload/certificates/{deployment_name}/]

Upload Certificate [POST]

Upload the certificate.

Group UserProfileView

This section groups opt_pipeline user's data API view.

UserProfileView [/presentation-api/v1/user-profile/{pk}/]

Retrieve UserProfileView [GET]

Returns a specific User data.

Update UserProfileView [PUT]

Update User's first name, last name, email and password.

Group AuthenticationToken

This section groups how to get an authentication token to use the accelerator.

AuthenticationToken [/presentation-api/v1/trial/]

Create AuthenticationToken [POST]

Creates the AuthenticationToken and returns it.

Group Bot

This section groups opt_pipeline Bots handling.

IsIPAddressBadBot [/presentation-api/v1/is-bad-bot/{ip}/]

IsIPAddressBadBot [GET]

Checks if the ip address was already registered in our database as a bad bot. An example of a request using curl:

curl -X GET https://accelerator.shimmercat.com/presentation-api/v1/is-bad-bot/127.0.0.1/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json'

IsIPAddressRangeBadBot [/presentation-api/v1/is-bad-bot/{iprange}/]

IsIPAddressRangeBadBot [GET]

Checks if the ip address range was already registered in our database as a bad bot. An example of a request using curl:

curl -X GET https://accelerator.shimmercat.com/presentation-api/v1/is-bad-bot/69.208.0.0_31/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json'

ListCustomerBadBotsView [/presentation-api/v1/list-bad-bots/]

ListCustomerBadBotsView [GET]

Get the list of bad bots reported by the customer. An example of a request using curl:

curl -X GET https://accelerator.shimmercat.com/presentation-api/v1/list-bad-bots/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json'

MarkIpAsBadBotView [/presentation-api/v1/mark-as-bad-bot/{ip}/]

MarkIpAsBadBotView [POST]

Mark the ip address as bad bot. You need to specify a domain which you want to add this bot to, and the bot name you will attach that ip address to. If a bot with that name does not exist for one of your domains we will add a new one with the specified name. An example using curl about how to request that endpoint to block the ip address 127.1.1.1:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/mark-as-bad-bot/127.1.1.1/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"attach_to_bot": "test", "attach_to_domain": "www.shimmercat.tests.com"}'

MarkIpRangeAsBadBotView [/presentation-api/v1/mark-as-bad-bot/{iprange}/]

MarkIpRangeAsBadBotView [POST]

Mark the ip address range as bad bot. You need to specify a domain which you want to add this bot to, and the bot name you will attach that ip address range to. If a bot with that name does not exist for one of your domains we will add a new one with the specified name. An example using curl about how to request that endpoint to block all the ip address on the range 69.208.0.0/31:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/mark-as-bad-bot/69.208.0.0_31/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"attach_to_bot": "test", "attach_to_domain": "www.shimmercat.tests.com"}'

Please notice that we use _ instead of / when sending the ip range on the URL.

RemoveIpFromBadBotListView [/presentation-api/v1/remove-ip-from-bad-bot-list/{ip}/]

RemoveIpFromBadBotListView [POST]

Remove the ip address from the bad bots list. You need to specify a domain from which you want to remove this bot from, and the bot name you will remove that ip address from. An example using curl about how to request that endpoint to remove the ip address 127.1.1.1 from the black list:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/remove-ip-from-bad-bot-list/127.1.1.1/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"remove_from_bot": "test", "remove_from_domain": "www.shimmercat.tests.com"}'

RemoveIpRangeFromBadBotListView [/presentation-api/v1/remove-ip-from-bad-bot-list/{iprange}/]

RemoveIpRangeFromBadBotListView [POST]

Remove the ip address range from the bad bots list. You need to specify a domain from which you want to remove this bot from, and the bot name you will remove that ip address range from. An example using curl about how to request that endpoint to remove the ip address range 69.208.0.0/31:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/remove-ip-from-bad-bot-list/69.208.0.0_31/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"remove_from_bot": "test", "remove_from_domain": "www.shimmercat.tests.com"}'

Please notice that we use _ instead of / when sending the ip range on the URL.

IsIPAddressVIPBot [/presentation-api/v1/is-vip-bot/{ip}/]

IsIPAddressVIPBot [GET]

Checks if the ip address was already registered in our database as a VIP bot. An example of a request using curl:

curl -X GET https://accelerator.shimmercat.com/presentation-api/v1/is-vip-bot/127.0.1.1/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json'

IsIPAddressRangeVIPBot [/presentation-api/v1/is-vip-bot/{iprange}/]

IsIPAddressRangeVIPBot [GET]

Checks if the ip address range was already registered in our database as a VIP bot. An example of a request using curl:

curl -X GET https://accelerator.shimmercat.com/presentation-api/v1/is-vip-bot/69.209.0.0_31/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json'

ListCustomerVIPBotsView [/presentation-api/v1/list-vip-bots/]

ListCustomerVIPBotsView [GET]

Get the list of VIP bots reported by the customer. An example of a request using curl:

curl -X GET https://accelerator.shimmercat.com/presentation-api/v1/list-vip-bots/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json'

MarkIpAsVIPBotView [/presentation-api/v1/mark-as-vip-bot/{ip}/]

MarkIpAsVIPBotView [POST]

Mark the ip address as VIP bot. You need to specify a domain which you want to add this bot to, and the bot name you will attach that ip address to. If a bot with that name does not exist for one of your domains we will add a new one with the specified name. An example using curl about how to request that endpoint to white-list the ip address 127.1.2.1:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/mark-as-vip-bot/127.1.2.1/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"attach_to_bot": "test", "attach_to_domain": "www.shimmercat.tests.com"}'

MarkIpRangeAsVIPBotView [/presentation-api/v1/mark-as-vip-bot/{iprange}/]

MarkIpRangeAsVIPBotView [POST]

Mark the ip address range as VIP bot. You need to specify a domain which you want to add this bot to, and the bot name you will attach that ip address range to. If a bot with that name does not exist for one of your domains we will add a new one with the specified name. An example using curl about how to request that endpoint to white-list all the ip address on the range 69.209.0.0/31:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/mark-as-vip-bot/69.209.0.0_31/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"attach_to_bot": "test", "attach_to_domain": "www.shimmercat.tests.com"}'

Please notice that we use _ instead of / when sending the ip range on the URL.

RemoveIpFromVIPBotListView [/presentation-api/v1/remove-ip-from-vip-bot-list/{ip}/]

RemoveIpFromVIPBotListView [POST]

Remove the ip address from the VIP bots list. You need to specify a domain from which you want to remove this bot from, and the bot name you will remove that ip address from. An example using curl about how to request that endpoint to remove the ip address 127.1.2.1 from the white list:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/remove-ip-from-vip-bot-list/127.1.2.1/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"remove_from_bot": "test", "remove_from_domain": "www.shimmercat.tests.com"}'

RemoveIpRangeFromVIPBotListView [/presentation-api/v1/remove-ip-from-vip-bot-list/{iprange}/]

RemoveIpRangeFromVIPBotListView [POST]

Remove the ip address range from the VIP bots list. You need to specify a domain from which you want to remove this bot from, and the bot name you will remove that ip address range from. An example using curl about how to request that endpoint to remove the ip address range 69.209.0.0/31:

curl -X POST https://accelerator.shimmercat.com/presentation-api/v1/remove-ip-from-vip-bot-list/69.209.0.0_31/ -H 'Authorization: Token <your_authentication_token>' -H 'Content-type: application/json' -d '{"remove_from_bot": "test", "remove_from_domain": "www.shimmercat.tests.com"}'

Please notice that we use _ instead of / when sending the ip range on the URL.