{ "opencollection": "1.0.0", "info": { "name": "Gremlin agents attacks API", "version": "1.0" }, "items": [ { "info": { "name": "attacks", "type": "folder" }, "items": [ { "info": { "name": "List all active attacks.", "type": "http" }, "http": { "method": "GET", "url": "https://api.gremlin.com/v1/attacks/active", "params": [ { "name": "source", "value": "Adhoc", "type": "query", "description": "Filter attacks to either adhoc or scenario." }, { "name": "pageSize", "value": "", "type": "query", "description": "This value determines how many results will be returned per call." }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "This endpoint will return all active attacks for the team.\nRequires the privilege [`EXPERIMENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Return a page of active ad-hoc experiments.", "type": "http" }, "http": { "method": "GET", "url": "https://api.gremlin.com/v1/attacks/active/paged", "params": [ { "name": "pageSize", "value": "None (defaults to 1000)", "type": "query", "description": "This value determines how many results will be returned per call." }, { "name": "pageToken", "value": "None (returns first page)", "type": "query", "description": "Pass the pageToken to get the next page of active ad-hoc experiments" }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "This endpoint will return a paged response of active ad-hoc experiments for a team.\nRequires the privilege [`EXPERIMENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Add annotations to an attack", "type": "http" }, "http": { "method": "PUT", "url": "https://api.gremlin.com/v1/attacks/:guid/annotations", "params": [ { "name": "guid", "value": "", "type": "path", "description": "This value represents the globally unique identifier of the record to fetch." }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Requires the privilege [`MINIMUM_TEAM_PRIVILEGES`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "List all attacks.", "type": "http" }, "http": { "method": "GET", "url": "https://api.gremlin.com/v1/attacks", "params": [ { "name": "source", "value": "Adhoc", "type": "query", "description": "Filter attacks to either adhoc or scenario." }, { "name": "pageSize", "value": "", "type": "query", "description": "This value determines how many results will be returned per call." }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "Requires the privilege [`EXPERIMENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Create a new attack.", "type": "http" }, "http": { "method": "POST", "url": "https://api.gremlin.com/v1/attacks", "params": [ { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Create a new attack by specifying the attack configuration, targets and sampling configuration\nRequires the privilege [`EXPERIMENTS_RUN`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Idempotently halt all active attacks", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.gremlin.com/v1/attacks" }, "docs": "Idempotently halt all active attacks" }, { "info": { "name": "List all attacks in a given time range (defaults to all attacks up to now)", "type": "http" }, "http": { "method": "GET", "url": "https://api.gremlin.com/v1/attacks/range", "params": [ { "name": "startTime", "value": "", "type": "query" }, { "name": "endTime", "value": "", "type": "query" }, { "name": "pageSize", "value": "", "type": "query", "description": "This value determines how many results will be returned per call." }, { "name": "pageToken", "value": "", "type": "query" }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "Requires the privilege [`EXPERIMENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "List all completed attacks.", "type": "http" }, "http": { "method": "GET", "url": "https://api.gremlin.com/v1/attacks/completed", "params": [ { "name": "source", "value": "Adhoc", "type": "query", "description": "Filter attacks to either adhoc or scenario." }, { "name": "pageSize", "value": "", "type": "query", "description": "This value determines how many results will be returned per call." }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "This endpoint will return all completed attacks that the team has performed.\nRequires the privilege [`EXPERIMENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Return a page of completed ad-hoc experiments.", "type": "http" }, "http": { "method": "GET", "url": "https://api.gremlin.com/v1/attacks/completed/paged", "params": [ { "name": "pageSize", "value": "None (defaults to 1000)", "type": "query", "description": "This value determines how many results will be returned per call." }, { "name": "pageToken", "value": "None (returns first page)", "type": "query", "description": "Pass the pageToken to get the next page of completed ad-hoc experiments" }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "This endpoint will return a paged response of completed ad-hoc experiments for a team.\nRequires the privilege [`EXPERIMENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Legacy Create Attack.", "type": "http" }, "http": { "method": "POST", "url": "https://api.gremlin.com/v1/attacks/new", "params": [ { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Note that this endpoint is considered deprecated but is maintained for existing consumers. Please consider using the new `POST /attacks` endpoint instead.\n\nFor a list of attack parameters, please visit: https://www.gremlin.com/docs/infrastructure-layer/attacks/#parameter-reference.\nPlease note that if the `labels` or `tags` fields are not provided, no filtering will be employed and an attack will target all active clients within your team.\nFor more information on creating a new attack using the" }, { "info": { "name": "Get details about an attack.", "type": "http" }, "http": { "method": "GET", "url": "https://api.gremlin.com/v1/attacks/:guid", "params": [ { "name": "guid", "value": "", "type": "path", "description": "This value represents the globally unique identifier of the record to fetch." }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "This endpoint will allow you to get info on a specific attack based on its guid.\nRequires the privilege [`EXPERIMENTS_READ`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Idempotently halt the specified active attack.", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.gremlin.com/v1/attacks/:guid", "params": [ { "name": "guid", "value": "", "type": "path", "description": "This value represents the globally unique identifier of the record to fetch." }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ] }, "docs": "Requires the privilege [`HALT_WRITE`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" }, { "info": { "name": "Idempotently halt all active attacks. This is a POST version of the DELETE operation.", "type": "http" }, "http": { "method": "POST", "url": "https://api.gremlin.com/v1/attacks/halt", "body": { "type": "json", "data": "{}" } }, "docs": "Idempotently halt all active attacks. This is a POST version of the DELETE operation." }, { "info": { "name": "Idempotently halt the specified active attack.", "type": "http" }, "http": { "method": "POST", "url": "https://api.gremlin.com/v1/attacks/:guid/halt", "params": [ { "name": "guid", "value": "", "type": "path", "description": "This value represents the globally unique identifier of the record to fetch." }, { "name": "teamId", "value": "", "type": "query", "description": "Required when using company session token." } ], "body": { "type": "json", "data": "{}" } }, "docs": "Requires the privilege [`HALT_WRITE`](https://www.gremlin.com/docs/user-management/access-control/#privileges)" } ] } ], "bundled": true }