# Core

## GET /core/activity/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Activity":{"required":["timestamp","identity","data_source","event_type","integration_unique"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"identity":{"title":"Identity","type":"string","format":"uuid"},"location":{"title":"Location","type":"string","format":"uuid"},"data_source":{"title":"Data source","type":"string","format":"uuid"},"event_type":{"title":"Event type","type":"string","format":"uuid"},"integration_unique":{"title":"Integration unique","type":"string","maxLength":255,"minLength":1}}}}},"paths":{"/core/activity/":{"get":{"operationId":"core_activity_list","description":"","parameters":[{"name":"timestamp__lte","in":"query","description":"timestamp__lte","required":false,"type":"string"},{"name":"timestamp__gte","in":"query","description":"timestamp__gte","required":false,"type":"string"},{"name":"identity","in":"query","description":"identity","required":false,"type":"string"},{"name":"data_source","in":"query","description":"data_source","required":false,"type":"string"},{"name":"actor","in":"query","description":"actor","required":false,"type":"string"},{"name":"location","in":"query","description":"location","required":false,"type":"string"},{"name":"labels","in":"query","description":"labels","required":false,"type":"string"},{"name":"cursor","in":"query","description":"The pagination cursor value.","required":false,"type":"string"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"},{"name":"filter_uuid","in":"query","description":"UUID of filter to apply to results.","type":"string"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["results"],"type":"object","properties":{"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Activity"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/activity/first\_last/

