Resources

The resource endpoint can be used to query resources in Secoda, such as Databases, Schemas, Tables, Columns, Jobs, Events, Dashboards, and Charts.

List Resources

get

Use this endpoint to list all catalog resources. The resources can be sorted or filtered by most of the fields in the response, using the Sort and Filter JSON objects respectively. More details about the sort and filter query parameters can be found below. The default sort is by external usage in descending order.

Please refer to our product documentation here for assistance with the filter param. We have exposed a filter generator in https://app.secoda.co/settings/api to make creating these requests easier, and have also created a python script that will help you create filters programmatically.

Important Limitations:

  • This endpoint has a maximum limit of 10,000 resources that can be returned across all pages

  • For large datasets exceeding 10,000 resources, consider using more specific filter to narrow your results

Authorizations
Query parameters
pagenumberOptional

The page number for paginated results.

Example: 2
teamsstringOptional

The ID of the team the resources should filter by.

Example: 550e8400-e29b-41d4-a716-446655440000
filterstringOptional

A serialized and URL encoded JSON object to define filters on the catalog resources. See Catalog Filter for the definition of this JSON object.

Example: %7B%22operator%22%3A%20%22and%22%2C%20%22operands%22%3A%20%5B%7B%22operator%22%3A%20%22contains%22%2C%20%22field%22%3A%20%22title%22%2C%20%22value%22%3A%20%22customers%22%7D%2C%20%7B%22operator%22%3A%20%22in%22%2C%20%22field%22%3A%20%22native_type%22%2C%20%22value%22%3A%20%5B%22table%22%2C%20%22view%22%5D%7D%2C%20%7B%22operator%22%3A%20%22in%22%2C%20%22field%22%3A%20%22integration_id%22%2C%20%22value%22%3A%20%5B%220b0d4419-841f-4413-8510-ee068487adec%22%5D%7D%2C%20%7B%22operator%22%3A%20%22in%22%2C%20%22field%22%3A%20%22parent_id%22%2C%20%22value%22%3A%20%5B%22c8878ff2-67e4-460c-a5b5-ce1ee0209d49%22%5D%7D%5D%7D%0A
sortstringOptional

A serialized and URL encoded JSON object to define the sort pattern on the catalog resources. See Catalog Sort for the definition of this JSON object.

Example: %7B%22field%22%3A%22native_type%22%2C%22order%22%3A%22asc%22%2C%22tie_breaker%22%3A%7B%22field%22%3A%22external_usage%22%2C%22order%22%3A%22asc%22%7D%7D
Responses
200
List of resources.
application/json
Responseall of
get
GET /api/v1/resource/catalog HTTP/1.1
Host: api.secoda.co
Authorization: Bearer string
Accept: */*
{
  "links": {
    "next": "https://api.secoda.co/resource/all/?page=2",
    "previous": "None"
  },
  "meta": {
    "page": 1,
    "previous_page": "None",
    "next_page": 2
  },
  "count": 315,
  "total_pages": 7,
  "results": [
    {
      "id": "text",
      "created_at": "2025-06-26T06:06:56.120Z",
      "updated_at": "2025-06-26T06:06:56.120Z",
      "entity_type": "text",
      "native_type": "text",
      "icon": "text",
      "title": "text",
      "title_full": "text",
      "title_cased": "text",
      "description": "text",
      "definition": "text",
      "definition_version": 1,
      "multiplayers": [
        {}
      ],
      "multiplayer_last_modified_by": "text",
      "multiplayer_last_modified": "text",
      "owners": [
        "text"
      ],
      "owners_groups": [
        "text"
      ],
      "collections": [
        "text"
      ],
      "tags": [
        "text"
      ],
      "workspace_id": "text",
      "published": true,
      "archived": true,
      "archived_at": "text",
      "pii": true,
      "verified": true,
      "url": "text",
      "parent": "text",
      "children_count": 1,
      "bookmarked_by": [
        "text"
      ],
      "integration": "text",
      "external_updated_at": "text",
      "internal_usage": 1,
      "internal_users": [
        "text"
      ],
      "external_users": [
        "text"
      ],
      "external_usage": 1,
      "databuilder_id": "text",
      "search_metadata": {},
      "sources": [
        "text"
      ],
      "subscribers": [
        "text"
      ],
      "teams": [
        "text"
      ],
      "stale": true,
      "stale_at": "text",
      "forced_unstale_by_user": true,
      "current_user_permissions": "text",
      "row_count": 1,
      "byte_size": 1,
      "display_metadata": {},
      "question_status": "text",
      "question_priority": "text",
      "question_answered_by": "text",
      "question_assigned_to": "text"
    }
  ]
}

Create Resource

post

This endpoint allows you to create a new resource with the specified data. The title will map to the resource name, and the definition can be added to the definition field.

Authorizations
Body
all ofOptional
Responses
201
Created
application/json
post
POST /api/v1/resource/catalog HTTP/1.1
Host: api.secoda.co
Authorization: Bearer string
Content-Type: application/json
Accept: */*
Content-Length: 769

