<commit_before>FORMAT: 1A
HOST: http://api.exceptionless.com/api/v1

# Exceptionless
Discover errors in your .NET app you never knew were happening and use detailed error reports to squash them with ease. Make your app Exceptionless!

# Group Event
Events related resources of the **Events API**

## Event [/event]
### List all events for an organization [GET]
+ Parameters
    + organizationId (optional, string, `537650f3b77efe23a47914f3`) ...The identifier of the organization Id.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f4", "message": "Jogging in park"
        }, {
          "id": "537650f3b77efe23a47914f5", "message": "Pick-up posters from post-office"
        }]

### Create a new event [POST]

+ Request (application/json)

        { "message": "Exceptionless is amazing!" }

+ Response 200 (application/json)

## Event [/stack/{stackId}/event]

### List all events for a given stack [GET]
+ Parameters
    + stackId (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the stack.
    + before (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `before=obj_bar` in order to fetch the previous page of the list.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f4", "message": "Jogging in park"
        }, {
          "id": "537650f3b77efe23a47914f5", "message": "Pick-up posters from post-office"
        }]

## Event [/project/{projectId}/event]

### List all events for a given project [GET]
+ Parameters
    + projectId (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the project.
    + before (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `before=obj_bar` in order to fetch the previous page of the list.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f4", "message": "Jogging in park"
        }, {
          "id": "537650f3b77efe23a47914f5", "message": "Pick-up posters from post-office"
        }]


# Group Organization
Organization related resources of the **Organization API**

## Organization [/organization]

### List all organizations [GET]

+ Parameters
    + before (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `before=obj_bar` in order to fetch the previous page of the list.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f3", "name": "Acme"
        }, {
          "id": "537650f3b77efe23a47914f3", "name": "Acme Supply"
        }]

### Create a new organization [POST]
+ Request (application/json)

        { "name": "Acme" }

+ Response 201 (application/json)

        { "id": "537650f3b77efe23a47914f3", "name": "Acme" }

## Organization [/organization/{id}]

+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.

### Retrieve an Organization [GET]
A single Organization object with all its details

+ Response 200 (application/json)
    + Body

            { "id": "537650f3b77efe23a47914f3", "name": "Acme" }

### Update an organization [PATCH]
+ Request (application/json)

        { "name": "Updated Acme" }

+ Response 200 (application/json)

        { "id": "537650f3b77efe23a47914f3", "name": "Updated Acme" }

### Remove an Organization [DELETE]
+ Response 204

## Organization [/organization/{id}/user/{email}]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.
    + email (required, string, `<EMAIL>`) ... The email address of the user you wish to remove from your organization.

### Add new user [POST]
+ Response 200

### Remove user [DELETE]
+ Response 200

## Organization [/organization/{id}/data/{key}]

### Add key [POST]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the data object.
    + value (required, string, `90210`) ... Any string value.

+ Response 200

### Remove key [DELETE]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the data object.
    
+ Response 200

## Organization [/organization/check-name{?name}]

### Check for existing organization name [GET]
+ Parameters
    + name (required, string, `My Organization`) ... The organization name to check.

+ Response 404<commit_msg>Transferring blueprint from apiary.io<commit_after>FORMAT: 1A
HOST: http://api.exceptionless.com/api/v1

# Exceptionless
Discover errors in your .NET app you never knew were happening and use detailed error reports to squash them with ease. Make your app Exceptionless!

# Group Event
Events related resources of the **Events API**

## Event [/event]
### List all events for an organization [GET]
+ Parameters
    + organizationId (optional, string, `537650f3b77efe23a47914f3`) ...The identifier of the organization Id.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f4", "message": "Jogging in park"
        }, {
          "id": "537650f3b77efe23a47914f5", "message": "Pick-up posters from post-office"
        }]

### Create a new event [POST]

+ Request (application/json)

        { "message": "Exceptionless is amazing!" }

+ Response 200 (application/json)