> View to return first and last activity timestamps.

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"ActivityFirstLastTimestamp":{"required":["first","last"],"type":"object","properties":{"first":{"$ref":"#/components/schemas/Timestamp"},"last":{"$ref":"#/components/schemas/Timestamp"}}},"Timestamp":{"required":["timestamp"],"type":"object","properties":{"timestamp":{"title":"Timestamp","type":"string","format":"date-time"}}}}},"paths":{"/core/activity/first_last/":{"get":{"operationId":"core_activity_first_last_read","description":"View to return first and last activity timestamps.","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ActivityFirstLastTimestamp"}}}}},"tags":["core"]}}}}
```

## GET /core/activity/statistics/actor/

> Provides a view returning a list of actors with activity count intervals\
> corresponding to the time range and interval count requested.

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"ActivityStatsActor":{"required":["actor","counts"],"type":"object","properties":{"actor":{"title":"Actor","type":"string","format":"uuid"},"counts":{"type":"array","items":{"$ref":"#/components/schemas/CombinedActivity"}}}},"CombinedActivity":{"required":["timestamp","count"],"type":"object","properties":{"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"count":{"title":"Count","type":"integer"}}}}},"paths":{"/core/activity/statistics/actor/":{"get":{"operationId":"core_activity_statistics_actor_list","description":"Provides a view returning a list of actors with activity count intervals\ncorresponding to the time range and interval count requested.","parameters":[{"name":"timestamp__lte","in":"query","description":"timestamp__lte","required":false,"type":"string"},{"name":"timestamp__gte","in":"query","description":"timestamp__gte","required":false,"type":"string"},{"name":"interval_count","in":"query","description":"interval_count","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"},{"name":"filter_uuid","in":"query","description":"UUID of filter to apply to results.","type":"string"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"links":{"required":["next","previous"],"type":"object","properties":{"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"}}},"interval_duration":{"type":"number"},"results":{"type":"array","items":{"$ref":"#/components/schemas/ActivityStatsActor"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/activity/statistics/combined/

> Provides a view returning overall activity stats for an organization or datasource. Used primarily\
> for populated brush timeline data.

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"CombinedActivity":{"required":["timestamp","count"],"type":"object","properties":{"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"count":{"title":"Count","type":"integer"}}}}},"paths":{"/core/activity/statistics/combined/":{"get":{"operationId":"core_activity_statistics_combined_list","description":"Provides a view returning overall activity stats for an organization or datasource. Used primarily\nfor populated brush timeline data.","parameters":[{"name":"timestamp__lte","in":"query","description":"timestamp__lte","required":false,"type":"string"},{"name":"timestamp__gte","in":"query","description":"timestamp__gte","required":false,"type":"string"},{"name":"interval_count","in":"query","description":"interval_count","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"links":{"required":["next","previous"],"type":"object","properties":{"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"}}},"interval_duration":{"type":"number"},"results":{"type":"array","items":{"$ref":"#/components/schemas/CombinedActivity"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/activity/statistics/datasource/

> Provides a view of activity statistics aggreagted by datasource.

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"ActivityStatsDataSource":{"required":["data_source","counts"],"type":"object","properties":{"data_source":{"title":"Data source","type":"string","format":"uuid"},"counts":{"type":"array","items":{"$ref":"#/components/schemas/ActivityCount"}}}},"ActivityCount":{"required":["timestamp","count"],"type":"object","properties":{"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"count":{"title":"Count","type":"integer"}}}}},"paths":{"/core/activity/statistics/datasource/":{"get":{"operationId":"core_activity_statistics_datasource_list","description":"Provides a view of activity statistics aggreagted by datasource.","parameters":[{"name":"timestamp__lte","in":"query","description":"timestamp__lte","required":false,"type":"string"},{"name":"timestamp__gte","in":"query","description":"timestamp__gte","required":false,"type":"string"},{"name":"interval_count","in":"query","description":"interval_count","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"links":{"required":["next","previous"],"type":"object","properties":{"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"}}},"interval_duration":{"type":"number"},"results":{"type":"array","items":{"$ref":"#/components/schemas/ActivityStatsDataSource"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/activity/statistics/label/

> View for returning activity counts by label, bucketed by\
> data source.

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"ActivityStatsLabel":{"required":["labels","data_source"],"type":"object","properties":{"labels":{"type":"array","items":{"$ref":"#/components/schemas/ActivityLabel"}},"data_source":{"title":"Data source","type":"string","format":"uuid"}}},"ActivityLabel":{"required":["label","counts","total_count"],"type":"object","properties":{"label":{"title":"Label","type":"string","format":"uuid"},"counts":{"type":"array","items":{"$ref":"#/components/schemas/ActivityCount"}},"total_count":{"title":"Total count","type":"integer"}}},"ActivityCount":{"required":["timestamp","count"],"type":"object","properties":{"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"count":{"title":"Count","type":"integer"}}}}},"paths":{"/core/activity/statistics/label/":{"get":{"operationId":"core_activity_statistics_label_list","description":"View for returning activity counts by label, bucketed by\ndata source.","parameters":[{"name":"timestamp__lte","in":"query","description":"timestamp__lte","required":false,"type":"string"},{"name":"timestamp__gte","in":"query","description":"timestamp__gte","required":false,"type":"string"},{"name":"data_source","in":"query","description":"data_source","required":false,"type":"string"},{"name":"interval_count","in":"query","description":"interval_count","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"},{"name":"filter_uuid","in":"query","description":"UUID of filter to apply to results.","type":"string"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"links":{"required":["next","previous"],"type":"object","properties":{"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"}}},"interval_duration":{"type":"number"},"results":{"type":"array","items":{"$ref":"#/components/schemas/ActivityStatsLabel"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/activity/statistics/location/

> Provides a view returning a list of locations with activity count intervals\
> corresponding to the time range and interval count requested.

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"ActivityStatsLocation":{"required":["location","counts"],"type":"object","properties":{"location":{"title":"Location","type":"string","format":"uuid"},"counts":{"type":"array","items":{"$ref":"#/components/schemas/CombinedActivity"}}}},"CombinedActivity":{"required":["timestamp","count"],"type":"object","properties":{"timestamp":{"title":"Timestamp","type":"string","format":"date-time"},"count":{"title":"Count","type":"integer"}}}}},"paths":{"/core/activity/statistics/location/":{"get":{"operationId":"core_activity_statistics_location_list","description":"Provides a view returning a list of locations with activity count intervals\ncorresponding to the time range and interval count requested.","parameters":[{"name":"timestamp__lte","in":"query","description":"timestamp__lte","required":false,"type":"string"},{"name":"timestamp__gte","in":"query","description":"timestamp__gte","required":false,"type":"string"},{"name":"interval_count","in":"query","description":"interval_count","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"links":{"required":["next","previous"],"type":"object","properties":{"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"}}},"interval_duration":{"type":"number"},"results":{"type":"array","items":{"$ref":"#/components/schemas/ActivityStatsLocation"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/activity/{uuid}/raw/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"RawActivity":{"required":["activity_uuid","json_data"],"type":"object","properties":{"activity_uuid":{"title":"Activity uuid","type":"string","format":"uuid"},"json_data":{"title":"Json data","type":"object","additionalProperties":true}}}}},"paths":{"/core/activity/{uuid}/raw/":{"get":{"operationId":"core_activity_raw_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RawActivity"}}}}},"tags":["core"]}}}}
```