{
  "title": "Sample Title",
  "integration": "ca529385-fbc9-4934-afae-e372affe795b",
  "description": "This is a description for a sample table.",
  "entity_type": "glossary",
  "definition": "\\n# Castae illa\\n\\n## Finemque aequore\\n\\nLorem markdownum motus",
  "parent": "df2c0597-13d9-4159-bb6d-00b3f54235dc",
  "pii": false,
  "verified": true,
  "published": true,
  "teams": [
    "e8ac09ed-e51e-4e61-8eaf-59942c98c260",
    "cca810f1-11c1-4117-bc23-20ae8020897f"
  ],
  "owners": [
    "33733f42-8ff7-460b-9e20-50a2133d3bb0",
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ],
  "owners_groups": [
    "f3bdd4f8-d6ea-4f9b-8384-e179fa8eb3da"
  ],
  "collections": [
    "3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
  ],
  "tags": [
    "04654d61-4f64-4f08-b697-3915b5137c49",
    "429693a2-a5e7-4525-b413-ece5e96bc5b3"
  ],
  "subscribers": [
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ]
}
{
  "id": "d935a76c-2125-4c30-9389-ef42fa7e23bb",
  "created_at": "2023-08-16T23:12:53.245493Z",
  "updated_at": "2023-08-16T23:12:53.245507Z",
  "entity_type": "table",
  "native_type": "Dataset",
  "bookmarked_by": [
    "d935a76c-2125-4c30-9389-ef42fa7e23bb",
    "33733f42-8ff7-460b-9e20-50a2133d3bb0",
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ],
  "icon": "icon-url.png",
  "title": "Sample Table",
  "title_full": "Sample Database.Sample Schema.Sample Table",
  "title_cased": "sampleTable",
  "description": "This is a description for a sample table.",
  "definition": "text",
  "definition_version": 1,
  "multiplayers": [
    "429693a2-a5e7-4525-b413-ece5e96bc5b3",
    "f71585fa-251c-4102-8d81-c97c57c8d435"
  ],
  "multiplayer_last_modified_by": "429693a2-a5e7-4525-b413-ece5e96bc5b3",
  "multiplayer_last_modified": "2023-08-16T23:12:53.245507Z",
  "owners": [
    "429693a2-a5e7-4525-b413-ece5e96bc5b3",
    "f71585fa-251c-4102-8d81-c97c57c8d435"
  ],
  "owners_groups": [
    "3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
  ],
  "collections": [
    "e8ac09ed-e51e-4e61-8eaf-59942c98c260"
  ],
  "tags": [
    "f7466f09-33bf-4ac2-9ff2-165fb4b8bdc2",
    "a17f4ed0-0e5a-45a9-92c0-6c93c0b8242c"
  ],
  "workspace_id": "f71585fa-251c-4102-8d81-c97c57c8d435",
  "total_usage": 483,
  "published": false,
  "archived": false,
  "pii": true,
  "verified": false,
  "url": "https://example.com/sample-table",
  "parent": "df2c0597-13d9-4159-bb6d-00b3f54235dc",
  "children_count": 2,
  "integration": "ca529385-fbc9-4934-afae-e372affe795b",
  "external_updated_at": "2023-08-16T23:12:53.245507Z",
  "internal_usage": 3,
  "internal_users": [
    "04654d61-4f64-4f08-b697-3915b5137c49"
  ],
  "external_users": [
    "33733f42-8ff7-460b-9e20-50a2133d3bb0"
  ],
  "external_usage": 38,
  "databuilder_id": "b818280a-ae1a-43bf-90d3-dbccf812b025.x68605bd2",
  "search_metadata": {
    "cluster": "glue",
    "database": "awsdatacatalog",
    "schema": "secoda-glue",
    "type": "table"
  },
  "sources": [
    "8a3af948-026c-45d6-983d-3873f6156f86"
  ],
  "subscribers": [
    "33733f42-8ff7-460b-9e20-50a2133d3bb0",
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ],
  "teams": [
    "8680f886-97d2-4f4e-92c8-c80b46a3017d"
  ],
  "stale": false,
  "current_user_permissions": {
    "read": true,
    "write": true,
    "execute": false
  }
}