## Event [/stack/{stackId}/event]

### List all events for a given stack [GET]
+ Parameters
    + stackId (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the stack.
    + before (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `before=obj_bar` in order to fetch the previous page of the list.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f4", "message": "Jogging in park"
        }, {
          "id": "537650f3b77efe23a47914f5", "message": "Pick-up posters from post-office"
        }]

## Event [/project/{projectId}/event]

### List all events for a given project [GET]
+ Parameters
    + projectId (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the project.
    + before (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `before=obj_bar` in order to fetch the previous page of the list.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f4", "message": "Jogging in park"
        }, {
          "id": "537650f3b77efe23a47914f5", "message": "Pick-up posters from post-office"
        }]


# Group Organization
Organization related resources of the **Organization API**

## Organization [/organization]

### List all organizations [GET]

+ Parameters
    + before (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `before=obj_bar` in order to fetch the previous page of the list.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f3", "name": "Acme"
        }, {
          "id": "537650f3b77efe23a47914f3", "name": "Acme Supply"
        }]

### Create a new organization [POST]
+ Request (application/json)

        { "name": "Acme" }

+ Response 201 (application/json)

        { "id": "537650f3b77efe23a47914f3", "name": "Acme" }

## Organization [/organization/{id}]

+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.

### Retrieve an organization [GET]
A single organization object with all its details

+ Response 200 (application/json)
    + Body

            { "id": "537650f3b77efe23a47914f3", "name": "Acme" }

### Update an organization [PATCH]
+ Request (application/json)

        { "name": "Updated Acme" }

+ Response 200 (application/json)

        { "id": "537650f3b77efe23a47914f3", "name": "Updated Acme" }

### Remove an organization [DELETE]
+ Response 204

## Organization [/organization/{id}/user/{email}]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.
    + email (required, string, `<EMAIL>`) ... The email address of the user you wish to remove from your organization.

### Add new user [POST]
+ Response 200

### Remove user [DELETE]
+ Response 200

## Organization [/organization/{id}/data/{key}]

### Add key [POST]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the data object.
    + value (required, string, `90210`) ... Any string value.

+ Response 200

### Remove key [DELETE]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the data object.
    
+ Response 200

## Organization [/organization/check-name{?name}]

### Check for existing organization name [GET]
+ Parameters
    + name (required, string, `My Organization`) ... The organization name to check.

+ Response 404

# Group Project
Project related resources of the **Project API**

## Project [/project]

### List all projects [GET]