## GET /core/activity/{uuid}/raw/details/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"RawActivityDetails":{"required":["details"],"type":"object","properties":{"details":{"type":"array","items":{"$ref":"#/components/schemas/RawActivityDetailsField"}}}},"RawActivityDetailsField":{"required":["field_name","value"],"type":"object","properties":{"field_name":{"title":"Field name","type":"string","maxLength":255,"minLength":1},"value":{"title":"Value","type":"string","maxLength":255,"minLength":1}}}}},"paths":{"/core/activity/{uuid}/raw/details/":{"get":{"operationId":"core_activity_raw_details_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RawActivityDetails"}}}}},"tags":["core"]}}}}
```

## GET /core/actors/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Actor":{"required":["organization"],"type":"object","properties":{"id":{"title":"ID","type":"integer","readOnly":true},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"given_name":{"title":"Given name","type":"string","maxLength":255},"family_name":{"title":"Family name","type":"string","maxLength":255},"organization":{"title":"Organization","type":"string","format":"uuid"},"identities":{"type":"array","items":{"type":"string","format":"uuid"},"readOnly":true}}}}},"paths":{"/core/actors/":{"get":{"operationId":"core_actors_list","description":"","parameters":[{"name":"ordering","in":"query","description":"Which field to use when ordering the results.","required":false,"type":"string"},{"name":"cursor","in":"query","description":"The pagination cursor value.","required":false,"type":"string"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"},{"name":"search","in":"query","description":"Search string","type":"string"},{"name":"identities","in":"query","description":"Filter by identity UUIDs (comma-separated)","type":"string"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["results"],"type":"object","properties":{"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Actor"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/actors/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Actor":{"required":["organization"],"type":"object","properties":{"id":{"title":"ID","type":"integer","readOnly":true},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"given_name":{"title":"Given name","type":"string","maxLength":255},"family_name":{"title":"Family name","type":"string","maxLength":255},"organization":{"title":"Organization","type":"string","format":"uuid"},"identities":{"type":"array","items":{"type":"string","format":"uuid"},"readOnly":true}}}}},"paths":{"/core/actors/{uuid}/":{"get":{"operationId":"core_actors_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Actor"}}}}},"tags":["core"]}}}}
```

## GET /core/event-type/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"EventType":{"required":["integration_type","name","slug"],"type":"object","properties":{"id":{"title":"ID","type":"integer","readOnly":true},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"integration_type":{"title":"Integration type","type":"string","format":"uuid"},"name":{"title":"Name","type":"string","maxLength":255,"minLength":1},"slug":{"title":"Slug","type":"string","maxLength":255,"minLength":1},"discard":{"title":"Discard","type":"boolean"},"linked_tags":{"type":"array","items":{"$ref":"#/components/schemas/Tag"},"readOnly":true}}},"Tag":{"required":["label","scope"],"type":"object","properties":{"label":{"title":"Label","type":"string","maxLength":255,"minLength":1},"scope":{"title":"Scope","type":"string","minLength":1},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"id":{"title":"ID","type":"integer","readOnly":true}}}}},"paths":{"/core/event-type/":{"get":{"operationId":"core_event-type_list","description":"","parameters":[{"name":"search","in":"query","description":"A search term.","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"},{"name":"min_count","in":"query","description":"Return only event types with at least this many activities.","type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/EventType"}}}}}}}},"tags":["core"]}}}}
```

## POST /core/event-type/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"EventType":{"required":["integration_type","name","slug"],"type":"object","properties":{"id":{"title":"ID","type":"integer","readOnly":true},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"integration_type":{"title":"Integration type","type":"string","format":"uuid"},"name":{"title":"Name","type":"string","maxLength":255,"minLength":1},"slug":{"title":"Slug","type":"string","maxLength":255,"minLength":1},"discard":{"title":"Discard","type":"boolean"},"linked_tags":{"type":"array","items":{"$ref":"#/components/schemas/Tag"},"readOnly":true}}},"Tag":{"required":["label","scope"],"type":"object","properties":{"label":{"title":"Label","type":"string","maxLength":255,"minLength":1},"scope":{"title":"Scope","type":"string","minLength":1},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"id":{"title":"ID","type":"integer","readOnly":true}}}}},"paths":{"/core/event-type/":{"post":{"operationId":"core_event-type_create","description":"","responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventType"}}}}},"tags":["core"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventType"}}},"required":true}}}}}
```

