CRM
Manage contacts, companies, activities, and CRM data.
GET
Get one activity's description, writing app and JSON data payload
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/activities/{activityId}Parameters
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
- activityIdRequired
- path · string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});const { activities } = await gc.crm.listCrmActivities({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id,});
const { activity } = await gc.crm.getCrmActivity({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id, activityId: activities[0].id,});
GET
List the activity timeline for a whole CRM app, newest first, searchable
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/activitiesParameters
- page
- query · number
- pageSize
- query · number
- lite
- query · string
- sort
- query · string
- search
- query · string
- contactId
- query · string
- companyId
- query · string
- writtenBy
- query · string
- createdAt
- query · string
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});
const { activities } = await gc.crm.listCrmActivities({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id,});
POST
Log a past-tense sentence onto a contact or company timeline, append-only
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/activitiesParameters
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
BodyRequired
- data
- object
- companyId
- string
- contactId
- string
- writtenBy
- string
- descriptionRequired
- string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});
const result = await gc.crm.logCrmActivity({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id, data: { type: "note", content: "Followed up with customer" },});
GET
List a company's activity timeline, newest first, whatever app logged it
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/companies/{companyId}/activitiesParameters
- page
- query · number
- pageSize
- query · number
- lite
- query · string
- sort
- query · string
- search
- query · string
- writtenBy
- query · string
- contactId
- query · string
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
- companyIdRequired
- path · string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});const { companies } = await gc.crm.listCrmCompanies({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id,});
const { activities } = await gc.crm.listCrmCompanyActivities({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id, companyId: companies[0].id,});
GET
List contacts linked to one company, paginated, alphabetical by last name
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/companies/{companyId}/contactsParameters
- page
- query · number
- pageSize
- query · number
- lite
- query · string
- sort
- query · string
- search
- query · string
- status
- query · string
- source
- query · string
- title
- query · string
- department
- query · string
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
- companyIdRequired
- path · string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});const { companies } = await gc.crm.listCrmCompanies({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id,});
const { contacts } = await gc.crm.listCrmCompanyContacts({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id, companyId: companies[0].id,});
GET
A company's timeline — its people's happenings, one stream
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/companies/{companyId}/edgesParameters
- page
- query · number
- pageSize
- query · number
- lite
- query · string
- limit
- query · integer
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
- companyIdRequired
- path · string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});const { companies } = await gc.crm.listCrmCompanies({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id,});
const { edges } = await gc.crm.listCrmCompanyEdges({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id, companyId: companies[0].id,});
GET
Get one company with its profile fields and count of linked contacts
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/companies/{companyId}Parameters
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
- companyIdRequired
- path · string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});const { companies } = await gc.crm.listCrmCompanies({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id,});
const { company } = await gc.crm.getCrmCompany({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id, companyId: companies[0].id,});
GET
List companies in one CRM app, alphabetical by name, each with contact count
/organizations/{organizationId}/projects/{projectId}/apps/crm/{appId}/companiesParameters
- page
- query · number
- pageSize
- query · number
- lite
- query · string
- sort
- query · string
- search
- query · string
- name
- query · string
- industry
- query · string
- size
- query · string
- query · string
- website
- query · string
- organizationIdRequired
- path · string
- projectIdRequired
- path · string
- appIdRequired
- path · string
SDK
import { createGiantContext } from "@giantcontext/sdk-typescript";
const gc = createGiantContext({ apiKey: process.env.GIANTCONTEXT_API_KEY! });
const { organizations: orgs } = await gc.me.listMyOrganizations();const { projects } = await gc.projects.listProjects({ organizationId: orgs[0].id });const { apps } = await gc.projects.listProjectApps({ organizationId: orgs[0].id, projectId: projects[0].id,});
const { companies } = await gc.crm.listCrmCompanies({ organizationId: orgs[0].id, projectId: projects[0].id, appId: apps[0].id,});
BuiltAutonomously With AI
This content was built autonomously. Giant Context analyzed the site, determined what was missing, created and submitted an idea and draft, which Giant Context staff accepted and published.