Stax Core API v20190206
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
The Stax API is organised around REST, uses resource-oriented URLs, return responses are JSON and uses standard HTTP response codes, authentication and verbs.
Base URLs:
Terms of service Web: Support
Authentication
- API Key (sigv4)
- Parameter Name: Authorization, in: header.
Accounts
Update Account Type members
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/account-types/members', headers = headers)
print(r.json())
PUT /20190206/account-types/members
Move Accounts between Account Types.
Body parameter
{
"Members": [
{
"AccountId": "B4407766-E821-450D-B7C8-9EA38B58C432",
"AccountTypeId": "B4407766-E821-450D-B7C8-9EA38B58C432"
}
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | accounts.UpdateAccountTypeMembers | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
403 | Forbidden | The response returned if the request is forbidden. | Error |
404 | Not Found | The response returned if the request is unsuccessful. | Error |
Update Account Type Policies
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/account-types/policies', headers = headers)
print(r.json())
PUT /20190206/account-types/policies
Add Policies to Account types or Remove Policies from Account Types. Duplicate policy additions or removals are ignored
Body parameter
{
"AddPolicies": [
{
"AccountTypeId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"PolicyId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
],
"RemovePolicies": []
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | accounts.UpdatePolicies | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
Fetch Accounts
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/accounts/{account_id}', headers = headers)
print(r.json())
GET /20190206/accounts/{account_id}
Return all AWS Accounts within your Stax Organisation.
Optionally, return the requested AWS Account.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
account_id | path | string | true | The UUID of the Account to return. |
account_names | query | string | false | The list of Account Names you want returned, comma delimited. |
filter | query | string | false | The Account statuses to return, comma delimited. |
id_filter | query | string | false | List of Account IDs you want returned, comma delimited. |
account_type_filter | query | string | false | The Account Type IDs to return, comma delimited. |
offset | query | integer | false | Pagination - The page number to return. |
limit | query | integer | false | Pagination - The number of items per page to return. |
sort | query | string | false | The field to sort on. |
sort_order | query | string | false | The sort order - up or down? |
include_tags | query | boolean | false | Do you want all the Tags? |
Detailed descriptions
filter: The Account statuses to return, comma delimited.
Filter options available: INITIALIZING, ACTIVE, SUSPENDED, MAINTENANCE, AWSERROR, CLOSED, OFFBOARDED, DISCOVERED, ERROR.
account_type_filter: The Account Type IDs to return, comma delimited.
Enumerated Values
Parameter | Value |
---|---|
sort_order | ASC |
sort_order | DESC |
Example responses
200 Response
{
"Accounts": [
{
"AWSLoginURLs": {
"admin": "string",
"developer": "string",
"readonly": "string"
},
"AccountType": "string",
"AllocatedTS": "2018-10-11T01:05:45.000Z",
"AssuranceState": "ACTIVE",
"AssuranceStateReason": "AWS GuardDuty Hardening has failed",
"AwsAccountId": "012345678901",
"AwsAccountStatusId": "string",
"AwsLoginURL": "string",
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Email": "stax.user@example.com",
"FactoryVersion": "f8cf81b",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LatestCost": 72.52,
"ModifiedTS": "2019-03-11T01:11:40.000Z",
"Name": "bakery",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrgsOuId": "string",
"Origin": "STAX",
"Status": "ACTIVE",
"StaxCreated": true,
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
],
"Paging": {
"NextOffset": 20,
"PrevOffset": null,
"Total": 100
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.ReadAccounts |
Create Account
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/accounts', headers = headers)
print(r.json())
POST /20190206/accounts
Create a new Stax-hardened AWS Account in your Stax Organisation.
Body parameter
{
"AccountType": "string",
"Name": "bakery",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | accounts.CreateAccount | true | none |
Example responses
200 Response
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"Account": {
"AccountName": "automation",
"AccountType": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "automation",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Tags": {
"CostCode": "12345"
}
},
"Message": "string",
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string",
"TraceId": "string"
},
"DetailType": "string",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.UpdateAccountResponse |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
Discover Accounts
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/accounts/discover/{aws_account_id}', headers = headers)
print(r.json())
POST /20190206/accounts/discover/{aws_account_id}
Discover all AWS Accounts associated with the org into stax
Optionally attempt to rediscover an AWS Account that failed discovery
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
aws_account_id | path | string | true | The AWS Account Id of the Account to discover. |
Example responses
200 Response
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string",
"Detail": {
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.DiscoverAccountsResponse |
400 | Bad Request | The response returned if the request is unsuccessful due to user input. | Error |
403 | Forbidden | The response returned if the account given has already been discovered. | Error |
404 | Not Found | The response returned if the requested account cannot be discovered. | Error |
Onboard AWS Account
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/accounts/onboard', headers = headers)
print(r.json())
POST /20190206/accounts/onboard
Onboard an existing AWS Account to your Stax Organisation.
Body parameter
{
"AccountType": "Development",
"AwsAccountId": "012345678901",
"Name": "bakery",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | accounts.OnboardAccount | true | none |
Example responses
200 Response
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"Account": {
"AccountName": "automation",
"AccountType": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "automation",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Tags": {
"CostCode": "12345"
}
},
"Message": "string",
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string",
"TraceId": "string"
},
"DetailType": "string",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.UpdateAccountResponse |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The response returned if the request is unsuccessful. | Error |
Fetch Account Types
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/accounts/types/{account_type_id}', headers = headers)
print(r.json())
GET /20190206/accounts/types/{account_type_id}
Return all the Account Types in your Stax Organisation.
Optionally, return the requested Account Type.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
account_type_id | path | string | true | The UUID of the Account Type. |
id_filter | query | string | false | List of AccountType IDs you want returned, comma delimited. |
Example responses
200 Response
{
"AccountTypes": [
{
"Accounts": [],
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Development",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policies": [],
"Roles": [],
"Status": "ACTIVE",
"StaxCreated": true
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.ReadAccountTypes |
Create Account Type
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/accounts/types', headers = headers)
print(r.json())
POST /20190206/accounts/types
Create a new Account Type within your Stax Organisation.
Account Types can be used to set Policies on Accounts and control Group access.
Body parameter
{
"Name": "Development"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | accounts.CreateAccountType | true | none |
Example responses
200 Response
{
"Detail": {
"AccountType": {
"Accounts": [],
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Development",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policies": [],
"Roles": [],
"Status": "ACTIVE",
"StaxCreated": true
},
"Message": "string",
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.CreateAccountTypeResponse |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The response returned if the request is forbidden. | Error |
Update AWS access
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/accounts/types/access', headers = headers)
print(r.json())
PUT /20190206/accounts/types/access
Adjust the AWS role permissions between Account Types and Groups.
Body parameter
{
"AddRoles": [
{
"AccountTypeId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"GroupId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"RoleName": "admin"
}
],
"RemoveRoles": []
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | accounts.UpdateAccountTypeAccess | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
Delete Account Type
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/accounts/types/{account_type_id}', headers = headers)
print(r.json())
DELETE /20190206/accounts/types/{account_type_id}
Delete an Account Type from your Stax Organisation.
An Account Type can only be deleted if there are no attached Accounts.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
account_type_id | path | string | true | The UUID of the Catalogue item. |
Example responses
200 Response
{
"AccountTypes": [
{
"Accounts": [],
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Development",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policies": [],
"Roles": [],
"Status": "ACTIVE",
"StaxCreated": true
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.ReadAccountTypes |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The response returned if the request is forbidden. | Error |
Update Account Type
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/accounts/types/{account_type_id}', headers = headers)
print(r.json())
PUT /20190206/accounts/types/{account_type_id}
Change the details of an Account Type, such as the name.
Body parameter
{
"Name": "Development"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
account_type_id | path | string | true | The UUID of the Account Type to update. |
body | body | accounts.UpdateAccountType | true | none |
Example responses
200 Response
{
"AccountTypes": [
{
"Accounts": [],
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Development",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policies": [],
"Roles": [],
"Status": "ACTIVE",
"StaxCreated": true
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.ReadAccountTypes |
403 | Forbidden | The response returned if the request is forbidden. | Error |
404 | Not Found | The response returned if the request is unsuccessful. | Error |
Update Account
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/accounts/{account_id}', headers = headers)
print(r.json())
PUT /20190206/accounts/{account_id}
Change the details of an Account, such as the name, tags or Account Type
Body parameter
{
"AccountType": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Name": "bakery",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
account_id | path | string | true | The UUID of the Account to update. |
body | body | accounts.UpdateAccount | false | none |
Example responses
200 Response
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"Account": {
"AccountName": "automation",
"AccountType": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "automation",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Tags": {
"CostCode": "12345"
}
},
"Message": "string",
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string",
"TraceId": "string"
},
"DetailType": "string",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | accounts.UpdateAccountResponse |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The response returned if the request is forbidden. | Error |
Team
Fetch API Tokens
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/api-tokens/{AccessKey}', headers = headers)
print(r.json())
GET /20190206/api-tokens/{AccessKey}
Return a list of all API Tokens within your Stax Organisation.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
AccessKey | path | string | true | The UUID of the Token to return. |
id_filter | query | string | false | List of Access Keys you want returned, comma delimited. |
status | query | string | false | List of API Token statuses you want returned, comma delimited. |
Detailed descriptions
status: List of API Token statuses you want returned, comma delimited.
Filter Options available: ACTIVE, DELETED
Example responses
200 Response
{
"ApiTokens": [
{
"AccessKey": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "This token is for deployment pipelines in Gitlab to deploy to dev/test environments",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "gitlab-cicd",
"Role": "api_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.ReadApiTokens |
Create API Token
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/api-tokens', headers = headers)
print(r.json())
POST /20190206/api-tokens
Create an API Token for API/SDK access within your Stax Organisation.
Body parameter
{
"Description": "This token is for deployment pipelines in Gitlab to deploy to dev/test environments",
"Name": "gitlab-cicd",
"Role": "api_admin",
"StoreToken": true,
"Tags": {
"CostCode": "12345"
},
"TokenKeyId": "alias/my-custom-key"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | teams.CreateApiToken | true | none |
Example responses
200 Response
{
"ApiTokens": [
{
"AccessKey": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "This token is for deployment pipelines in Gitlab to deploy to dev environments",
"Name": "gitlab-cicd",
"Role": "api_admin",
"SecretKey": "stringstringstringstringstringst",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.CreateApiTokenResponse |
Delete API Token
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/api-tokens/{AccessKey}', headers = headers)
print(r.json())
DELETE /20190206/api-tokens/{AccessKey}
Delete an API Token from your Stax Organisation.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
AccessKey | path | string | true | The UUID of the User to delete. |
Example responses
200 Response
{
"ApiTokens": [
{
"AccessKey": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "This token is for deployment pipelines in Gitlab to deploy to dev/test environments",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "gitlab-cicd",
"Role": "api_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.UpdateApiTokenResponse |
Update API Token
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/api-tokens/{AccessKey}', headers = headers)
print(r.json())
PUT /20190206/api-tokens/{AccessKey}
Update a Token for API/SDK access within your Stax Organisation.
Body parameter
{
"Description": "This token is for deployment pipelines in Gitlab to deploy to dev/test environments",
"Role": "api_admin",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
AccessKey | path | string | true | The UUID of the API Token to update. |
body | body | teams.UpdateApiToken | true | none |
Example responses
200 Response
{
"ApiTokens": [
{
"AccessKey": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "This token is for deployment pipelines in Gitlab to deploy to dev/test environments",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "gitlab-cicd",
"Role": "api_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.UpdateApiTokenResponse |
Create Stax User
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/idam/user', headers = headers)
print(r.json())
POST /20190206/idam/user
Create a new Stax user within your Stax Organisation.
Stax Users have permission to access the AWS Console/CLI for AWS Accounts that exist within a Stax Organisation.
Body parameter
{
"Email": "stax.user@example.com",
"FirstName": "John",
"LastName": "Doe",
"PhoneNumber": "+61491570006",
"Role": "customer_admin",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | teams.CreateUser | true | none |
Example responses
200 Response
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string",
"Detail": {
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.CreateUserResponse |
403 | Forbidden | The response returned if the request is unsuccessful. | Error |
Re-invite Stax user
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/idam/user/resend-invite/{user_id}', headers = headers)
print(r.json())
PUT /20190206/idam/user/resend-invite/{user_id}
Re-send the verification email for a Stax User.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
user_id | path | string | true | The UUID of the IDAM User to re-invite. |
Example responses
200 Response
{
"DetailType": "string",
"Detail": {
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.UpdateUserEvent |
400 | Bad Request | The response returned if the user has already verified their email address. | Error |
403 | Forbidden | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The response returned if the user does not exist in IDAM. | Error |
Reset Stax User's password
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/idam/user/reset-password/{user_id}', headers = headers)
print(r.json())
PUT /20190206/idam/user/reset-password/{user_id}
Send a Stax User a password reset email.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
user_id | path | string | true | The UUID of the IDAM User to have password reset. |
Example responses
200 Response
{
"DetailType": "string",
"Detail": {
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.UpdateUserEvent |
400 | Bad Request | The response returned if the user has been deleted. | Error |
403 | Forbidden | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The response returned if the user does not exist in IDAM. | Error |
Update Stax User
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/idam/user/{user_id}', headers = headers)
print(r.json())
PUT /20190206/idam/user/{user_id}
Update a Stax User's details, such as the name, role or email.
Body parameter
{
"Email": "stax.user@example.com",
"FirstName": "John",
"LastName": "Doe",
"PhoneNumber": "+61491570006",
"Role": "customer_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
user_id | path | string | true | The UUID of the IDAM User to update. |
body | body | teams.UpdateUser | true | none |
Example responses
200 Response
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string",
"Detail": {
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.CreateUserResponse |
403 | Forbidden | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The response returned if the user does not exist in IDAM. | Error |
Fetch Stax Users, Federated Users and API Tokens
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/users/{user_id}', headers = headers)
print(r.json())
GET /20190206/users/{user_id}
Return a list of all Users within your Stax Organisation.
Optionally, return the requested User.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
user_id | path | string | true | The UUID of the User to return. |
filter | query | string | false | List of Users filtered by auth origin, comma delimited. |
id_filter | query | string | false | List of User IDs you want returned, comma delimited. |
status_filter | query | string | false | List of Users filtered by Status, comma delimited. |
Detailed descriptions
filter: List of Users filtered by auth origin, comma delimited.
Filter Options available: Team, Federated, StaxAPI
status_filter: List of Users filtered by Status, comma delimited.
Filter Options available: ACTIVE, NEW, INVITED, DISABLED, DELETED
Example responses
200 Response
{
"Users": [
{
"AuthOrigin": "idam",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Description": "Marketing User",
"Email": "stax.user@example.com",
"FirstName": "John",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastName": "Doe",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "John Doe",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"PhoneNumber": "+61491570006",
"Role": "customer_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.ReadUsers |
Fetch Current User
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/users/me', headers = headers)
print(r.json())
GET /20190206/users/me
Returns the current logged in User.
Example responses
200 Response
{
"Users": [
{
"AuthOrigin": "idam",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Description": "Marketing User",
"Email": "stax.user@example.com",
"FirstName": "John",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastName": "Doe",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "John Doe",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"PhoneNumber": "+61491570006",
"Role": "customer_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.ReadUsers |
Delete Stax User
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/users/{user_id}', headers = headers)
print(r.json())
DELETE /20190206/users/{user_id}
Delete a Stax User from your Stax Organisation.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
user_id | path | string | true | The UUID of the User to delete. |
Example responses
200 Response
{
"Users": [
{
"AuthOrigin": "idam",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Description": "Marketing User",
"Email": "stax.user@example.com",
"FirstName": "John",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastName": "Doe",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "John Doe",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"PhoneNumber": "+61491570006",
"Role": "customer_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.ReadUsers |
404 | Not Found | User not found. | Error |
Groups
Fetch Groups
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/groups/{group_id}', headers = headers)
print(r.json())
GET /20190206/groups/{group_id}
Return all Groups within your Stax Organisation.
Optionally, return the requested Group.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
group_id | path | string | true | The UUID of the Group to return. |
id_filter | query | string | false | List of Group IDs you want returned, comma delimited. |
Example responses
200 Response
{
"Groups": [
{
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "DevOps",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Users": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
]
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.ReadGroupsResponse |
Create Group
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/groups', headers = headers)
print(r.json())
POST /20190206/groups
Create a new Group within your Stax Organisation.
Body parameter
{
"Name": "devops",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | teams.CreateGroup | true | none |
Example responses
200 Response
{
"GroupId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string",
"Detail": {
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | teams.CreateGroupResponse |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
409 | Conflict | A active group with the same name already exists. | StaxEvent |
Update Group Members
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/groups/members', headers = headers)
print(r.json())
PUT /20190206/groups/members
Add members to a Group or Remove members from a Group
Body parameter
{
"AddMembers": [
{
"GroupId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"UserId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
],
"RemoveMembers": [
{
"GroupId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"UserId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | teams.UpdateGroupMembers | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | Could not locate user or group. | StaxEvent |
Delete Group
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/groups/{group_id}', headers = headers)
print(r.json())
DELETE /20190206/groups/{group_id}
Delete a Group from your Stax Organisation.
A Group can only be deleted if there are no team members in the Group.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
group_id | path | string | true | The UUID of Group to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The Group still contains members. | StaxEvent |
404 | Not Found | The Group could not be found. | StaxEvent |
Update Group
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/groups/{group_id}', headers = headers)
print(r.json())
PUT /20190206/groups/{group_id}
Change the details of a Group, such as the name.
Body parameter
{
"Name": "devops",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
group_id | path | string | true | The UUID of the Group to update. |
body | body | teams.UpdateGroup | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Group could not be found. | StaxEvent |
IDAM
Fetch IDAM Users
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/idam/user/{org_id}', headers = headers)
print(r.json())
GET /20190206/idam/user/{org_id}
(DEPRECATED) Return a list of all IDAM Users in your Stax Organisation.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
org_id | path | string | true | The Organisation ID in which the IDAM is deployed to. If no org_id is supplied, the Customer's default Organisation will be used. |
include_tags | query | boolean | false | Do you want all the Tags? |
Example responses
200 Response
{
"Users": [
{
"id": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | users.ReadIdamUsers |
404 | Not Found | The response returned if the user's organisation doesn't exist. | Error |
Networking
Fetch DNS Resolvers
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/dnsresolvers', headers = headers)
print(r.json())
GET /20190206/networking/hubs/{hub_id}/dnsresolvers
Returns the DNS Resolver of the Stax Networking Hub.
Providing the UUID of a Stax DNS Resolver will return a specific Stax DNS Resolver's details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Stax Networking Hub where the Stax DNS Resolver is deployed. |
status | query | string | false | The Stax DNS Resolver statuses to return, comma delimited. |
Detailed descriptions
status: The Stax DNS Resolver statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"DnsResolvers": [
{
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"InboundIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Interfaces": 2,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "dns",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OutboundIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDnsResolvers |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Delete DNS Resolver
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/dnsresolvers/{dns_resolver_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/dnsresolvers/{dns_resolver_id}
Deletes a Stax DNS Resolver within a Stax Networking Hub.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dns_resolver_id | path | uuidv4 | true | The UUID of the Stax DNS Resolver to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The Stax Networking Hub doesn't match supplied credentials. | Error |
404 | Not Found | The Stax DNS Resolver to delete cannot be found. | Error |
Update DNS Resolver
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/dnsresolvers/{dns_resolver_id}', headers = headers)
print(r.json())
PUT /20190206/networking/dnsresolvers/{dns_resolver_id}
Updates the attributes for a given Stax DNS Resolver. Only supplied values are updated.
Body parameter
{
"Name": "dns",
"NumberOfInterfaces": 2,
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dns_resolver_id | path | uuidv4 | true | The UUID of the Stax DNS Resolver to update. |
body | body | networking.UpdateDnsResolver | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The Stax Networking Hub doesn't match supplied credentials. | Error |
404 | Not Found | The Stax DNS Resolver to update cannot be found. | Error |
Fetch DNS Rules
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/dnsrules/{dns_rule_id}', headers = headers)
print(r.json())
GET /20190206/networking/dnsrules/{dns_rule_id}
Returns the Stax DNS Rules of the Stax DNS Resolver.
Providing the UUID of a Stax DNS Rule will return a specific Stax DNS Rule's details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dns_rule_id | path | uuidv4 | true | The UUID of the Stax DNS Rule to fetch. |
status | query | string | false | The Stax DNS Rule statuses to return, comma delimited. |
Detailed descriptions
status: The Stax DNS Rule statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"DnsRules": [
{
"AwsRuleId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DnsResolverId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DomainName": "test.local",
"ForwarderIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "on-premises",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDnsRules |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Create DNS Rule
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/dnsresolvers/{dns_resolver_id}/dnsrules', headers = headers)
print(r.json())
POST /20190206/networking/dnsresolvers/{dns_resolver_id}/dnsrules
Creates a Stax DNS Rule within a Stax DNS Resolver.
Body parameter
{
"DomainName": "test.local",
"ForwarderIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Name": "on-premises",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dns_resolver_id | path | uuidv4 | true | The UUID of the Stax DNS Resolver to create the Stax DNS Rule within. |
body | body | networking.CreateDnsRule | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The Stax Networking Hub doesn't match supplied credentials. | Error |
404 | Not Found | The Stax DNS Resolver to create the Stax DNS Rule within cannot be found. | Error |
Delete DNS Rule
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/dnsrules/{dns_rule_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/dnsrules/{dns_rule_id}
Deletes a Stax DNS Rule within a Stax DNS Resolver
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dns_rule_id | path | uuidv4 | true | The UUID of the Stax DNS Rule. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The Stax Networking Hub doesn't match supplied credentials. | Error |
404 | Not Found | The Stax DNS Rule to delete cannot be found. | Error |
Update DNS Rule
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/dnsrules/{dns_rule_id}', headers = headers)
print(r.json())
PUT /20190206/networking/dnsrules/{dns_rule_id}
Updates the attributes for a given Stax DNS Rule. Only supplied values are updated.
Body parameter
{
"ForwarderIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Name": "on-premises",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dns_rule_id | path | uuidv4 | true | The UUID of the Stax DNS Rule to update. |
body | body | networking.UpdateDnsRule | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
403 | Forbidden | The Stax Networking Hub doesn't match supplied credentials. | Error |
404 | Not Found | The Stax DNS Rule to update cannot be found. | Error |
Fetch DX Associations
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/dxassociations', headers = headers)
print(r.json())
GET /20190206/networking/hubs/{hub_id}/dxassociations
Returns all the Stax DX Asssociations.
Providing the UUID of a Stax Networking Hub will return the Stax DX Associations for the Stax Networking Hub.
Providing the UUID of a Stax DX Association will return a specific Stax DX Association's details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Stax Networking Hub to fetch associations for. |
status | query | string | false | The Stax DX Association statuses to return, comma delimited. |
Detailed descriptions
status: The Stax DX Association statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"DxAssociations": [
{
"AwsAssociationId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DxGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Prefixes": [
"192.168.0.0/24",
"192.168.1.0/24"
],
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VpcId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDxAssociations |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Delete DX Association
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/dxassociations/{dx_association_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/dxassociations/{dx_association_id}
Deletes a Stax DX Association.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_association_id | path | uuidv4 | true | The UUID of the Stax DX Association to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax DX Association to delete cannot be found. | Error |
Update DX Association
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/dxassociations/{dx_association_id}', headers = headers)
print(r.json())
PUT /20190206/networking/dxassociations/{dx_association_id}
Updates the attributes for a given Stax DX Association. Only supplied values are updated.
Body parameter
{
"Prefixes": [
"192.168.0.0/24",
"192.168.1.0/24"
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_association_id | path | uuidv4 | true | The UUID of the Stax DX Association to update. |
body | body | networking.UpdateDxAssociation | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax DX Association to update cannot be found. | Error |
Fetch DX Gateways
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/dxgateways', headers = headers)
print(r.json())
GET /20190206/networking/hubs/{hub_id}/dxgateways
Returns all the Stax DX Gateways.
Providing the UUID of a Stax Networking Hub will return the Stax DX Gateways associated to the Stax Networking Hub.
Providing the UUID of a Stax DX Gateway will return a specific Stax DX Gateway's details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Stax Networking Hub where the Stax DX Gateway is deployed. |
status | query | string | false | The Stax DX Gateway statuses to return, comma delimited. |
Detailed descriptions
status: The Stax DX Gateway statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"DxGateways": [
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"AwsGatewayId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"GatewayType": "TRANSIT",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod Gateway",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDxGateways |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Delete DX Gateway
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/dxgateways/{dx_gateway_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/dxgateways/{dx_gateway_id}
Deletes a Stax DX Gateway.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_gateway_id | path | uuidv4 | true | The UUID of the Stax DX Gateway to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax DX Vif to delete cannot be found. | Error |
Fetch DX Gateway
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/dxgateways/{dx_gateway_id}', headers = headers)
print(r.json())
GET /20190206/networking/dxgateways/{dx_gateway_id}
Returns all the Stax DX Gateways.
Providing the UUID of a Stax Networking Hub will return the Stax DX Gateways associated to the Stax Networking Hub.
Providing the UUID of a Stax DX Gateway will return a specific Stax DX Gateway's details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_gateway_id | path | uuidv4 | true | The UUID of the Stax DX Gateway to fetch. |
status | query | string | false | The Stax DX Gateway statuses to return, comma delimited. |
Detailed descriptions
status: The Stax DX Gateway statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"DxGateways": [
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"AwsGatewayId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"GatewayType": "TRANSIT",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod Gateway",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDxGateways |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Create DX Association
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/dxgateways/{dx_gateway_id}/dxassociations', headers = headers)
print(r.json())
POST /20190206/networking/dxgateways/{dx_gateway_id}/dxassociations
Creates a Stax DX Association between a Stax Networking Hub or Stax VPC and a Stax DX Gateway.
Providing a NetworkingHubId will attempt to associate the Direct Connect Gateway that contains Transit
VIFs to the Networking Hubs Transit Gateway.
Providing a VPCId will attempt attempt to associate the Direct Connect Gateway that contains Private VIFs
to the VPCs Virtual Private Gateway.
Body parameter
{
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Prefixes": [
"192.168.0.0/24",
"192.168.1.0/24"
]
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_gateway_id | path | uuidv4 | true | The UUID of the Stax DX Gateway to association with a Stax Networking Hub. |
body | body | networking.CreateDxAssociation | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax Resources to create the DX Association for cannot be found. | Error |
Fetch DX Vifs
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/dxvifs/{dx_vif_id}', headers = headers)
print(r.json())
GET /20190206/networking/dxvifs/{dx_vif_id}
Returns all the Stax DX Vifs.
Providing the UUID of a Stax DX Gateway will return the Stax DX Vifs attached to the Stax DX Gateway.
Providing the UUID of a Stax DX Vif will return a specific Stax DX Vif's details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_vif_id | path | uuidv4 | true | The UUID of the Stax DX Vif to fetch. |
status | query | string | false | The Stax DX Gateway statuses to return, comma delimited. |
Detailed descriptions
status: The Stax DX Gateway statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"DxVifs": [
{
"Asn": 64512,
"AwsConnectionId": "dxcon-abcdefgh",
"AwsRouterIp": "192.168.0.2/30",
"AwsVifId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DxGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"JumboMtu": false,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod VIF",
"Region": "ap-northeast-1",
"RouterIp": "192.168.0.1/30",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VifType": "TRANSIT",
"Vlan": 4000
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDxVifs |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Create DX Resources
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/dxresources', headers = headers)
print(r.json())
POST /20190206/networking/dxresources
Creates a Stax DX Resource, a DX Gateway and/or DX Vif.
Body parameter
{
"Gateway": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"Name": "Prod Gateway"
},
"Vif": {
"Asn": 64513,
"AwsConnectionId": "dxcon-abcdefgh",
"AwsRouterIp": "192.168.0.2/30",
"BgpAuthKey": "secret",
"DxGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"JumboMtu": false,
"Name": "Prod VIF",
"RouterIp": "192.168.0.1/30",
"Tags": {
"CostCode": "12345"
},
"Vlan": 4000
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | networking.CreateDxResource | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax Resource to deploy the DX Resources into cannot be found. | Error |
Delete DX Vif
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/dxvifs/{dx_vif_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/dxvifs/{dx_vif_id}
Deletes a Stax DX Vif.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_vif_id | path | uuidv4 | true | The UUID of the Stax DX Vif to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax DX Vif to delete cannot be found. | Error |
Update DX VIf
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/dxvifs/{dx_vif_id}', headers = headers)
print(r.json())
PUT /20190206/networking/dxvifs/{dx_vif_id}
Updates the attributes for a given Stax DX Vif. Only supplied values are updated.
Body parameter
{
"JumboMtu": false,
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_vif_id | path | uuidv4 | true | The UUID of the Stax DX Vif to update. |
body | body | networking.UpdateDxVif | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax DX Vif to update cannot be found. | Error |
Fetch DX VIF Status
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/dxvifs/{dx_vif_id}/status', headers = headers)
print(r.json())
GET /20190206/networking/dxvifs/{dx_vif_id}/status
Returns the connectivity status of the BPG Peers for a specific DX VIF
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
dx_vif_id | path | uuidv4 | true | The UUID of the Stax DX Gateway where the Stax DX Vif is attached. |
Example responses
200 Response
{
"DxVifStatus": [
{
"BgpPeerId": "bgp-peer-id",
"BgpStatus": "up"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDxVifStatus |
404 | Not Found | The Stax DX VIF cannot be found. | Error |
Fetch CIDR Exclusions
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/exclusions', headers = headers)
print(r.json())
GET /20190206/networking/hubs/{hub_id}/exclusions
Returns a list of CIDR Exclusions.
Can use the UUID of a CIDR Exclusions to return a specific CIDR Exclusions details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Hub to list Exclusions in. |
status | query | string | false | The Hub statuses to return, comma delimited. |
Detailed descriptions
status: The Hub statuses to return, comma delimited.
Filter options available: ACTIVE, DELETED
Example responses
200 Response
{
"Exclusions": [
{
"Cidr": "10.128.0.0/19",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "datacenter exclusion",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadCidrExclusions |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Delete CIDR Exclusion
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/exclusions/{exclusion_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/exclusions/{exclusion_id}
Deletes a CIDR Exclusion within a Stax Networking Hub.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
exclusion_id | path | uuidv4 | true | The UUID of the Exclusion to Delete. |
Example responses
200 Response
{
"Exclusions": [
{
"Cidr": "10.128.0.0/19",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "datacenter exclusion",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadCidrExclusions |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The CIDR Exclusion to delete cannot be found or is already deleted. | Error |
Update CIDR Exclusion
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/exclusions/{exclusion_id}', headers = headers)
print(r.json())
PUT /20190206/networking/exclusions/{exclusion_id}
Updates a CIDR Exclusion within a Stax Networking Hub
Body parameter
{
"Description": "string",
"Name": "data-center",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
exclusion_id | path | uuidv4 | true | The UUID of the Exclusion to update. |
body | body | networking.UpdateCidrExclusion | true | none |
Example responses
200 Response
{
"Description": "string",
"Name": "data-center",
"Tags": {
"CostCode": "12345"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.UpdateCidrExclusion |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The CIDR Exclusion to update cannot be found. | Error |
Fetch Networking Hubs
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}', headers = headers)
print(r.json())
GET /20190206/networking/hubs/{hub_id}
Returns a list of networking hubs in your Stax Organisation.
Can use the UUID of a Hub to return a specific hub details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Hub. |
status | query | string | false | The Hub statuses to return, comma delimited. |
Detailed descriptions
status: The Hub statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, UPDATE_IN_PROGRESS, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"Hubs": [
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "my-hub",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"InterfaceEndpoints": [
"ec2"
],
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PhzSuffix": "my-domain.cloud",
"RedundantEndpoints": true,
"Region": "ap-northeast-1",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VpnEcmpSupport": true
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadHubs |
404 | Not Found | The Stax Networking Hub cannot be found. | Error |
Create Networking Hub
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/hubs', headers = headers)
print(r.json())
POST /20190206/networking/hubs
Creates Stax Networking Hub within your Stax Organisation.
Body parameter
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"AmazonSideAsn": 64512,
"Cidr": "10.128.0.0/22",
"CidrExclusions": [
{
"Cidr": "10.128.0.0/19",
"Description": "datacenter exclusion",
"Name": "non-prod",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Tags": {
"CostCode": "12345"
}
}
],
"CidrRangeName": "myrange",
"CreateCloudwatchVpcFlowlogs": true,
"CreateInternetGateway": true,
"CreateNatGateway": true,
"CreateVirtualPrivateGateway": true,
"Description": "This Hub is for a team ABCD applications",
"GatewayEndpoints": [
"s3"
],
"InterfaceEndpoints": [
"ec2"
],
"Name": "prod",
"PhzSuffix": "my-domain.cloud",
"RedundantEndpoints": true,
"RedundantNat": true,
"Region": "ap-northeast-1",
"Tags": {
"CostCode": "12345"
},
"VirtualPrivateGatewayAsn": 64513,
"VpnEcmpSupport": true
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | networking.CreateHub | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The account to deploy a hub does not exist. | Error |
Delete Networking Hub
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/hubs/{hub_id}
Deletes a hub from the Stax Organisation
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Hub to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The hub to be deleted doesn't exist or is already deleted. | Error |
Update Networking Hub
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}', headers = headers)
print(r.json())
PUT /20190206/networking/hubs/{hub_id}
Updates a various attributes for a given hub. Only supplied values are updated.
Body parameter
{
"CreateCloudwatchVpcFlowlogs": true,
"CreateInternetGateway": true,
"CreateNatGateway": true,
"CreateVirtualPrivateGateway": true,
"Description": "This Hub is for connectivity from headquaters to VPC workloads",
"GatewayEndpoints": [
"s3"
],
"InterfaceEndpoints": [
"ec2"
],
"Name": "prod",
"PhzSuffix": "my-domain.cloud",
"RedundantEndpoints": true,
"RedundantNat": true,
"Tags": {
"CostCode": "12345"
},
"VirtualPrivateGatewayAsn": 64513
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Hub to update. |
body | body | networking.UpdateHub | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | An active hub to be updated does not exist | Error |
Create DNS Resolver
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/dnsresolvers', headers = headers)
print(r.json())
POST /20190206/networking/hubs/{hub_id}/dnsresolvers
Creates a Stax DNS Resolver within a Stax Networking Hub.
Body parameter
{
"Name": "dns",
"NumberOfInterfaces": 2,
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Stax Networking Hub to deploy the Stax DNS Resolver. |
body | body | networking.CreateDnsResolver | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax Networking Hub to deploy the Stax DNS Resolver cannot be found. | Error |
Create CIDR Exclusion
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/exclusions', headers = headers)
print(r.json())
POST /20190206/networking/hubs/{hub_id}/exclusions
Creates a CIDR Exclusion within a Stax Networking Hub
Body parameter
{
"Cidr": "10.128.0.0/19",
"Description": "This Reservation blocks out existing legacy VPCs",
"Name": "legacy-vpcs",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Hub where the CIDR Exclusion is created in. |
body | body | networking.CreateCidrExclusion | true | none |
Example responses
200 Response
{
"Exclusions": [
{
"Cidr": "10.128.0.0/19",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "datacenter exclusion",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadCidrExclusions |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The hub to create the CIDR Exclusion is not found. | Error |
Fetch CIDR Ranges
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/ranges/{range_id}', headers = headers)
print(r.json())
GET /20190206/networking/ranges/{range_id}
Returns a list of CIDR Ranges.
Can use the UUID of a CIDR Range to return a specific CIDR Range details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
range_id | path | uuidv4 | true | The UUID of the Range to read. |
status | query | string | false | The Hub statuses to return, comma delimited. |
id_filter | query | string | false | List of range ids to fetch, comma delimited. |
Detailed descriptions
status: The Hub statuses to return, comma delimited.
Filter options available: ACTIVE, DELETED
id_filter: List of range ids to fetch, comma delimited.
Example responses
200 Response
{
"Ranges": [
{
"Cidr": "10.128.0.0/23",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DefaultCidrRange": false,
"Description": "datacenter ranges",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastAllocationTS": "2018-10-11T01:05:45.000Z",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadCidrRanges |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Create CIDR Range
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/ranges', headers = headers)
print(r.json())
POST /20190206/networking/hubs/{hub_id}/ranges
Creates a CIDR Range within a Stax Networking Hub
Body parameter
{
"Cidr": "10.128.0.0/23",
"Description": "CIDR Range used for team ABCD application 1234",
"Name": "prod",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Hub where the CIDR Range is created in. |
body | body | networking.CreateCidrRange | true | none |
Example responses
200 Response
{
"Ranges": [
{
"Cidr": "10.128.0.0/23",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DefaultCidrRange": false,
"Description": "datacenter ranges",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastAllocationTS": "2018-10-11T01:05:45.000Z",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadCidrRanges |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The hub to create the CIDR Range is not found. | Error |
Fetch VPCs
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/vpcs/{vpc_id}', headers = headers)
print(r.json())
GET /20190206/networking/vpcs/{vpc_id}
Returns a list of VPCs.
Can use the UUID of a VPC to return a specific VPC details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpc_id | path | uuidv4 | true | The UUID of the VPC to read. |
status | query | string | false | The VPC statuses to return, comma delimited. |
type | query | string | false | The VPC type to return, comma delimited. |
Detailed descriptions
status: The VPC statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
type: The VPC type to return, comma delimited.
Filter options available: FLAT, ISOLATED, TRANSIT, SHAREDSERVICES
Example responses
200 Response
{
"Vpcs": [
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"AwsVpcId": "string",
"Cidr": "10.128.0.0/23",
"CidrRangeId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreateFlowlogCwl": true,
"CreateIgw": true,
"CreateNat": true,
"CreateVgw": true,
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "VPC for my particular application",
"GatewayEndpoints": [
"s3"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"PhzId": "PHZAAEXAMPLE",
"PhzPrefix": "dev",
"RedundantNat": false,
"Region": "ap-northeast-1",
"Size": "SMALL",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"Type": "FLAT",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VgwAsn": 64513,
"Zone": "non-prod"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadVpcs |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Create VPC
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/hubs/{hub_id}/vpcs', headers = headers)
print(r.json())
POST /20190206/networking/hubs/{hub_id}/vpcs
Creates a VPC within a Stax Networking Hub
Body parameter
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CidrRangeId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreateCloudwatchVpcFlowlogs": true,
"CreateInternetGateway": true,
"CreateVirtualPrivateGateway": true,
"Description": "VPC for a non-prod microservice",
"GatewayEndpoints": [
"s3"
],
"Name": "dev-ms-customers",
"PhzPrefix": "dev",
"Region": "ap-northeast-1",
"Size": "SMALL",
"Tags": {
"CostCode": "12345"
},
"Type": "ISOLATED",
"VirtualPrivateGatewayAsn": 64513,
"Zone": "my-zone"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
hub_id | path | uuidv4 | true | The UUID of the Hub where the VPC is. |
body | body | networking.CreateVpc | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The hub to create the VPC is not found. | Error |
Fetch VPN Connections
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}/vpnconnections', headers = headers)
print(r.json())
GET /20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}/vpnconnections
Returns all the Stax VPN Connections.
Providing the UUID of a Stax Networking Hub will return the Stax VPN Connections associated to the Stax Networking Hub.
Providing the UUID of a Stax VPN Customer Gateway will return the Stax VPN Connections associated to the Stax VPN Customer Gateway.
Providing the UUID of a Stax VPN Connections will return a specific Stax VPN Connections details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_customer_gateway_id | path | uuidv4 | true | The UUID of the Stax VPN Customer Gateways to fetch. |
status | query | string | false | The Stax VPN Connections statuses to return, comma delimited. |
Detailed descriptions
status: The Stax VPN Connections statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"VpnConnections": [
{
"AwsVpnConnectionId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ImprovedAcceleration": false,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod Gateway",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VpcId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"VpnConnectionType": "HUB",
"VpnCustomerGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadVpnConnections |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Fetch VPN Customer Gateways
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}', headers = headers)
print(r.json())
GET /20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}
Returns all the Stax VPN Customer Gateways.
Providing the UUID of a Stax Networking Hub will return the Stax VPN Customer Gateways associated to the Stax Networking Hub.
Providing the UUID of a Stax VPN Customer Gateway will return a specific Stax VPN Customer Gateways' details.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_customer_gateway_id | path | uuidv4 | true | The UUID of the Stax VPN Customer Gateways to fetch. |
status | query | string | false | The Stax VPN Customer Gateways statuses to return, comma delimited. |
Detailed descriptions
status: The Stax VPN Customer Gateways statuses to return, comma delimited.
Filter options available: ACTIVE, CREATE_IN_PROGRESS, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED
Example responses
200 Response
{
"VpnCustomerGateways": [
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"AwsVpnCustomerGatewayId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"IpAddress": "192.168.1.0",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod Gateway",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Region": "ap-northeast-1",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadVpnCustomerGateways |
404 | Not Found | The Stax Networking resource cannot be found. | Error |
Delete CIDR Range
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/ranges/{range_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/ranges/{range_id}
Deletes a CIDR Range within a Stax Networking Hub. No existing VPCs can be in the CIDR Range.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
range_id | path | uuidv4 | true | The UUID of the Range to delete. |
Example responses
200 Response
{
"Ranges": [
{
"Cidr": "10.128.0.0/23",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DefaultCidrRange": false,
"Description": "datacenter ranges",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastAllocationTS": "2018-10-11T01:05:45.000Z",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadCidrRanges |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The CIDR Range to delete cannot be found or is already deleted. | Error |
Update CIDR Range
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/ranges/{range_id}', headers = headers)
print(r.json())
PUT /20190206/networking/ranges/{range_id}
Updates a CIDR Range within a Stax Networking Hub
Body parameter
{
"Description": "CIDR Range used for team ABCD application 1234",
"Name": "prod",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
range_id | path | uuidv4 | true | The UUID of the CIDR Range to update. |
body | body | networking.UpdateCidrRange | true | none |
Example responses
200 Response
{
"Description": "CIDR Range used for team ABCD application 1234",
"Name": "prod",
"Tags": {
"CostCode": "12345"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.UpdateCidrRange |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The CIDR Range to update cannot be found. | Error |
Delete VPC
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/vpcs/{vpc_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/vpcs/{vpc_id}
Deletes a VPC within a Stax Networking Hub
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpc_id | path | uuidv4 | true | The UUID of the VPC to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The VPC to delete cannot be found. | Error |
Update VPC
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/vpcs/{vpc_id}', headers = headers)
print(r.json())
PUT /20190206/networking/vpcs/{vpc_id}
Updates a VPC within a Stax Networking Hub
Body parameter
{
"CreateCloudwatchVpcFlowlogs": true,
"CreateInternetGateway": true,
"CreateVirtualPrivateGateway": true,
"Description": "string",
"GatewayEndpoints": [
"s3"
],
"Name": "prod",
"PhzPrefix": "dev",
"Tags": {
"CostCode": "12345"
},
"VirtualPrivateGatewayAsn": 64513
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpc_id | path | uuidv4 | true | The UUID of the VPC to update. |
body | body | networking.UpdateVpc | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The VPC to update cannot be found. | Error |
Delete VPN Conection
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/vpnconnections/{vpn_connection_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/vpnconnections/{vpn_connection_id}
Deletes a Stax VPN Conection within a Stax VPN Customer Gateway
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_connection_id | path | uuidv4 | true | The UUID of the Stax VPN Conection. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax VPN Conection to delete cannot be found. | Error |
Update VPN Conection
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/vpnconnections/{vpn_connection_id}', headers = headers)
print(r.json())
PUT /20190206/networking/vpnconnections/{vpn_connection_id}
Updates the attributes for a given Stax VPN Connection. Only supplied values are updated.
Body parameter
{
"Name": "new-vpn-gw",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_connection_id | path | uuidv4 | true | The UUID of the Stax VPN Connection to update. |
body | body | networking.UpdateVpnConnection | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax VPN Connection to update cannot be found. | Error |
Fetch VPN Connection Status
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/vpnconnections/{vpn_connection_id}/status', headers = headers)
print(r.json())
GET /20190206/networking/vpnconnections/{vpn_connection_id}/status
Returns the connectivity status of the VPN Tunnels for a specific VPN Connection
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_connection_id | path | uuidv4 | true | The UUID of the Stax VPN Connection. |
Example responses
200 Response
{
"VpnConnectionStatus": [
{
"TunnelName": "VPN Tunnel",
"TunnelStatus": "up"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadVpnConnectionStatus |
404 | Not Found | The Stax VPN Connection cannot be found. | Error |
Creates a Stax VPN Customer Gateway
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/vpncustomergateways', headers = headers)
print(r.json())
POST /20190206/networking/vpncustomergateways
Body parameter
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64513,
"IpAddress": "1.1.1.1",
"Name": "vpn-gw",
"Region": "ap-northeast-1",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | networking.CreateVpnCustomerGateway | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax Resource to deploy the VPN Customer Gateway into cannot be found. | Error |
Delete a Stax VPN Customer Gateway
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}', headers = headers)
print(r.json())
DELETE /20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_customer_gateway_id | path | uuidv4 | true | The UUID of the VPN Customer Gateway to delete. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The VPN Customer Gateway to be deleted doesn't exist or is already deleted. | Error |
Updates a Stax VPN Customer Gateway
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}', headers = headers)
print(r.json())
PUT /20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}
Body parameter
{
"Name": "vpn-gw",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_customer_gateway_id | path | uuidv4 | true | The UUID of the Stax VPN Customer Gateway to update. |
body | body | networking.UpdateVpnCustomerGateway | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax VPN Customer Gateway to update cannot be found. | Error |
Create VPN Connection
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}/vpnconnection', headers = headers)
print(r.json())
POST /20190206/networking/vpncustomergateways/{vpn_customer_gateway_id}/vpnconnection
Creates a Stax VPN Connection between a Stax Networking Hub or Stax VPC and a Stax VPN Customer Gateway.
Providing a Networking Hub Id will attempt to create a VPN Connection for the VPN Customer Gateway and a Transit Gateway
Providing a VPC ID ill attempt to create a VPN Connection for the VPN Customer Gateway and a VPC's Virtual Private Gateway.
Body parameter
{
"ImprovedAcceleration": false,
"Name": "vpn-transit-connection",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
vpn_customer_gateway_id | path | uuidv4 | true | The UUID of the Stax VPN Connection to association with a Stax Networking Hub. |
body | body | networking.CreateVpnConnection | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | Error |
404 | Not Found | The Stax Resources to create the VPN Connection for cannot be found. | Error |
Fetch DX Connections
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/networking/{account_id}/dxconnections', headers = headers)
print(r.json())
GET /20190206/networking/{account_id}/dxconnections
Returns all DX Connections for the specified Stax Account Id.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
account_id | path | uuidv4 | true | The UUID of the Stax Account that contains a Direct Connect connection. |
state | query | string | false | The Direct Connect Connection states to return, comma delimited. |
Detailed descriptions
state: The Direct Connect Connection states to return, comma delimited.
Filter options available: ordering,requested,pending,available,down,deleting,deleted,rejected,unknown
Example responses
200 Response
{
"DxConnections": [
{
"Bandwidth": "50Mbps",
"ConnectionId": "dxcon-abcdefgh",
"ConnectionName": "SY4",
"ConnectionState": "available",
"Region": "ap-northeast-1",
"Vlan": 4000
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | networking.ReadDxConnections |
404 | Not Found | The Stax Account cannot be found. | Error |
Organisations
Fetch Stax Organisations
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/organisations/current', headers = headers)
print(r.json())
GET /20190206/organisations/current
Return the current users Organisation.
A Stax Organisation is an instance of Stax which houses your AWS Accounts, Workloads and IDAM Users.
Example responses
200 Response
{
"Organisations": [
{
"Alias": "my-stax-org",
"AllowedDomains": [
"@example.com",
"@stax.io"
],
"AttachedPolicies": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"AwsAccountEmailTemplate": "stax.user+${Stax::AccountId}@example.com",
"AwsPartnerSupport": true,
"AwsSupportType": "ENTERPRISE",
"ComplianceType": "PCI",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ExternalStaxId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "default",
"Region": "ap-northeast-1",
"SpotlightSsoURL": "string",
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. The response body contains an Organisation array. | organisations.ReadOrganisations |
Policies
Fetch Policies
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/policies', headers = headers)
print(r.json())
GET /20190206/policies
Return all Policies in your Stax Organisation.
Optionally, return the requested Policy.
Example responses
200 Response
{
"Policies": [
{
"AttachableTo": "ANY",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A service control policy that denies access to all.",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Mandatory": false,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "DenyAll",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policy": "string",
"Public": false,
"Status": "ACTIVE"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | organisations.ReadPolicies |
Create Policy
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/policies', headers = headers)
print(r.json())
POST /20190206/policies
Create a Policy in your Stax Organisation.
Body parameter
{
"Description": "A service control policy that denies access to all.",
"Name": "DenyAll",
"Policy": "string"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | organisations.CreatePolicy | false | none |
Example responses
200 Response
{
"Detail": {
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A service control policy that denies access to all.",
"Name": "DenyAll",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policy": "string",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | CreatePolicyEvent |
Detach Policy from Organisation
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/policies/organisation/{policy_id}', headers = headers)
print(r.json())
DELETE /20190206/policies/organisation/{policy_id}
Detach a Policy from your Stax Organisation.
The policy will no longer apply to all Account Types within the Organisation.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
policy_id | path | string | true | The UUID of the Policy to detach. |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
Attach Policy to Organisation
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/policies/organisation/{policy_id}', headers = headers)
print(r.json())
PUT /20190206/policies/organisation/{policy_id}
Attach a Policy to your Stax Organisation.
The policy will apply to all Account Types within the Organisation.
Body parameter
{
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
policy_id | path | string | true | The UUID of the Policy to attach. |
body | body | organisations.AttachPolicy | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
403 | Forbidden | Unable to attach foundation policy to an Organisation. | Error |
Delete Policy
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/policies/{policy_id}', headers = headers)
print(r.json())
DELETE /20190206/policies/{policy_id}
Delete a Policy from your Stax Organisation.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
policy_id | path | string | true | The UUID of the Policy to delete. |
Example responses
200 Response
{
"Detail": {
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | DeletePolicyEvent |
Fetch Policy
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/policies/{policy_id}', headers = headers)
print(r.json())
GET /20190206/policies/{policy_id}
Return all Policies in your Stax Organisation.
Optionally, return the requested Policy.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
policy_id | path | string | true | The UUID of the Policy to return. |
Example responses
200 Response
{
"Policies": [
{
"AttachableTo": "ANY",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A service control policy that denies access to all.",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Mandatory": false,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "DenyAll",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policy": "string",
"Public": false,
"Status": "ACTIVE"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | organisations.ReadPolicies |
Update Policy
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/policies/{policy_id}', headers = headers)
print(r.json())
PUT /20190206/policies/{policy_id}
Update an existing Policy within your Stax Organisation.
Body parameter
{
"Description": "A service control policy that denies access to all.",
"Name": "DenyAll",
"Policy": "string"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
policy_id | path | string | true | The UUID of the Policy to update. |
body | body | organisations.UpdatePolicy | false | none |
Example responses
200 Response
{
"Detail": {
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "DenyAll",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | UpdatePolicyEvent |
Public
Check Alias availability
Code samples
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/public/check-alias/{alias}', headers = headers)
print(r.json())
GET /20190206/public/check-alias/{alias}
Check if an Alias is available or if it is already in use by another Stax customer.
The Alias is the unique identifier for a Customer's Stax Organisation.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
alias | path | string | true | A unique string containing characters a-z, 0-9. |
Detailed descriptions
alias: A unique string containing characters a-z, 0-9. Hyphens can also be used, but not at the start or end of the alias.
Example responses
200 Response
{
"Alias": {
"Status": "The company alias provided is available"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the Alias is available and not in use by another Customer. | Alias |
409 | Conflict | The Alias is already in use by another Customer. | AliasInUse |
Fetch public config
Code samples
import requests
headers = {
'Accept': 'application/json'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/public/config', headers = headers)
print(r.json())
GET /20190206/public/config
This is an unauthenticated endpoint returning your configuration variables which are required to authenticate API requests.
Example responses
200 Response
{
"API": {
"endpoints": [
{
"endpoint": "string",
"name": "string",
"region": "ap-northeast-1"
}
]
},
"Analytics": {
"disable": true
},
"ApiAuth": {
"identityPoolId": "string",
"mandatorySignIn": true,
"region": "ap-northeast-1",
"userPoolId": "string",
"userPoolWebClientId": "string"
},
"AppSync": {
"analytics": {
"endpoint": "string",
"region": "ap-northeast-1"
},
"core": {
"endpoint": "string",
"region": "ap-northeast-1"
},
"graphqlEndpoint": "string",
"region": "ap-northeast-1"
},
"Auth": {
"identityPoolId": "string",
"mandatorySignIn": true,
"region": "ap-northeast-1",
"userPoolId": "string",
"userPoolWebClientId": "string"
},
"Juma": {
"controlplaneRegion": "string",
"domainName": "string",
"fullDomainName": "string",
"masterAccountId": "string",
"rootOrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"stage": "string"
},
"JumaAuth": {
"identityPoolId": "string",
"mandatorySignIn": true,
"region": "ap-northeast-1",
"userPoolId": "string",
"userPoolWebClientId": "string"
},
"Pingdom": {
"key": "string"
},
"SNS": {
"event": "string",
"notify": "string"
},
"Sentry": {
"dsn": "string",
"projectName": "string"
},
"Storage": {
"bucket": "string",
"region": "ap-northeast-1"
},
"Zone": {
"key": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Configuration values required to authenicate API requests. | Config |
Tasks
Fetch status of Task
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/task/{task_id}', headers = headers)
print(r.json())
GET /20190206/task/{task_id}
Return the status of the requested Task.
A Task may relate to an Account, User, Workload, Organisation or Log Event.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
task_id | path | string | true | The UUID of the Task to return. |
Example responses
200 Response
{
"Workloads": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned for a valid Task. | Task |
404 | Not Found | The response returned if the requested Task could not be found. | Error |
Fetch all Tasks by status
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/tasks/{task_status}', headers = headers)
print(r.json())
GET /20190206/tasks/{task_status}
Return all Tasks for your Stax Organisation.
Optionally, return all tasks with the specified status for your Stax Organisation.
A Task may relate to an Account, User, Workload, Organisation or Log Event.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
task_status | path | string | true | Return all tasks of this status. |
Detailed descriptions
task_status: Return all tasks of this status.
Accepted values are: RUNNING, SUCCEEDED or FAILED.
Example responses
200 Response
{
"Tasks": {
"Workloads": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The Tasks returned for a valid task_status. | GetTasks |
400 | Bad Request | The task_status not supplied or invalid. | Error |
Workloads
Fetch Workload Catalogue Items
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/workload-catalogue/{catalogue_id}', headers = headers)
print(r.json())
GET /20190206/workload-catalogue/{catalogue_id}
Return all Workload Catalogue Items within your Stax Organisation.
Optionally, return the requested Workload Catalogue Item.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
catalogue_id | path | string | true | The UUID of the Catalogue Item to return. |
name | query | string | false | The Name of the Workload Catalogue Items to return. |
filter | query | string | false | List of Workload Catalogue Item statuses you want returned, comma delimited. |
id_filter | query | string | false | List of Workload Catalogue Item IDs you want returned, comma delimited. |
offset | query | integer | false | Pagination - The page number to return. |
limit | query | integer | false | Pagination - The number of items per page to return. |
sort | query | string | false | The field to sort on. |
sort_order | query | string | false | The sort order - up or down. |
include_versions | query | boolean | false | Do you want all Versions? |
include_parameters | query | boolean | false | Do you want the Parameter dictionary? |
include_tags | query | boolean | false | Do you want all the Tags? |
Detailed descriptions
filter: List of Workload Catalogue Item statuses you want returned, comma delimited.
Filter options available: STARTED, RUNNING, SUCCEEDED, FAILED, TIMED_OUT, ABORTED.
Enumerated Values
Parameter | Value |
---|---|
sort | Id |
sort | Name |
sort | Description |
sort | Status |
sort | OrganisationId |
sort | Public |
sort | CreatedTS |
sort | CreatedBy |
sort | ModifiedTS |
sort | UserTaskId |
sort | CatalogueVersionId |
sort | Protection |
sort_order | ASC |
sort_order | DESC |
Example responses
200 Response
{
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"WorkloadCatalogues": [
{
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"WorkloadCatalogueItems": [
{
"CatalogueVersionId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "my-directory-service",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Protection": false,
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Versions": [
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Outputs": [
"bread"
],
"Parameters": [
{
"Key": "Bread",
"Value": "Croissant"
}
],
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"WorkloadVersion": "0.01"
}
]
}
]
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | workloads.ReadCatalogueItems |
400 | Bad Request | The response returned if an invalid ID is entered. | Error |
404 | Not Found | The response returned if no catalogue is found. | Error |
Create Workload Catalogue Item
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/workload-catalogue', headers = headers)
print(r.json())
POST /20190206/workload-catalogue
Create a new Workload Catalogue Item within your Stax Organisation.
Body parameter
{
"Description": "A Workload to build a VPC in my org",
"ManifestBody": "Resources:\n - VPC:\n Type: AWS::Cloudformation\n TemplateURL: s3://{JumaArtifactBucket}/workload-vpc/vpc-2-tier-no-NAT.yml\n",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Name": "my-directory-service",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Tags": {
"CostCode": "12345"
},
"Version": "1.0.2"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | workloads.CreateCatalogueItem | true | none |
Example responses
200 Response
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Name": "my-directory-service",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Public": false,
"Tags": {
"CostCode": "12345"
},
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | CreateCatalogueEvent |
400 | Bad Request | The response returned if the catalogue manifest is invalid. | Error |
403 | Forbidden | The response returned if the request is unsuccessful. | Error |
Fetch Workload Catalogue Manifest
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/workload-catalogue/manifest/{version_id}', headers = headers)
print(r.json())
GET /20190206/workload-catalogue/manifest/{version_id}
Return a Workload Catalogue Manifest
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
version_id | path | string | true | The UUID of the Catalogue Version |
Example responses
200 Response
{
"url": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Returns the presigned url for the manifest file | workloads.ReadCatalogueManifest |
400 | Bad Request | The response returned if an invalid ID is entered. | Error |
404 | Not Found | The Workload Catalogue Version ID can not be found or does not belong to the user. | Error |
Fetch Workload Catalogue Cloudformation Template
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/workload-catalogue/template/{version_id}/{name}', headers = headers)
print(r.json())
GET /20190206/workload-catalogue/template/{version_id}/{name}
Return a specific Workload Catalogue Cloudformation Template
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
version_id | path | string | true | The UUID of the Catalogue Version |
name | path | string | true | Retrieve the Cloudformation with this Resource Name. |
Example responses
200 Response
{
"url": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | Returns the presigned url to retrieve the template | workloads.ReadCatalogueTemplate |
400 | Bad Request | The response returned if an invalid ID is entered. | Error |
403 | Forbidden | The response returned if the request is not successful. | Error |
404 | Not Found | The response returned if the request is not successful. | Error |
Delete Workload Catalogue Item
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/workload-catalogue/{catalogue_id}', headers = headers)
print(r.json())
DELETE /20190206/workload-catalogue/{catalogue_id}
Delete a Workload Catalogue Item from your Stax Organisation.
Existing Workloads launched from this Catalogue will not be deleted.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
catalogue_id | path | string | true | The UUID of the Catalogue Item to delete. |
Example responses
200 Response
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"AdditionalMetaData": {
"CatalogueVersionId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "my-directory-service",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Protection": false,
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
},
"TraceId": "string",
"WorkloadCatalogueItem": "CREATE",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | DeleteCatalogueEvent |
400 | Bad Request | The Workload Catalogue can not be deleted due to running workloads. | Error |
403 | Forbidden | The Workload Catalogue is Protected. Protection must be disabled before you can delete it. | Error |
404 | Not Found | The Workload Catalog ID can not be found or does not belong to the user. | Error |
Update Workload Catalogue Item
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/workload-catalogue/{catalogue_id}', headers = headers)
print(r.json())
PUT /20190206/workload-catalogue/{catalogue_id}
Creates a new version of a Workload Catalogue Item.
Workload Catalogue Items have one or more versions and are immutable, so any changes are a new version.
Body parameter
{
"Description": "A Workload to build a VPC in my org",
"ManifestBody": "Resources:\n - VPC:\n Type: AWS::Cloudformation\n TemplateURL: s3://{JumaArtifactBucket}/workload-vpc/vpc-2-tier-no-NAT.yml\n",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Tags": {
"CostCode": "12345"
},
"Version": "1.0.2"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
catalogue_id | path | string | true | The UUID of the Catalogue Item to update. |
body | body | workloads.CreateCatalogueVersion | true | none |
Example responses
200 Response
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"ManifestBody": "Resources:\n - VPC:\n Type: AWS::Cloudformation\n TemplateURL: s3://{JumaArtifactBucket}/workload-vpc/vpc-2-tier-no-NAT.yml\n",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Public": false,
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | CreateVersionEvent |
400 | Bad Request | The response returned if the catalogue manifest is invalid. | Error |
403 | Forbidden | The response returned if the catalogue has already been deleted. | Error |
404 | Not Found | The Workload Catalog ID can not be found or does not belong to the user. | Error |
Delete Workload Catalogue Version
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/workload-catalogue/{catalogue_id}/{version_id}', headers = headers)
print(r.json())
DELETE /20190206/workload-catalogue/{catalogue_id}/{version_id}
Delete a Workload Catalogue Version from your Stax Organisation.
Existing Workloads launched from this Workload Catalogue Version will not be deleted.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
catalogue_id | path | string | true | The UUID of the Catalogue Item. |
version_id | path | string | true | The UUID of the Catalogue Version to delete. |
Example responses
200 Response
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"AdditionalMetaData": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Outputs": [
"bread"
],
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"WorkloadCatalogueName": "my-directory-service",
"WorkloadVersion": "0.01"
},
"TraceId": "string",
"WorkloadCatalogueVersion": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | DeleteVersionEvent |
400 | Bad Request | The Workload Catalogue Version can not be deleted due to running workloads. | Error |
404 | Not Found | The Workload Catalogue Version can not be found or does not belong to the user. | Error |
Fetch Workload Catalogue Version
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/workload-catalogue/{catalogue_id}/{version_id}', headers = headers)
print(r.json())
GET /20190206/workload-catalogue/{catalogue_id}/{version_id}
Return a specific Workload Catalogue Version.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
catalogue_id | path | string | true | The UUID of the Catalogue Item to return. |
version_id | path | string | true | The UUID of the Catalogue Version to return. |
include_parameters | query | boolean | false | Do you want the Parameter dictionary? |
Example responses
200 Response
{
"Versions": [
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Outputs": [
"bread"
],
"Parameters": [
{
"Key": "Bread",
"Value": "Croissant"
}
],
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"WorkloadVersion": "0.01"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | workloads.ReadCatalogueVersion |
400 | Bad Request | The response returned if an invalid ID is entered. | Error |
404 | Not Found | The Workload Catalog ID or Catalogue Version ID can not be found or does not belong to the user. | Error |
Update All Workloads
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/workload-update', headers = headers)
print(r.json())
POST /20190206/workload-update
(DEPRECATED) Update all active Workloads for a specific Workload Catalogue Item.
Body parameter
{
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | workloads.UpdateAll | true | none |
Example responses
200 Response
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | StaxEvent |
400 | Bad Request | The response returned if the Catalogue is not owned by the User. | Error |
403 | Forbidden | The response returned if the request is unsuccessful. | Error |
Fetch Workloads
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.get('https://api.eu1.staxapp.cloud/20190206/workloads/{workload_id}', headers = headers)
print(r.json())
GET /20190206/workloads/{workload_id}
Return a list of all Workloads available within your Stax Organisation.
Optionally, return the requested Workload.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workload_id | path | string | true | The UUID of the Workload Item to return. |
name | query | string | false | The Name of the Workloads to return. |
filter | query | string | false | Comma delimited list of Stax Workload statuses. Returns all Workloads with this status. |
account_names | query | string | false | Comma delimited list of Stax Account Names. Returns all Workloads deployed to these Accounts Names. |
account_types | query | string | false | Comma delimited list of Stax Account Types. Returns all Workloads deployed to these Account Types. |
account_ids | query | string | false | Comma delimited list of Stax Account IDs. Returns all Workloads deployed to these Account IDs. |
id_filter | query | string | false | Comma delimited list of Stax Workload IDs. Returns all Workloads with these Workload IDs. |
catalogue_names | query | string | false | Comma delimited list of Stax Workload Catalogue Names. Returns all Workloads deployed with these Workload Catalogue Names. |
catalogue_ids | query | string | false | Comma delimited list of Stax Workload Catalogue IDs. Returns all Workloads deployed with these Catalogue IDs. |
catalogue_version | query | string | false | Only return Workloads launched from this Stax Workload Catalogue Version (eg. 1.0.0). Requires catalogue_ids |
catalogue_version_id | query | string | false | Only return Workloads launched from this Stax Workload Catalogue Version ID. |
offset | query | integer | false | Pagination - The page number to return. Must be used with limit |
limit | query | integer | false | Pagination - The number of items per page to return. Must be used with offset |
sort | query | string | false | The field to sort on. |
sort_order | query | string | false | The sort order - up or down. |
include_tags | query | boolean | false | Do you want all the Tags? |
Detailed descriptions
filter: Comma delimited list of Stax Workload statuses. Returns all Workloads with this status.
Filter Options available: NEW, INITIALIZING, ACTIVE, CREATE_FAILED, DELETE_IN_PROGRESS, DELETED, DELETE_FAILED, UPDATE_IN_PROGRESS, UPDATE_FAILED, UPDATE_COMPLETE.
Enumerated Values
Parameter | Value |
---|---|
sort | Id |
sort | Name |
sort | AccountId |
sort | CatalogueId |
sort | CatalogueVersionId |
sort | Region |
sort | Status |
sort | UserTaskId |
sort | CreatedBy |
sort | CreatedTS |
sort | ModifiedTS |
sort | FactoryVersion |
sort_order | ASC |
sort_order | DESC |
Example responses
200 Response
{
"Paging": {
"NextOffset": 20,
"PrevOffset": null,
"Total": 100
},
"Workloads": [
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "my-workload-is-cool",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Protection": false,
"Region": "us-east-1",
"Status": "NEW",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
]
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | A list of all Workloads for the logged in Customer. | workloads.ReadWorkloads |
400 | Bad Request | The response returned if the Workload ID is not a valid UUID. | Error |
404 | Not Found | The Workload ID can not be found or does not belong to the user. | Error |
Deploy Workload
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.post('https://api.eu1.staxapp.cloud/20190206/workloads', headers = headers)
print(r.json())
POST /20190206/workloads
Deploy a Workload within an AWS Account.
Body parameter
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Name": "my-workload-is-cool",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Protection": false,
"Region": "us-east-1",
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
body | body | Workload | true | none |
Example responses
200 Response
{
"Detail": {
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"Tags": {
"CostCode": "12345"
},
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"WorkloadId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | CreateWorkloadEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | StaxEvent |
Terminate Workload
Code samples
import requests
headers = {
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.delete('https://api.eu1.staxapp.cloud/20190206/workloads/{workload_id}', headers = headers)
print(r.json())
DELETE /20190206/workloads/{workload_id}
Terminate an active Workload within an AWS Account.
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workload_id | path | string | true | The UUID of the Workload to delete. |
Example responses
200 Response
{
"Detail": {
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "e893d7e0-9306-11e9-bc42-526af7764f64"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | DeleteWorkloadEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | StaxEvent |
403 | Forbidden | The Workload is Protected. Protection must be disabled before you can delete it. | StaxEvent |
404 | Not Found | The Workload ID can not be found or does not belong to the user. | Error |
Update Workload
Code samples
import requests
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json',
'Authorization': 'API_KEY'
}
r = requests.put('https://api.eu1.staxapp.cloud/20190206/workloads/{workload_id}', headers = headers)
print(r.json())
PUT /20190206/workloads/{workload_id}
Update a Workload running within an AWS Account.
Body parameter
{
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": [
{
"Key": "Bread",
"Value": "Croissant"
}
],
"Protection": true,
"Tags": {
"CostCode": "12345"
}
}
Parameters
Name | In | Type | Required | Description |
---|---|---|---|---|
workload_id | path | string | true | The UUID of the Workload to update. |
body | body | workloads.UpdateWorkload | true | none |
Example responses
200 Response
{
"Detail": {
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"WorkloadId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Responses
Status | Meaning | Description | Schema |
---|---|---|---|
200 | OK | The response returned if the request is successful. | UpdateWorkloadEvent |
400 | Bad Request | The response returned if the request is unsuccessful. | StaxEvent |
404 | Not Found | The Workload ID can not be found or does not belong to the user. | Error |
Schemas
Account
{
"AWSLoginURLs": {
"admin": "string",
"developer": "string",
"readonly": "string"
},
"AccountType": "string",
"AllocatedTS": "2018-10-11T01:05:45.000Z",
"AssuranceState": "ACTIVE",
"AssuranceStateReason": "AWS GuardDuty Hardening has failed",
"AwsAccountId": "012345678901",
"AwsAccountStatusId": "string",
"AwsLoginURL": "string",
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Email": "stax.user@example.com",
"FactoryVersion": "f8cf81b",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LatestCost": 72.52,
"ModifiedTS": "2019-03-11T01:11:40.000Z",
"Name": "bakery",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrgsOuId": "string",
"Origin": "STAX",
"Status": "ACTIVE",
"StaxCreated": true,
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AWSLoginURLs | object | false | none | none |
» admin | string | false | none | none |
» developer | string | false | none | none |
» readonly | string | false | none | none |
AccountType | string | false | none | none |
AllocatedTS | string(date-time) | false | read-only | Allocated timestamp. |
AssuranceState | string | false | read-only | Hardening state of the Account. |
AssuranceStateReason | string | false | read-only | Descriptive reason for the current AssuranceState. |
AwsAccountId | string | false | read-only | AWS Account Id. |
AwsAccountStatusId | string | false | none | none |
AwsLoginURL | string | false | none | none |
CreatedBy | string | false | read-only | UUID of the account creator. |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
string(email) | false | read-only | Email address of account owner. | |
FactoryVersion | GitHash | false | none | none |
Id | ro-uuidv4 | true | none | none |
LatestCost | number | false | read-only | Estimated cost to-date for the current billing period. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Account. |
OrganisationId | uuidv4 | true | none | none |
OrgsOuId | string | false | none | none |
Origin | string | false | read-only | Origin of the Account. |
Status | string | false | read-only | Status of the Account. |
StaxCreated | boolean | false | none | none |
Tags | Tags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
AssuranceState | NONE |
AssuranceState | UPDATING |
AssuranceState | ACTIVE |
AssuranceState | ERROR |
Origin | STAX |
Origin | External |
Status | ACTIVE |
Status | AWSERROR |
Status | CLOSED |
Status | DISCOVERED |
Status | ERROR |
Status | INITIALIZING |
Status | MAINTENANCE |
Status | NEW |
Status | NOAWS |
Status | SUSPENDED |
AccountTask
{
"Accounts": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Accounts | [ro-uuidv4] | false | none | none |
AccountType
{
"Accounts": [],
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Development",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policies": [],
"Roles": [],
"Status": "ACTIVE",
"StaxCreated": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Accounts | [ro-uuidv4] | false | none | none |
CreatedBy | string¦null | false | read-only | UUID of the account creator. |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of Account Type. |
OrganisationId | ro-uuidv4 | true | none | none |
Policies | [ro-uuidv4] | false | none | none |
Roles | [ro-uuidv4] | false | none | none |
Status | any | false | none | none |
StaxCreated | boolean | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | DELETED |
AccountTypeAccessMap
{}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountTypeId | uuidv4 | false | none | none |
AccountTypeName | string | false | none | none |
GroupId | uuidv4 | false | none | none |
GroupName | string | false | none | none |
RoleName | AwsAccessRole | false | none | AWS access roles enabled for an account type. |
anyOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
AccountTypeMemberMap
{}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountId | uuidv4 | false | none | none |
AccountTypeId | uuidv4 | false | none | none |
AccountTypeName | string | false | none | none |
anyOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
AccountTypePolicyMap
{}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountTypeId | uuidv4 | false | none | none |
AccountTypeName | string | false | none | none |
PolicyId | uuidv4 | false | none | none |
anyOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
Alias
{
"Alias": {
"Status": "The company alias provided is available"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Alias | object | false | none | none |
» Status | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | The company alias provided is available |
Status | The company alias provided is already in use by another customer and cannot be used |
AliasInUse
{
"Alias": {
"Status": "The company alias provided is already in use by another customer and cannot be used"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Alias | object | false | none | none |
» Status | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | The company alias provided is available |
Status | The company alias provided is already in use by another customer and cannot be used |
ApiRole
"api_admin"
Stax role assigned to an API Token.
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | Stax role assigned to an API Token. |
Enumerated Values
Property | Value |
---|---|
anonymous | api_admin |
anonymous | api_user |
anonymous | api_readonly |
AwsAccessRole
"admin"
AWS access roles enabled for an account type.
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | AWS access roles enabled for an account type. |
Enumerated Values
Property | Value |
---|---|
anonymous | admin |
anonymous | developer |
anonymous | readonly |
AwsRegion
"ap-northeast-1"
AWS Region
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | AWS Region |
Enumerated Values
Property | Value |
---|---|
anonymous | ap-northeast-1 |
anonymous | ap-northeast-2 |
anonymous | ap-south-1 |
anonymous | ap-southeast-1 |
anonymous | ap-southeast-2 |
anonymous | ca-central-1 |
anonymous | eu-central-1 |
anonymous | eu-north-1 |
anonymous | eu-west-1 |
anonymous | eu-west-2 |
anonymous | eu-west-3 |
anonymous | sa-east-1 |
anonymous | us-east-1 |
anonymous | us-east-2 |
anonymous | us-west-1 |
anonymous | us-west-2 |
BaseEvent
{
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
DetailType | string | false | none | none |
BaseEventDetail
{
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Message | MessageEventDetail | false | none | none |
Operation | Operation | false | none | none |
OperationStatus | OperationStatus | false | none | none |
Severity | string | false | none | none |
BaseTask
{
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Id | ro-uuidv4 | false | none | none |
Status | string | false | none | none |
BpgMapping
{
"BgpPeerId": "string",
"BgpStatus": "up"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
BgpPeerId | string | false | none | The BGP Peer ID of the VIF |
BgpStatus | string | false | read-only | The status of the BGP peer. |
Enumerated Values
Property | Value |
---|---|
BgpStatus | up |
BgpStatus | down |
BgpStatus | unknown |
CidrExclusion
{
"Cidr": "10.128.0.0/19",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "datacenter exclusion",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Cidr | string | true | none | CIDR Range in quad dot notation. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Description | string¦null | false | none | Longer description of what the CIDR Exclusion is used for. |
Id | ro-uuidv4 | false | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the CIDR Exclusion. |
NetworkingHubId | uuidv4 | false | none | none |
Status | string | false | read-only | The status of the CIRD Exclusion. |
Tags | NetworkingTags | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
CidrRange
{
"Cidr": "10.128.0.0/23",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DefaultCidrRange": false,
"Description": "datacenter ranges",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastAllocationTS": "2018-10-11T01:05:45.000Z",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Cidr | string | true | none | CIDR Range in quad dot notation. This range is a private network range with a size between /8 to /23 |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
DefaultCidrRange | boolean | false | none | Boolean value declaring if the range is the default CIDR Range |
Description | string¦null | false | none | Longer description of what the CIDR Range is used for. |
Id | ro-uuidv4 | true | none | none |
LastAllocationTS | string(date-time) | false | read-only | Created timestamp. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the CIDR Range. |
NetworkingHubId | ro-uuidv4 | false | none | none |
Status | string | false | read-only | The status of the CIDR Range. |
Tags | NetworkingTags | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
Config
{
"API": {
"endpoints": [
{
"endpoint": "string",
"name": "string",
"region": "ap-northeast-1"
}
]
},
"Analytics": {
"disable": true
},
"ApiAuth": {
"identityPoolId": "string",
"mandatorySignIn": true,
"region": "ap-northeast-1",
"userPoolId": "string",
"userPoolWebClientId": "string"
},
"AppSync": {
"analytics": {
"endpoint": "string",
"region": "ap-northeast-1"
},
"core": {
"endpoint": "string",
"region": "ap-northeast-1"
},
"graphqlEndpoint": "string",
"region": "ap-northeast-1"
},
"Auth": {
"identityPoolId": "string",
"mandatorySignIn": true,
"region": "ap-northeast-1",
"userPoolId": "string",
"userPoolWebClientId": "string"
},
"Juma": {
"controlplaneRegion": "string",
"domainName": "string",
"fullDomainName": "string",
"masterAccountId": "string",
"rootOrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"stage": "string"
},
"JumaAuth": {
"identityPoolId": "string",
"mandatorySignIn": true,
"region": "ap-northeast-1",
"userPoolId": "string",
"userPoolWebClientId": "string"
},
"Pingdom": {
"key": "string"
},
"SNS": {
"event": "string",
"notify": "string"
},
"Sentry": {
"dsn": "string",
"projectName": "string"
},
"Storage": {
"bucket": "string",
"region": "ap-northeast-1"
},
"Zone": {
"key": "string"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
API | object | true | none | none |
» endpoints | [ConfigEndpoint] | false | none | none |
Analytics | object | false | none | none |
» disable | boolean | false | none | none |
ApiAuth | object | false | none | none |
» identityPoolId | string | false | none | none |
» mandatorySignIn | boolean | false | none | none |
» region | AwsRegion | false | none | AWS Region |
» userPoolId | string | false | none | none |
» userPoolWebClientId | string | false | none | none |
AppSync | object | false | none | none |
» analytics | object | false | none | none |
»» endpoint | string | false | none | none |
»» region | AwsRegion | false | none | AWS Region |
» core | object | false | none | none |
»» endpoint | string | false | none | none |
»» region | AwsRegion | false | none | AWS Region |
» graphqlEndpoint | string | false | none | none |
» region | AwsRegion | false | none | AWS Region |
Auth | object | true | none | none |
» identityPoolId | string | false | none | none |
» mandatorySignIn | boolean | false | none | none |
» region | AwsRegion | false | none | AWS Region |
» userPoolId | string | false | none | none |
» userPoolWebClientId | string | false | none | none |
Juma | object | false | none | none |
» controlplaneRegion | string | false | none | none |
» domainName | string | false | none | none |
» fullDomainName | string | false | none | none |
» masterAccountId | string | false | none | none |
» rootOrgId | ro-uuidv4 | false | none | none |
» stage | string | false | none | none |
JumaAuth | object | false | none | none |
» identityPoolId | string | false | none | none |
» mandatorySignIn | boolean | false | none | none |
» region | AwsRegion | false | none | AWS Region |
» userPoolId | string | false | none | none |
» userPoolWebClientId | string | false | none | none |
Pingdom | object | false | none | none |
» key | string¦null | false | none | none |
SNS | object | false | none | none |
» event | string | false | none | none |
» notify | string | false | none | none |
Sentry | object | false | none | none |
» dsn | string | false | none | none |
» projectName | string | false | none | none |
Storage | object | false | none | none |
» bucket | string | false | none | none |
» region | AwsRegion | false | none | AWS Region |
Zone | object | false | none | none |
» key | string | false | none | none |
ConfigEndpoint
{
"endpoint": "string",
"name": "string",
"region": "ap-northeast-1"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
endpoint | string | false | none | none |
name | string | false | none | none |
region | AwsRegion | false | none | AWS Region |
CreateCatalogueDetail
{
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Name": "my-directory-service",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Public": false,
"Tags": {
"CostCode": "12345"
},
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
TraceId | string | false | none | none |
WorkloadCatalogueItem | object | false | none | none |
» CatalogueId | ro-uuidv4 | false | none | none |
» Description | string | false | none | Description of the Workload. |
» ManifestURL | string | false | none | HTTPS/S3 URL of the manifest. Either this or ManifestBody must be provided. |
» Name | string | false | none | Name of the Workload Catalogue Item to create. |
» Operation | Operation | false | none | none |
» OrganisationId | ro-uuidv4 | false | none | none |
» Public | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
» Tags | Tags | false | none | none |
» Version | string | false | read-only | none |
CreateCatalogueEvent
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Name": "my-directory-service",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Public": false,
"Tags": {
"CostCode": "12345"
},
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CatalogueId | ro-uuidv4 | false | none | none |
CustomerId | ro-uuidv4 | false | none | none |
Detail | CreateCatalogueDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
TraceId | string | false | none | none |
CreatePolicyDetail
{
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A service control policy that denies access to all.",
"Name": "DenyAll",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policy": "string",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Policy | object | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» CustomerId | ro-uuidv4 | false | none | none |
» Description | string | false | none | Description of the Policy. |
» Name | string | false | none | Name of the Policy. |
» Operation | Operation | false | none | none |
» OrgId | ro-uuidv4 | false | none | none |
» OrganisationId | ro-uuidv4 | false | none | none |
» Policy | string | false | none | none |
» PolicyId | ro-uuidv4 | false | none | none |
» TaskId | ro-uuidv4 | false | none | none |
» TraceId | string | false | none | none |
CreatePolicyEvent
{
"Detail": {
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A service control policy that denies access to all.",
"Name": "DenyAll",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policy": "string",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | CreatePolicyDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
CreateVersionDetail
{
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"ManifestBody": "Resources:\n - VPC:\n Type: AWS::Cloudformation\n TemplateURL: s3://{JumaArtifactBucket}/workload-vpc/vpc-2-tier-no-NAT.yml\n",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Public": false,
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
TraceId | string | false | none | none |
WorkloadCatalogueItem | object | false | none | none |
» CatalogueId | ro-uuidv4 | false | none | none |
» Description | string | false | none | Description of the Workload. |
» ManifestBody | string | false | none | Raw text of a Manifest. Either this or ManifestURL must be provided. |
» ManifestURL | string | false | none | HTTPS/S3 URL of the manifest. Either this or ManifestBody must be provided. |
» Operation | Operation | false | none | none |
» OrganisationId | ro-uuidv4 | false | none | none |
» Parameters | Parameter | false | none | none |
» Public | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
» Version | string | false | read-only | none |
CreateVersionEvent
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"ManifestBody": "Resources:\n - VPC:\n Type: AWS::Cloudformation\n TemplateURL: s3://{JumaArtifactBucket}/workload-vpc/vpc-2-tier-no-NAT.yml\n",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Public": false,
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CatalogueId | ro-uuidv4 | false | none | none |
CustomerId | ro-uuidv4 | false | none | none |
Detail | CreateVersionDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
TraceId | string | false | none | none |
CreateWorkloadDetail
{
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"Tags": {
"CostCode": "12345"
},
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Workload | object | false | none | none |
» AccountId | uuidv4 | false | none | none |
» CatalogueId | uuidv4 | false | none | none |
» CatalogueVersionId | uuidv4 | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» Name | string | false | none | The Workload name. |
» Operation | Operation | false | none | none |
» OrgId | uuidv4 | false | none | none |
» OrganisationId | uuidv4 | false | none | none |
» Parameters | Parameter | false | none | none |
» Region | string | false | none | AWS Region the workload will be launched in |
» Tags | Tags | false | none | none |
» TaskId | uuidv4 | false | none | none |
» TraceId | string | false | none | none |
» WorkloadId | uuidv4 | false | none | none |
CreateWorkloadEvent
{
"Detail": {
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"Tags": {
"CostCode": "12345"
},
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"WorkloadId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | CreateWorkloadDetail | false | none | none |
WorkloadId | ro-uuidv4 | false | none | none |
Customer
{
"CognitoUserId": "my-user-id",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Email": "stax.user@example.com",
"FactoryVersion": "f8cf81b",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "My Business",
"Status": "ACTIVE",
"SupportPlan": "BUSINESS",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CognitoUserId | string | false | read-only | Cognito User unique identifier. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
string(email) | true | none | Email address of the User. | |
FactoryVersion | GitHash | false | none | none |
Id | ro-uuidv4 | false | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Account. |
Status | string | false | read-only | Status of the Customer. |
SupportPlan | string | false | none | Stax Support Plan allocated to the Customer. |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | PROSPECT |
Status | NEW |
Status | INITIALIZING |
Status | ACTIVE |
Status | SUSPENDED |
SupportPlan | BASIC |
SupportPlan | BUSINESS |
SupportPlan | ENTERPRISE |
DNSResolver
{
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"InboundIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Interfaces": 2,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "dns",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OutboundIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Id | ro-uuidv4 | true | none | none |
InboundIpAddresses | [string]¦null | false | none | The IP Addresses attached to the Inbound DNS Resolver. |
Interfaces | integer | true | none | The number of ENIs to attach to the DNS Resolvers. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Stax DNS Resolvers. |
NetworkingHubId | uuidv4 | true | none | none |
OutboundIpAddresses | [string]¦null | false | none | The IP Addresses attached to the Outbound DNS Resolver. |
Status | string | false | read-only | The status of the Stax DNS Resolvers. |
Tags | NetworkingTags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
DNSRule
{
"AwsRuleId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DnsResolverId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DomainName": "test.local",
"ForwarderIpAddresses": [
"192.168.0.1",
"192.168.0.2"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "on-premises",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AwsRuleId | string¦null | false | read-only | The AWS Route53 Resolver Rule Id. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
DnsResolverId | ro-uuidv4 | true | none | none |
DomainName | string | true | none | Domain name to forward DNS queries for. |
ForwarderIpAddresses | [string] | true | none | The IP Addresses to forward DNS queries to. |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of Stax DNS Rule. |
Status | string | false | read-only | The status of the Stax DNS Rule. |
Tags | NetworkingTags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
DeleteCatalogueDetail
{
"AdditionalMetaData": {
"CatalogueVersionId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "my-directory-service",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Protection": false,
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
},
"TraceId": "string",
"WorkloadCatalogueItem": "CREATE",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AdditionalMetaData | object | false | none | none |
» CatalogueVersionId | ro-uuidv4 | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» CreatedTS | string(date-time) | false | read-only | Created timestamp. |
» Description | string | false | none | Description of the Workload. |
» Id | ro-uuidv4 | false | none | none |
» ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
» Name | string | false | none | Name of the Workload Catalogue Item to create. |
» OrganisationId | uuidv4 | false | none | none |
» Protection | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
» Public | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
» Status | string | false | read-only | Status of the Workload. |
» UserTaskId | ro-uuidv4 | false | none | none |
TraceId | string | false | none | none |
WorkloadCatalogueItem | Operation | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | NEW |
Status | UPLOADING |
Status | VALIDATING |
Status | ACTIVE |
Status | DELETED |
Status | FAILED |
DeleteCatalogueEvent
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"AdditionalMetaData": {
"CatalogueVersionId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "my-directory-service",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Protection": false,
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
},
"TraceId": "string",
"WorkloadCatalogueItem": "CREATE",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CatalogueId | ro-uuidv4 | false | none | none |
CustomerId | ro-uuidv4 | false | none | none |
Detail | DeleteCatalogueDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
TraceId | string | false | none | none |
DeletePolicyDetail
{
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Policy | object | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» CustomerId | ro-uuidv4 | false | none | none |
» Operation | Operation | false | none | none |
» OrgId | ro-uuidv4 | false | none | none |
» OrganisationId | ro-uuidv4 | false | none | none |
» PolicyId | ro-uuidv4 | false | none | none |
» TaskId | ro-uuidv4 | false | none | none |
» TraceId | string | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
DeletePolicyEvent
{
"Detail": {
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | DeletePolicyDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
DeleteVersionDetail
{
"AdditionalMetaData": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Outputs": [
"bread"
],
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"WorkloadCatalogueName": "my-directory-service",
"WorkloadVersion": "0.01"
},
"TraceId": "string",
"WorkloadCatalogueVersion": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AdditionalMetaData | object | false | none | none |
» CatalogueId | ro-uuidv4 | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» CreatedTS | string(date-time) | false | read-only | Created timestamp. |
» Description | string | false | none | Description of the Workload. |
» Id | ro-uuidv4 | false | none | none |
» ManifestURL | string | false | none | HTTPS/S3 URL of the manifest. Either this or ManifestBody must be provided. |
» ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
» Outputs | [string]¦null | false | read-only | none |
» Public | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
» Status | string | false | read-only | Status of the Workload. |
» UserTaskId | ro-uuidv4 | false | none | none |
» WorkloadCatalogueName | string | false | none | Name of the Workload Catalogue Item to create. |
» WorkloadVersion | string | false | read-only | none |
TraceId | string | false | none | none |
WorkloadCatalogueVersion | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | NEW |
Status | UPLOADING |
Status | VALIDATING |
Status | ACTIVE |
Status | DELETED |
Status | FAILED |
DeleteVersionEvent
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"AdditionalMetaData": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Outputs": [
"bread"
],
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"WorkloadCatalogueName": "my-directory-service",
"WorkloadVersion": "0.01"
},
"TraceId": "string",
"WorkloadCatalogueVersion": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CatalogueId | ro-uuidv4 | false | none | none |
CustomerId | ro-uuidv4 | false | none | none |
Detail | DeleteVersionDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
TraceId | string | false | none | none |
DeleteWorkloadDetail
{
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "e893d7e0-9306-11e9-bc42-526af7764f64"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Workload | object | false | none | none |
» AccountId | uuidv4 | false | none | none |
» CatalogueVersionId | uuidv4 | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» Name | string | false | none | The Workload name. |
» Operation | Operation | false | none | none |
» OrgId | uuidv4 | false | none | none |
» OrganisationId | uuidv4 | false | none | none |
» Parameters | Parameter | false | none | none |
» Region | string | false | none | AWS Region the workload will be launched in |
» TaskId | uuidv4 | false | none | none |
» TraceId | string | false | none | none |
» WorkloadId | ro-uuidv4 | false | none | none |
DeleteWorkloadEvent
{
"Detail": {
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "e893d7e0-9306-11e9-bc42-526af7764f64"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | DeleteWorkloadDetail | false | none | none |
DxAssociation
{
"AwsAssociationId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DxGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Prefixes": [
"192.168.0.0/24",
"192.168.1.0/24"
],
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VpcId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AwsAssociationId | string¦null | false | read-only | The AWS Id of the DX Association. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
DxGatewayId | uuidv4 | true | none | none |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
NetworkingHubId | uuidv4 | true | none | none |
Prefixes | [string] | true | none | The CIDR Ranges to advertise to on-premises. |
Status | string | false | read-only | The status of the Stax DX Association. |
UserTaskId | ro-uuidv4 | false | none | none |
VpcId | uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
DxConnection
{
"Bandwidth": "50Mbps",
"ConnectionId": "dxcon-abcdefgh",
"ConnectionName": "SY4",
"ConnectionState": "available",
"Region": "ap-northeast-1",
"Vlan": 4000
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Bandwidth | string | true | none | Bandwidth of the Direct Connect Connection. |
ConnectionId | string | true | none | AWS Id of the Direct Connect Connection. |
ConnectionName | string | true | none | Name of the Direct Connect Connection. |
ConnectionState | string | true | read-only | State of the Direct Connect Connection. |
Region | AwsRegion | true | none | AWS Region |
Vlan | integer¦null | true | none | VLAN for the Direct Connect Connection. |
Enumerated Values
Property | Value |
---|---|
ConnectionState | ordering |
ConnectionState | requested |
ConnectionState | pending |
ConnectionState | available |
ConnectionState | down |
ConnectionState | deleting |
ConnectionState | deleted |
ConnectionState | rejected |
ConnectionState | unknown |
DxGateway
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"AwsGatewayId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"GatewayType": "TRANSIT",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod Gateway",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountId | uuidv4 | true | none | none |
Asn | integer | true | none | ASN to assign to the Direct Connect Gateway. |
AwsGatewayId | string¦null | false | read-only | The AWS Id of the Direct Connect Gateway. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
GatewayType | string | false | read-only | The type of the Stax DX Gateway. |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Direct Connect Gateway. |
OrganisationId | ro-uuidv4 | true | none | none |
Status | string | false | read-only | The status of the Stax DX Gateway. |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
GatewayType | TRANSIT |
GatewayType | PRIVATE |
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
DxVif
{
"Asn": 64512,
"AwsConnectionId": "dxcon-abcdefgh",
"AwsRouterIp": "192.168.0.2/30",
"AwsVifId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"DxGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"JumboMtu": false,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod VIF",
"Region": "ap-northeast-1",
"RouterIp": "192.168.0.1/30",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VifType": "TRANSIT",
"Vlan": 4000
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Asn | integer | true | none | ASN to assign to the Direct Connect VIF. |
AwsConnectionId | string | true | none | AWS Id of the Direct Connect Connection. |
AwsRouterIp | string | true | none | The BGP peer IP configured on the AWS endpoint. |
AwsVifId | string¦null | false | read-only | The AWS Id of the Direct Connect VIF. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
DxGatewayId | uuidv4 | true | none | none |
Id | ro-uuidv4 | true | none | none |
JumboMtu | boolean | true | none | Boolean value to enable Jumbo Frames. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Direct Connect VIF. |
Region | AwsRegion | true | none | AWS Region |
RouterIp | string | true | none | The BGP peer IP configured on your endpoint. |
Status | string | false | read-only | The status of the Stax DX VIF. |
Tags | NetworkingTags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
VifType | string | true | read-only | The type of Direct Connect VIF. |
Vlan | integer | true | none | VLAN for the Direct Connect VIF. |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
VifType | TRANSIT |
VifType | PRIVATE |
DxVifStatus
[
{
"BgpPeerId": "bgp-peer-id",
"BgpStatus": "up"
}
]
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [BpgMapping] | false | none | none |
Error
{
"Cause": "string",
"Error": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Cause | string | false | none | none |
Error | string | false | none | none |
GatewayMap
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"GatewayType": "TRANSIT",
"Name": "Prod Gateway"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountId | uuidv4 | true | none | none |
Asn | integer | true | none | ASN to assign to the Direct Connect Gateway. |
GatewayType | string | true | read-only | The type of the Stax DX Gateway. |
Name | string | true | none | Name of the Direct Connect Gateway. |
Enumerated Values
Property | Value |
---|---|
GatewayType | TRANSIT |
GatewayType | PRIVATE |
GetTasks
{
"Tasks": {
"Workloads": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Tasks | Task | false | none | none |
GitHash
"f8cf81b"
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | read-only | none |
Group
{
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "DevOps",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Users": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Group. |
OrganisationId | ro-uuidv4 | false | none | none |
Status | string | false | none | Status of the Group. |
UserTaskId | ro-uuidv4 | false | none | none |
Users | [ro-uuidv4] | false | none | Array of IDs of Users belonging to the Group. |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | DELETED |
HubConnection
{
"ImprovedAcceleration": false,
"Name": "vpn-transit-connection",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Tags": {
"CostCode": "12345"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
ImprovedAcceleration | boolean | true | none | Boolean value to turn on AWS Global Accelerator and the AWS global network for improved performance |
Name | string | true | none | Name of Stax VPN Connection. |
NetworkingHubId | uuidv4 | true | none | none |
Tags | NetworkingTags | false | none | none |
IdamUser
{
"id": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
id | uuidv4 | true | none | none |
IdamUserRole
"customer_admin"
Stax role assigned to an IDAM user.
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | Stax role assigned to an IDAM user. |
Enumerated Values
Property | Value |
---|---|
anonymous | customer_admin |
anonymous | customer_user |
anonymous | customer_readonly |
anonymous | customer_costadmin |
MessageEventDetail
{
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
}
Properties
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» CustomerId | uuidv4 | false | none | none |
» TaskId | uuidv4 | false | none | none |
» TraceId | string | false | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
NetworkingHub
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "my-hub",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"InterfaceEndpoints": [
"ec2"
],
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PhzSuffix": "my-domain.cloud",
"RedundantEndpoints": true,
"Region": "ap-northeast-1",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VpnEcmpSupport": true
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountId | uuidv4 | true | none | none |
Asn | integer | false | none | A private Autonomous System Number (ASN) for the Amazon side of a BGP session |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Description | string¦null | false | none | Longer description of what the Stax Networking Hub is used for. |
Id | ro-uuidv4 | true | none | none |
InterfaceEndpoints | [interface-endpoint] | false | none | [A list of interface vpc endpoints] |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of Stax Networking Hub. |
OrganisationId | ro-uuidv4 | false | none | none |
PhzSuffix | string¦null | false | none | The suffix used to create Route53 Private Hosted Zones names within the Networking Hub, cannot be modified once set |
RedundantEndpoints | boolean | false | none | Boolean value declaring if redundant Interface VPC Endpoints will be created |
Region | AwsRegion | true | none | AWS Region |
Status | string | false | read-only | The status of the Stax Networking Hub. |
Tags | NetworkingTags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
VpnEcmpSupport | boolean | false | none | Boolean value declaring to enable or disable Equal Cost Multipath Protocol support |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
NetworkingTags
{
"CostCode": "12345"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
additionalProperties | string | false | none | none |
Operation
"CREATE"
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
anonymous | CREATE |
anonymous | READ |
anonymous | UPDATE |
anonymous | DELETE |
anonymous | accounts:CreateAccount |
anonymous | accounts:CreateAccountType |
anonymous | accounts:DiscoverAccounts |
anonymous | accounts:DeleteAccountType |
anonymous | accounts:ReadAccountTypes |
anonymous | accounts:ReadAccounts |
anonymous | accounts:UpdateAccount |
anonymous | accounts:UpdateAccountType |
anonymous | accounts:UpdateAccountTypeAccess |
anonymous | accounts:UpdateAccountTypeMembers |
anonymous | accounts:UpdatePolicies |
anonymous | organisations:AttachPolicy |
anonymous | organisations:CreatePolicy |
anonymous | organisations:DeletePolicy |
anonymous | organisations:DetachPolicy |
anonymous | organisations:ReadPolicies |
anonymous | organisations:UpdatePolicy |
anonymous | teams:CreateApiToken |
anonymous | teams:CreateGroup |
anonymous | teams:CreateUser |
anonymous | teams:DeleteApiToken |
anonymous | teams:DeleteGroup |
anonymous | teams:DeleteUser |
anonymous | teams:ReadApiTokens |
anonymous | teams:ReadGroups |
anonymous | teams:ReadUsers |
anonymous | teams:UpdateApiToken |
anonymous | teams:UpdateGroup |
anonymous | teams:UpdateGroupMembers |
anonymous | teams:UpdateUser |
anonymous | teams:UpdateUserPassword |
anonymous | workloads:CreateCatalogueItem |
anonymous | workloads:CreateCatalogueVersion |
anonymous | workloads:CreateWorkload |
anonymous | workloads:DeleteCatalogueItem |
anonymous | workloads:DeleteCatalogueVersion |
anonymous | workloads:DeleteWorkload |
anonymous | workloads:ReadWorkloadCatalogueItems |
anonymous | workloads:ReadWorkloads |
anonymous | workloads:UpdateWorkload |
anonymous | networking:CreateHub |
anonymous | networking:UpdateHub |
anonymous | networking:DeleteHub |
anonymous | networking:CreateVpc |
anonymous | networking:UpdateVpc |
anonymous | networking:DeleteVpc |
anonymous | networking:CreateDnsResolver |
anonymous | networking:UpdateDnsResolver |
anonymous | networking:DeleteDnsResolver |
anonymous | networking:CreateDnsRule |
anonymous | networking:UpdateDnsRule |
anonymous | networking:DeleteDnsRule |
anonymous | networking:CreateDxResource |
anonymous | networking:UpdateDxVif |
anonymous | networking:DeleteDxVif |
anonymous | networking:CreateDxAssociation |
anonymous | networking:UpdateDxAssociation |
anonymous | networking:DeleteDxGateway |
anonymous | networking:DeleteDxAssociation |
anonymous | networking:CreateVpnCustomerGateway |
anonymous | networking:UpdateVpnCustomerGateway |
anonymous | networking:DeleteVpnCustomerGateway |
anonymous | networking:CreateVpnConnection |
anonymous | networking:UpdateVpnConnection |
anonymous | networking:DeleteVpnConnection |
anonymous | networking:CreateHubPrefixList |
anonymous | networking:CreateVpcPrefixList |
anonymous | networking:UpdatePrefixList |
anonymous | networking:UpdateHubPrefixListAssociation |
anonymous | networking:UpdateVpcPrefixListAssociation |
anonymous | networking:DeletePrefixList |
anonymous | account_assurance:HardenAccount |
anonymous | account_assurance:HardenOrganisation |
anonymous | account_discovery:DiscoverAccounts |
anonymous | aws_account:CreateAwsAccounts |
anonymous | idam_account:IdamAccount |
anonymous | idam_user:CreateIdamUser |
anonymous | idam_user:UpdateIdamUser |
anonymous | idam_workload:CreateIdamWorkload |
anonymous | organisation:CreateOrganisation |
anonymous | organisation_assurance:OrganisationAssurance |
anonymous | organisation_billing:DeployEtl |
anonymous | organisation_billing:RegisterApn |
anonymous | organisation_billing:UpdateCrm |
anonymous | stax_account:CreateStaxAccount |
anonymous | stax_account:OnboardStaxAccount |
anonymous | stax_account:UpdateStaxAccount |
anonymous | customer:CreateCustomer |
anonymous | saga:CreateCustomer |
anonymous | saga:CreateOrganisation |
OperationStatus
"STARTED"
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
Enumerated Values
Property | Value |
---|---|
anonymous | STARTED |
anonymous | RUNNING |
anonymous | SUCCEEDED |
anonymous | FAILED |
anonymous | TIMED_OUT |
anonymous | ABORTED |
Organisation
{
"Alias": "my-stax-org",
"AllowedDomains": [
"@example.com",
"@stax.io"
],
"AttachedPolicies": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"AwsAccountEmailTemplate": "stax.user+${Stax::AccountId}@example.com",
"AwsPartnerSupport": true,
"AwsSupportType": "ENTERPRISE",
"ComplianceType": "PCI",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ExternalStaxId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "default",
"Region": "ap-northeast-1",
"SpotlightSsoURL": "string",
"Status": "ACTIVE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Alias | string | false | none | Alias for your Organisation. This alias will be used in the URL of your Stax Identity Broker. Allowed characters include a-z, 0-9 and hyphens (except start and end). |
AllowedDomains | [string]¦null | false | none | Allowed email domains for the Organisation, this limits who can be invited to your Team. |
AttachedPolicies | [ro-uuidv4] | false | read-only | none |
AwsAccountEmailTemplate | string¦null | false | none | AWS Accounts will be registered with email addresses fitting this pattern. Please ensure these email addresses are secured, as they can be used for Root Credential recovery. |
AwsPartnerSupport | boolean | false | none | AWS Partner Led Support - if you have partner led support then Stax Support will open AWS Support cases on your behalf. |
AwsSupportType | string | false | read-only | Default AWS Support level set on Accounts in your Organisation. |
ComplianceType | string¦null | false | read-only | Compliance type for the Organisation. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
CustomerId | ro-uuidv4 | false | none | none |
ExternalStaxId | ro-uuidv4 | false | none | none |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | false | none | Name of the Organisation |
Region | AwsRegion | false | none | AWS Region |
SpotlightSsoURL | string | false | read-only | none |
Status | string | false | read-only | Status of the Organisation. |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
AwsSupportType | BASIC |
AwsSupportType | DEVELOPER |
AwsSupportType | BUSINESS |
AwsSupportType | ENTERPRISE |
ComplianceType | APRA |
ComplianceType | PCI |
ComplianceType | SOC2 |
Status | NEW |
Status | INITIALIZING |
Status | ACTIVE |
Status | SUSPENDED |
Pagination
{
"NextOffset": 20,
"PrevOffset": null,
"Total": 100
}
Pagination metadata. Present when limit and offset parameters are supplied.
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
NextOffset | number¦null | true | none | Offset value to provide to retrieve the next set of items. Null when there are no more pages to fetch. |
PrevOffset | number¦null | true | none | Offset value to provide to retrieve the previous set of items. Null when the first page is returned. |
Total | number | true | none | Total number of items in the full pagination set after filters are applied. |
Parameter
{
"Key": "Bread",
"Value": "Croissant"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
additionalProperties | ParameterProperties | false | none | none |
ParameterProperties
0
Properties
oneOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | integer | false | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | none |
xor
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object¦null | false | none | none |
» key | string | false | none | none |
» value | string | false | none | none |
Policy
{
"AttachableTo": "ANY",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A service control policy that denies access to all.",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Mandatory": false,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "DenyAll",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policy": "string",
"Public": false,
"Status": "ACTIVE"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AttachableTo | string | false | none | Whether a policy is org only or account type only, or both |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Description | string | false | none | Description of the Policy. |
Id | ro-uuidv4 | true | none | none |
Mandatory | boolean | false | none | Boolean value declaring if the policy is mandatory or not. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | false | none | Name of the Policy. |
OrganisationId | ro-uuidv4 | false | none | none |
Policy | string | false | none | none |
Public | boolean | false | none | Boolean value declaring if the policy is public or private. |
Status | string | false | read-only | Status of the policy. |
Enumerated Values
Property | Value |
---|---|
AttachableTo | ORG |
AttachableTo | ACCOUNT_TYPE |
AttachableTo | ANY |
Status | ACTIVE |
Status | DELETED |
Status | FAILED |
PrefixList
{
"AwsPrefixListId": "string",
"AwsTargetId": "BLACKHOLE",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Entries": [
"192.168.0.1/32",
"192.168.0.2/32"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"MaxEntries": 3,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "example",
"NetworkingHubId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PrefixListType": "HUB",
"RouteTableTypes": [
"INFRASTRUCTURE",
"ISOLATED"
],
"Status": "ACTIVE",
"SubnetTypes": [
"PRIVATE",
"RESTRICTED"
],
"Tags": {
"CostCode": "12345"
},
"TargetId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TargetType": "BLACKHOLE",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VpcIds": [
"a7220870-40fe-4235-abb3-4d42af0336c2",
"7e542285-8b90-4b57-81e1-96e87e5ee443"
],
"VpcTypes": [
"TRANSIT",
"ISOLATED"
],
"Zones": [
"ZONE1",
"ZONE2"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AwsPrefixListId | string¦null | false | read-only | The AWS Id of the Prefix List. |
AwsTargetId | string¦null | false | read-only | The AWS Id of either a VPN, VPC or Direct Connect Gateway to the target of the HUB Prefix List associations. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Entries | [string] | true | none | The CIDR Ranges to include in the Prefix List. |
Id | ro-uuidv4 | true | none | none |
MaxEntries | integer | true | none | The maximum number of CIDR entries that can exist in the Prefix List. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Stax Prefix List. |
NetworkingHubId | ro-uuidv4 | true | none | none |
PrefixListType | string | true | none | The type of Prefix List. |
RouteTableTypes | [string]¦null | false | none | The TGW Route Table types to associate a HUB Prefix List with. |
Status | string | true | read-only | The status of the Stax Prefix List. |
SubnetTypes | [string]¦null | false | none | The subnet types to associate a VPC Prefix List with. |
Tags | NetworkingTags | false | none | none |
TargetId | string¦null | false | none | The Stax Id of either a VPN, VPC or Direct Connect Gateway which will be the target of the HUB Prefix List. |
TargetType | string¦null | false | none | The type of the target for the HUB Prefix List associations. |
UserTaskId | ro-uuidv4 | false | none | none |
VpcIds | [uuidv4]¦null | false | none | The list of Stax VPC Ids to associate a VPC Prefix List with. |
VpcTypes | [string]¦null | false | none | The VPC types to associate a VPC Prefix List with. |
Zones | [string]¦null | false | none | The VPC Zones to associate a VPC or HUB Prefix List with. |
Enumerated Values
Property | Value |
---|---|
PrefixListType | VPC |
PrefixListType | HUB |
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
TargetType | BLACKHOLE |
TargetType | VPC |
TargetType | VPN |
TargetType | DIRECT_CONNECT_GATEWAY |
PrivateAssociation
{
"Prefixes": [
"192.168.0.0/24",
"192.168.1.0/24"
],
"VpcId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Prefixes | [string] | true | none | The CIDR Ranges to advertise to on-premises. |
VpcId | uuidv4 | true | none | none |
Resource
{
"ResourceId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ResourceType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
ResourceId | ro-uuidv4 | false | none | none |
ResourceType | string | false | none | none |
Role
"customer_admin"
Stax role assigned to user.
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | string | false | none | Stax role assigned to user. |
Enumerated Values
Property | Value |
---|---|
anonymous | customer_root |
anonymous | customer_admin |
anonymous | customer_user |
anonymous | customer_readonly |
anonymous | customer_costadmin |
anonymous | api_admin |
anonymous | api_user |
anonymous | api_readonly |
StaxEvent
{
"Detail": {
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | TaskEventDetail | false | none | none |
Tags
{
"CostCode": "12345"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
additionalProperties | string | false | none | none |
Task
{
"Workloads": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
Properties
None
TaskEventDetail
{
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
TaskId | ro-uuidv4 | false | none | none |
TraceEventDetail
{
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
TraceId | string | false | none | none |
TransitAssociation
{
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Prefixes": [
"192.168.0.0/24",
"192.168.1.0/24"
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
NetworkingHubId | uuidv4 | true | none | none |
Prefixes | [string] | true | none | The CIDR Ranges to advertise to on-premises. |
TunnelMapping
{
"TunnelName": "string",
"TunnelStatus": "up"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
TunnelName | string | false | none | The name of VPN tunnel |
TunnelStatus | string | false | read-only | The status of the VPN tunnel. |
Enumerated Values
Property | Value |
---|---|
TunnelStatus | up |
TunnelStatus | down |
UpdateCatalogueDetail
{
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Public": false,
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
TraceId | string | false | none | none |
WorkloadCatalogueItem | object | false | none | none |
» CatalogueId | ro-uuidv4 | false | none | none |
» Description | string | false | none | Description of the Workload. |
» Operation | Operation | false | none | none |
» OrganisationId | ro-uuidv4 | false | none | none |
» Public | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
» Version | string | false | read-only | none |
UpdateCatalogueEvent
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"TraceId": "string",
"WorkloadCatalogueItem": {
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Description": "A Workload to build a VPC in my org",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Public": false,
"Version": "0.01"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CatalogueId | ro-uuidv4 | false | none | none |
CustomerId | ro-uuidv4 | false | none | none |
Detail | UpdateCatalogueDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
TraceId | string | false | none | none |
UpdatePolicyDetail
{
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "DenyAll",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Policy | object | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» CustomerId | ro-uuidv4 | false | none | none |
» Name | string | false | none | Name of the Policy. |
» Operation | Operation | false | none | none |
» OrgId | ro-uuidv4 | false | none | none |
» OrganisationId | ro-uuidv4 | false | none | none |
» PolicyId | ro-uuidv4 | false | none | none |
» TaskId | ro-uuidv4 | false | none | none |
» TraceId | string | false | none | none |
UpdatePolicyEvent
{
"Detail": {
"Policy": {
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "DenyAll",
"Operation": "CREATE",
"OrgId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"PolicyId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | UpdatePolicyDetail | false | none | none |
TaskId | ro-uuidv4 | false | none | none |
UpdateWorkloadDetail
{
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Workload | object | false | none | none |
» AccountId | uuidv4 | false | none | none |
» CatalogueVersionId | uuidv4 | false | none | none |
» CreatedBy | ro-uuidv4 | false | none | none |
» Name | string | false | none | The Workload name. |
» Operation | Operation | false | none | none |
» OrgId | uuidv4 | false | none | none |
» OrganisationId | uuidv4 | false | none | none |
» Parameters | Parameter | false | none | none |
» Region | string | false | none | AWS Region the workload will be launched in |
» TaskId | uuidv4 | false | none | none |
» TraceId | string | false | none | none |
» WorkloadId | uuidv4 | false | none | none |
UpdateWorkloadEvent
{
"Detail": {
"Workload": {
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "my-workload-is-cool",
"Operation": "CREATE",
"OrgId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Region": "us-east-1",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string",
"WorkloadId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
},
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"WorkloadId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | UpdateWorkloadDetail | false | none | none |
WorkloadId | ro-uuidv4 | false | none | none |
User
{
"AuthOrigin": "idam",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Description": "Marketing User",
"Email": "stax.user@example.com",
"FirstName": "John",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LastName": "Doe",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "John Doe",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"PhoneNumber": "+61491570006",
"Role": "customer_admin",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AuthOrigin | string | false | read-only | none |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
CustomerId | uuidv4 | false | none | none |
Description | string¦null | false | none | none |
string(email) | true | read-only | Email address of User. | |
FirstName | string¦null | false | none | Given Name of the User. |
Id | ro-uuidv4 | true | none | none |
LastName | string¦null | false | none | Family Name of the User. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Concatenation of first and last name. Defaults to email address if neither are present. |
OrganisationId | uuidv4 | true | none | none |
PhoneNumber | string¦null | false | none | Phone number of User in E.164 format. |
Role | Role | false | none | Stax role assigned to user. |
Status | string | false | none | Status of the User. |
Tags | Tags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | DISABLED |
Status | DELETED |
Status | INVITED |
Status | NEW |
UserGroupMemberMap
{
"GroupId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"UserId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
GroupId | uuidv4 | false | none | none |
UserId | uuidv4 | false | none | none |
UserTask
{
"Users": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Users | [ro-uuidv4] | false | none | none |
VPC
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"AwsVpcId": "string",
"Cidr": "10.128.0.0/23",
"CidrRangeId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreateFlowlogCwl": true,
"CreateIgw": true,
"CreateNat": true,
"CreateVgw": true,
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "VPC for my particular application",
"GatewayEndpoints": [
"s3"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "non-prod",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"PhzId": "PHZAAEXAMPLE",
"PhzPrefix": "dev",
"RedundantNat": false,
"Region": "ap-northeast-1",
"Size": "SMALL",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"Type": "FLAT",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VgwAsn": 64513,
"Zone": "non-prod"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountId | uuidv4 | true | none | none |
AwsVpcId | string¦null | false | read-only | The AWS VPC ID. |
Cidr | string | false | none | CIDR Range in quad dot notation. This range is a private network range with a size between /8 to /23 |
CidrRangeId | uuidv4 | false | none | none |
CreateFlowlogCwl | boolean | false | none | Boolean value declaring to utilise a Cloudwatch log group for VPC Flow logs |
CreateIgw | boolean | false | none | Boolean value declaring if Internet Gateway is enabled |
CreateNat | boolean | false | none | Boolean value declaring if NAT Gateways is enabled |
CreateVgw | boolean | false | none | Boolean value declaring if a Virtual Private Gateway is enabled |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Description | string¦null | false | none | Longer description of what the Stax VPC is used for. |
GatewayEndpoints | [gateway-endpoint] | false | none | [A list of gateway vpc endpoints] |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of Stax VPC |
NetworkingHubId | uuidv4 | false | none | none |
PhzId | string¦null | false | none | The Route53 Private Hosted Zone Id for the VPC |
PhzPrefix | string¦null | false | none | The unique prefix to combine with the PhzSuffix to create a Route53 Private Hosted Zone for the VPC, cannot be modified once set |
RedundantNat | boolean | false | none | Boolean value declaring if redundant NAT Gateways will be created |
Region | AwsRegion | true | none | AWS Region |
Size | string | false | none | Size of the VPC. |
Status | string | false | read-only | The status of the Stax VPC. |
Tags | NetworkingTags | false | none | none |
Type | string | false | none | Type of VPC. The Type determines what Route Tables are attached to the VPC |
UserTaskId | ro-uuidv4 | false | none | none |
VgwAsn | integer¦null | false | none | The ASN of the Virtual Private Gateway. |
Zone | string¦null | false | none | All 'Flat' VPCs in the same Zone can communicate to each other. |
Enumerated Values
Property | Value |
---|---|
Size | SMALL |
Size | MEDIUM |
Size | LARGE |
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
Type | FLAT |
Type | ISOLATED |
Type | SHAREDSERVICES |
Type | TRANSIT |
VifMap
{
"Asn": 64513,
"AwsConnectionId": "dxcon-abcdefgh",
"AwsRouterIp": "192.168.0.2/30",
"BgpAuthKey": "secret",
"DxGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"JumboMtu": false,
"Name": "Prod VIF",
"RouterIp": "192.168.0.1/30",
"Tags": {
"CostCode": "12345"
},
"Vlan": 4000
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Asn | integer | true | none | ASN to assign to the Direct Connect VIF. |
AwsConnectionId | string | true | none | AWS Id of the Direct Connect Connection. |
AwsRouterIp | string | true | none | The BGP peer IP configured on the AWS endpoint. |
BgpAuthKey | string | true | none | The password that will be used to authenticate the BGP session. |
DxGatewayId | uuidv4 | false | none | none |
JumboMtu | boolean | true | none | Boolean value to enable Jumbo Frames. |
Name | string | true | none | Name of the Direct Connect VIF. |
RouterIp | string | true | none | The BGP peer IP configured on your endpoint. |
Tags | NetworkingTags | false | none | none |
Vlan | integer | true | none | VLAN for the Direct Connect VIF. |
VpcConnection
{
"Name": "vpn-private-connection",
"Tags": {
"CostCode": "12345"
},
"VpcId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Name | string | true | none | Name of Stax VPN Connection. |
Tags | NetworkingTags | false | none | none |
VpcId | uuidv4 | true | none | none |
VpnConnection
{
"AwsVpnConnectionId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ImprovedAcceleration": false,
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod Gateway",
"NetworkingHubId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"VpcId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"VpnConnectionType": "HUB",
"VpnCustomerGatewayId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AwsVpnConnectionId | string¦null | false | read-only | The AWS Id of the VPN Connection. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Id | ro-uuidv4 | false | none | none |
ImprovedAcceleration | boolean | false | none | Boolean value to turn on AWS Global Accelerator and the AWS global network for improved performance |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Customer Gateway. |
NetworkingHubId | uuidv4 | false | none | none |
Status | string | false | read-only | The status of the Stax VPN Customer Gateway |
Tags | NetworkingTags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
VpcId | uuidv4 | false | none | none |
VpnConnectionType | string | false | read-only | The type of VPN Connection. |
VpnCustomerGatewayId | uuidv4 | true | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
VpnConnectionType | HUB |
VpnConnectionType | VPC |
VpnConnectionStatus
[
{
"TunnelName": "VPN Tunnel",
"TunnelStatus": "up"
}
]
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | [TunnelMapping] | false | none | none |
VpnCustomerGateway
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Asn": 64512,
"AwsVpnCustomerGatewayId": "string",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"IpAddress": "192.168.1.0",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Prod Gateway",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Region": "ap-northeast-1",
"Status": "ACTIVE",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountId | uuidv4 | true | none | none |
Asn | integer | true | none | ASN to assign to the Customer Gateway. |
AwsVpnCustomerGatewayId | string¦null | false | read-only | The AWS ID of the VPN Customer Gateway. |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Id | ro-uuidv4 | false | none | none |
IpAddress | string | false | none | The IP address for the customer gateway's outside interface. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | Name of the Customer Gateway. |
OrganisationId | ro-uuidv4 | false | none | none |
Region | AwsRegion | false | none | AWS Region |
Status | string | false | read-only | The status of the Stax VPN Customer Gateway |
Tags | NetworkingTags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | CREATE_IN_PROGRESS |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
Workload
{
"AccountId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CatalogueVersionId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "my-workload-is-cool",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Parameters": {
"Key": "Bread",
"Value": "Croissant"
},
"Protection": false,
"Region": "us-east-1",
"Status": "NEW",
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountId | uuidv4 | true | none | none |
CatalogueId | uuidv4 | true | none | none |
CatalogueVersionId | uuidv4 | false | none | none |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | true | none | The Workload name. |
OrganisationId | uuidv4 | false | none | none |
Parameters | Parameter | false | none | none |
Protection | boolean | false | none | Boolean value declaring if the Workload is protected from deletion |
Region | string | true | none | AWS Region the workload will be launched in |
Status | string | false | read-only | Status of the Workload. |
Tags | Tags | false | none | none |
UserTaskId | ro-uuidv4 | false | none | none |
Enumerated Values
Property | Value |
---|---|
Status | NEW |
Status | INITIALIZING |
Status | ACTIVE |
Status | CREATE_FAILED |
Status | DELETE_IN_PROGRESS |
Status | DELETED |
Status | DELETE_FAILED |
Status | UPDATE_IN_PROGRESS |
Status | UPDATE_FAILED |
Status | UPDATE_COMPLETE |
WorkloadCatalogue
{
"CatalogueVersionId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "my-directory-service",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Protection": false,
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Versions": [
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Outputs": [
"bread"
],
"Parameters": [
{
"Key": "Bread",
"Value": "Croissant"
}
],
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"WorkloadVersion": "0.01"
}
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CatalogueVersionId | ro-uuidv4 | false | none | none |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Description | string | false | none | Description of the Workload. |
Id | ro-uuidv4 | true | none | none |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Name | string | false | none | Name of the Workload Catalogue Item to create. |
OrganisationId | uuidv4 | false | none | none |
Protection | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
Public | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
Status | string | false | read-only | Status of the Workload. |
UserTaskId | ro-uuidv4 | false | none | none |
Versions | [WorkloadCatalogueVersion] | true | read-only | none |
Enumerated Values
Property | Value |
---|---|
Status | NEW |
Status | UPLOADING |
Status | VALIDATING |
Status | ACTIVE |
Status | DELETED |
Status | FAILED |
WorkloadCatalogueVersion
{
"CatalogueId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Description": "A Workload to build a VPC in my org",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ManifestURL": "S3://{StaxArtifactBucket}/workload-vpc/your-template-ref.yml",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Outputs": [
"bread"
],
"Parameters": [
{
"Key": "Bread",
"Value": "Croissant"
}
],
"Public": false,
"Status": "NEW",
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"WorkloadVersion": "0.01"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CatalogueId | ro-uuidv4 | false | none | none |
CreatedBy | ro-uuidv4 | false | none | none |
CreatedTS | string(date-time) | false | read-only | Created timestamp. |
Description | string | false | none | Description of the Workload. |
Id | ro-uuidv4 | true | none | none |
ManifestURL | string | true | none | HTTPS/S3 URL of the manifest. Either this or ManifestBody must be provided. |
ModifiedTS | string(date-time) | false | read-only | Modified timestamp. |
Outputs | [string]¦null | false | read-only | none |
Parameters | [Parameter] | false | none | none |
Public | boolean | false | none | Boolean value declaring if the Workload Catalogue Item is public or private. |
Status | string | true | read-only | Status of the Workload. |
UserTaskId | ro-uuidv4 | false | none | none |
WorkloadVersion | string | true | read-only | none |
Enumerated Values
Property | Value |
---|---|
Status | NEW |
Status | UPLOADING |
Status | VALIDATING |
Status | ACTIVE |
Status | DELETED |
Status | FAILED |
WorkloadTask
{
"Workloads": [
"e893d7e0-9306-11e9-bc42-526af7764f64"
],
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Status": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Workloads | [ro-uuidv4] | false | none | none |
accounts.CreateAccount
{
"AccountType": "string",
"AwsAccountId": "012345678901",
"Name": "bakery",
"Tags": {
"CostCode": "12345"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountType | string | true | none | none |
AwsAccountId | string | false | read-only | AWS Account Id. |
Name | string | true | none | Name of the Account. |
Tags | Tags | false | none | none |
accounts.CreateAccountType
{
"Name": "Development"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Name | string | true | none | Name of the Account Type. |
accounts.CreateAccountTypeResponse
{
"Detail": {
"AccountType": {
"Accounts": [],
"CreatedBy": "e893d7e0-9306-11e9-bc42-526af7764f64",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Development",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policies": [],
"Roles": [],
"Status": "ACTIVE",
"StaxCreated": true
},
"Message": "string",
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
},
"DetailType": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Detail | object | true | none | none |
» AccountType | object | false | none | none |
»» Accounts | [ro-uuidv4] | false | none | none |
»» CreatedBy | ro-uuidv4 | false | none | none |
»» CreatedTS | string(date-time)¦null | false | read-only | Created timestamp. |
»» Id | ro-uuidv4 | false | none | none |
»» ModifiedTS | string(date-time)¦null | false | read-only | Modified timestamp. |
»» Name | string | false | none | none |
»» OrganisationId | ro-uuidv4 | false | none | none |
»» Policies | [ro-uuidv4] | false | none | none |
»» Roles | [ro-uuidv4] | false | none | none |
»» Status | any | false | none | none |
»» StaxCreated | boolean | false | none | none |
» Message | string | false | none | none |
» Operation | Operation | false | none | none |
» OperationStatus | OperationStatus | false | none | none |
» Severity | string | false | none | none |
DetailType | string | true | none | none |
Enumerated Values
Property | Value |
---|---|
Status | ACTIVE |
Status | DELETED |
accounts.DiscoverAccounts
{}
Properties
None
accounts.DiscoverAccountsResponse
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string",
"DetailType": "string",
"Detail": {
"TraceId": "string",
"Message": {
"CustomerId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TaskId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"TraceId": "string"
},
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string"
}
}
Properties
allOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» CustomerId | ro-uuidv4 | false | none | none |
» TaskId | ro-uuidv4 | false | none | none |
» TraceId | string | false | none | none |
and
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | BaseEvent | false | none | none |
and
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
anonymous | object | false | none | none |
» Detail | TraceEventDetail | false | none | none |
accounts.OnboardAccount
{
"AccountType": "Development",
"AwsAccountId": "012345678901",
"Name": "bakery",
"Tags": {
"CostCode": "12345"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountType | any | true | none | none |
anyOf
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | string | false | none | none |
or
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
» anonymous | uuidv4 | false | none | none |
continued
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AwsAccountId | string | true | none | AWS Account Id. |
Name | string | false | none | Name of the Account. |
Tags | Tags | false | none | none |
accounts.ReadAccountTypes
{
"AccountTypes": [
{
"Accounts": [],
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"ModifiedTS": "2018-10-11T01:05:45.000Z",
"Name": "Development",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Policies": [],
"Roles": [],
"Status": "ACTIVE",
"StaxCreated": true
}
]
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountTypes | [AccountType] | false | none | none |
accounts.ReadAccounts
{
"Accounts": [
{
"AWSLoginURLs": {
"admin": "string",
"developer": "string",
"readonly": "string"
},
"AccountType": "string",
"AllocatedTS": "2018-10-11T01:05:45.000Z",
"AssuranceState": "ACTIVE",
"AssuranceStateReason": "AWS GuardDuty Hardening has failed",
"AwsAccountId": "012345678901",
"AwsAccountStatusId": "string",
"AwsLoginURL": "string",
"CreatedBy": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"CreatedTS": "2018-10-11T01:05:45.000Z",
"Email": "stax.user@example.com",
"FactoryVersion": "f8cf81b",
"Id": "e893d7e0-9306-11e9-bc42-526af7764f64",
"LatestCost": 72.52,
"ModifiedTS": "2019-03-11T01:11:40.000Z",
"Name": "bakery",
"OrganisationId": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"OrgsOuId": "string",
"Origin": "STAX",
"Status": "ACTIVE",
"StaxCreated": true,
"Tags": {
"CostCode": "12345"
},
"UserTaskId": "e893d7e0-9306-11e9-bc42-526af7764f64"
}
],
"Paging": {
"NextOffset": 20,
"PrevOffset": null,
"Total": 100
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
Accounts | [Account] | true | none | none |
Paging | Pagination | false | none | Pagination metadata. Present when limit and offset parameters are supplied. |
accounts.UpdateAccount
{
"AccountType": "ec5eaa8f-da06-4935-b5ce-05bd957c8bdc",
"Name": "bakery",
"Tags": {
"CostCode": "12345"
}
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
AccountType | uuidv4 | false | none | none |
Name | string | false | none | Name of the Account. |
Tags | Tags | false | none | none |
accounts.UpdateAccountResponse
{
"CustomerId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Detail": {
"Account": {
"AccountName": "automation",
"AccountType": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Name": "automation",
"Operation": "CREATE",
"OrganisationId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"Tags": {
"CostCode": "12345"
}
},
"Message": "string",
"Operation": "CREATE",
"OperationStatus": "STARTED",
"Severity": "string",
"TraceId": "string"
},
"DetailType": "string",
"TaskId": "e893d7e0-9306-11e9-bc42-526af7764f64",
"TraceId": "string"
}
Properties
Name | Type | Required | Restrictions | Description |
---|---|---|---|---|
CustomerId | ro-uuidv4 | false | none | none |
Detail | object | true | none | none |
» Account | object | false | none | none |
»» AccountName | string | false | none | none |
»» AccountType | ro-uuidv4 | false | none | none |
»» Name | string | false | none | none |
»» Operation | Operation | false | none | none |
»» OrganisationId | ro-uuidv4 | false | none | none |
»» Tags | Tags | f |