Get Resource

get

This endpoint will provide the details of an individual resource.

Authorizations
Path parameters
resource_idstringRequired

The ID of the resource to retrieve.

Example: d31e59c7-cd52-4398-9d6e-da313a7b7775
Responses
200
Resource details retrieved successfully.
application/json
get
GET /api/v1/resource/all/{resource_id} HTTP/1.1
Host: api.secoda.co
Authorization: Bearer string
Accept: */*
{
  "id": "text",
  "created_at": "2025-06-26T06:06:56.120Z",
  "updated_at": "2025-06-26T06:06:56.120Z",
  "entity_type": "text",
  "native_type": "text",
  "icon": "text",
  "title": "text",
  "title_full": "text",
  "title_cased": "text",
  "description": "text",
  "definition": "text",
  "definition_version": 1,
  "multiplayers": [
    {}
  ],
  "multiplayer_last_modified_by": "text",
  "multiplayer_last_modified": "text",
  "owners": [
    "text"
  ],
  "owners_groups": [
    "text"
  ],
  "collections": [
    "text"
  ],
  "tags": [
    "text"
  ],
  "workspace_id": "text",
  "published": true,
  "archived": true,
  "archived_at": "text",
  "pii": true,
  "verified": true,
  "url": "text",
  "parent": "text",
  "children_count": 1,
  "bookmarked_by": [
    "text"
  ],
  "integration": "text",
  "external_updated_at": "text",
  "internal_usage": 1,
  "internal_users": [
    "text"
  ],
  "external_users": [
    "text"
  ],
  "external_usage": 1,
  "databuilder_id": "text",
  "search_metadata": {},
  "sources": [
    "text"
  ],
  "subscribers": [
    "text"
  ],
  "teams": [
    "text"
  ],
  "stale": true,
  "stale_at": "text",
  "forced_unstale_by_user": true,
  "current_user_permissions": "text",
  "row_count": 1,
  "byte_size": 1,
  "display_metadata": {},
  "question_status": "text",
  "question_priority": "text",
  "question_answered_by": "text",
  "question_assigned_to": "text"
}

Delete Resource

delete

This endpoint allows you to delete a resource by its unique identifier (resource_id).

Authorizations
Path parameters
resource_idstringRequired

The unique identifier of the resource to delete

Example: 61ce0a34-ce90-4f1a-a135-f122dcbed242
Responses
204
Resource deleted successfully
delete
DELETE /api/v1/resource/all/{resource_id} HTTP/1.1
Host: api.secoda.co
Authorization: Bearer string
Accept: */*

No content

Edit Resource

patch

This endpoint allows you to edit the metadata of a resource by its unique identifier (resource_id).

Authorizations
Path parameters
resource_idstringRequired

The unique identifier of the resource to edit

Example: 61ce0a34-ce90-4f1a-a135-f122dcbed24
Body
descriptionstringOptional

