### OpenAPI Definition for Get Account Source: https://docs.api.assetpanda.app/reference/get_account-id This OpenAPI 3.0.0 definition outlines the structure for the /account/{id} GET endpoint, including request parameters, security schemes, and response schemas. ```json { "openapi": "3.0.0", "info": { "title": "Tenant API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/account/{id}": { "get": { "summary": "Get account details", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/AccountDetailsResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "AccountDetailsResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Account" } } }, "Account": { "type": "object", "properties": { "id": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### OpenAPI Definition for Get Module Details Source: https://docs.api.assetpanda.app/reference/get_module-id This OpenAPI 3.0.0 definition outlines the structure and parameters for the GET /module/{id} endpoint. It specifies request parameters, security schemes, and response schemas. ```json { "openapi": "3.0.0", "info": { "title": "Tenant API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/module/{id}": { "get": { "summary": "Get module details", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "accountId", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ModuleDetailsResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "ModuleDetailsResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Module" } } }, "Module": { "type": "object", "properties": { "id": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### Get Accounts Source: https://docs.api.assetpanda.app/reference/get_accounts Retrieves a list of all accounts associated with the tenant. ```APIDOC ## GET /accounts ### Description Retrieves a list of accounts. ### Method GET ### Endpoint /accounts ### Security - accessKeyId - accessKeySecret ### Responses #### Success Response (200) - **data** (array) - An array of account objects. ### Response Example ```json { "data": [ { "id": "string" } ] } ``` ``` -------------------------------- ### Get Modules Source: https://docs.api.assetpanda.app/reference/get_modules Fetches a list of modules for a given account. Requires authentication with Access-Key-Id and Access-Key-Secret. ```APIDOC ## GET /modules ### Description Retrieves a list of modules associated with a specific account. ### Method GET ### Endpoint /modules ### Parameters #### Query Parameters - **accountId** (string) - Required - The ID of the account to retrieve modules for. ### Security - **accessKeyId**: API Key - **accessKeySecret**: API Key ### Responses #### Success Response (200) - **data** (array) - An array of module objects. - **id** (string) - The unique identifier of the module. ### Response Example ```json { "data": [ { "id": "module_123" }, { "id": "module_456" } ] } ``` ``` -------------------------------- ### OpenAPI Definition for Get Collection Details Source: https://docs.api.assetpanda.app/reference/get_collection-id This OpenAPI 3.0.0 definition outlines the structure for the GET /collection/{id} endpoint. It specifies the request parameters, security schemes, and the expected response schema for collection details. ```json { "openapi": "3.0.0", "info": { "title": "Collection API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/collection/{id}": { "get": { "summary": "Get collection details", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "parameters": [ { "in": "path", "name": "id", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "accountId", "schema": { "type": "string" } }, { "in": "query", "name": "moduleId", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "CollectionResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/Collection" } } }, "Collection": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### Get Account by ID Source: https://docs.api.assetpanda.app/reference/get_account-id Fetches the details of a specific account. ```APIDOC ## GET /account/{id} ### Description Retrieves the details for a specific account. ### Method GET ### Endpoint /account/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the account. ### Request Example ```json { "example": "request body" } ``` ### Response #### Success Response (200) - **data** (Account) - The account details. #### Response Example ```json { "data": { "id": "string" } } ``` ``` -------------------------------- ### Get Module by ID Source: https://docs.api.assetpanda.app/reference/get_module-id Fetches the details of a specific module using its ID. You can optionally filter the results by providing an account ID. ```APIDOC ## GET /module/{id} ### Description Retrieves the details of a specific module. ### Method GET ### Endpoint /module/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the module. #### Query Parameters - **accountId** (string) - Optional - The ID of the account to filter modules by. ### Response #### Success Response (200) - **data** (object) - Contains the module details. - **id** (string) - The ID of the module. ``` -------------------------------- ### OpenAPI Definition for Get Collection Columns Source: https://docs.api.assetpanda.app/reference/get_collection-columns This OpenAPI 3.0.0 definition outlines the structure and parameters for the Get Collection Columns API endpoint. ```json { "openapi": "3.0.0", "info": { "title": "Collection API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/collection-columns": { "get": { "summary": "Get collection columns", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "parameters": [ { "in": "query", "name": "accountId", "schema": { "type": "string" } }, { "in": "query", "name": "moduleId", "schema": { "type": "string" } }, { "in": "query", "name": "collectionId", "schema": { "type": "string" } }, { "in": "query", "name": "version", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionColumnsResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "CollectionColumnsResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/CollectionColumn" } } } }, "CollectionColumn": { "type": "object", "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "type": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### OpenAPI Definition for Get Collection Record Source: https://docs.api.assetpanda.app/reference/get_collection-record-recordid This OpenAPI 3.0 definition outlines the structure and parameters for the GET /collection-record/{recordId} endpoint. It specifies the request method, path parameters, query parameters, and expected response structure. ```json { "openapi": "3.0.0", "info": { "title": "Collection API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/collection-record/{recordId}": { "get": { "summary": "Get collection record", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "parameters": [ { "in": "path", "name": "recordId", "required": true, "schema": { "type": "string" } }, { "in": "query", "name": "collectionId", "schema": { "type": "string" } }, { "in": "query", "name": "accountId", "schema": { "type": "string" } }, { "in": "query", "name": "moduleId", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionRecordResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "CollectionRecordResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/CollectionRecord" } } }, "CollectionRecord": { "type": "object", "properties": { "id": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### Get Collections Source: https://docs.api.assetpanda.app/reference/get_collections This endpoint retrieves a list of collections. You can filter the results by providing `accountId` and `moduleId` as query parameters. ```APIDOC ## GET /collections ### Description Retrieves a list of collections. You can filter the results by providing `accountId` and `moduleId` as query parameters. ### Method GET ### Endpoint https://api.assetpanda.app/collections ### Parameters #### Query Parameters - **accountId** (string) - Optional - The ID of the account to filter collections by. - **moduleId** (string) - Optional - The ID of the module to filter collections by. ### Request Example ```json { "example": "" } ``` ### Response #### Success Response (200) - **data** (array) - An array of collection objects. - **id** (string) - The unique identifier for the collection. - **name** (string) - The name of the collection. #### Response Example ```json { "data": [ { "id": "string", "name": "string" } ] } ``` ``` -------------------------------- ### Get Categories Source: https://docs.api.assetpanda.app/reference/get_categories Retrieves a list of categories. You can filter the results by providing account ID and module ID. ```APIDOC ## GET /categories ### Description Retrieves a list of categories. You can filter the results by providing account ID and module ID. ### Method GET ### Endpoint /categories ### Parameters #### Query Parameters - **accountId** (string) - Optional - The ID of the account. - **moduleId** (string) - Optional - The ID of the module. ### Request Example ```json { "example": "" } ``` ### Response #### Success Response (200) - **data** (array) - An array of category objects. - **id** (string) - The ID of the category. #### Response Example ```json { "data": [ { "id": "category_id_1" }, { "id": "category_id_2" } ] } ``` ``` -------------------------------- ### Get Collection Columns Source: https://docs.api.assetpanda.app/reference/get_collection-columns Retrieves a list of columns for a given collection. You can filter the results by providing account, module, and collection IDs. ```APIDOC ## GET /collection-columns ### Description Retrieves the columns for a specified collection. ### Method GET ### Endpoint https://api.assetpanda.app/collection-columns ### Parameters #### Query Parameters - **accountId** (string) - Optional - The ID of the account. - **moduleId** (string) - Optional - The ID of the module. - **collectionId** (string) - Optional - The ID of the collection. - **version** (string) - Optional - The version of the collection. ### Response #### Success Response (200) - **data** (array) - An array of collection column objects. - **id** (string) - The unique identifier for the column. - **name** (string) - The name of the column. - **type** (string) - The data type of the column. ### Response Example ```json { "data": [ { "id": "col_123", "name": "Asset Name", "type": "string" }, { "id": "col_456", "name": "Purchase Date", "type": "date" } ] } ``` ``` -------------------------------- ### Get Collection by ID Source: https://docs.api.assetpanda.app/reference/get_collection-id Fetches details for a specific collection using its ID. Optional query parameters `accountId` and `moduleId` can be used for further filtering. ```APIDOC ## GET /collection/{id} ### Description Retrieves the details of a specific collection. ### Method GET ### Endpoint /collection/{id} ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the collection. #### Query Parameters - **accountId** (string) - Optional - Filters results by account ID. - **moduleId** (string) - Optional - Filters results by module ID. ### Responses #### Success Response (200) - **data** (object) - Contains the collection details. - **id** (string) - The collection's unique identifier. - **name** (string) - The name of the collection. ### Request Example (No request body for GET requests) ### Response Example ```json { "data": { "id": "string", "name": "string" } } ``` ``` -------------------------------- ### OpenAPI Definition for Category API Source: https://docs.api.assetpanda.app/reference/get_categories This OpenAPI 3.0.0 definition describes the Category API, including the GET /categories endpoint. It specifies request parameters like accountId and moduleId, and the structure of the CategoriesResponse. ```json { "openapi": "3.0.0", "info": { "title": "Category Api", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/categories": { "get": { "summary": "Get categories", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "parameters": [ { "in": "query", "name": "accountId", "schema": { "type": "string" } }, { "in": "query", "name": "moduleId", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CategoriesResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "CategoriesResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Category" } } } }, "Category": { "type": "object", "properties": { "id": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### Get Collection Record by ID Source: https://docs.api.assetpanda.app/reference/get_collection-record-recordid Fetches a single collection record using its unique record ID. Optional query parameters can be used to filter by collection, account, or module. ```APIDOC ## GET /collection-record/{recordId} ### Description Retrieves a specific collection record based on the provided record ID. This endpoint supports filtering by collection, account, and module. ### Method GET ### Endpoint /collection-record/{recordId} ### Parameters #### Path Parameters - **recordId** (string) - Required - The unique identifier of the collection record. #### Query Parameters - **collectionId** (string) - Optional - Filters results by a specific collection. - **accountId** (string) - Optional - Filters results by a specific account. - **moduleId** (string) - Optional - Filters results by a specific module. ### Responses #### Success Response (200) - **data** (object) - Contains the collection record details. - **id** (string) - The unique identifier of the collection record. ``` -------------------------------- ### OpenAPI Definition for Create Collection Records Source: https://docs.api.assetpanda.app/reference/post_collection-records This OpenAPI 3.0 definition describes the POST /collection-records endpoint. It specifies the request body schema, including required fields like tenant, collectionId, and records, as well as the structure for nested 'references'. Note the constraint of processing at most 5 records per request. ```json { "openapi": "3.0.0", "info": { "title": "Collection API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/collection-records": { "post": { "summary": "Create collection records", "description": "This endpoint allows creating collection records. Note that it can process at most 5 records per request.\n", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CreateCollectionRecordsRequest" } } } }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionRecordsResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "CollectionRecordsResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/CollectionRecord" } } } }, "CollectionRecord": { "type": "object", "properties": { "id": { "type": "string" } } }, "CreateCollectionRecordsRequest": { "type": "object", "properties": { "tenant": { "$ref": "#/components/schemas/Tenant" }, "collectionId": { "type": "string" }, "records": { "type": "array", "description": "Allows additional key-value pairs to be added to the record object. \n- Key names should correspond to valid **column ID** within the collection.\n- Values should be appropriate data types based on the corresponding column definitions.\n", "items": { "type": "object", "properties": { "references": { "type": "object", "description": "An optional object containing reference data. \n- Keys should correspond to valid **column ID** within the same collection.\n- Values should be the **record ID** of the referenced records from the corresponding entities.\n" } }, "additionalProperties": true } } } }, "Tenant": { "type": "object", "properties": { "accountId": { "type": "string" }, "moduleId": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### Create Collection Records Source: https://docs.api.assetpanda.app/reference/post_collection-records This endpoint allows creating collection records. Note that it can process at most 5 records per request. ```APIDOC ## POST /collection-records ### Description This endpoint allows creating collection records. Note that it can process at most 5 records per request. ### Method POST ### Endpoint https://api.assetpanda.app/collection-records ### Request Body - **tenant** (object) - Required - Tenant information. - **accountId** (string) - Required - Account ID. - **moduleId** (string) - Required - Module ID. - **collectionId** (string) - Required - The ID of the collection to add records to. - **records** (array) - Required - An array of records to create. Allows additional key-value pairs to be added to the record object. Key names should correspond to valid column IDs within the collection. Values should be appropriate data types based on the corresponding column definitions. - **references** (object) - Optional - An optional object containing reference data. Keys should correspond to valid column IDs within the same collection. Values should be the record ID of the referenced records from the corresponding entities. - `additionalProperties` (any) - Allows additional key-value pairs. ### Request Example { "tenant": { "accountId": "your_account_id", "moduleId": "your_module_id" }, "collectionId": "your_collection_id", "records": [ { "Column1": "Value1", "Column2": 123, "references": { "ReferencedColumn": "referenced_record_id" } } ] } ### Response #### Success Response (200) - **data** (array) - An array of created collection records. - Contains objects with an `id` (string) property. #### Response Example { "data": [ { "id": "record_id_1" }, { "id": "record_id_2" } ] } ``` -------------------------------- ### OpenAPI Definition for Collection Records Search Source: https://docs.api.assetpanda.app/reference/post_collection-records-search This OpenAPI 3.0.0 definition specifies the structure and behavior of the POST /collection-records/search endpoint. It includes details on request body schemas for tenant, collection ID, search input, and pagination, as well as response schemas. ```json { "openapi": "3.0.0", "info": { "title": "Collection API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/collection-records/search": { "post": { "summary": "Search collection records", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "x-docs-extension": { "filename": "search.md" }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "tenant": { "$ref": "#/components/schemas/Tenant" }, "collectionId": { "type": "string" }, "searchInput": { "$ref": "#/components/schemas/SearchInput" }, "pagination": { "$ref": "#/components/schemas/Pagination" } } } } } }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionRecordsResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "CollectionRecordsResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/CollectionRecord" } } } }, "CollectionRecord": { "type": "object", "properties": { "id": { "type": "string" } } }, "Tenant": { "type": "object", "properties": { "accountId": { "type": "string" }, "moduleId": { "type": "string" } } }, "SearchInput": { "type": "object", "properties": { "selection": { "type": "object", "properties": { "matchType": { "type": "string", "enum": [ "All", "Any" ] }, "filters": { "type": "array", "items": { "type": "object", "properties": { "field": { "type": "string" }, "operator": { "type": "string", "enum": [ "gt", "gte", "lt", "lte", "eq", "ne", "in", "nin", "contains", "notContains", "isEmpty", "isNotEmpty" ] }, "value": { "type": "string" } } } } } } } }, "Pagination": { "type": "object", "properties": { "from": { "type": "integer", "description": "The index of the first item to retrieve (zero-based)", "minimum": 0 }, "size": { "type": "integer", "description": "The number of items to retrieve per page", "minimum": 1, "maximum": 100 } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### OpenAPI Definition for Updating Collection Records Source: https://docs.api.assetpanda.app/reference/put_collection-records This OpenAPI definition outlines the structure and parameters for the PUT /collection-records endpoint, used for updating collection records. It details the request body schema, including tenant information, collection ID, and the records to be updated, along with their optional references. ```json { "openapi": "3.0.0", "info": { "title": "Collection API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/collection-records": { "put": { "summary": "Update collection record", "description": "This endpoint allows updating collection records. Note that it can process at most 5 records per request and every record should contain recordId.\n", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/UpdateCollectionRecordRequest" } } } }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/CollectionRecordResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "CollectionRecordResponse": { "type": "object", "properties": { "data": { "$ref": "#/components/schemas/CollectionRecord" } } }, "CollectionRecord": { "type": "object", "properties": { "id": { "type": "string" } } }, "UpdateCollectionRecordRequest": { "type": "object", "properties": { "tenant": { "$ref": "#/components/schemas/Tenant" }, "collectionId": { "type": "string" }, "records": { "type": "array", "description": "Allows additional key-value pairs to be added to the record object. \n- Key names should correspond to valid **column ID** within the collection. - Values should be appropriate data types based on the corresponding column definitions. ", "items": { "type": "object", "required": [ "recordId" ], "properties": { "recordId": { "type": "string" }, "references": { "type": "object", "description": "An optional object containing reference data. - Keys should correspond to valid **column ID** within the same collection. - Values should be the **record ID** of the referenced records from the corresponding entities. " } }, "additionalProperties": true } } } }, "Tenant": { "type": "object", "properties": { "accountId": { "type": "string" }, "moduleId": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### Search Collection Records Source: https://docs.api.assetpanda.app/reference/post_collection-records-search This endpoint allows you to search for collection records. You can specify search criteria, filters, and pagination options. ```APIDOC ## POST /collection-records/search ### Description Searches for collection records based on the provided criteria. ### Method POST ### Endpoint https://api.assetpanda.app/collection-records/search ### Parameters #### Request Body - **tenant** (object) - Required - Information about the tenant. - **accountId** (string) - Required - The account ID of the tenant. - **moduleId** (string) - Required - The module ID of the tenant. - **collectionId** (string) - Required - The ID of the collection to search within. - **searchInput** (object) - Optional - Criteria for searching records. - **selection** (object) - Optional - Defines how multiple filters are combined. - **matchType** (string) - Optional - Specifies if all or any filters should match. Enum: ["All", "Any"] - **filters** (array) - Optional - A list of filters to apply. - **field** (string) - Required - The field to filter on. - **operator** (string) - Required - The operator to use for filtering. Enum: ["gt", "gte", "lt", "lte", "eq", "ne", "in", "nin", "contains", "notContains", "isEmpty", "isNotEmpty"] - **value** (string) - Required - The value to filter by. - **pagination** (object) - Optional - Controls the pagination of the results. - **from** (integer) - Optional - The index of the first item to retrieve (zero-based). - **size** (integer) - Optional - The number of items to retrieve per page. Minimum: 1, Maximum: 100. ### Request Example ```json { "tenant": { "accountId": "your_account_id", "moduleId": "your_module_id" }, "collectionId": "your_collection_id", "searchInput": { "selection": { "matchType": "All", "filters": [ { "field": "status", "operator": "eq", "value": "Active" } ] } }, "pagination": { "from": 0, "size": 20 } } ``` ### Response #### Success Response (200) - **data** (array) - An array of collection records. - **id** (string) - The ID of the collection record. #### Response Example ```json { "data": [ { "id": "record_123" }, { "id": "record_456" } ] } ``` ``` -------------------------------- ### OpenAPI Definition for Deleting Collection Records Source: https://docs.api.assetpanda.app/reference/delete_collection-records This OpenAPI definition outlines the structure and parameters for the delete collection records endpoint. It specifies the request body schema, including tenant, collection ID, and record IDs, as well as the expected response structure. ```json { "openapi": "3.0.0", "info": { "title": "Collection API", "version": "1.0.0" }, "servers": [ { "url": "https://api.assetpanda.app" } ], "paths": { "/collection-records": { "delete": { "summary": "Delete collection records", "description": "This endpoint allows deleting collection records. Note that it can process at most 5 records per request.\n", "security": [ { "accessKeyId": [], "accessKeySecret": [] } ], "requestBody": { "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteCollectionRecordsRequest" } } } }, "responses": { "200": { "description": "Successful response", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/DeleteResponse" } } } } } } } }, "components": { "securitySchemes": { "accessKeyId": { "type": "apiKey", "in": "header", "name": "Access-Key-Id" }, "accessKeySecret": { "type": "apiKey", "in": "header", "name": "Access-Key-Secret" } }, "schemas": { "DeleteCollectionRecordsRequest": { "type": "object", "properties": { "tenant": { "$ref": "#/components/schemas/Tenant" }, "collectionId": { "type": "string" }, "recordIds": { "type": "array", "items": { "type": "string" } } } }, "DeleteResponse": { "type": "object", "properties": { "data": { "type": "object", "properties": { "records": { "type": "array", "items": { "type": "object", "properties": { "recordId": { "type": "string" }, "success": { "type": "boolean" }, "errors": { "type": "array", "items": { "type": "string" } }, "index": { "type": "integer" } } } } } } }, "required": [ "data" ] }, "Tenant": { "type": "object", "properties": { "accountId": { "type": "string" }, "moduleId": { "type": "string" } } } } }, "x-readme": { "explorer-enabled": true, "proxy-enabled": true } } ``` -------------------------------- ### Update Collection Record Source: https://docs.api.assetpanda.app/reference/put_collection-records This endpoint allows updating collection records. Note that it can process at most 5 records per request and every record should contain recordId. ```APIDOC ## PUT /collection-records ### Description This endpoint allows updating collection records. It can process at most 5 records per request, and each record must contain a `recordId`. ### Method PUT ### Endpoint /collection-records ### Request Body - **tenant** (object) - Required - Tenant information. - **accountId** (string) - Required - The account ID of the tenant. - **moduleId** (string) - Required - The module ID of the tenant. - **collectionId** (string) - Required - The ID of the collection to update. - **records** (array) - Required - An array of records to update. Each object in the array must contain: - **recordId** (string) - Required - The ID of the record to update. - **references** (object) - Optional - An object containing reference data. Keys should correspond to valid column IDs, and values should be the record IDs of the referenced records. - Additional properties can be added to the record object, where keys correspond to valid column IDs and values are of the appropriate data type. ### Request Example ```json { "tenant": { "accountId": "your_account_id", "moduleId": "your_module_id" }, "collectionId": "your_collection_id", "records": [ { "recordId": "record_1_id", "field_to_update": "new_value", "references": { "related_record_field": "related_record_id" } }, { "recordId": "record_2_id", "another_field": 123 } ] } ``` ### Response #### Success Response (200) - **data** (object) - Contains the updated collection record details. - **id** (string) - The ID of the updated record. #### Response Example ```json { "data": { "id": "record_1_id" } } ``` ```