No description, website, or topics provided.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
docs
lib
spec
.gitignore
.rspec
.ruby-gemset
.ruby-version
.swagger-codegen-ignore
.travis.yml
Gemfile
Gemfile.lock
LICENSE
README.md
Rakefile
esp_sdk.gemspec
git_push.sh

README.md

Build Status Gem Version

esp_sdk

ESP - the Ruby gem for the ESP Documentation

The Evident Security Platform API (version 2.0) is designed to allow users granular control over their Amazon Web Service security experience by allowing them to review alerts, monitor signatures, and create custom signatures.

This SDK is automatically generated by the Swagger Codegen project:

  • API version: v2_sdk
  • Package version: 1.0.0.rc1
  • Build package: io.swagger.codegen.languages.RubyClientCodegen

Installation

Add this line to your application's Gemfile:

 gem 'esp_sdk'

And then execute:

 bundle

Or install it yourself as:

 gem install esp_sdk

Set your HMAC security keys:

You must set your access_key_id and your secret_access_key. You can set these directly:

config = ESP::Configuration.default
config.access_key_id = '<your key>'
config.secret_access_key = '<your secret key>'

or with environment variables:

ENV['ESP_ACCESS_KEY_ID'] = '<your key>'
ENV['ESP_SECRET_ACCESS_KEY'] = '<your secret key>'

or, if in a Rails application, you can use the configure block in an initializer:

ESP::Configuration.new do |config|
  config.access_key_id = '<your key>'
  config.secret_access_key = '<your secret key>'
end

Get your HMAC keys from the Evident.io website, esp.evident.io

Appliance Users

Users of Evident.io's AWS marketplace PSAAS/appliance will need to set the host for their appliance instance. You can set this directly:

config = ESP::Configuration.new.host = '<host for appliance instance>'
config.scheme = 'https' # this is the default

or, if in a Rails application, you can use the configure block in an initializer:

ESP::Configuration.new do |config|
  config.host = '<host for appliance instance>'
  config.scheme = 'https' # this is the default
end

Alternatively, the site can also be set with an environment variable.

export ESP_HOST=<host for appliance instance>

Getting Started

Please follow the installation procedure and then run the following code:

# Load the gem
require 'esp_sdk'


api_instance = ESP::APIKeysApi.new

opts = { 
  include: "include_example", # String | Related objects that can be included in the response:  user See Including Objects for more information.
  name: "name_example" # String | The name of the API Key
}

begin
  #Create a(n) API Key
  result = api_instance.create(opts)
  p result
rescue ESP::ApiError => e
  puts "Exception when calling APIKeysApi->create: #{e}"
end

Errors

The response objects have an errors collection. If the API call returns a non fatal response, like validation issues, you can check the errors object to see what went wrong.

> t = ESP::TeamsApi.new.create(1, '')
# => t.errors = ["Name can't be blank", "Name is invalid", "Description can't be blank"]

When an error is thrown, you can rescue the error and check the error message:

> c = ESP::SignaturesApi.new.run(1, 9999, 'us-east-1')
# =>  ESP::ApiError: Failed.  Response code = 404.  Response message = Couldn't find ExternalAccount

Pagination

Evident.io API endpoints that return a collection of objects allows for paging and only returns a limited number of items at a time. The Evident.io SDK returns an ESP::PaginatedCollection object that provides methods for paginating through the collection. The methods with a ! suffix update the object, methods without the ! suffix return a new page object preserving the original object.

> alerts = ESP::AlertsApi.new.list(345)
> alerts.current_page_number # => "1"
> page2 = alerts.next_page
> alerts.current_page_number # => "1"
> page2.current_page_number # => "2"
> page2.previous_page!
> page2.current_page_number # => "1"
> alerts.last_page!
> alerts.current_page_number # => "25"
> page4 = alerts.page(4)
> alerts.current_page_number # => "25"
> page4.current_page_number # => "4"

The each method on ESP::PaginatedCollection will iterate through the entire collection, making additional API calls to get the next page, until it is on the last page.

See ESP::PaginatedCollection for all the pagination methods available.

Including Objects

Most of the objects in the Evident.io SDK have a corresponding API call associated with it. That means if you want an object's associated object, then you will make another API call using the associated objects api. For example:

> external_account = ESP::ExternalAccountsApi.new.show(3)
> organization = ESP::OrganizationsApi.new.show(external_account.organization_id)
> sub_organization = ESP::SubOrganizationsApi.new.show(external_account.sub_organization_id)
> team = ESP::TeamsApi.new.show(external_account.team_id)

The above code will make 4 calls to the Evident.io API. 1 each for the external account, organization, sub_organization and team. The JSON API Specification, which the Evident.io API tries to follow, provides a means for returning nested objects in a single call. With the SDK, that can be done by providing a comma separated string of the relations wanted in an +include+ option.