A description of the resource.

Example: This is a description for a sample table.
definitionstringOptional

Mark down documentation to be added to the resource.

Example: \n# Castae illa\n\n## Finemque aequore\n\nLorem markdownum motus
piibooleanOptional

Indicates whether the resource contains personally identifiable information (PII). Values can be - True False

Example: false
verifiedbooleanOptional

Indicates whether the table has been set as verified. Values can be - True False

Example: true
publishedbooleanOptional

Indicates if the resource is visible to viewers or not. Values can be - True False

Example: true
teamsstring[]Optional

A list of team IDs that the resource belongs to.

Example: ["e8ac09ed-e51e-4e61-8eaf-59942c98c260","cca810f1-11c1-4117-bc23-20ae8020897f"]
ownersstring[]Optional

A list of owner user IDs for the resource.

Example: ["33733f42-8ff7-460b-9e20-50a2133d3bb0","c90dedee-40ee-47ec-9c27-96dc3b2ec363"]
collectionsstring[]Optional

A list of collection IDs the resource belongs to.

Example: ["3b2c7185-fb5d-4d94-89d4-3dae08e093a9"]
tagsstring[]Optional

A list of tag IDs associated with the resources.

Example: ["04654d61-4f64-4f08-b697-3915b5137c49","429693a2-a5e7-4525-b413-ece5e96bc5b3"]
subscribersstring[]Optional

A list of the added user IDs that have been subscribed to the resource. Anyone subscribed will be notified of any changes.

Example: ["c90dedee-40ee-47ec-9c27-96dc3b2ec363"]
Responses
200
Resource updated successfully
application/json
patch
PATCH /api/v1/resource/all/{resource_id} HTTP/1.1
Host: api.secoda.co
Authorization: Bearer string
Content-Type: application/json
Accept: */*
Content-Length: 563

{
  "description": "This is a description for a sample table.",
  "definition": "\\n# Castae illa\\n\\n## Finemque aequore\\n\\nLorem markdownum motus",
  "pii": false,
  "verified": true,
  "published": true,
  "teams": [
    "e8ac09ed-e51e-4e61-8eaf-59942c98c260",
    "cca810f1-11c1-4117-bc23-20ae8020897f"
  ],
  "owners": [
    "33733f42-8ff7-460b-9e20-50a2133d3bb0",
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ],
  "collections": [
    "3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
  ],
  "tags": [
    "04654d61-4f64-4f08-b697-3915b5137c49",
    "429693a2-a5e7-4525-b413-ece5e96bc5b3"
  ],
  "subscribers": [
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ]
}
{
  "id": "d935a76c-2125-4c30-9389-ef42fa7e23bb",
  "created_at": "2023-08-16T23:12:53.245493Z",
  "updated_at": "2023-08-16T23:12:53.245507Z",
  "entity_type": "table",
  "native_type": "Dataset",
  "bookmarked_by": [
    "d935a76c-2125-4c30-9389-ef42fa7e23bb",
    "33733f42-8ff7-460b-9e20-50a2133d3bb0",
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ],
  "icon": "icon-url.png",
  "title": "Sample Table",
  "title_full": "Sample Database.Sample Schema.Sample Table",
  "title_cased": "sampleTable",
  "description": "This is a description for a sample table.",
  "definition": "text",
  "definition_version": 1,
  "multiplayers": [
    "429693a2-a5e7-4525-b413-ece5e96bc5b3",
    "f71585fa-251c-4102-8d81-c97c57c8d435"
  ],
  "multiplayer_last_modified_by": "429693a2-a5e7-4525-b413-ece5e96bc5b3",
  "multiplayer_last_modified": "2023-08-16T23:12:53.245507Z",
  "owners": [
    "429693a2-a5e7-4525-b413-ece5e96bc5b3",
    "f71585fa-251c-4102-8d81-c97c57c8d435"
  ],
  "owners_groups": [
    "3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
  ],
  "collections": [
    "e8ac09ed-e51e-4e61-8eaf-59942c98c260"
  ],
  "tags": [
    "f7466f09-33bf-4ac2-9ff2-165fb4b8bdc2",
    "a17f4ed0-0e5a-45a9-92c0-6c93c0b8242c"
  ],
  "workspace_id": "f71585fa-251c-4102-8d81-c97c57c8d435",
  "total_usage": 483,
  "published": false,
  "archived": false,
  "pii": true,
  "verified": false,
  "url": "https://example.com/sample-table",
  "parent": "df2c0597-13d9-4159-bb6d-00b3f54235dc",
  "children_count": 2,
  "integration": "ca529385-fbc9-4934-afae-e372affe795b",
  "external_updated_at": "2023-08-16T23:12:53.245507Z",
  "internal_usage": 3,
  "internal_users": [
    "04654d61-4f64-4f08-b697-3915b5137c49"
  ],
  "external_users": [
    "33733f42-8ff7-460b-9e20-50a2133d3bb0"
  ],
  "external_usage": 38,
  "databuilder_id": "b818280a-ae1a-43bf-90d3-dbccf812b025.x68605bd2",
  "search_metadata": {
    "cluster": "glue",
    "database": "awsdatacatalog",
    "schema": "secoda-glue",
    "type": "table"
  },
  "sources": [
    "8a3af948-026c-45d6-983d-3873f6156f86"
  ],
  "subscribers": [
    "33733f42-8ff7-460b-9e20-50a2133d3bb0",
    "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
  ],
  "teams": [
    "8680f886-97d2-4f4e-92c8-c80b46a3017d"
  ],
  "stale": false,
  "current_user_permissions": {
    "read": true,
    "write": true,
    "execute": false
  }
}

Bulk Update Resources

post

Use this endpoint to update multiple entities in a single request.

For performance reasons, this endpoint can only handle a maximum of 100 entities at a time.

Authorizations
Body

An array of entities to update.

idstringRequired

The Secoda entity ID to update.

Example: 2d6e7503-8f05-4812-a5da-11863617bc62
dataall ofRequired

Only include the fields you would like to update.

Responses
200
This endpoint will return a list of the Secoda entity IDs that were updated.
application/json
Responsestring[]
post
POST /api/v1/resource/all/bulk_update/ HTTP/1.1
Host: api.secoda.co
Authorization: Bearer string
Content-Type: application/json
Accept: */*
Content-Length: 824