## GET /core/event-type/descriptions/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"EventTypeDescription":{"required":["event_type_uuid","description"],"type":"object","properties":{"event_type_uuid":{"title":"Event type uuid","type":"string","format":"uuid"},"description":{"title":"Description","type":"string","minLength":1}}}}},"paths":{"/core/event-type/descriptions/":{"get":{"operationId":"core_event-type_descriptions_list","description":"","parameters":[{"name":"event_types","in":"query","description":"Filter by event type UUIDs (comma-separated)","type":"string"},{"name":"uuids","in":"query","description":"Filter by event type UUIDs (comma-separated, alternative to event_types)","type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/EventTypeDescription"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/event-type/{event\_type\_\_uuid}/details/

> GET Endpoint for EventTypeDetails

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"EventTypeDetails":{"required":["description"],"type":"object","properties":{"description":{"title":"Description","type":"string","minLength":1}}}}},"paths":{"/core/event-type/{event_type__uuid}/details/":{"get":{"operationId":"core_event-type_details_read","description":"GET Endpoint for EventTypeDetails","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventTypeDetails"}}}}},"tags":["core"]}}}}
```

## GET /core/event-type/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"EventType":{"required":["integration_type","name","slug"],"type":"object","properties":{"id":{"title":"ID","type":"integer","readOnly":true},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"integration_type":{"title":"Integration type","type":"string","format":"uuid"},"name":{"title":"Name","type":"string","maxLength":255,"minLength":1},"slug":{"title":"Slug","type":"string","maxLength":255,"minLength":1},"discard":{"title":"Discard","type":"boolean"},"linked_tags":{"type":"array","items":{"$ref":"#/components/schemas/Tag"},"readOnly":true}}},"Tag":{"required":["label","scope"],"type":"object","properties":{"label":{"title":"Label","type":"string","maxLength":255,"minLength":1},"scope":{"title":"Scope","type":"string","minLength":1},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"id":{"title":"ID","type":"integer","readOnly":true}}}}},"paths":{"/core/event-type/{uuid}/":{"get":{"operationId":"core_event-type_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EventType"}}}}},"tags":["core"]}}}}
```

