@datadog/datadog-api-client
Version:
OpenAPI client for Datadog APIs
311 lines (310 loc) • 14.3 kB
TypeScript
import { BaseAPIRequestFactory } from "../../datadog-api-client-common/baseapi";
import { Configuration } from "../../datadog-api-client-common/configuration";
import { RequestContext, ResponseContext } from "../../datadog-api-client-common/http/http";
import { BatchDeleteRowsRequestArray } from "../models/BatchDeleteRowsRequestArray";
import { BatchRowsQueryRequest } from "../models/BatchRowsQueryRequest";
import { BatchRowsQueryResponse } from "../models/BatchRowsQueryResponse";
import { BatchUpsertRowsRequestArray } from "../models/BatchUpsertRowsRequestArray";
import { CreateTableRequest } from "../models/CreateTableRequest";
import { CreateUploadRequest } from "../models/CreateUploadRequest";
import { CreateUploadResponse } from "../models/CreateUploadResponse";
import { ListRowsResponse } from "../models/ListRowsResponse";
import { PatchTableRequest } from "../models/PatchTableRequest";
import { ReferenceTableSortType } from "../models/ReferenceTableSortType";
import { TableResultV2 } from "../models/TableResultV2";
import { TableResultV2Array } from "../models/TableResultV2Array";
import { TableRowResourceArray } from "../models/TableRowResourceArray";
export declare class ReferenceTablesApiRequestFactory extends BaseAPIRequestFactory {
batchRowsQuery(body: BatchRowsQueryRequest, _options?: Configuration): Promise<RequestContext>;
createReferenceTable(body: CreateTableRequest, _options?: Configuration): Promise<RequestContext>;
createReferenceTableUpload(body: CreateUploadRequest, _options?: Configuration): Promise<RequestContext>;
deleteRows(id: string, body: BatchDeleteRowsRequestArray, _options?: Configuration): Promise<RequestContext>;
deleteTable(id: string, _options?: Configuration): Promise<RequestContext>;
getRowsByID(id: string, rowId: Array<string>, _options?: Configuration): Promise<RequestContext>;
getTable(id: string, _options?: Configuration): Promise<RequestContext>;
listReferenceTableRows(id: string, pageLimit?: number, pageContinuationToken?: string, _options?: Configuration): Promise<RequestContext>;
listTables(pageLimit?: number, pageOffset?: number, sort?: ReferenceTableSortType, filterStatus?: string, filterTableNameExact?: string, filterTableNameContains?: string, _options?: Configuration): Promise<RequestContext>;
updateReferenceTable(id: string, body: PatchTableRequest, _options?: Configuration): Promise<RequestContext>;
upsertRows(id: string, body: BatchUpsertRowsRequestArray, _options?: Configuration): Promise<RequestContext>;
}
export declare class ReferenceTablesApiResponseProcessor {
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to batchRowsQuery
* @throws ApiException if the response code was not in [200, 299]
*/
batchRowsQuery(response: ResponseContext): Promise<BatchRowsQueryResponse>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to createReferenceTable
* @throws ApiException if the response code was not in [200, 299]
*/
createReferenceTable(response: ResponseContext): Promise<TableResultV2>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to createReferenceTableUpload
* @throws ApiException if the response code was not in [200, 299]
*/
createReferenceTableUpload(response: ResponseContext): Promise<CreateUploadResponse>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to deleteRows
* @throws ApiException if the response code was not in [200, 299]
*/
deleteRows(response: ResponseContext): Promise<void>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to deleteTable
* @throws ApiException if the response code was not in [200, 299]
*/
deleteTable(response: ResponseContext): Promise<void>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to getRowsByID
* @throws ApiException if the response code was not in [200, 299]
*/
getRowsByID(response: ResponseContext): Promise<TableRowResourceArray>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to getTable
* @throws ApiException if the response code was not in [200, 299]
*/
getTable(response: ResponseContext): Promise<TableResultV2>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to listReferenceTableRows
* @throws ApiException if the response code was not in [200, 299]
*/
listReferenceTableRows(response: ResponseContext): Promise<ListRowsResponse>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to listTables
* @throws ApiException if the response code was not in [200, 299]
*/
listTables(response: ResponseContext): Promise<TableResultV2Array>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to updateReferenceTable
* @throws ApiException if the response code was not in [200, 299]
*/
updateReferenceTable(response: ResponseContext): Promise<void>;
/**
* Unwraps the actual response sent by the server from the response context and deserializes the response content
* to the expected objects
*
* @params response Response returned by the server for a request to upsertRows
* @throws ApiException if the response code was not in [200, 299]
*/
upsertRows(response: ResponseContext): Promise<void>;
}
export interface ReferenceTablesApiBatchRowsQueryRequest {
/**
* @type BatchRowsQueryRequest
*/
body: BatchRowsQueryRequest;
}
export interface ReferenceTablesApiCreateReferenceTableRequest {
/**
* @type CreateTableRequest
*/
body: CreateTableRequest;
}
export interface ReferenceTablesApiCreateReferenceTableUploadRequest {
/**
* @type CreateUploadRequest
*/
body: CreateUploadRequest;
}
export interface ReferenceTablesApiDeleteRowsRequest {
/**
* Unique identifier of the reference table to delete rows from
* @type string
*/
id: string;
/**
* @type BatchDeleteRowsRequestArray
*/
body: BatchDeleteRowsRequestArray;
}
export interface ReferenceTablesApiDeleteTableRequest {
/**
* Unique identifier of the reference table to delete
* @type string
*/
id: string;
}
export interface ReferenceTablesApiGetRowsByIDRequest {
/**
* Unique identifier of the reference table to get rows from
* @type string
*/
id: string;
/**
* List of row IDs (primary key values) to retrieve from the reference table.
* @type Array<string>
*/
rowId: Array<string>;
}
export interface ReferenceTablesApiGetTableRequest {
/**
* Unique identifier of the reference table to retrieve
* @type string
*/
id: string;
}
export interface ReferenceTablesApiListReferenceTableRowsRequest {
/**
* Unique identifier of the reference table to list rows from.
* @type string
*/
id: string;
/**
* Number of rows to return per page. Defaults to 100, maximum is 1000.
* @type number
*/
pageLimit?: number;
/**
* Opaque cursor from the previous response's next link. Pass this to retrieve the next page on the same consistent snapshot.
* @type string
*/
pageContinuationToken?: string;
}
export interface ReferenceTablesApiListTablesRequest {
/**
* Number of tables to return.
* @type number
*/
pageLimit?: number;
/**
* Number of tables to skip for pagination.
* @type number
*/
pageOffset?: number;
/**
* Sort field and direction for the list of reference tables. Use field name for ascending, prefix with "-" for descending.
* @type ReferenceTableSortType
*/
sort?: ReferenceTableSortType;
/**
* Filter by table status.
* @type string
*/
filterStatus?: string;
/**
* Filter by exact table name match.
* @type string
*/
filterTableNameExact?: string;
/**
* Filter by table name containing substring.
* @type string
*/
filterTableNameContains?: string;
}
export interface ReferenceTablesApiUpdateReferenceTableRequest {
/**
* Unique identifier of the reference table to update
* @type string
*/
id: string;
/**
* @type PatchTableRequest
*/
body: PatchTableRequest;
}
export interface ReferenceTablesApiUpsertRowsRequest {
/**
* Unique identifier of the reference table to upsert rows into
* @type string
*/
id: string;
/**
* @type BatchUpsertRowsRequestArray
*/
body: BatchUpsertRowsRequestArray;
}
export declare class ReferenceTablesApi {
private requestFactory;
private responseProcessor;
private configuration;
constructor(configuration: Configuration, requestFactory?: ReferenceTablesApiRequestFactory, responseProcessor?: ReferenceTablesApiResponseProcessor);
/**
* Batch query reference table rows by their primary key values. Returns only found rows in the included array.
* @param param The request object
*/
batchRowsQuery(param: ReferenceTablesApiBatchRowsQueryRequest, options?: Configuration): Promise<BatchRowsQueryResponse>;
/**
* Creates a reference table. You can provide data in two ways:
* 1. Call POST /api/v2/reference-tables/upload to get an upload ID. Then, PUT the CSV data
* (not the file itself) in chunks to each URL in the request body. Finally, call this
* POST endpoint with `upload_id` in `file_metadata`.
* 2. Provide `access_details` in `file_metadata` pointing to a CSV file in cloud storage.
* @param param The request object
*/
createReferenceTable(param: ReferenceTablesApiCreateReferenceTableRequest, options?: Configuration): Promise<TableResultV2>;
/**
* Create a reference table upload for bulk data ingestion
* @param param The request object
*/
createReferenceTableUpload(param: ReferenceTablesApiCreateReferenceTableUploadRequest, options?: Configuration): Promise<CreateUploadResponse>;
/**
* Delete multiple rows from a Reference Table by their primary key values.
* @param param The request object
*/
deleteRows(param: ReferenceTablesApiDeleteRowsRequest, options?: Configuration): Promise<void>;
/**
* Delete a reference table by ID
* @param param The request object
*/
deleteTable(param: ReferenceTablesApiDeleteTableRequest, options?: Configuration): Promise<void>;
/**
* Get reference table rows by their primary key values.
* @param param The request object
*/
getRowsByID(param: ReferenceTablesApiGetRowsByIDRequest, options?: Configuration): Promise<TableRowResourceArray>;
/**
* Get a reference table by ID
* @param param The request object
*/
getTable(param: ReferenceTablesApiGetTableRequest, options?: Configuration): Promise<TableResultV2>;
/**
* List all rows in a reference table using cursor-based pagination. Pass the `page[continuation_token]` from the previous response to fetch the next page on the same consistent snapshot. Returns 400 for tables with more than 10,000,000 rows.
* @param param The request object
*/
listReferenceTableRows(param: ReferenceTablesApiListReferenceTableRowsRequest, options?: Configuration): Promise<ListRowsResponse>;
/**
* List all reference tables in this organization.
* @param param The request object
*/
listTables(param?: ReferenceTablesApiListTablesRequest, options?: Configuration): Promise<TableResultV2Array>;
/**
* Update a reference table by ID. You can update the table's data, description, and tags. Note: The source type cannot be changed after table creation. For data updates: For existing tables of type `source:LOCAL_FILE`, call POST api/v2/reference-tables/uploads first to get an upload ID, then PUT chunks of CSV data to each provided URL, and finally call this PATCH endpoint with the upload_id in file_metadata. For existing tables with `source:` types of `S3`, `GCS`, or `AZURE`, provide updated access_details in file_metadata pointing to a CSV file in the same type of cloud storage.
* @param param The request object
*/
updateReferenceTable(param: ReferenceTablesApiUpdateReferenceTableRequest, options?: Configuration): Promise<void>;
/**
* Create or update rows in a Reference Table by their primary key values. If a row with the specified primary key exists, it is updated; otherwise, a new row is created.
* @param param The request object
*/
upsertRows(param: ReferenceTablesApiUpsertRowsRequest, options?: Configuration): Promise<void>;
}