[
  {
    "id": "2d6e7503-8f05-4812-a5da-11863617bc62",
    "data": {
      "title": "Sample Title",
      "integration": "ca529385-fbc9-4934-afae-e372affe795b",
      "description": "This is a description for a sample table.",
      "entity_type": "glossary",
      "definition": "\\n# Castae illa\\n\\n## Finemque aequore\\n\\nLorem markdownum motus",
      "parent": "df2c0597-13d9-4159-bb6d-00b3f54235dc",
      "pii": false,
      "verified": true,
      "published": true,
      "teams": [
        "e8ac09ed-e51e-4e61-8eaf-59942c98c260",
        "cca810f1-11c1-4117-bc23-20ae8020897f"
      ],
      "owners": [
        "33733f42-8ff7-460b-9e20-50a2133d3bb0",
        "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
      ],
      "owners_groups": [
        "f3bdd4f8-d6ea-4f9b-8384-e179fa8eb3da"
      ],
      "collections": [
        "3b2c7185-fb5d-4d94-89d4-3dae08e093a9"
      ],
      "tags": [
        "04654d61-4f64-4f08-b697-3915b5137c49",
        "429693a2-a5e7-4525-b413-ece5e96bc5b3"
      ],
      "subscribers": [
        "c90dedee-40ee-47ec-9c27-96dc3b2ec363"
      ]
    }
  }
]
[
  "0ae63ebc-9658-4fab-8f32-803147e3d5ea",
  "12bc6611-d4cc-40f9-887f-15f4e7e77ec0",
  "24602882-d039-4aa5-8e50-fc1c5c322031"
]

Was this helpful?