## GET /core/filters/builtin/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"BuiltInFilter":{"required":["filter_json"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"highlight":{"type":"array","items":{"type":"string","minLength":1}},"is_template":{"title":"Is template","type":"boolean","readOnly":true,"default":true}}},"FilterJson":{"type":"object","properties":{"filter_name":{"title":"Filter name","type":"string","minLength":0},"filter_icon":{"title":"Filter icon","type":"string","minLength":0},"filter_description":{"title":"Filter description","type":"string","minLength":0},"actors":{"title":"Actors","type":"object","additionalProperties":{"type":"string"}},"data_sources":{"title":"Data sources","type":"object","additionalProperties":{"type":"string"}},"event_types":{"title":"Event types","type":"object","additionalProperties":{"type":"string"}},"locations":{"title":"Locations","type":"object","additionalProperties":{"type":"string"}},"labels":{"$ref":"#/components/schemas/FilterJsonLabel"},"date_range":{"title":"Date range","type":"object","additionalProperties":{"type":"string"}}}},"FilterJsonLabel":{"type":"object","properties":{"Application":{"title":"Application","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Context":{"title":"Context","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Access":{"title":"Access","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}}}}}},"paths":{"/core/filters/builtin/":{"get":{"operationId":"core_filters_builtin_list","description":"","parameters":[{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/BuiltInFilter"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/filters/builtin/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"BuiltInFilter":{"required":["filter_json"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"highlight":{"type":"array","items":{"type":"string","minLength":1}},"is_template":{"title":"Is template","type":"boolean","readOnly":true,"default":true}}},"FilterJson":{"type":"object","properties":{"filter_name":{"title":"Filter name","type":"string","minLength":0},"filter_icon":{"title":"Filter icon","type":"string","minLength":0},"filter_description":{"title":"Filter description","type":"string","minLength":0},"actors":{"title":"Actors","type":"object","additionalProperties":{"type":"string"}},"data_sources":{"title":"Data sources","type":"object","additionalProperties":{"type":"string"}},"event_types":{"title":"Event types","type":"object","additionalProperties":{"type":"string"}},"locations":{"title":"Locations","type":"object","additionalProperties":{"type":"string"}},"labels":{"$ref":"#/components/schemas/FilterJsonLabel"},"date_range":{"title":"Date range","type":"object","additionalProperties":{"type":"string"}}}},"FilterJsonLabel":{"type":"object","properties":{"Application":{"title":"Application","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Context":{"title":"Context","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Access":{"title":"Access","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}}}}}},"paths":{"/core/filters/builtin/{uuid}/":{"get":{"operationId":"core_filters_builtin_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BuiltInFilter"}}}}},"tags":["core"]}}}}
```

## GET /core/filters/user/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"UserFilterSwagger":{"required":["uuid","user","last_user_editor","filter_json","visibility","is_temporary","created_at","updated_at"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid"},"user":{"title":"User","type":"string","format":"uuid"},"last_user_editor":{"title":"Last user editor","type":"string","format":"uuid"},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"visibility":{"title":"Visibility","type":"string","enum":["user","organization"]},"is_temporary":{"title":"Is temporary","type":"boolean"},"created_at":{"title":"Created at","type":"string","format":"date-time"},"updated_at":{"title":"Updated at","type":"string","format":"date-time"}}},"FilterJson":{"type":"object","properties":{"filter_name":{"title":"Filter name","type":"string","minLength":0},"filter_icon":{"title":"Filter icon","type":"string","minLength":0},"filter_description":{"title":"Filter description","type":"string","minLength":0},"actors":{"title":"Actors","type":"object","additionalProperties":{"type":"string"}},"data_sources":{"title":"Data sources","type":"object","additionalProperties":{"type":"string"}},"event_types":{"title":"Event types","type":"object","additionalProperties":{"type":"string"}},"locations":{"title":"Locations","type":"object","additionalProperties":{"type":"string"}},"labels":{"$ref":"#/components/schemas/FilterJsonLabel"},"date_range":{"title":"Date range","type":"object","additionalProperties":{"type":"string"}}}},"FilterJsonLabel":{"type":"object","properties":{"Application":{"title":"Application","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Context":{"title":"Context","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Access":{"title":"Access","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}}}}}},"paths":{"/core/filters/user/":{"get":{"operationId":"core_filters_user_list","description":"","parameters":[{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"},{"name":"mode","in":"query","description":"Specify what types of filters to fetch:\n- `exclude_temporary`: Fetch filters only manually saved filters\n- `only_temporary`: Fetch filters only temporary filters\n- `all`: Fetch all types of filters\n","required":false,"type":"string","enum":["exclude_temporary","only_temporary","all"],"default":"exclude_temporary"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/UserFilterSwagger"}}}}}}}},"tags":["core"]}}}}
```

