API Methods

Complete reference for all available SDK methods.

Data Operations

get()

Retrieve a single resource by ID.

signature.ts
sdk.get(id: string, options?: GetOptions): Promise<Resource>

Example:

get-example.ts
const resource = await sdk.get("res_123", {
include: ["metadata", "relations"],
});

list()

List all resources with pagination.

signature.ts
sdk.list(options?: ListOptions): Promise<ListResponse<Resource>>

Example:

list-example.ts
const { data, hasMore, nextCursor } = await sdk.list({
limit: 20,
cursor: "cursor_abc",
filter: {
status: "active",
},
});

create()

Create a new resource.

signature.ts
sdk.create(data: CreateData): Promise<Resource>

Example:

create-example.ts
const newResource = await sdk.create({
name: "New Resource",
description: "Description here",
metadata: {
category: "example",
},
});

update()

Update an existing resource.

signature.ts
sdk.update(id: string, data: UpdateData): Promise<Resource>

Example:

update-example.ts
const updated = await sdk.update("res_123", {
name: "Updated Name",
metadata: {
category: "updated",
},
});

delete()

Delete a resource.

signature.ts
sdk.delete(id: string): Promise<void>

Example:

delete-example.ts
await sdk.delete("res_123");

Batch Operations

batchCreate()

Create multiple resources in a single request.

signature.ts
sdk.batchCreate(items: CreateData[]): Promise<BatchResult<Resource>>

Example:

batch-create-example.ts
const result = await sdk.batchCreate([
{ name: "Resource 1" },
{ name: "Resource 2" },
{ name: "Resource 3" },
]);
console.log(`Created ${result.successful.length} resources`);
console.log(`Failed ${result.failed.length} resources`);

batchUpdate()

Update multiple resources.

signature.ts
sdk.batchUpdate(updates: BatchUpdate[]): Promise<BatchResult<Resource>>

Example:

batch-update-example.ts
const result = await sdk.batchUpdate([
{ id: "res_1", data: { name: "Updated 1" } },
{ id: "res_2", data: { name: "Updated 2" } },
]);

Batch operations are more efficient than individual requests when working with multiple resources.

Search & Filter

search()

Search resources using full-text search.

signature.ts
sdk.search(query: string, options?: SearchOptions): Promise<SearchResult>

Example:

search-example.ts
const results = await sdk.search("keyword", {
fields: ["name", "description"],
limit: 10,
});

filter()

Advanced filtering with multiple conditions.

signature.ts
sdk.filter(filters: FilterConditions): Promise<Resource[]>

Example:

filter-example.ts
const filtered = await sdk.filter({
status: { equals: "active" },
createdAt: { gte: new Date("2024-01-01") },
name: { contains: "example" },
});

Relationships

getRelated()

Get related resources.

signature.ts
sdk.getRelated(id: string, relation: string): Promise<Resource[]>

Example:

get-related-example.ts
const related = await sdk.getRelated("res_123", "children");

associate()

Associate resources.

signature.ts
sdk.associate(id: string, relatedId: string): Promise<void>

Example:

associate-example.ts
await sdk.associate("res_123", "rel_456");

Webhooks

createWebhook()

Register a webhook endpoint.

signature.ts
sdk.createWebhook(config: WebhookConfig): Promise<Webhook>

Example:

webhook-example.ts
const webhook = await sdk.createWebhook({
url: "https://example.com/webhook",
events: ["resource.created", "resource.updated"],
secret: "webhook_secret",
});

listWebhooks()

List all registered webhooks.

signature.ts
sdk.listWebhooks(): Promise<Webhook[]>

All methods return Promises and support async/await for clean, readable code.

Next Steps