+ Parameters
    + organizationId (optional, string, `537650f3b77efe23a47914f3`) ...The identifier of the organization Id.
    + before (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `before` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, starting with `obj_bar`, your subsequent call can include `before=obj_bar` in order to fetch the previous page of the list.
    + after (optional, string, `100650f3b77efe23a4791400`) ... A cursor for use in pagination. `after` is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, ending with `obj_foo`, your subsequent call can include `after=obj_foo` in order to fetch the next page of the list.
    + limit = `10` (optional, number, `5`) ... A limit on the number of objects to be returned. Limit can range between 1 and 100 items.

+ Response 200 (application/json)

        [{
          "id": "537650f3b77efe23a47914f3", "name": "My Project"
        }, {
          "id": "537650f3b77efe23a47914f3", "name": "My Second Project"
        }]

### Create a new project [POST]
+ Request (application/json)

        { "organization_id": "537650f3b77efe23a47914f3", "name": "Acme" }

+ Response 201 (application/json)

        { "organization_id": "537650f3b77efe23a47914f3", "id": "537650f3b77efe23a47914f1", "name": "Acme" }

## Project [/project/{id}]

+ Parameters
    + id (required, string, `537650f3b77efe23a47914f3`) ... The identifier of the document to be updated.

### Retrieve an project [GET]
A single project object with all its details

+ Response 200 (application/json)
    + Body

            { "id": "537650f3b77efe23a47914f1", "name": "Acme" }

### Update an project [PATCH]
+ Request (application/json)

        { "name": "Updated Acme" }

+ Response 200 (application/json)

        { "organization_id": "537650f3b77efe23a47914f3", "id": "537650f3b77efe23a47914f1", "name": "Acme" }

### Remove an project [DELETE]
+ Response 204

## Project [/project/{id}/apikey/get-default]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be retrieved.

### Get the default api key [GET]
+ Response 200

    { "key": "100650f3b77efe23a4791411" }

## Project [/project/{id}/apikey]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be retrieved.

### Create a new api key [POST]
+ Response 200

    { "key": "100650f3b77efe23a4791411" }

## Project [/project/{id}/apikey/{apikey}]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be retrieved.
    + apikey (required, string, `100650f3b77efe23a4791411`) ... The api key that should be removed.

### Delete an api key [DELETE]
+ Response 200

## Project [/project/{id}/reset-data]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be retrieved.

### Reset all project data [GET]
+ Response 200

## Project [/project/{id}/config]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be retrieved.

### Get the project configuration object [GET]
+ Response 200

    {
      "version": 0,
      "settings": {
        "include_conditional_data": "true"
      }
    }

## Project [/project/{id}/config/{key}]

### Add key [POST]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the config object.
    + value (required, string, `90210`) ... Any config value.

+ Response 200

### Remove key [DELETE]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the config object.
    
+ Response 200

## Project [/project/{id}/data/{key}]

### Add key [POST]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the data object.
    + value (required, string, `90210`) ... Any string value.

+ Response 200

### Remove key [DELETE]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be updated.
    + key (required, string, `zip-code`) ... A identifier of the data object.
    
+ Response 200

## Project [/project/{id}/promotedtabs/{name}]

### Promote Tab [POST]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be updated.
    + name (required, string, `Machine Info`) ... The tab name.

+ Response 200

### Demote Tab [DELETE]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be updated.
    + key (required, string, `Machine Info`) ... The tab name.
    
+ Response 200

## Project [/project/{id}/notification]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be retrieved.

### Get the project's notification settings [GET]
+ Response 200

    {
      "117650f3b77efe23a4791411": {
        "mode": 1,
        "send_daily_summary": true,
        "report_critical_errors": true,
        "report_regressions": true,
        "report404_errors": false,
        "report_known_bot_errors": false
      },
      "1168f524b77efe1af40dee11": {
        "mode": 2,
        "send_daily_summary": true,
        "report_critical_errors": true,
        "report_regressions": true,
        "report404_errors": false,
        "report_known_bot_errors": false
      }
    }
    
## Project [/project/{id}/notification/{userId}]
+ Parameters
    + id (required, string, `537650f3b77efe23a47914f1`) ... The identifier of the document to be updated.
    + userId (required, string, `007650f3b77efe23a4791411`) ... A identifier of the user.

### Get notification settings for a specific user [GET]
+ Response 200

    {
        "mode": 1,
        "send_daily_summary": true,
        "report_critical_errors": true,
        "report_regressions": true,
        "report404_errors": false,
        "report_known_bot_errors": false
    }

### Add notification settings for a specific user [POST]

+ Request (application/json)

    {
        "mode": 2,
        "send_daily_summary": false,
        "report_critical_errors": true,
        "report_regressions": true,
        "report404_errors": false,
        "report_known_bot_errors": false
    }

+ Response 200

### Remove notification settings for a specific user [DELETE]
+ Response 200
    
## Project [/project/check-name{?name}]

### Check for existing organization name [GET]
+ Parameters
    + name (required, string, `My Organization`) ... The project name to check.

+ Response 404
{'fraction_non_alphanumeric': 0.11482778198334595, 'fraction_numerical': 0.08014761544284633, 'mean_word_length': 3.5261241970021415, 'pattern_counts': {'":': 96, '<': 5, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '166217', 'n_tokens_mistral': 7414, 'n_tokens_neox': 6434, 'n_words': 2427}