## POST /core/filters/user/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"UserFilterSwagger":{"required":["uuid","user","last_user_editor","filter_json","visibility","is_temporary","created_at","updated_at"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid"},"user":{"title":"User","type":"string","format":"uuid"},"last_user_editor":{"title":"Last user editor","type":"string","format":"uuid"},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"visibility":{"title":"Visibility","type":"string","enum":["user","organization"]},"is_temporary":{"title":"Is temporary","type":"boolean"},"created_at":{"title":"Created at","type":"string","format":"date-time"},"updated_at":{"title":"Updated at","type":"string","format":"date-time"}}},"FilterJson":{"type":"object","properties":{"filter_name":{"title":"Filter name","type":"string","minLength":0},"filter_icon":{"title":"Filter icon","type":"string","minLength":0},"filter_description":{"title":"Filter description","type":"string","minLength":0},"actors":{"title":"Actors","type":"object","additionalProperties":{"type":"string"}},"data_sources":{"title":"Data sources","type":"object","additionalProperties":{"type":"string"}},"event_types":{"title":"Event types","type":"object","additionalProperties":{"type":"string"}},"locations":{"title":"Locations","type":"object","additionalProperties":{"type":"string"}},"labels":{"$ref":"#/components/schemas/FilterJsonLabel"},"date_range":{"title":"Date range","type":"object","additionalProperties":{"type":"string"}}}},"FilterJsonLabel":{"type":"object","properties":{"Application":{"title":"Application","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Context":{"title":"Context","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Access":{"title":"Access","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}}}},"UserFilterCreate":{"required":["filter_json"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"user":{"title":"User","type":"string","format":"uuid","readOnly":true},"last_user_editor":{"title":"Last user editor","type":"string","format":"uuid","readOnly":true},"analyst":{"type":"integer","title":"Analyst"},"last_analyst_editor":{"type":"integer","title":"Last analyst editor"},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"organization":{"type":"integer","title":"Organization"},"visibility":{"title":"Visibility","type":"string","enum":["user","organization"]},"is_temporary":{"title":"Is temporary","type":"boolean"},"created_at":{"title":"Created at","type":"string","format":"date-time","readOnly":true},"updated_at":{"title":"Updated at","type":"string","format":"date-time","readOnly":true}}}}},"paths":{"/core/filters/user/":{"post":{"operationId":"core_filters_user_create","description":"","responses":{"201":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserFilterSwagger"}}}}},"tags":["core"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserFilterCreate"}}},"required":true}}}}}
```

## GET /core/filters/user/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"UserFilterSwagger":{"required":["uuid","user","last_user_editor","filter_json","visibility","is_temporary","created_at","updated_at"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid"},"user":{"title":"User","type":"string","format":"uuid"},"last_user_editor":{"title":"Last user editor","type":"string","format":"uuid"},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"visibility":{"title":"Visibility","type":"string","enum":["user","organization"]},"is_temporary":{"title":"Is temporary","type":"boolean"},"created_at":{"title":"Created at","type":"string","format":"date-time"},"updated_at":{"title":"Updated at","type":"string","format":"date-time"}}},"FilterJson":{"type":"object","properties":{"filter_name":{"title":"Filter name","type":"string","minLength":0},"filter_icon":{"title":"Filter icon","type":"string","minLength":0},"filter_description":{"title":"Filter description","type":"string","minLength":0},"actors":{"title":"Actors","type":"object","additionalProperties":{"type":"string"}},"data_sources":{"title":"Data sources","type":"object","additionalProperties":{"type":"string"}},"event_types":{"title":"Event types","type":"object","additionalProperties":{"type":"string"}},"locations":{"title":"Locations","type":"object","additionalProperties":{"type":"string"}},"labels":{"$ref":"#/components/schemas/FilterJsonLabel"},"date_range":{"title":"Date range","type":"object","additionalProperties":{"type":"string"}}}},"FilterJsonLabel":{"type":"object","properties":{"Application":{"title":"Application","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Context":{"title":"Context","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Access":{"title":"Access","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}}}}}},"paths":{"/core/filters/user/{uuid}/":{"get":{"operationId":"core_filters_user_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserFilterSwagger"}}}}},"tags":["core"]}}}}
```

## PUT /core/filters/user/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"UserFilter":{"required":["filter_json","visibility"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"user":{"title":"User","type":"string","format":"uuid","readOnly":true},"last_user_editor":{"title":"Last user editor","type":"string","format":"uuid","readOnly":true},"analyst":{"type":"integer","title":"Analyst"},"last_analyst_editor":{"type":"integer","title":"Last analyst editor"},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"organization":{"type":"integer","title":"Organization"},"visibility":{"title":"Visibility","type":"string","enum":["user","organization"]},"is_temporary":{"title":"Is temporary","type":"boolean"},"created_at":{"title":"Created at","type":"string","format":"date-time","readOnly":true},"updated_at":{"title":"Updated at","type":"string","format":"date-time","readOnly":true}}},"FilterJson":{"type":"object","properties":{"filter_name":{"title":"Filter name","type":"string","minLength":0},"filter_icon":{"title":"Filter icon","type":"string","minLength":0},"filter_description":{"title":"Filter description","type":"string","minLength":0},"actors":{"title":"Actors","type":"object","additionalProperties":{"type":"string"}},"data_sources":{"title":"Data sources","type":"object","additionalProperties":{"type":"string"}},"event_types":{"title":"Event types","type":"object","additionalProperties":{"type":"string"}},"locations":{"title":"Locations","type":"object","additionalProperties":{"type":"string"}},"labels":{"$ref":"#/components/schemas/FilterJsonLabel"},"date_range":{"title":"Date range","type":"object","additionalProperties":{"type":"string"}}}},"FilterJsonLabel":{"type":"object","properties":{"Application":{"title":"Application","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Context":{"title":"Context","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Access":{"title":"Access","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}}}}}},"paths":{"/core/filters/user/{uuid}/":{"put":{"operationId":"core_filters_user_update","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserFilter"}}}}},"tags":["core"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserFilter"}}},"required":true}}}}}
```

## DELETE /core/filters/user/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}}},"paths":{"/core/filters/user/{uuid}/":{"delete":{"operationId":"core_filters_user_delete","description":"","responses":{"204":{"description":""}},"tags":["core"]}}}}
```

