Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://api.secoda.co
https://eapi.secoda.co
https://aapi.secoda.co
https://{customer_domain}.secoda.co/api/v1
/dashboard/charts
Retrieve a list of charts with optional filtering by integration_id, parent_id (the dashboard the chart belongs to), and title.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| integration_id | query | optional | string | Filter by integration ID |
| parent_id | query | optional | string | Filter by parent ID |
| title | query | optional | string | Filter by title |
GET /dashboard/charts
/dashboard/charts/{chart_id}
Retrieve a specific chart by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| chart_id | path | required | string | The ID of the chart to retrieve. |
GET /dashboard/charts/{chart_id}
/collection/collections
This endpoint allows you to retrieve a list of collections. You can optionally filter the collections by title using the "title" query parameter.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| title | query | optional | string | Filter collections by title (optional) |
GET /collection/collections
/collection/collections/{collection_id}
This endpoint allows you to retrieve a collection by its unique identifier (collection_id).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| collection_id | path | required | string | The unique identifier of the collection |
GET /collection/collections/{collection_id}
/table/columns
This endpoint allows you to retrieve a list of all columns in the workspace. Optional filters for integration_id, title, and parent_id (the table or parent column) are available.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| integration_id | query | optional | string | Optional. Filter columns by integration identifier. |
| parent_id | query | optional | string | Optional. Filter columns by parent identifier. This could be the ID of the table or of the parent column in the case of nested columns. |
| title | query | optional | string | Optional. Filter columns by title of the column. |
| table_title | query | optional | string | Optional. Filter columns by title of the table that the columns belong to. If several integrations have the same naming of tables, it is recommended to combine this with the `integration_id`. |
GET /table/columns
/table/columns/{column_id}
This endpoint allows you to retrieve information about a specific column by its identifier.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| column_id | path | required | string | Identifier of the column to retrieve. |
GET /table/columns/{column_id}
/dashboard/groups
List all the dashboard groups in the workspace. Optional filter by title.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| title | query | optional | string | Filter groups by title |
GET /dashboard/groups
/dashboard/groups/{group_id}
Retrieve the information of a specific dashboard group.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| group_id | path | required | string | ID of the dashboard group to retrieve |
GET /dashboard/groups/{group_id}
/dashboard/dashboards
Retrieve a list of dashboards with optional filtering using the integration_id, parent_id (the dashboard group), and title.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| integration_id | query | optional | string | Filter by integration ID |
| parent_id | query | optional | string | Filter by parent ID |
| title | query | optional | string | Filter by title |
GET /dashboard/dashboards
/dashboard/dashboards/{dashboard_id}
Retrieve a specific dashboard by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| dashboard_id | path | required | string | The ID of the dashboard to retrieve. |
GET /dashboard/dashboards/{dashboard_id}
/table/databases
Use this endpoint to see all the databases active in your workspace.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| title | query | optional | string | The title of the database to search for. |
GET /table/databases
/table/databases/{database_id}
Use this endpoint for retrieving a specific database by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| database_id | path | required | string | The unique identifier of the database to retrieve. |
GET /table/databases/{database_id}
/document
This endpoint allows you to retrieve a list of documents. You can optionally filter the documents by title using the "title" query parameter.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| title | query | optional | string | Filter documents by title (optional) |
GET /document
/document/{document_id}
This endpoint allows you to retrieve a document by its unique identifier (document_id).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| document_id | path | required | string | The unique identifier of the document |
GET /document/{document_id}
/event/category
List all the event categories in the workspace. Optional filter by title.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| title | query | optional | string | Filter event categories by title |
GET /event/category
/event/category/{event_category_id}
Retrieve the information of a specific event category.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| event_category_id | path | required | string | ID of the event category to retrieve |
GET /event/category/{event_category_id}
/event/event_properties
Retrieve a list of events with optional filtering using the integration_id, parent_id (the event), and title.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| integration_id | query | optional | string | Filter by integration ID |
| parent_id | query | optional | string | Filter by parent ID |
| title | query | optional | string | Filter by title |
GET /event/event_properties
/event/event_properties/{event_property_id}
Retrieve a specific event property by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| event_property_id | path | required | string | The ID of the event property to retrieve. |
GET /event/event_properties/{event_property_id}
/event/events
Retrieve a list of events with optional filtering using the integration_id, parent_id (the event category), and title.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| integration_id | query | optional | string | Filter by integration ID |
| parent_id | query | optional | string | Filter by parent ID |
| title | query | optional | string | Filter by title |
GET /event/events
/event/events/{event_id}
Retrieve a specific event by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| event_id | path | required | string | The ID of the event to retrieve. |
GET /event/events/{event_id}
/integration/integrations
This endpoint will return all the integrations active in your workspace.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| type | query | optional | string | The type of integrations to filter. |
GET /integration/integrations
/integration/integrations/{integration_id}
This endpoint will provide the details of an individual integration.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| integration_id | path | required | string | The ID of the integration to retrieve. |
GET /integration/integrations/{integration_id}
/lineage/manual
Get lineage objects with optional filtering by source and destination entity.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| from_entity__in | query | optional | string | |
| to_entity__in | query | optional | string |
GET /lineage/manual
/lineage/manual/{lineage_id}
Get a lineage object by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| lineage_id | path | required | string | The ID of the lineage entry to retrieve. |
GET /lineage/manual/{lineage_id}
/metric/metrics
Retrieve a list of metrics.
GET /metric/metrics
/metric/metrics/{metric_id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| metric_id | path | required | string |
GET /metric/metrics/{metric_id}
/monitors/incident/{incident_id}
This endpoint allows you to retrieve an incident by it's ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| incident_id | path | required | string | The unique identifier of the incident |
GET /monitors/incident/{incident_id}
/monitors/incidents
This endpoint allows you to retrieve a list of all the incidents in your workspace.
GET /monitors/incidents
/monitors/measurements
This endpoint allows you to retrieve a list of all the measurements in your workspace filtered by a Monitor or Incident. A query param of either the Monitor ID or Incident ID is required. If using monitoring in automatic mode, thresholds will take some time to populate as the system learnins the appropriate range for your data.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| monitor | query | optional | string | The unique identifier of the monitor |
| incident_id | query | optional | string | The unique identifier of the incident |
GET /monitors/measurements
/monitors/monitors
This endpoint allows you to retrieve a list of all the monitors in your workspace.
GET /monitors/monitors
/monitors/monitors/{monitor_id}
This endpoint allows you to retrieve a monitors by it's ID. You can find the ID in the URL of the monitor when accessing it from the Secoda UI.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| monitor_id | path | required | string | The unique identifier of the monitor |
GET /monitors/monitors/{monitor_id}
/query/queries
This endpoint allows you to retrieve a list of all queries in the workspace. No filtering is available at this time.
GET /query/queries
/query/queries/{query_id}
This endpoint allows you to retrieve a query by its unique identifier (query_id).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| query_id | path | required | string | The unique identifier of the query |
GET /query/queries/{query_id}
/question/questions
This endpoint allows you to retrieve a list of questions.
GET /question/questions
/question/questions/{question_id}
This endpoint allows you to retrieve a question by its unique identifier (question_id).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| question_id | path | required | string | The unique identifier of the question |
GET /question/questions/{question_id}
/question/replies
This endpoint allows you to retrieve a list of replies. You can optionally filter the replies by question_id using the "question_id" query parameter.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| question_id | query | optional | string | Filter replies by question_id (optional) |
GET /question/replies
/question/replies/{reply_id}
This endpoint allows you to retrieve a reply by its unique identifier (reply_id).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| reply_id | path | required | string | The unique identifier of the reply |
GET /question/replies/{reply_id}
/table/schemas
Endpoint for retrieving a list of schemas with optional filtering by parent schema and title.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| parent | query | optional | string | The ID of the parent database to filter by. |
| title | query | optional | string | The title of the schema to filter by. |
GET /table/schemas
/table/schemas/{schema_id}
Retrieve schema details by its unique ID.
GET /table/schemas/{schema_id}
/table/tables
This endpoint retrieves a list of tables, with optional filters for the integration, the schema, and the title of the table resource.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| integration_id | query | optional | string | Integration ID |
| parent_id | query | optional | string | ID of the schema |
| title | query | optional | string | Title of the table |
GET /table/tables
/table/tables/{table_id}
This endpoint retrieves a specific table by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| table_id | path | required | string | ID of the table to retrieve |
GET /table/tables/{table_id}
/tag
Get a list of tags. No filtering is currently available.
GET /tag
/tag/{tag_id}
Get a tag by its ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| tag_id | path | required | string | The ID of the tag to retrieve. |
GET /tag/{tag_id}
/auth/teams
Get a list of teams in the workspace.
GET /auth/teams
/auth/teams/{id}
Get a team by their ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID of the team to retrieve. |
GET /auth/teams/{id}
/dictionary/terms
This endpoint allows you to retrieve a list of dictionary terms with optional filtering by name of the term (title).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| title | query | optional | string | Filter terms by title (optional) |
GET /dictionary/terms
/dictionary/terms/{term_id}
This endpoint allows you to retrieve a single dictionary term by its unique identifier (term_id).
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| term_id | path | required | string | The unique identifier of the dictionary term |
GET /dictionary/terms/{term_id}
/auth/group
Get a list of user groups in the workspace.
GET /auth/group
/auth/group/{id}
Get a user group by their ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID of the group to retrieve. |
GET /auth/group/{id}
/user
Get a list of users.
GET /user
/user/{id}
Get a user by their ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The ID of the user to retrieve. |
GET /user/{id}
BasePatchRequest
{
"type": "object",
"properties": {
"pii": {
"type": "boolean",
"example": false,
"description": "Indicates whether the resource contains personally identifiable information (PII). Values can be - <ul><li> True <li> False</ul>"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"04654d61-4f64-4f08-b697-3915b5137c49",
"429693a2-a5e7-4525-b413-ece5e96bc5b3"
],
"description": "A list of tag IDs associated with the resources."
},
"teams": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"e8ac09ed-e51e-4e61-8eaf-59942c98c260",
"cca810f1-11c1-4117-bc23-20ae8020897f"
],
"description": "A list of team IDs that the resource belongs to."
},
"owners": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"33733f42-8ff7-460b-9e20-50a2133d3bb0",
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "A list of owner user IDs for the resource."
},
"verified": {
"type": "boolean",
"example": true,
"description": "Indicates whether the table has been set as verified. Values can be - <ul><li> True <li> False</ul>"
},
"published": {
"type": "boolean",
"example": true,
"description": "Indicates if the resource is visible to viewers or not. Values can be - <ul><li> True <li> False</ul>"
},
"definition": {
"type": "string",
"example": "\\n# Castae illa\\n\\n## Finemque aequore\\n\\nLorem markdownum motus",
"description": "Mark down documentation to be added to the resource."
},
"properties": {
"type": "object",
"properties": {
"custom": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CustomProperties"
}
}
},
"description": "A list of custom properties to add to the resource."
},
"collections": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
],
"description": "A list of collection IDs the resource belongs to."
},
"description": {
"type": "string",
"example": "This is a description for a sample table.",
"description": "A description of the resource."
},
"subscribers": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "A list of the added user IDs that have been subscribed to the resource. Anyone subscribed will be notified of any changes."
}
}
}
BaseResourceRequest
{
"type": "object",
"properties": {
"pii": {
"type": "boolean",
"example": false,
"description": "Indicates whether the resource contains personally identifiable information (PII). Values can be - <ul><li> True <li> False</ul>"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"04654d61-4f64-4f08-b697-3915b5137c49",
"429693a2-a5e7-4525-b413-ece5e96bc5b3"
],
"description": "A list of tag IDs associated with the resources."
},
"teams": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"e8ac09ed-e51e-4e61-8eaf-59942c98c260",
"cca810f1-11c1-4117-bc23-20ae8020897f"
],
"description": "A list of team IDs that the resource belongs to."
},
"title": {
"type": "string",
"example": "Sample Title",
"description": "The title of the resource."
},
"owners": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"33733f42-8ff7-460b-9e20-50a2133d3bb0",
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "A list of owner user IDs for the resource."
},
"parent": {
"type": "string",
"example": "df2c0597-13d9-4159-bb6d-00b3f54235dc",
"description": "The ID of the parent resource. Please keep the resource heirarchy in mind when setting the parent."
},
"verified": {
"type": "boolean",
"example": true,
"description": "Indicates whether the resource has been set as verified. Values can be - <ul><li> True <li> False</ul>"
},
"published": {
"type": "boolean",
"example": true,
"description": "Indicates if the resource is visible to viewers or not. Values can be - <ul><li> True <li> False</ul>"
},
"definition": {
"type": "string",
"example": "\\n# Castae illa\\n\\n## Finemque aequore\\n\\nLorem markdownum motus",
"description": "Mark down documentation to be added to the resource."
},
"properties": {
"type": "object",
"properties": {
"custom": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CustomProperties"
}
}
},
"description": "A list of custom properties associated with the resource."
},
"collections": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
],
"description": "A list of collection IDs the resource belongs to."
},
"description": {
"type": "string",
"example": "This is a description for a sample table.",
"description": "A description of the resource."
},
"integration": {
"type": "string",
"example": "ca529385-fbc9-4934-afae-e372affe795b",
"description": "The integration ID associated with the resource, if one exists."
},
"subscribers": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "A list of user IDs that have been subscribed to the resource. Anyone subscribed will be notified of any changes."
}
}
}
BaseResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "d935a76c-2125-4c30-9389-ef42fa7e23bb",
"description": "The unique identifier of the resource."
},
"pii": {
"type": "boolean",
"example": true,
"description": "Indicates if the resource contains Personally Identifiable Information (PII). Values can be - <ul> <li> True <li> False</ul>"
},
"url": {
"type": "string",
"example": "https://example.com/sample-table",
"description": "The URL associated with the resource."
},
"icon": {
"type": "string",
"example": "icon-url.png",
"description": "The icon associated with the resource."
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"f7466f09-33bf-4ac2-9ff2-165fb4b8bdc2",
"a17f4ed0-0e5a-45a9-92c0-6c93c0b8242c"
],
"description": "List of tag IDs added to the resource."
},
"stale": {
"type": "boolean",
"example": false,
"description": "Indicates if the resource is stale. This means this resource no longer exists in the source, as of the last extraction."
},
"teams": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"8680f886-97d2-4f4e-92c8-c80b46a3017d"
],
"description": "List of team IDs associated with the resource."
},
"title": {
"type": "string",
"example": "Sample Table",
"description": "The title of the resource."
},
"owners": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"429693a2-a5e7-4525-b413-ece5e96bc5b3",
"f71585fa-251c-4102-8d81-c97c57c8d435"
],
"description": "List of owner IDs for the resource."
},
"parent": {
"type": "string",
"example": "df2c0597-13d9-4159-bb6d-00b3f54235dc",
"description": "The parent resource's ID."
},
"sources": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"8a3af948-026c-45d6-983d-3873f6156f86"
],
"description": "List of other integrations associated with the resource. For example, if a description is pulled in from DBT for a Snowflake table, this field will reference DBT."
},
"archived": {
"type": "boolean",
"example": false,
"description": "Indicates if the resource is deleted."
},
"verified": {
"type": "boolean",
"example": false,
"description": "Indicates if the resource is verified. Values can be - <ul><li> True <li> False</ul>"
},
"published": {
"type": "boolean",
"example": false,
"description": "Indicates if the resource is published and can be seen by Viewers."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2023-08-16T23:12:53.245493Z",
"description": "The timestamp when the resource was created in Secoda in UTC format."
},
"definition": {
"type": "string",
"format": "markdown",
"description": "The documentation of the resource, written in Mark Down format."
},
"properties": {
"type": "object",
"properties": {
"custom": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CustomProperties"
}
}
},
"description": "A list of custom properties associated with the resource."
},
"title_full": {
"type": "string",
"example": "Sample Database.Sample Schema.Sample Table",
"description": "The full title of the resource. This is a generated field"
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-08-16T23:12:53.245507Z",
"description": "The timestamp when the resource was last updated in Secoda in UTC format."
},
"collections": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"e8ac09ed-e51e-4e61-8eaf-59942c98c260"
],
"description": "List of IDs representing the collection(s) that the resource has been added to."
},
"description": {
"type": "string",
"example": "This is a description for a sample table.",
"description": "A description of the resource."
},
"entity_type": {
"type": "string",
"example": "table",
"description": "The type of resource in Secoda."
},
"integration": {
"type": "string",
"example": "ca529385-fbc9-4934-afae-e372affe795b",
"description": "The integration ID associated with the resource."
},
"native_type": {
"type": "string",
"example": "Dataset",
"description": "The native type of the resource as it is referred to in the integration."
},
"subscribers": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"33733f42-8ff7-460b-9e20-50a2133d3bb0",
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "List of User IDs who subscribe to the resource."
},
"title_cased": {
"type": "string",
"example": "sampleTable",
"description": "The title in a cased format."
},
"total_usage": {
"type": "integer",
"example": 483,
"description": "The total usage count for the resource."
},
"multiplayers": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"429693a2-a5e7-4525-b413-ece5e96bc5b3",
"f71585fa-251c-4102-8d81-c97c57c8d435"
],
"description": "List of members who have opened or worked with the resource recently."
},
"workspace_id": {
"type": "string",
"example": "f71585fa-251c-4102-8d81-c97c57c8d435",
"description": "The ID of the workspace."
},
"bookmarked_by": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"d935a76c-2125-4c30-9389-ef42fa7e23bb",
"33733f42-8ff7-460b-9e20-50a2133d3bb0",
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "List of member IDs that have bookmarked the resource."
},
"owners_groups": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
],
"description": "List of owner group IDs for the resource."
},
"children_count": {
"type": "integer",
"example": 2,
"description": "The count of children entities of the resource."
},
"databuilder_id": {
"type": "string",
"example": "b818280a-ae1a-43bf-90d3-dbccf812b025.x68605bd2",
"description": "The databuilder ID associated with the resource. This is a generated field."
},
"external_usage": {
"type": "integer",
"example": 38,
"description": "The external usage count for the resource extracted from the source source. This is what is used to calculate Popularity of a resource."
},
"external_users": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"33733f42-8ff7-460b-9e20-50a2133d3bb0"
],
"description": "List of external user IDs for the resource extracted from the integration."
},
"internal_usage": {
"type": "integer",
"example": 3,
"description": "The internal usage count for the resource."
},
"internal_users": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"04654d61-4f64-4f08-b697-3915b5137c49"
],
"description": "List of internal user IDs for the resource."
},
"search_metadata": {
"type": "object",
"example": {
"type": "table",
"schema": "secoda-glue",
"cluster": "glue",
"database": "awsdatacatalog"
},
"description": "Metadata related to indexing the resource for optimizing search."
},
"definition_version": {
"type": "integer",
"example": 1,
"description": "The version of the resource's documentation."
},
"external_updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-08-16T23:12:53.245507Z",
"description": "The timestamp of the last update for the resource in the source."
},
"current_user_permissions": {
"type": "object",
"properties": {
"read": {
"type": "boolean",
"example": true
},
"write": {
"type": "boolean",
"example": true
},
"execute": {
"type": "boolean",
"example": false
}
},
"description": "Permissions of the current user for this resource."
},
"multiplayer_last_modified": {
"type": "string",
"format": "date-time",
"example": "2023-08-16T23:12:53.245507Z",
"description": "The timestamp when the multiplayer was last modified in UTC format."
},
"multiplayer_last_modified_by": {
"type": "string",
"example": "429693a2-a5e7-4525-b413-ece5e96bc5b3",
"description": "The last member who modified this resource."
}
}
}
ChartResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"product": {
"type": "string",
"example": "tableau",
"description": "Indicates the name of the integration."
}
}
}
]
}
ChartsListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ChartResponse"
}
}
}
}
]
}
CollectionResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"pinned": {
"type": "boolean",
"example": false,
"description": "Refers to whether the resource has been pinned by user."
},
"resource_count": {
"type": "integer",
"example": 0,
"description": "Indicates how many resources are part of the collection."
}
}
}
]
}
CollectionsListCollectionsByTitleResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/CollectionResponse"
}
}
}
}
]
}
ColumnResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"is_pk": {
"type": "boolean",
"example": true,
"description": "Whether the column is a primary key."
},
"hidden": {
"type": "boolean",
"description": "This is a deprecated field."
},
"data_type": {
"type": "string",
"example": "integer",
"description": "Indicates the data type of the column."
},
"sort_order": {
"type": "integer",
"example": 3,
"description": "Indicates the order the column should be in amongst the other columns"
},
"table_title": {
"type": "string",
"example": "customers",
"description": "Indicates the name of the table that the column belongs to."
},
"table_schema": {
"type": "string",
"example": "secoda-glue",
"description": "Indicates the name of the schema that the column belongs to."
},
"table_cluster": {
"type": "string",
"description": "This is a deprecated field."
},
"table_database": {
"type": "string",
"example": "aws-datacatalog",
"description": "Indicates the name of the database that the column belongs to."
}
}
}
]
}
ColumnsGetListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ColumnResponse"
}
}
}
}
]
}
CustomProperties
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Custom Property",
"description": "The name of the custom property."
},
"type": {
"enum": [
"string",
"number",
"multiselect",
"checkbox",
"user",
"resource",
"date"
],
"type": "string",
"example": "string",
"description": "The type of the custom property."
},
"order": {
"type": "integer",
"example": 1,
"description": "The order of the custom property."
},
"value": {
"type": "string",
"example": "TestValue",
"description": "The value of the custom property."
}
}
}
DashboardGroupResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"visible": {
"type": "boolean",
"description": "This is a deprecated field."
}
}
}
]
}
DashboardGroupsListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DashboardGroupResponse"
}
}
}
}
]
}
DashboardResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"group": {
"type": "string",
"example": "Samples",
"description": "Indicates the name of the group."
},
"product": {
"type": "string",
"example": "tableau",
"description": "Indicates the name of the integration."
}
}
}
]
}
DashboardsListWithFilterResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DashboardResponse"
}
}
}
}
]
}
DatabasesListAllActiveResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BaseResponse"
}
}
}
}
]
}
DocumentResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"parent_id": {
"type": "string",
"example": "1f5c76c3-e7a3-406f-b51e-7ba220244f1b",
"description": "Indicates the UUID of the parent of the document, which is always another document."
},
"base_entity_id": {
"type": "string",
"example": "1f5c76c3-e7a3-406f-b51e-7ba220244f1b",
"description": "Indicates the UUID of the highest level ancestor of the document."
}
}
}
]
}
DocumentsListDocumentsByTitleResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/DocumentResponse"
}
}
}
}
]
}
EventCategoriesCreateNewCategoryRequest
{
"type": "object",
"properties": {
"teams": {
"type": "array",
"items": {
"description": "WARNING: Missing items property in array schema. Missing items property has been filled with this AnyType schema."
},
"example": [
"e8ac09ede51e4e618eaf59942c98c260"
],
"description": "The teams the category belongs to."
},
"title": {
"type": "string",
"example": "Landing Page",
"description": "The name of the category."
},
"integration": {
"type": "string",
"description": "The UUID of the associated integration."
}
}
}
EventCategoriesListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BaseResponse"
}
}
}
}
]
}
EventPropertiesListEventPropertiesResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/EventPropertyResponse"
}
}
}
}
]
}
EventPropertyResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"enum": {
"type": "string",
"example": "red, green, yellow",
"description": "If the property type is enum, this field indicates the various enum values."
},
"type": {
"type": "string",
"example": "enum",
"description": "The type of property associated with the event. Examples include string, enum, integer, etc."
},
"is_required": {
"type": "boolean",
"description": "Set this to true if the property is required."
}
}
}
]
}
EventsListEventsByFilteringResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BaseResponse"
}
}
}
}
]
}
IncidentResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "6ac1bff0-b85f-47e8-84fb-8dca29614785",
"description": "The UUID of the incident."
},
"name": {
"type": "string",
"example": "Unique percentage incident",
"description": "The name of the incident, which indicates the type of metric set for the monitor."
},
"value": {
"type": "number",
"example": 86.4081806,
"description": "The value of the measurement at the time of incident creation."
},
"status": {
"enum": [
"acknowledged",
"expired",
"resolved",
"active"
],
"type": "string",
"example": "active",
"description": "The status of the incident."
},
"target": {
"type": "string",
"example": "c332407c-cfa4-47c9-8d83-31df72b30c20",
"description": "The UUID of the target resource being monitored for anomolies."
},
"actions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"enum": [
"notification_initial",
"notification_reminder",
"notification_resolved",
"acknowledged",
"resolved"
],
"type": "string"
},
"user_id": {
"type": "string"
},
"user_name": {
"type": "string"
}
}
},
"example": [
{
"type": "notification_initial",
"user_id": "e1250ab7-c4dc-4b9c-8963-105fa73d4ba5",
"user_name": "John Doe"
}
],
"description": "A list of actions associated with the incident."
},
"monitor": {
"type": "string",
"example": "b45bc798-763d-4ca5-863a-c12a882967c9",
"description": "The UUID of the associated monitor."
},
"summary": {
"type": "string",
"example": "Unique percentage incident",
"description": "An automatically generated short summary of the incident."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2023-10-10T19:20:44.975657Z",
"description": "When the incident was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-10-10T19:20:45.047238Z",
"description": "The last updated time for the incident."
},
"resolved_at": {
"type": "string",
"format": "date-time",
"description": "The time that the incident was resolved. Will be null if the incident has not yet been resolved."
},
"last_seen_at": {
"type": "string",
"format": "date-time",
"example": "2023-10-10T19:20:45.047056Z",
"description": "The most recent occurence about this incident."
},
"first_seen_at": {
"type": "string",
"format": "date-time",
"example": "2023-10-10T19:20:44.973632Z",
"description": "The first time this incident was observed."
},
"acknowledged_at": {
"type": "string",
"format": "date-time",
"example": "2023-11-10T19:20:44.975657Z",
"description": "The time that the incident was acknowledged at. This will be null if an incident hasn't been acknowledged yet."
},
"display_metadata": {
"type": "object",
"properties": {
"target": {
"type": "object",
"properties": {
"icon": {
"type": "string"
},
"label": {
"type": "string"
},
"entity_type": {
"type": "string",
"example": "column",
"description": "The type of resource the incident is associated with."
},
"integration": {
"type": "string",
"example": "0c6f8b1a-0c8f-4fdf-b95d-57da8f80ef82",
"description": "The UUID of the integration associated with the resource."
},
"integration_type": {
"type": "string",
"example": "snowflake",
"description": "The type of the integration that the resource is extracted from."
}
}
},
"monitor": {
"type": "object",
"properties": {
"label": {
"type": "string",
"example": "Unique percentage on extraction_completed_at"
}
}
}
},
"description": "This is an internally used object that provides additional information about the incident. This can be ignored by customers."
},
"last_notified_at": {
"type": "string",
"format": "date-time",
"example": "2023-10-10T19:20:45.047056Z",
"description": "The time of the last notification sent about this incident."
}
}
}
IntegrationResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "740904fe-e87d-44f8-8a91-b13631ff2812",
"description": "The ID of the created integration."
},
"name": {
"type": "string",
"example": "Tableau",
"description": "The name of the integration."
},
"type": {
"type": "string",
"example": "tableau",
"description": "The type of integration."
},
"teams": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"e8ac09ed-e51e-4e61-8eaf-59942c98c260"
],
"description": "List of team IDs associated with the integration."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2023-09-22T15:30:00Z",
"description": "The timestamp when the integration was created in Secoda in UTC format."
},
"properties": {
"type": "object",
"description": "Additional properties associated with the integration."
},
"ssh_tunnel": {
"type": "string",
"example": "None",
"description": "Information about SSH tunnel if one is set update."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-09-22T15:30:00Z",
"description": "The timestamp when the integration was last updated in Secoda UTC format."
},
"credentials": {
"type": "object",
"example": {},
"description": "The actual credentials of the integration will NOT be returned. Can you find the easter egg in this response parameter for native integrations?"
},
"workspace_id": {
"type": "string",
"example": "f71585fa-251c-4102-8d81-c97c57c8d435",
"description": "The ID of the associated workspace."
},
"execute_access": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"f71585fa-251c-4102-8d81-c97c57c8d435"
],
"description": "List of IDs that have the permission to trigger the extracton."
},
"preview_access_roles": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"Admin",
"Editor"
],
"description": "List of roles that are allowed to preview the data in the integration. <ul><li> Admin <li> Editor <li> Viewer </ul>"
},
"preview_access_users": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"f71585fa-251c-4102-8d81-c97c57c8d435"
],
"description": "List of users IDs with access to preview the data in the integration."
},
"preview_access_groups": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"f71585fa-251c-4102-8d81-c97c57c8d435"
],
"description": "List of users group IDs with access to preview the data in the integration."
},
"scheduled_extractions_hour": {
"type": "integer",
"example": 3,
"description": "Hour for scheduled extractions. Will be null for custom extractions."
},
"scheduled_extractions_last_run": {
"type": "string",
"example": "2023-10-15T09:45:00Z",
"description": "Last scheduled extraction run time (null in this response)."
},
"scheduled_extractions_next_run": {
"type": "string",
"format": "date-time",
"example": "2023-10-15T09:45:00Z",
"description": "Next scheduled extraction run time. Will be null for custom extractions."
},
"scheduled_extractions_frequency": {
"type": "integer",
"example": 7,
"description": "Frequency in days of scheduled extractions. Will be null for custom extractions."
}
}
}
IntegrationsCreateNewIntegrationRequest
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Sample Integration",
"description": "Represents the name of the integration data source or tool."
},
"type": {
"type": "string",
"example": "custom",
"description": "This indicates the type of integration (e.g., \"custom\")."
},
"teams": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"4c0e07c0-306a-4f4e-8b2b-6a8d7a33d251",
"a5423e2e-93b8-4b2c-af3c-7b7f0eefea14"
],
"description": "Indicates the teams associated with this integration. The access can be edited in the UI."
},
"credentials": {
"type": "object",
"example": {},
"description": "If you are adding a custom integration, the value of this parameter should always be empty {}."
}
}
}
IntegrationsListActiveResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IntegrationResponse"
}
}
}
}
]
}
IntegrationsUploadJsonlMetadataRequest
{
"type": "object",
"required": [
"resources_file"
],
"properties": {
"lineages_file": {
"type": "string",
"format": "binary",
"example": "path/to/your/lineages_file.jsonl",
"description": "The path to the your lineages file. The expected formatting of this file can be found [here](https://docs.secoda.co/integrations/custom-integration/import-your-resources/create-your-jsonl-file)."
},
"resources_file": {
"type": "string",
"format": "binary",
"example": "path/to/your/resources_file.jsonl",
"description": "The path to the your resources file. The expected formatting of this file can be found [here](https://docs.secoda.co/integrations/custom-integration/import-your-resources/create-your-jsonl-file)."
}
}
}
IntegrationsUploadMetadataCsvRequest
{
"type": "object",
"properties": {
"file": {
"type": "string",
"format": "binary",
"example": "path/to/your/file.csv",
"description": "The path to the CSV file containing your metadata and resources. The format of the CSV file can be found [here](https://docs.secoda.co/integrations/custom-integration/import-your-resources/create-your-csv)."
}
}
}
LineageCreateNewLineageManuallyRequest
{
"type": "object",
"properties": {
"direction": {
"type": "string",
"example": "DOWNSTREAM",
"description": "Represents the flow of the resource data. Values can be - <ul> <li> Upstream <li> Downstream</ul>"
},
"to_entity": {
"type": "string",
"example": "b500ef23-c9b4-4259-a87d-d77b8b588f06",
"description": "Points to the final destination of the resouce data through various transformations and entities."
},
"from_entity": {
"type": "string",
"example": "7879886b-9e0e-4d02-8b37-c7d3c496a587",
"description": "Indicates the source of the resource data."
}
}
}
LineageListObjectsWithFilteringResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/LineageResponse"
}
}
}
}
]
}
LineageResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "d935a76c-2125-4c30-9389-ef42fa7e23bb",
"description": "The unique identifier of the resource."
},
"direction": {
"enum": [
"UPSTREAM",
"DOWNSTREAM"
],
"type": "string",
"example": "DOWNSTREAM",
"description": "Represents the flow of data between the source and destination. Values can be - <ul> <li> Upstream <li> Downstream</ul>"
},
"is_manual": {
"type": "boolean",
"example": true,
"description": "Represents if data lineage is manually created or not. Values can be - <ul><li> True <li> False </ul>"
},
"to_entity": {
"type": "string",
"example": "b500ef23-c9b4-4259-a87d-d77b8b588f06",
"description": "Indicates the destination resource of the lineage."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2023-08-16T23:12:53.245493Z",
"description": "The timestamp when the resource was created in Secoda in UTC format."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-08-16T23:12:53.245507Z",
"description": "The timestamp when the resource was last updated in Secoda in UTC format."
},
"from_entity": {
"type": "string",
"example": "7879886b-9e0e-4d02-8b37-c7d3c496a587",
"description": "Indicates the source resource of the lineage."
}
}
}
ListResponse
{
"type": "object",
"properties": {
"meta": {
"type": "object",
"properties": {
"page": {
"type": "integer",
"example": 1,
"description": "The current page number."
},
"next_page": {
"type": "integer",
"example": 2,
"description": "The next page number (null if on the last page)."
},
"previous_page": {
"type": "integer",
"example": null,
"description": "The previous page number (null if on the first page)."
}
},
"description": "Reprents the meta data of the response."
},
"count": {
"type": "integer",
"example": 315,
"description": "The total count of items returned."
},
"links": {
"type": "object",
"properties": {
"next": {
"type": "string",
"example": "https://api.secoda.co/resource/all/?page=2",
"description": "The link to the next page (null if there are no more pages)."
},
"previous": {
"type": "string",
"example": "None",
"description": "The link to the previous page (null if on the first page)."
}
},
"description": "Indicates Links to associated pages."
},
"total_pages": {
"type": "integer",
"example": 7,
"description": "The total number of pages."
}
}
}
MeasurementResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "6ac1bff0-b85f-47e8-84fb-8dca29614785",
"description": "The UUID of the measurement."
},
"value": {
"type": "number",
"example": 90.81823317519981,
"description": "The exact value at the time of measurement."
},
"monitor": {
"type": "string",
"example": "102ac399-6e3a-42dd-a710-dbbb6b2addbe",
"description": "The UUID of the associated monitor."
},
"incident": {
"type": "string",
"example": "102ac399-6e3a-42dd-a710-dbbb6b2addbe",
"nullable": true,
"description": "The UUID of the associated incident, if it exists. Otherwise, this is set to null."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2023-10-03T04:46:24.290765Z",
"description": "Timestamp of when the measurement was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-10-03T04:46:24.290765Z",
"description": "Timestamp of the when the measurement was updated."
},
"lower_threshold": {
"type": "number",
"example": 87.83219024929676,
"description": "The lower threshold of the measurement. A value crossing this threshold will trigger an incident. The threshold will be set to null when one is not configured, or the monitor is still learning the thresholds.\n"
},
"upper_threshold": {
"type": "number",
"example": 90.64496791804484,
"description": "The upper threshold of the measurement. A value crossing this threshold will trigger an incident. The threshold will be set to null when one is not configured, or the monitor is still learning the thresholds.\n"
},
"incident_metadata": {
"type": "string",
"description": "Additional information about the incident."
}
}
}
MetricResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"sql": {
"type": "string",
"example": "select * from snowflake_sample_data.temp.store;",
"description": "The sql statement underlying the metric."
},
"time": {
"type": "string",
"example": "store_open_date",
"description": "The name of the column that should populate the X axis. The data type of the column should be datetime."
},
"primary": {
"type": "string",
"example": "store_orders",
"description": "The name of the column that should populate the Y axis. The data type of the column should be a number or integer."
},
"last_run": {
"type": "string",
"format": "datetime",
"example": "2024-03-18T21:02:30.294932Z",
"description": "The last time the metric was run."
},
"dimension": {
"type": "string",
"example": "store_region",
"description": "The name of the column by which results should be grouped by. Can be None if no dimensions are desired."
},
"last_error": {
"type": "string",
"example": "None",
"description": "If the last run failed, the error message will show up here."
},
"last_status": {
"type": "string",
"example": "completed",
"description": "Whether the last run was successful. The status can also be pending if a run hasn't occured yet."
},
"metric_type": {
"type": "string",
"example": "line",
"description": "The type of graph created from the metric. Currently, only a line graph is supported."
}
}
}
]
}
MetricsCreateNewMetricRequest
{
"type": "object",
"required": [
"title",
"sql",
"integration"
],
"properties": {
"sql": {
"type": "string",
"example": "select * from snowflake_sample_data.temp.store;",
"description": "The sql statement underlying the metric."
},
"time": {
"type": "string",
"example": "store_open_date",
"description": "The name of the column that should populate the X axis. The data type of the column should be datetime."
},
"title": {
"type": "string",
"example": "AOV",
"description": "The name given to your metric."
},
"primary": {
"type": "string",
"example": "store_orders",
"description": "The name of the column that should populate the Y axis. The data type of the column should be a number or integer."
},
"dimension": {
"type": "string",
"example": "store_region",
"description": "The name of the column by which results should be grouped by. Can be None if no dimensions are desired."
},
"description": {
"type": "string",
"example": "Average order value over time.",
"description": "A description for your metric."
},
"integration": {
"type": "string",
"example": "90ca77b2-65af-4042-8aee-dc9b203568f0",
"description": "The UUID of the integration that the metric is run on."
},
"scheduled_delta": {
"type": "integer",
"example": 1,
"description": "The frequency with which the metric should run, in hours. The first run can be triggered through the UI or by using the /execute endpoint."
}
}
}
MetricsListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MetricResponse"
}
}
}
}
]
}
MetricsRunMetricExecutionRequest
{
"type": "object",
"description": "An empty payload is required to execute the metric."
}
MetricsRunMetricExecutionResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "5e8baa7c-8221-42b8-9d39-5718d4bc063e",
"description": "ID of the metric."
},
"logs": {
"type": "string"
},
"user": {
"type": "string",
"example": "33733f42-8ff7-460b-9e20-50a2133d3bb0",
"description": "The ID of the user that has run the metric."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2024-04-09T21:10:40.532Z"
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2024-04-09T21:10:40.532Z"
}
}
}
MetricsUpdateMetricByIdRequest
{
"type": "object",
"properties": {
"sql": {
"type": "string",
"example": "select * from snowflake_sample_data.temp.store;",
"description": "The sql statement underlying the metric."
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"scheduled_delta": {
"type": "string"
}
}
}
MonitorResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "886337a0-f298-4259-84dc-710879c826de",
"description": "The unique identifier of the monitor."
},
"name": {
"type": "string",
"example": "Null percentage in amount",
"description": "The full name of the monitor, includes the metric type and target resource."
},
"status": {
"enum": [
"normal",
"incident",
"error",
"learning",
"inactive"
],
"type": "string",
"example": "incident",
"description": "The status of the monitor."
},
"target": {
"type": "string",
"example": "11db7782-4030-4acf-93e4-85aff3b860a1",
"description": "The identifier of the resource that the monitor is watching."
},
"frequency": {
"type": "integer",
"example": 24,
"description": "The frequency with which this monitor is run."
},
"workspace": {
"type": "string",
"example": "e051db43-cda6-42dc-8a69-12d1aefc3a91",
"description": "The identifier of the workspace."
},
"created_at": {
"type": "string",
"example": "2023-10-12T14:59:58.781935Z",
"description": "The timestamp when the monitor was created."
},
"is_enabled": {
"type": "boolean",
"example": true,
"description": "Whether the monitor is enabled."
},
"updated_at": {
"type": "string",
"example": "2023-10-12T15:06:19.251573Z",
"description": "The timestamp when the data was last updated."
},
"integration": {
"type": "string",
"example": "337c5803-b484-4128-a24d-dcc55dee2ea2",
"description": "The identifier of the integration associated with the resource."
},
"metric_type": {
"enum": [
"row_count",
"cardinality",
"mean",
"max",
"min",
"unique_percentage",
"null_percentage",
"freshness",
"custom_sql"
],
"type": "string",
"example": "null_percentage",
"description": "The type of metric."
},
"next_run_at": {
"type": "string",
"example": "2023-10-13T15:03:40.693728Z",
"description": "The timestamp for the next run. Note, the run may occur shortly after the time set, but never before."
},
"last_error_at": {
"type": "string",
"example": null,
"description": "The timestamp of the last error, if any."
},
"last_incident": {
"type": "string",
"example": "102ac399-6e3a-42dd-a710-dbbb6b2addbe",
"description": "The UUID of the last active incident. If there are no active incidents (if the last incident has been closed), the field is set to null."
},
"metric_config": {
"type": "string",
"description": "Configuration for the metric."
},
"last_success_at": {
"type": "string",
"format": "date-time",
"example": "2023-09-29T17:46:22.552345Z",
"description": "The timestamp of the last check on Secoda's access and ability to read the data source on which this monitor is set. This is connctivity check - not a data quality check."
},
"display_metadata": {
"type": "object",
"properties": {
"target": {
"type": "object",
"properties": {
"icon": {
"type": "string",
"example": null,
"description": "Icon associated with the target resource, if one exists."
},
"label": {
"type": "string",
"example": "amount",
"description": "Title of the target resource."
},
"entity_type": {
"type": "string",
"example": "column",
"description": "The type of the target resource (e.g., column)."
},
"integration": {
"type": "string",
"example": "337c5803-b484-4128-a24d-dcc55dee2ea2",
"description": "The UUID of the integration from which the target resource is extracted."
},
"integration_type": {
"type": "string",
"example": "redshift",
"description": "The type of integration."
}
}
}
},
"description": "This is an internally used object that provides additional information about the incident. This can be ignored by customers."
},
"last_measurement": {
"type": "string",
"example": "5d6ad413-5f74-41d6-b2f5-870b6f04de5c",
"description": "The identifier of the last measurement."
},
"last_attempted_at": {
"type": "string",
"example": "2023-10-12T15:03:40.693728Z",
"description": "The timestamp of the last attempted monitor."
},
"last_error_message": {
"type": "string",
"example": "",
"description": "The message associated with the last error, if any."
},
"condition_manual_max": {
"type": "integer",
"example": null,
"description": "The manual maximum condition if set by the user."
},
"condition_manual_min": {
"type": "integer",
"example": null,
"description": "The manual minimum condition if set by the user."
},
"last_measurement_value": {
"type": "number",
"example": 1234.56,
"description": "The last measured value if one is available."
},
"condition_auto_sensitivity": {
"type": "integer",
"example": 5,
"description": "The automatic sensitivity condition."
}
}
}
MonitorsListIncidentsResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/IncidentResponse"
}
}
}
}
]
}
MonitorsListMeasurementsResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MeasurementResponse"
}
}
}
}
]
}
MonitorsListMonitorsResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/MonitorResponse"
}
}
}
}
]
}
QueriesGetListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/QueryResponse"
}
}
}
}
]
}
QueryResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"freq": {
"type": "integer",
"example": 0,
"description": "Represents the frequency with which the query is running. Currently this will be returned as 0."
},
"type": {
"type": "string",
"example": "None",
"description": "Indicates the type of query. Currently this is returned as None."
}
}
}
]
}
QuestionResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"answer": {
"type": "string",
"example": "This is the answer to the question.",
"description": "Represents the verified answer of the question."
},
"status": {
"type": "string",
"example": "UNANSWERED",
"description": "Indicates the status of the question. Values can be - <ul><li> Answered <li> Unanswered </ul>"
},
"priority": {
"type": "string",
"example": "High",
"description": "Indicates the priority of the question or request."
},
"reactions": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"๐"
],
"description": "Represents the emoji reactions to a question."
},
"votes_sum": {
"type": "integer",
"example": 5,
"description": "Indicates the amount of votes for the quesion."
},
"assigned_to": {
"type": "string",
"example": "33733f42-8ff7-460b-9e20-50a2133d3bb0",
"description": "Represents the user whom the question is assigned to."
},
"current_user_vote": {
"type": "integer",
"example": 4,
"description": "Represents the vote number of the current user."
}
}
}
]
}
QuestionsCreateNewReplyRequest
{
"type": "object",
"properties": {
"owners": {
"type": "array",
"items": {
"type": "string",
"example": "33733f42-8ff7-460b-9e20-50a2133d3bb0",
"description": "Defines the UUIDs that are the owners of the replies."
}
},
"parent": {
"type": "string",
"example": "7795133a-6e36-4ef2-b95a-664babb99b71",
"description": "The unique identifier of the parent question"
},
"definition": {
"type": "string",
"example": "Replying to the question",
"description": "The answer of the reply"
},
"accepted_answer": {
"type": "boolean",
"example": false,
"description": "Indicates if the answer is accepted or not. Values can be - <ul> <li> True <li> False</ul>"
}
}
}
QuestionsEditReplyByIdRequest
{
"type": "object",
"properties": {
"definition": {
"type": "string",
"example": "Changing the answer.",
"description": "The updated definition for the reply"
},
"accepted_answer": {
"type": "boolean",
"example": false,
"description": "Indicates if the answer is accepted or not. Values can be - <ul> <li> True <li> False</ul>"
}
}
}
QuestionsGetListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/QuestionResponse"
}
}
}
}
]
}
QuestionsListRepliesResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ReplyResponse"
}
}
}
}
]
}
ReplyResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"reactions": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"๐"
],
"description": "Represents the emoji reactions to a question."
},
"accepted_answer": {
"type": "boolean",
"example": false,
"description": "Indicates if the answer is accepted or not. Values can be - <ul> <li> True <li> False</ul>"
}
}
}
]
}
SchemasListWithFilterResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BaseResponse"
}
}
}
}
]
}
TableResponse
{
"allOf": [
{
"$ref": "#/components/schemas/BaseResponse"
},
{
"type": "object",
"properties": {
"schema": {
"type": "string",
"example": "secoda-glue",
"description": "Indicates the name of the schema that the table belongs to."
},
"cluster": {
"type": "string",
"description": "This is a deprecated field."
},
"database": {
"type": "string",
"example": "awsdatacatalog",
"description": "Indicates the name of the database that the table belongs to."
},
"creation_query": {
"type": "string",
"example": "select * from customers where country=='CAN'",
"description": "If the table is a view, this indicates the query written to generate the view."
}
}
}
]
}
TablesListTablesByFilterResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TableResponse"
}
}
}
}
]
}
TagsCreateNewTagRequest
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "Sample Tag",
"description": "Indicates the name of the tag."
},
"color": {
"type": "string",
"example": "#4299E1",
"description": "Defines the different colors of the tags."
},
"description": {
"type": "string",
"example": "This is a sample tag.",
"description": "Indicates the description of the tag."
}
}
}
TagsListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TagsResponse"
}
}
}
}
]
}
TagsResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "69e0b863-8bb8-47e1-b566-8b8d57441c70",
"description": "The unique identifier of the resource."
},
"name": {
"type": "string",
"example": "Sample Tag",
"description": "Indicates the name of the tag."
},
"color": {
"type": "string",
"example": "#4299E1",
"description": "Defines the different colors of the tags in HEX format."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2023-09-05T17:32:56.571134Z",
"description": "The timestamp when the resource was created in Secoda in UTC format."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-09-05T17:32:56.571151Z",
"description": "The timestamp when the resource was last updated in Secoda in UTC format."
},
"description": {
"type": "string",
"example": "This is a sample tag.",
"description": "Indicates the description of the tag."
},
"workspace_id": {
"type": "string",
"example": "f71585fa-251c-4102-8d81-c97c57c8d435",
"description": "Indiactes the workspace ID where the tag belongs."
},
"integration_id": {
"type": "string",
"example": "69e0b863-8bb8-47e1-b566-8b8d57441c70",
"description": "The unique identifier of the integration the tag is pulled from. Null if the tag is created manually in Secoda."
}
}
}
TagsUpdateByIdRequest
{
"type": "object",
"required": [
"color"
],
"properties": {
"color": {
"type": "string",
"example": "#316650",
"description": "Represents the color of the tags."
}
}
}
TeamsCreateNewTeamRequest
{
"type": "object",
"properties": {
"icon": {
"type": "string",
"example": "๐",
"description": "Indicates the icon of the team."
},
"name": {
"type": "string",
"example": "Test Team",
"description": "Indicates the name of the team."
},
"type": {
"type": "string",
"example": "OPEN",
"description": "Indicates the type of the team. If a team is Open, this means it is Public and can be joined by anyone in the workspace. If a team is Closed, the team is private and only admins can invite members into the team. Values can be - <ul><li> OPEN <li> CLOSED </ul>"
},
"description": {
"type": "string",
"example": "This is the best team in this workspace.",
"description": "Description of the team."
},
"sidebar_settings": {
"type": "object",
"properties": {
"home": {
"type": "boolean",
"example": true,
"description": "Whether to show the home page to team members."
},
"catalog": {
"type": "boolean",
"example": true,
"description": "Whether to show the catalog page to team members."
},
"documents": {
"type": "boolean",
"example": true,
"description": "Whether to show the documents page to team members."
},
"questions": {
"type": "boolean",
"example": true,
"description": "Whether to show the questions page to team members."
},
"dictionary": {
"type": "boolean",
"example": true,
"description": "Whether to show the dictionary page to team members."
},
"collections": {
"type": "boolean",
"example": true,
"description": "Whether to show the collections page to team members."
}
},
"description": "Use these settings to toggle which pages should be shown to team members in the side bar."
}
}
}
TeamsGetListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/TeamsResponse"
}
}
}
}
]
}
TeamsResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "3131f219-16bb-4c95-853a-894ae12db42a",
"description": "Indicates the UUID of the team."
},
"icon": {
"type": "string",
"example": "๐",
"description": "Indicates the icon of the team."
},
"name": {
"type": "string",
"example": "Test Team",
"description": "Indicates the name of the team."
},
"type": {
"type": "string",
"example": "OPEN",
"description": "Indicates the type of the team. If a team is Open, this means it is Public and can be joined by anyone in the workspace. If a team is Closed, the team is private and only admins can invite members into the team. Values can be - <ul><li> OPEN <li> CLOSED </ul>"
},
"archived": {
"type": "boolean",
"example": false,
"description": "Indicates if the team has been deleted."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2023-09-22T15:30:00Z",
"description": "The timestamp when the team was created in Secoda in UTC format."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2023-09-22T15:30:00Z",
"description": "The timestamp when the team was last updated in Secoda UTC format."
},
"description": {
"type": "string",
"example": "This is the best team in this workspace.",
"description": "Description of the team."
},
"workspace_id": {
"type": "string",
"example": "f71585fa-251c-4102-8d81-c97c57c8d435",
"description": "Indicates the workspace ID of the user."
},
"is_default_team": {
"type": "boolean",
"example": true,
"description": "Indicates if the team is the default team. Any resource without a specified team will automatically get added to this team."
},
"sidebar_settings": {
"type": "object",
"properties": {
"home": {
"type": "boolean",
"example": true,
"description": "Whether to show the home page to team members."
},
"catalog": {
"type": "boolean",
"example": true,
"description": "Whether to show the catalog page to team members."
},
"documents": {
"type": "boolean",
"example": true,
"description": "Whether to show the documents page to team members."
},
"questions": {
"type": "boolean",
"example": true,
"description": "Whether to show the questions page to team members."
},
"dictionary": {
"type": "boolean",
"example": true,
"description": "Whether to show the dictionary page to team members."
},
"collections": {
"type": "boolean",
"example": true,
"description": "Whether to show the collections page to team members."
}
},
"description": "Use these settings to toggle which pages should be shown to team members in the side bar."
},
"onboarding_complete": {
"type": "boolean",
"example": true,
"description": "This field will be deprecated."
}
}
}
TeamsUpdateByIdRequest
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "New Team",
"description": "Indicates the name of the team."
}
}
}
TermsGetListByTitleResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/BaseResponse"
}
}
}
}
]
}
UserGroupResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "f3bdd4f8-d6ea-4f9b-8384-e179fa8eb3da",
"description": "The ID of the group."
},
"icon": {
"type": "string",
"example": "๐งช",
"description": "The icon associated with the group."
},
"name": {
"type": "string",
"example": "Data Stewards",
"description": "The name of the group."
},
"users": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"33733f42-8ff7-460b-9e20-50a2133d3bb0",
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "List of user IDs of the members in the group."
},
"created_at": {
"type": "string",
"example": "2023-05-10T14:27:23.797657Z",
"description": "The creation timestamp of the group."
},
"updated_at": {
"type": "string",
"example": "2023-10-20T13:53:06.088248Z",
"description": "The last update timestamp of the group."
},
"description": {
"type": "string",
"example": "Group of users that are responsible for keeping documentation updated.",
"description": "The description of the group."
},
"workspace_id": {
"type": "string",
"example": "f71585fa-251c-4102-8d81-c97c57c8d435",
"description": "The ID of the workspace associated with the grop."
},
"snowflake_role": {
"description": "This field can be ignored."
}
}
}
UserGroupsCreateNewGroupRequest
{
"type": "object",
"properties": {
"icon": {
"type": "string",
"example": "๐",
"description": "Indicates the icon of the team."
},
"name": {
"type": "string",
"example": "Data Stewards",
"description": "Indicates the name of the group."
},
"users": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"33733f42-8ff7-460b-9e20-50a2133d3bb0",
"c90dedee-40ee-47ec-9c27-96dc3b2ec363"
],
"description": "A list of user IDs that are part of this group."
},
"description": {
"type": "string",
"example": "Users responsible for keeping documentation up to date.",
"description": "Description of the group."
}
}
}
UserGroupsListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UserGroupResponse"
}
}
}
}
]
}
UserGroupsUpdateByIdRequest
{
"type": "object",
"properties": {
"name": {
"type": "string",
"example": "New Group",
"description": "Indicates the name of the group."
}
}
}
UsersCreateNewUserRequest
{
"type": "object",
"properties": {
"role": {
"type": "string",
"example": "editor",
"description": "Indicates the role of the user. Values can be - <ul><li> Admin <li> Editor <li> Viewer </ul>"
},
"_role": {
"type": "string",
"example": "editor",
"description": "Indicates the role of the user. Values can be - <ul><li> Admin <li> Editor <li> Viewer </ul>"
},
"email": {
"type": "string",
"example": "sample@sample.com",
"description": "Indicates the email id of the user."
},
"last_name": {
"type": "string",
"example": "User",
"description": "Indicates the last name of the user."
},
"first_name": {
"type": "string",
"example": "Sample",
"description": "Indicates the first name of the user."
}
}
}
UsersListResponse
{
"allOf": [
{
"$ref": "#/components/schemas/ListResponse"
},
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"$ref": "#/components/schemas/UsersResponse"
}
}
}
}
]
}
UsersResponse
{
"type": "object",
"properties": {
"id": {
"type": "string",
"example": "3131f219-16bb-4c95-853a-894ae12db42a",
"description": "Indicates the UUID of the user."
},
"role": {
"type": "string",
"example": "editor",
"description": "Indicates the role of the user. Values can be - <ul><li> Admin <li> Editor <li> Viewer </ul>"
},
"_role": {
"type": "string",
"example": "editor",
"description": "Indicates the role of the user. Is the same value as the `role` parameter. Values can be - <ul><li> Admin <li> Editor <li> Viewer </ul>"
},
"email": {
"type": "string",
"example": "sample@sample.com",
"description": "Indicates the email id of the user."
},
"pending": {
"type": "boolean",
"example": true,
"description": "Represents if the user has been invited to the space but not accepted yet. Values can be - <ul> <li> \"True\" <li> \"False\" </ul>"
},
"disabled": {
"type": "boolean",
"example": false,
"description": "Represents if the account is disabled or not. Values can be - <ul> <li >True <li> False </ul>"
},
"bookmarks": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"f71585fa-251c-4102-8d81-c97c57c8d435"
],
"description": "Represents the resorces that the user has bookmarked."
},
"last_name": {
"type": "string",
"example": "User",
"description": "Indicates the last name of the user."
},
"workspace": {
"type": "string",
"example": "f71585fa-251c-4102-8d81-c97c57c8d435",
"description": "Indicates the workspace of the user."
},
"first_name": {
"type": "string",
"example": "Sample",
"description": "Indicates the first name of the user."
},
"last_login": {
"type": "string",
"format": "date-time",
"example": "None",
"description": "Indicates the last time account was logged in to Secoda in UTC format."
},
"user_groups": {
"type": "array",
"items": {
"type": "string"
},
"example": [
"f71585fa-251c-4102-8d81-c97c57c8d435"
],
"description": "A list of UUIDs of groups the user belongs to."
},
"viewer_mode": {
"type": "boolean",
"example": false,
"description": "Indicates if the user is in Preview mode. Values can be - <ul> <li>True <li>False </ul>"
},
"workspace_id": {
"type": "string",
"example": "f71585fa-251c-4102-8d81-c97c57c8d435",
"description": "Indicates the workspace ID of the user."
},
"profile_picture": {
"type": "string",
"example": "image.jpg",
"description": "Indicates the file name of the profile picture for the user."
},
"is_service_account": {
"type": "boolean",
"example": false,
"description": "Indicates if the user account is a service account or not. Values can be - <ul> <li >True <li> False </ul>"
},
"secoda_is_superuser": {
"type": "boolean",
"example": false,
"description": "Represents if the user is super user or not. Values can be - <ul> <li >True <li> False </ul>"
},
"new_feature_acknowledged": {
"type": "boolean",
"example": true,
"description": "Indicates if the new feature has been acknowleged or not. Values can be - <ul> <li >True <li> False </ul>"
},
"service_account_count_popularity": {
"type": "boolean",
"example": true,
"description": "Indicates if the account counts towards popularity calculations. Values can be - <ul> <li> True <li> False </ul>"
}
}
}
UsersUpdateByIdRequest
{
"type": "object",
"properties": {
"last_name": {
"type": "string",
"example": "User",
"description": "Indicates the last name of the user."
},
"first_name": {
"type": "string",
"example": "Sample",
"description": "Indicates the first name of the user."
}
}
}