> external_account = ESP::ExternalAccountsApi.new.show(3, include: 'organization,sub_orgnanization,team')
> external_account = ESP::ExternalAccountsApi.new.list(id_eq: 3, include: 'organization,sub_organization,team')

With that call, organization, sub_organization and team will all come back in the response, and calling, external_account.organization, external_account.sub_organization and external_account.team will return the associated object.

You can nest include requests with the dot property. For example, requesting external_account.team on an alert will expand the external_account property into a full External Account object, and will then expand the team property on that external account into a full Team object. Deep nesting is available as well: external_account.team.sub_organization.organization

alert = ESP::AlertsApi.new.show(1, include: 'tags,external_account.team')

alerts = ESP::AlertsApi.new.list(4, include: 'tags,external_account.team')

Most objects' show and list methods accept the +include+ option. Those methods that accept the +include+ option are documented with the available associations that are includable.

Filtering/Searching

For objects that implement list, parameters can be passed that will filter the results based on the search criteria specified. The criteria that can be specified depends on the object. Each object is documented whether it implements list or not, and if so, which attributes can be included in the search criteria.

Searching

The primary method of searching is by using what is known as predicates.

Predicates are used within Evident.io API search queries to determine what information to match. For instance, the cont predicate, when added to the name attribute, will check to see if `name`` contains a value using a wildcard query.

ESP::SignaturesApi.new.list(filter: { name_cont: 'dns' })
#=> will return signatures `where name LIKE '%dns%'`

Conditions on Relationships

The syntax for queries on an associated relationship is to just append the association name to the attribute:

ESP::SuppressionsApi.new.list(filter: { regions_code_eq: 'us_east_1' })
#=> will return suppressions that have a region relationship `where code = 'us_east_1'`

Complex Filtering

Add multiple attributes and predicates to form complex queries:

ESP::SuppressionsApi.new.list(filter: { regions_code_start: 'us', created_by_email_eq: 'bob@mycompany.com', resource_not_null: '1' })
#=> will return suppressions that have a region relationship `where code LIKE 'us%'` and created_by relationship `where email = 'bob@mycompany.com'` and `resource IS NOT NULL`

You can also change the combinator for complex queries from the default AND to OR by adding the m: 'or' parameter

ESP::SuppressionsApi.new.list(filter: { regions_code_start: 'us', created_by_email_eq: 'bob@mycompany.com', resource_not_null: '1', m: 'or' })
#=> will return suppressions that have a region relationship `where code LIKE 'us%'` **OR** created_by relationship `where email = 'bob@mycompany.com'` **OR** `resource IS NOT NULL`

Bad Attributes

Please note: any attempt to use a predicate for an attribute that does not exist will return a 422 (Unprocessable Entity) response. For instance, this will not work:

ESP::SuppressionsApi.new.list(filter: { bad_attribute_eq: 'something' })
#=> ESP::ApiError: Failed.  Response code = 422.  Response message = Invalid search term bad_attribute_eq.

Also note: any attempt to use a predicate for an attribute that exists on the object, but is not a documented searchable attribute will silently fail and will be excluded from the search criteria.

Available Predicates

Below is a list of the available predicates and their opposites.

eq (equals)

The eq predicate returns all records where a field is exactly equal to a given value:

ESP::SuppressionsApi.new.list(filter: { regions_code_eq: 'us_east_1' })
#=> will return suppressions that have a region relationship `where code = 'us_east_1'`

Opposite: not_eq

lt (less than)

The lt predicate returns all records where a field is less than a given value:

ESP::ReportsApi.new.list(filter: { created_at_lt: 1.hour.ago })
#=> will return reports `where created_at < '2015-11-11 16:25:30'`

Opposite: gt (greater than)

lteq (less than or equal to)

The lteq predicate returns all records where a field is less than or equal to a given value:

ESP::ReportsApi.new.list(filter: { created_at_lteq: 1.hour.ago })
#=> will return reports `where created_at <= '2015-11-11 16:25:30'`

Opposite: gteq (greater than or equal to)

in

The in predicate returns all records where a field is within a specified list:

ESP::SignaturesApi.new.list(filter: { risk_level_in: ['Low', 'Medium'] })
#=> will return signatures `where risk_level IN ('Low', 'Medium')`

Opposite: not_in

cont (contains)

The cont predicate returns all records where a field contains a given value:

ESP::SignaturesApi.new.list(filter: { name_cont: 'dns' })
#=> will return signatures `where name LIKE '%dns%'`

Opposite: not_cont

Please note: This predicate is only available on attributes listed in the "Valid Matching Searchable Attributes"" section for each implemented where method.

cont_any (contains any)

The cont_any predicate returns all records where a field contains any of given values:

ESP::SignaturesApi.new.list(filter: { name_cont_any: ['dns', 'EC2'] })
#=> will return signatures `where name LIKE '%dns%' or name LIKE '%EC2%'`

Opposite: not_cont_any

Please note: This predicate is only available on attributes listed in the "Valid Matching Searchable Attributes"" section for each implemented where method.

start (starts with)

The start predicate returns all records where a field begins with a given value:

ESP::SignaturesApi.new.list(filter: { name_start: 'dns' })
#=> will return signatures `where name LIKE 'dns%'`

Opposite: not_start

Please note: This predicate is only available on attributes listed in the "Valid Matching Searchable Attributes"" section for each implemented where method.

end (ends with)

The end predicate returns all records where a field ends with a given value:

ESP::SignaturesApi.new.list(filter: { name_end: 'dns' })
#=> will return signatures `where name LIKE '%dns'`

Opposite: not_end

Please note: This predicate is only available on attributes listed in the "Valid Matching Searchable Attributes"" section for each implemented where method.

present

The present predicate returns all records where a field is present (not null and not a blank string).

ESP::SignaturesApi.new.list(filter: { identifier_present: '1' })
#=> will return signatures `where identifier IS NOT NULL AND identifier != ''`

Opposite: blank

null

The null predicate returns all records where a field is null:

ESP::SignaturesApi.new.list(filter: { identifier_null: 1 })
#=> will return signatures `where identifier IS NULL`

Opposite: not_null

Sorting

Lists can also be sorted by adding the sorts parameter with the field to sort by to the filter parameter.

ESP::SignaturesApi.new.list(filter: { name_cont: 'dns', sorts: 'risk_level desc' })
#=> will return signatures `where name LIKE '%dns%'` sorted by `risk_level` in descending order.

Lists can be sorted by multiple fields by specifying an ordered array.

ESP::SignaturesApi.new.list(filter: { name_cont: 'dns', sorts: ['risk_level desc', 'created_at'] })
#=> will return signatures `where name LIKE '%dns%'` sorted by `risk_level` in descending order and then by `created_at` in ascending order.

Documentation for API Endpoints

All URIs are relative to https://api.evident.io/

Searchable Attributes on List Endpoints

The description of the filter parameter for the list endpoints have the searchable attributes separated into different lists.

Equality Searchable Attributes

These attributes can be used with predicates that look for an exact match such as eq

Matching Searchable Attribute

These attributes can be used with predicates that look for a string that matches the supplied string such as cont

Limited Searchable Attributes

These attributes cannot be used with every predicate. Only with the predicates listed.

Searchable Associations

These are associations you can search through. See the documentation for each association to see which attributes are searchable.

Sortable Attributes

These attributes can be passed with the sorts key to sort the response.

Class Method HTTP request Description
ESP::APIKeysApi create POST /api/v2/api_keys.json_api Create a(n) API Key
ESP::APIKeysApi delete DELETE /api/v2/api_keys/{id}.json_api Delete a(n) API Key
ESP::APIKeysApi list GET /api/v2/api_keys.json_api Get a list of API Keys
ESP::APIKeysApi show GET /api/v2/api_keys/{id}.json_api Show a single API Key
ESP::APIKeysApi update PATCH /api/v2/api_keys/{id}.json_api Update a(n) API Key
ESP::AlertsApi list_compliance_controls GET /api/v2/alerts/{alert_id}/compliance_controls.json_api Get a list of Compliance Controls for an Alert
ESP::AlertsApi list_custom_compliance_controls GET /api/v2/alerts/{alert_id}/custom_compliance_controls.json_api Get a list of Custom Compliance Controls for an Alert
ESP::AlertsApi list_for_report PUT /api/v2/reports/{report_id}/alerts.json_api Get a list of Alerts for a Report
ESP::AlertsApi show GET /api/v2/alerts/{id}.json_api Show a single Alert
ESP::AttributionApi show GET /api/v2/alerts/{alert_id}/attribution.json_api Show the attribution for an alert
ESP::AuditLogExportApi request_file POST /api/v2/audit_logs/export/files.json_api Export an Audit Log File
ESP::AuditLogExportApi show_file_details GET /api/v2/audit_logs/export/files/{id}.json_api Show a single Audit Log File
ESP::AuditLogsApi list PUT /api/v2/audit_logs.json_api Get a list of Audit Logs
ESP::AuditLogsApi show GET /api/v2/audit_logs/{id}.json_api Show a single Audit Log
ESP::AzureGroupsApi add_external_account POST /api/v2/azure_groups/{azure_group_id}/memberships.json_api Add an External Account to an Azure Group
ESP::AzureGroupsApi create POST /api/v2/azure_groups.json_api Create a(n) Azure Group
ESP::AzureGroupsApi delete DELETE /api/v2/azure_groups/{id}.json_api Delete a(n) Azure Group
ESP::AzureGroupsApi list PUT /api/v2/azure_groups.json_api Get a list of Azure Groups
ESP::AzureGroupsApi remove_external_account DELETE /api/v2/azure_groups/{azure_group_id}/memberships/{external_account_id}.json_api Remove an External Account from an Azure Group
ESP::AzureGroupsApi show GET /api/v2/azure_groups/{id}.json_api Show a single Azure Group
ESP::AzureGroupsApi update PATCH /api/v2/azure_groups/{id}.json_api Update a(n) Azure Group
ESP::ComplianceControlsApi list PUT /api/v2/compliance_controls.json_api Get a list of Compliance Controls
ESP::ComplianceControlsApi list_signatures GET /api/v2/compliance_controls/{compliance_control_id}/signatures.json_api Get a list of Signatures for a Compliance Control
ESP::ComplianceControlsApi show GET /api/v2/compliance_controls/{id}.json_api Show a single Compliance Control
ESP::ComplianceDomainsApi list PUT /api/v2/compliance_domains.json_api Get a list of Compliance Domains
ESP::ComplianceDomainsApi show GET /api/v2/compliance_domains/{id}.json_api Show a single Compliance Domain
ESP::ComplianceStandardsApi list PUT /api/v2/compliance_standards.json_api Get a list of Compliance Standards
ESP::ComplianceStandardsApi show GET /api/v2/compliance_standards/{id}.json_api Show a single Compliance Standard
ESP::CustomComplianceControlsApi add_custom_signature POST /api/v2/custom_compliance_controls/{custom_compliance_control_id}/custom_signatures.json_api Add a Custom Signature to a Custom Compliance Control
ESP::CustomComplianceControlsApi add_signature POST /api/v2/custom_compliance_controls/{custom_compliance_control_id}/signatures.json_api Add a Signature to a Custom Compliance Control
ESP::CustomComplianceControlsApi create POST /api/v2/custom_compliance_controls.json_api Create a(n) Custom Compliance Control
ESP::CustomComplianceControlsApi delete DELETE /api/v2/custom_compliance_controls/{id}.json_api Delete a(n) Custom Compliance Control
ESP::CustomComplianceControlsApi list_custom_signatures GET /api/v2/custom_compliance_controls/{custom_compliance_control_id}/custom_signatures.json_api Get a list of Custom Signatures for a Custom Compliance Control
ESP::CustomComplianceControlsApi list_signatures GET /api/v2/custom_compliance_controls/{custom_compliance_control_id}/signatures.json_api Get a list of Signatures for a Custom Compliance Control
ESP::CustomComplianceControlsApi remove_custom_signature DELETE /api/v2/custom_compliance_controls/{custom_compliance_control_id}/custom_signatures/{custom_signature_id}.json_api Remove a Custom Signature from a Custom Compliance Control
ESP::CustomComplianceControlsApi remove_signature DELETE /api/v2/custom_compliance_controls/{custom_compliance_control_id}/signatures/{signature_id}.json_api Remove a Signature from a Custom Compliance Control
ESP::CustomComplianceControlsApi show GET /api/v2/custom_compliance_controls/{id}.json_api Show a single Custom Compliance Control
ESP::CustomComplianceControlsApi update PATCH /api/v2/custom_compliance_controls/{id}.json_api Update a(n) Custom Compliance Control
ESP::CustomComplianceDomainsApi create POST /api/v2/custom_compliance_domains.json_api Create a(n) Custom Compliance Domain
ESP::CustomComplianceDomainsApi delete DELETE /api/v2/custom_compliance_domains/{id}.json_api Delete a(n) Custom Compliance Domain
ESP::CustomComplianceDomainsApi show GET /api/v2/custom_compliance_domains/{id}.json_api Show a single Custom Compliance Domain
ESP::CustomComplianceDomainsApi update PATCH /api/v2/custom_compliance_domains/{id}.json_api Update a(n) Custom Compliance Domain
ESP::CustomComplianceStandardsApi create POST /api/v2/custom_compliance_standards.json_api Create a(n) Custom Compliance Standard
ESP::CustomComplianceStandardsApi delete DELETE /api/v2/custom_compliance_standards/{id}.json_api Delete a(n) Custom Compliance Standard
ESP::CustomComplianceStandardsApi show GET /api/v2/custom_compliance_standards/{id}.json_api Show a single Custom Compliance Standard
ESP::CustomComplianceStandardsApi update PATCH /api/v2/custom_compliance_standards/{id}.json_api Update a(n) Custom Compliance Standard
ESP::CustomSignatureDefinitionsApi activate PATCH /api/v2/custom_signature_definitions/{custom_signature_definition_id}/activate.json_api Activate a Custom Signature Definition
ESP::CustomSignatureDefinitionsApi archive PATCH /api/v2/custom_signature_definitions/{custom_signature_definition_id}/archive.json_api Archive a Custom Signature Definition
ESP::CustomSignatureDefinitionsApi create POST /api/v2/custom_signature_definitions.json_api Create a(n) Custom Signature Definition
ESP::CustomSignatureDefinitionsApi delete DELETE /api/v2/custom_signature_definitions/{id}.json_api Delete a(n) Custom Signature Definition
ESP::CustomSignatureDefinitionsApi list PUT /api/v2/custom_signature_definitions.json_api Get a list of Custom Signature Definitions
ESP::CustomSignatureDefinitionsApi show GET /api/v2/custom_signature_definitions/{id}.json_api Show a single Custom Signature Definition
ESP::CustomSignatureDefinitionsApi update PATCH /api/v2/custom_signature_definitions/{id}.json_api Update a(n) Custom Signature Definition
ESP::CustomSignatureResultsApi create POST /api/v2/custom_signature_results.json_api Create a(n) Custom Signature Result
ESP::CustomSignatureResultsApi list PUT /api/v2/custom_signature_results.json_api Get a list of Custom Signature Results
ESP::CustomSignatureResultsApi list_alerts GET /api/v2/custom_signature_results/{custom_signature_result_id}/alerts.json_api Returns the Alerts for a given Custom Signature Result
ESP::CustomSignatureResultsApi show GET /api/v2/custom_signature_results/{id}.json_api Show a single Custom Signature Result
ESP::CustomSignaturesApi create POST /api/v2/custom_signatures.json_api Create a(n) Custom Signature
ESP::CustomSignaturesApi delete DELETE /api/v2/custom_signatures/{id}.json_api Delete a(n) Custom Signature
ESP::CustomSignaturesApi list PUT /api/v2/custom_signatures.json_api Get a list of Custom Signatures
ESP::CustomSignaturesApi show GET /api/v2/custom_signatures/{id}.json_api Show a single Custom Signature
ESP::CustomSignaturesApi update PATCH /api/v2/custom_signatures/{id}.json_api Update a(n) Custom Signature
ESP::ExternalAccountsApi add_compliance_standard POST /api/v2/external_accounts/{external_account_id}/compliance_standards.json_api Add a compliance standard to an external account
ESP::ExternalAccountsApi add_custom_compliance_standard POST /api/v2/external_accounts/{external_account_id}/custom_compliance_standards.json_api Add a custom compliance standard to an external account
ESP::ExternalAccountsApi add_disabled_signature POST /api/v2/external_accounts/disabled_signatures.json_api Disable a set of signatures for an external account or a set of external accounts for a signature
ESP::ExternalAccountsApi delete DELETE /api/v2/external_accounts/{id}.json_api Delete a(n) External Account
ESP::ExternalAccountsApi list PUT /api/v2/external_accounts.json_api Get a list of External Accounts
ESP::ExternalAccountsApi list_compliance_standards GET /api/v2/external_accounts/{external_account_id}/compliance_standards.json_api Get a list of compliance standards for an external account
ESP::ExternalAccountsApi list_custom_compliance_standards GET /api/v2/external_accounts/{external_account_id}/custom_compliance_standards.json_api Get a list of custom compliance standards for an external account
ESP::ExternalAccountsApi list_disabled_signatures PUT /api/v2/external_accounts/{external_account_id}/disabled_signatures.json_api Get a list all the disabled signatures for an external account
ESP::ExternalAccountsApi remove_compliance_standard DELETE /api/v2/external_accounts/{external_account_id}/compliance_standards/{compliance_standard_id}.json_api Remove a compliance standard from an external account
ESP::ExternalAccountsApi remove_custom_compliance_standard DELETE /api/v2/external_accounts/{external_account_id}/custom_compliance_standards/{custom_compliance_standard_id}.json_api Remove a custom compliance standard from an external account
ESP::ExternalAccountsApi remove_disabled_signature DELETE /api/v2/external_accounts/disabled_signatures.json_api Re-enable a set of signatures for an external account or a set of external accounts for a signature
ESP::ExternalAccountsApi show GET /api/v2/external_accounts/{id}.json_api Show a single External Account
ESP::ExternalAccountsAmazonApi create POST /api/v2/external_accounts/amazon.json_api Create an Amazon External Account
ESP::ExternalAccountsAmazonApi show GET /api/v2/external_accounts/{external_account_id}/amazon.json_api Show an Amazon External Account
ESP::ExternalAccountsAmazonApi update PATCH /api/v2/external_accounts/{external_account_id}/amazon.json_api Update an Amazon External Account
ESP::ExternalAccountsAzureApi create POST /api/v2/external_accounts/azure.json_api Create an Azure External Account
ESP::ExternalAccountsAzureApi reset_url PATCH /api/v2/external_accounts/{external_account_id}/azure/log_url.json_api Reset Log URL for an Azure External Account
ESP::ExternalAccountsAzureApi show GET /api/v2/external_accounts/{external_account_id}/azure.json_api Show an Azure External Account
ESP::ExternalAccountsAzureApi update PATCH /api/v2/external_accounts/{external_account_id}/azure.json_api Update an Azure External Account
ESP::IntegrationsApi delete DELETE /api/v2/integrations/{id}.json_api Delete a(n) Integration
ESP::IntegrationsApi disable PATCH /api/v2/integrations/{id}/disable.json_api Disable a single Integration
ESP::IntegrationsApi list PUT /api/v2/integrations.json_api Get a list of Integrations
ESP::IntegrationsApi show GET /api/v2/integrations/{id}.json_api Show a single Integration
ESP::IntegrationsApi test_notify POST /api/v2/integrations/{id}/test_notify.json_api Test an Integration
ESP::IntegrationsAmazonSNSApi create POST /api/v2/integrations/amazon_sns.json_api Create an Amazon SNS Integration
ESP::IntegrationsAmazonSNSApi show GET /api/v2/integrations/{integration_id}/amazon_sns.json_api Show a single Amazon SNS Integration
ESP::IntegrationsAmazonSNSApi update PATCH /api/v2/integrations/{integration_id}/amazon_sns.json_api Update an Amazon SNS Integration
ESP::IntegrationsHipchatApi create POST /api/v2/integrations/hipchat.json_api Create a Hipchat Integration
ESP::IntegrationsHipchatApi show GET /api/v2/integrations/{integration_id}/hipchat.json_api Show a single Hipchat Integration
ESP::IntegrationsHipchatApi update PATCH /api/v2/integrations/{integration_id}/hipchat.json_api Update a Hipchat Integration
ESP::IntegrationsJiraApi create POST /api/v2/integrations/jira.json_api Create a JIRA Integration
ESP::IntegrationsJiraApi show GET /api/v2/integrations/{integration_id}/jira.json_api Show a single Jira Integration
ESP::IntegrationsJiraApi update PATCH /api/v2/integrations/{integration_id}/jira.json_api Update a JIRA Integration
ESP::IntegrationsPagerDutyApi create POST /api/v2/integrations/pager_duty.json_api Create a Pager Duty Integration
ESP::IntegrationsPagerDutyApi show GET /api/v2/integrations/{integration_id}/pager_duty.json_api Show a single Pager Duty Integration
ESP::IntegrationsPagerDutyApi update PATCH /api/v2/integrations/{integration_id}/pager_duty.json_api Update a Pager Duty Integration
ESP::IntegrationsServiceNowApi create POST /api/v2/integrations/servicenow.json_api Create a ServiceNow Integration
ESP::IntegrationsServiceNowApi show GET /api/v2/integrations/{integration_id}/servicenow.json_api Show a single ServiceNow Integration
ESP::IntegrationsServiceNowApi update PATCH /api/v2/integrations/{integration_id}/servicenow.json_api Update a ServiceNow Integration
ESP::IntegrationsSlackApi create POST /api/v2/integrations/slack.json_api Create a Slack Integration
ESP::IntegrationsSlackApi show GET /api/v2/integrations/{integration_id}/slack.json_api Show a single Slack Integration
ESP::IntegrationsSlackApi update PATCH /api/v2/integrations/{integration_id}/slack.json_api Update a Slack Integration
ESP::IntegrationsWebhookApi create POST /api/v2/integrations/webhook.json_api Create a Webhook Integration
ESP::IntegrationsWebhookApi show GET /api/v2/integrations/{integration_id}/webhook.json_api Show a single Webhook Integration
ESP::IntegrationsWebhookApi update PATCH /api/v2/integrations/{integration_id}/webhook.json_api Update a Webhook Integration
ESP::MetadataApi for_alert GET /api/v2/alerts/{alert_id}/metadata.json_api Show the metadata for an alert
ESP::MetadataApi show GET /api/v2/metadata/{id}.json_api Show a single Metadata
ESP::OrganizationsApi list PUT /api/v2/organizations.json_api Get a list of Organizations
ESP::OrganizationsApi list_compliance_standards GET /api/v2/organizations/{organization_id}/compliance_standards.json_api Get a list of compliance standards for an organization
ESP::OrganizationsApi show GET /api/v2/organizations/{id}.json_api Show a single Organization
ESP::OrganizationsApi update PATCH /api/v2/organizations/{id}.json_api Update a(n) Organization
ESP::PlansApi list GET /api/v2/plans.json_api Get a list of Plans
ESP::PlansApi show GET /api/v2/plans/{id}.json_api Show a single Plan
ESP::RegionsApi list PUT /api/v2/regions.json_api Get a list of Regions
ESP::RegionsApi show GET /api/v2/regions/{id}.json_api Show a single Region
ESP::ReportExportApi request_file POST /api/v2/reports/export/files.json_api Export all alerts for a set of reports to a file
ESP::ReportExportApi send_to_integration POST /api/v2/reports/export/integrations.json_api Export all alerts on reports to an integration
ESP::ReportExportApi show_file_details GET /api/v2/reports/export/files/{id}.json_api Show a single Exported Report
ESP::ReportsApi create POST /api/v2/reports.json_api Create a(n) Report
ESP::ReportsApi list PUT /api/v2/reports.json_api Get a list of Reports
ESP::ReportsApi show GET /api/v2/reports/{id}.json_api Show a single Report
ESP::RolesApi list GET /api/v2/roles.json_api Get a list of Roles
ESP::RolesApi show GET /api/v2/roles/{id}.json_api Show a single Role
ESP::ScanIntervalsApi create POST /api/v2/scan_intervals.json_api Create a(n) Scan Interval
ESP::ScanIntervalsApi delete DELETE /api/v2/scan_intervals/{id}.json_api Delete a(n) Scan Interval
ESP::ScanIntervalsApi list_for_external_account GET /api/v2/external_accounts/{external_account_id}/scan_intervals.json_api Get a list of Scan Intervals
ESP::ScanIntervalsApi show GET /api/v2/scan_intervals/{id}.json_api Show a single Scan Interval
ESP::ScanIntervalsApi update PATCH /api/v2/scan_intervals/{id}.json_api Update a(n) Scan Interval
ESP::ScheduledExportsApi activate_export PATCH /api/v2/scheduled_exports/{scheduled_export_id}/activate.json_api Update a(n) Scheduled Export
ESP::ScheduledExportsApi create POST /api/v2/scheduled_exports.json_api Create a(n) Scheduled Export
ESP::ScheduledExportsApi delete DELETE /api/v2/scheduled_exports/{id}.json_api Delete a(n) Scheduled Export
ESP::ScheduledExportsApi disable_export PATCH /api/v2/scheduled_exports/{scheduled_export_id}/disable.json_api Update a(n) Scheduled Export
ESP::ScheduledExportsApi list PUT /api/v2/scheduled_exports.json_api Get a list of Scheduled Exports
ESP::ScheduledExportsApi show GET /api/v2/scheduled_exports/{id}.json_api Show a single Scheduled Export
ESP::ScheduledExportsApi show_file_details GET /api/v2/reports/scheduled_export/files/{uuid}.json_api Show a single Scheduled Export Result
ESP::ScheduledExportsApi unsubscribe_export PATCH /api/v2/scheduled_exports/{uuid}/unsubscribe.json_api Update a(n) Scheduled Export
ESP::ScheduledExportsApi update PATCH /api/v2/scheduled_exports/{id}.json_api Update a(n) Scheduled Export
ESP::ServicesApi list PUT /api/v2/services.json_api Get a list of Services
ESP::ServicesApi show GET /api/v2/services/{id}.json_api Show a single Service
ESP::SignaturesApi list PUT /api/v2/signatures.json_api Get a list of Signatures
ESP::SignaturesApi list_disabled_external_accounts GET /api/v2/signatures/{signature_id}/disabled_external_accounts.json_api Get a list of disabled External Accounts for a signature
ESP::SignaturesApi list_with_custom_risk_level_for_external_account PUT /api/v2/external_accounts/{external_account_id}/signature_custom_risk_levels.json_api Get A list of Signatures with default and custom risk levels for an External Account
ESP::SignaturesApi remove_custom_risk_level_for_external_account DELETE /api/v2/external_accounts/{external_account_id}/signature_custom_risk_levels/{signature_id}.json_api Remove a custom risk level to a Signature for an External Account
ESP::SignaturesApi set_custom_risk_level_for_external_account POST /api/v2/external_accounts/{external_account_id}/signature_custom_risk_levels.json_api Add a custom risk level to a Signature for an External Account
ESP::SignaturesApi show GET /api/v2/signatures/{id}.json_api Show a single Signature
ESP::SignaturesApi update_custom_risk_level_for_external_account PATCH /api/v2/external_accounts/{external_account_id}/signature_custom_risk_levels/{signature_id}.json_api Update a Signature's custom risk level for an External Account
ESP::StatComplianceControlsApi list_for_stat GET /api/v2/stats/{stat_id}/compliance_controls.json_api Statistics for compliance controls
ESP::StatComplianceControlsApi show GET /api/v2/stats/compliance_controls/{id}.json_api Show a single Stat Compliance Control
ESP::StatCustomComplianceControlsApi list_for_stat GET /api/v2/stats/{stat_id}/custom_compliance_controls.json_api Statistics for custom compliance controls
ESP::StatCustomComplianceControlsApi show GET /api/v2/stats/custom_compliance_controls/{id}.json_api Show a single Stat Custom Compliance Control
ESP::StatCustomSignaturesApi list_for_stat GET /api/v2/stats/{stat_id}/custom_signatures.json_api Statistics for custom signatures
ESP::StatCustomSignaturesApi show GET /api/v2/stats/custom_signatures/{id}.json_api Show a single Stat Custom Signature
ESP::StatRegionsApi list_for_stat GET /api/v2/stats/{stat_id}/regions.json_api Get a list of statistics for regions
ESP::StatRegionsApi show GET /api/v2/stats/regions/{id}.json_api Show a single Stat Region
ESP::StatServicesApi list_for_stat GET /api/v2/stats/{stat_id}/services.json_api Get a list of statistics for services
ESP::StatServicesApi show GET /api/v2/stats/services/{id}.json_api Show a single Stat Service
ESP::StatSignaturesApi list_for_stat GET /api/v2/stats/{stat_id}/signatures.json_api Get a list of statistics for signatures
ESP::StatSignaturesApi show GET /api/v2/stats/signatures/{id}.json_api Show a single Stat Signature
ESP::StatsApi for_report GET /api/v2/reports/{report_id}/stats.json_api Stats for a report
ESP::StatsApi latest_for_teams PUT /api/v2/stats/latest_for_teams.json_api Statistics for teams
ESP::StatsApi show GET /api/v2/stats/{id}.json_api Show a single Stat
ESP::SubOrganizationsApi create POST /api/v2/sub_organizations.json_api Create a(n) Sub Organization
ESP::SubOrganizationsApi delete DELETE /api/v2/sub_organizations/{id}.json_api Delete a(n) Sub Organization
ESP::SubOrganizationsApi list PUT /api/v2/sub_organizations.json_api Get a list of Sub Organizations
ESP::SubOrganizationsApi show GET /api/v2/sub_organizations/{id}.json_api Show a single Sub Organization
ESP::SubOrganizationsApi update PATCH /api/v2/sub_organizations/{id}.json_api Update a(n) Sub Organization
ESP::SubscriptionsApi show GET /api/v2/subscriptions/{id}.json_api Show a single Subscription
ESP::SuppressionsApi create POST /api/v2/suppressions.json_api Create a suppression
ESP::SuppressionsApi create_from_alert POST /api/v2/suppressions/alerts.json_api Creates a suppression from an alert
ESP::SuppressionsApi deactivate PATCH /api/v2/suppressions/{id}/deactivate.json_api Deactivate a suppression
ESP::SuppressionsApi list PUT /api/v2/suppressions.json_api Get a list of Suppressions
ESP::SuppressionsApi show GET /api/v2/suppressions/{id}.json_api Show a single Suppression
ESP::SuppressionsApi update PATCH /api/v2/suppressions/{id}.json_api Update a(n) Suppression
ESP::TagsApi list_for_alert GET /api/v2/alerts/{alert_id}/tags.json_api Get a list of Tags
ESP::TagsApi show GET /api/v2/tags/{id}.json_api Show a single Tag
ESP::TeamsApi create POST /api/v2/teams.json_api Create a(n) Team
ESP::TeamsApi delete DELETE /api/v2/teams/{id}.json_api Delete a(n) Team
ESP::TeamsApi list PUT /api/v2/teams.json_api Get a list of Teams
ESP::TeamsApi show GET /api/v2/teams/{id}.json_api Show a single Team
ESP::TeamsApi update PATCH /api/v2/teams/{id}.json_api Update a(n) Team
ESP::UserAttributionsApi add_channel POST /api/v2/external_accounts/{external_account_id}/user_attribution/channel.json_api Create a User Attribution Channel for an external account
ESP::UserAttributionsApi remove_channel DELETE /api/v2/external_accounts/{external_account_id}/user_attribution/channel.json_api Remove the User Attribution Channel for an external account
ESP::UserAttributionsApi show_channel GET /api/v2/external_accounts/{external_account_id}/user_attribution/channel.json_api Show the User Attribution Channel of an external account
ESP::UserAttributionsApi update PATCH /api/v2/external_accounts/{external_account_id}/user_attribution.json_api Update the user attributions on an external account
ESP::UsersApi create POST /api/v2/users.json_api Create a(n) User
ESP::UsersApi delete DELETE /api/v2/users/{id}.json_api Delete a(n) User
ESP::UsersApi list PUT /api/v2/users.json_api Get a list of Users
ESP::UsersApi show GET /api/v2/users/{id}.json_api Show a single User
ESP::UsersApi update PATCH /api/v2/users/{id}.json_api Update a(n) User

Documentation for Models

Contributing

  1. Fork it ( https://github.com/[my-github-username]/esp-sdk-ruby/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)

Note: This SDK is (mostly) generated by swagger-codegen, so only files inside the extensions directory can be modified. The extensions directory is the only directory that is not generated by swagger-codegen. A base class BaseObject had been added as an inherited object to all models for the purposes of providing future extensions. Most notably the addition of associations.