## PATCH /core/filters/user/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"UserFilterSwagger":{"required":["uuid","user","last_user_editor","filter_json","visibility","is_temporary","created_at","updated_at"],"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid"},"user":{"title":"User","type":"string","format":"uuid"},"last_user_editor":{"title":"Last user editor","type":"string","format":"uuid"},"filter_json":{"$ref":"#/components/schemas/FilterJson"},"visibility":{"title":"Visibility","type":"string","enum":["user","organization"]},"is_temporary":{"title":"Is temporary","type":"boolean"},"created_at":{"title":"Created at","type":"string","format":"date-time"},"updated_at":{"title":"Updated at","type":"string","format":"date-time"}}},"FilterJson":{"type":"object","properties":{"filter_name":{"title":"Filter name","type":"string","minLength":0},"filter_icon":{"title":"Filter icon","type":"string","minLength":0},"filter_description":{"title":"Filter description","type":"string","minLength":0},"actors":{"title":"Actors","type":"object","additionalProperties":{"type":"string"}},"data_sources":{"title":"Data sources","type":"object","additionalProperties":{"type":"string"}},"event_types":{"title":"Event types","type":"object","additionalProperties":{"type":"string"}},"locations":{"title":"Locations","type":"object","additionalProperties":{"type":"string"}},"labels":{"$ref":"#/components/schemas/FilterJsonLabel"},"date_range":{"title":"Date range","type":"object","additionalProperties":{"type":"string"}}}},"FilterJsonLabel":{"type":"object","properties":{"Application":{"title":"Application","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Context":{"title":"Context","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}},"Access":{"title":"Access","type":"object","additionalProperties":{"type":"string","enum":["with","not"]}}}},"UserFilterPatchSwagger":{"required":["filter_json"],"type":"object","properties":{"filter_json":{"$ref":"#/components/schemas/FilterJson"},"visibility":{"title":"Visibility","type":"string","enum":["user","organization"]}}}}},"paths":{"/core/filters/user/{uuid}/":{"patch":{"operationId":"core_filters_user_partial_update","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserFilterSwagger"}}}}},"tags":["core"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UserFilterPatchSwagger"}}},"required":true}}}}}
```

## GET /core/identity/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Identity":{"type":"object","properties":{"id":{"title":"ID","type":"integer","readOnly":true},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"given_name":{"title":"Given name","type":"string","maxLength":255},"family_name":{"title":"Family name","type":"string","maxLength":255},"identifier":{"title":"Identifier","type":"string","format":"email","readOnly":true,"minLength":1},"data_source":{"title":"Data source","type":"integer"}}}}},"paths":{"/core/identity/":{"get":{"operationId":"core_identity_list","description":"","parameters":[{"name":"uuid","in":"query","description":"uuid","required":false,"type":"string"},{"name":"uuids","in":"query","description":"Filter by identity UUIDs (comma-separated)","type":"string"},{"name":"search","in":"query","description":"A search term.","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Identity"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/identity/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Identity":{"type":"object","properties":{"id":{"title":"ID","type":"integer","readOnly":true},"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"given_name":{"title":"Given name","type":"string","maxLength":255},"family_name":{"title":"Family name","type":"string","maxLength":255},"identifier":{"title":"Identifier","type":"string","format":"email","readOnly":true,"minLength":1},"data_source":{"title":"Data source","type":"integer"}}}}},"paths":{"/core/identity/{uuid}/":{"get":{"operationId":"core_identity_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Identity"}}}}},"tags":["core"]}}}}
```

## GET /core/locations/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Location":{"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"ip_address":{"title":"Ip address","type":"string","readOnly":true,"minLength":1},"city":{"title":"City","type":"string","readOnly":true,"minLength":1},"region":{"title":"Region","type":"string","readOnly":true,"minLength":1},"country":{"title":"Country","type":"string","readOnly":true,"minLength":1},"country_code":{"title":"Country code","type":"string","readOnly":true,"minLength":1},"latitude":{"title":"Latitude","type":"number","readOnly":true},"longitude":{"title":"Longitude","type":"number","readOnly":true},"category":{"title":"Category","type":"string","enum":["Unknown","Malicious","Trusted"],"readOnly":true}}}}},"paths":{"/core/locations/":{"get":{"operationId":"core_locations_list","description":"","parameters":[{"name":"uuid","in":"query","description":"uuid","required":false,"type":"string"},{"name":"uuids","in":"query","description":"Filter by location UUIDs (comma-separated)","type":"string"},{"name":"locations","in":"query","description":"Filter by location UUIDs (comma-separated, alternative to uuids param)","type":"string"},{"name":"search","in":"query","description":"A search term.","required":false,"type":"string"},{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"},{"name":"page_size","in":"query","description":"Number of results to return per page.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/Location"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/locations/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Location":{"type":"object","properties":{"uuid":{"title":"Uuid","type":"string","format":"uuid","readOnly":true},"ip_address":{"title":"Ip address","type":"string","readOnly":true,"minLength":1},"city":{"title":"City","type":"string","readOnly":true,"minLength":1},"region":{"title":"Region","type":"string","readOnly":true,"minLength":1},"country":{"title":"Country","type":"string","readOnly":true,"minLength":1},"country_code":{"title":"Country code","type":"string","readOnly":true,"minLength":1},"latitude":{"title":"Latitude","type":"number","readOnly":true},"longitude":{"title":"Longitude","type":"number","readOnly":true},"category":{"title":"Category","type":"string","enum":["Unknown","Malicious","Trusted"],"readOnly":true}}}}},"paths":{"/core/locations/{uuid}/":{"get":{"operationId":"core_locations_read","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Location"}}}}},"tags":["core"]}}}}
```

## PATCH /core/locations/{uuid}/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"LocationPatch":{"required":["category"],"type":"object","properties":{"category":{"title":"Category","type":"string","enum":["Unknown","Malicious","Trusted"]}}}}},"paths":{"/core/locations/{uuid}/":{"patch":{"operationId":"core_locations_partial_update","description":"","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LocationPatch"}}}}},"tags":["core"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/LocationPatch"}}},"required":true}}}}}
```

## GET /core/queries/user/

>

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"UserQuery":{"required":["filter_json"],"type":"object","properties":{"filter":{"title":"Filter","type":"string","readOnly":true},"filter_json":{"title":"Filter json","type":"object","additionalProperties":true},"is_temporary":{"title":"Is temporary","type":"boolean"},"executed_at":{"title":"Executed at","type":"string","format":"date-time","readOnly":true}}}}},"paths":{"/core/queries/user/":{"get":{"operationId":"core_queries_user_list","description":"","parameters":[{"name":"page","in":"query","description":"A page number within the paginated result set.","required":false,"type":"integer"}],"responses":{"200":{"description":"","content":{"application/json":{"schema":{"required":["count","results"],"type":"object","properties":{"count":{"type":"integer"},"next":{"type":"string","format":"uri"},"previous":{"type":"string","format":"uri"},"results":{"type":"array","items":{"$ref":"#/components/schemas/UserQuery"}}}}}}}},"tags":["core"]}}}}
```

## GET /core/version/

> A view for providing the current build version.

```json
{"openapi":"3.1.1","info":{"title":"Turngate API","version":"v1"},"servers":[{"url":"https://api.turngate.io/"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"apiKey","name":"Authorization","in":"header"}},"schemas":{"Version":{"required":["version"],"type":"object","properties":{"version":{"title":"Version","type":"string","minLength":1}}}}},"paths":{"/core/version/":{"get":{"operationId":"core_version_list","description":"A view for providing the current build version.","responses":{"200":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Version"}}}}},"tags":["core"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://support.turngate.io/api-documentation/core.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
