@graph8/sdk 0.13.1 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +127 -2
- package/dist/index.d.mts +470 -18
- package/dist/index.d.ts +470 -18
- package/dist/index.js +434 -44
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +431 -44
- package/dist/index.mjs.map +1 -1
- package/dist/react.d.mts +447 -12
- package/dist/react.d.ts +447 -12
- package/dist/react.js +426 -44
- package/dist/react.js.map +1 -1
- package/dist/react.mjs +426 -44
- package/dist/react.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -1550,6 +1550,8 @@ declare const createInboxClient: (apiKey: string, apiUrl?: string) => {
|
|
|
1550
1550
|
};
|
|
1551
1551
|
|
|
1552
1552
|
interface Deal {
|
|
1553
|
+
/** Canonical CRM revision returned by a conditional update. */
|
|
1554
|
+
revision?: number | null;
|
|
1553
1555
|
id: string | null;
|
|
1554
1556
|
name: string | null;
|
|
1555
1557
|
description: string | null;
|
|
@@ -1614,6 +1616,8 @@ interface DealCreateParams {
|
|
|
1614
1616
|
allow_duplicate?: boolean;
|
|
1615
1617
|
}
|
|
1616
1618
|
interface DealUpdateParams {
|
|
1619
|
+
/** Require this current CRM revision; a stale edit returns HTTP 409. */
|
|
1620
|
+
expected_revision?: number;
|
|
1617
1621
|
name?: string;
|
|
1618
1622
|
description?: string;
|
|
1619
1623
|
amount?: number;
|
|
@@ -1739,6 +1743,7 @@ declare const createDealsClient: (apiKey: string, apiUrl?: string) => {
|
|
|
1739
1743
|
}>;
|
|
1740
1744
|
};
|
|
1741
1745
|
|
|
1746
|
+
type CustomObjectIcon = "box" | "briefcase" | "building" | "calendar" | "flag" | "folder" | "globe" | "heart" | "layers" | "package" | "target" | "users";
|
|
1742
1747
|
/** A custom object type in your workspace — a record type you define. */
|
|
1743
1748
|
interface CustomObject {
|
|
1744
1749
|
/** Stable API slug, e.g. `invoices`. */
|
|
@@ -1748,6 +1753,28 @@ interface CustomObject {
|
|
|
1748
1753
|
/** True for object types graph8 ships; system objects cannot be deleted. */
|
|
1749
1754
|
is_system: boolean;
|
|
1750
1755
|
is_archived: boolean;
|
|
1756
|
+
/** Presentation settings may be absent on older servers. */
|
|
1757
|
+
description?: string | null;
|
|
1758
|
+
icon?: string | null;
|
|
1759
|
+
display_attribute_slug?: string | null;
|
|
1760
|
+
}
|
|
1761
|
+
/** Native schema creation requires objects:manage and current Admin access. */
|
|
1762
|
+
interface CreateCustomObject {
|
|
1763
|
+
slug: string;
|
|
1764
|
+
singular_noun: string;
|
|
1765
|
+
plural_noun: string;
|
|
1766
|
+
description?: string | null;
|
|
1767
|
+
icon?: CustomObjectIcon | null;
|
|
1768
|
+
}
|
|
1769
|
+
/** Omitted labels/state are preserved. The API slug is immutable. */
|
|
1770
|
+
interface UpdateCustomObject {
|
|
1771
|
+
singular_noun?: string;
|
|
1772
|
+
plural_noun?: string;
|
|
1773
|
+
is_archived?: boolean;
|
|
1774
|
+
/** Omit to preserve; null clears the setting. */
|
|
1775
|
+
description?: string | null;
|
|
1776
|
+
icon?: CustomObjectIcon | null;
|
|
1777
|
+
display_attribute_slug?: string | null;
|
|
1751
1778
|
}
|
|
1752
1779
|
/**
|
|
1753
1780
|
* One attribute on a custom object, and the rules its values must satisfy.
|
|
@@ -1760,6 +1787,15 @@ interface CustomObject {
|
|
|
1760
1787
|
*/
|
|
1761
1788
|
interface CustomObjectAttribute {
|
|
1762
1789
|
slug: string;
|
|
1790
|
+
/** Customer-facing label. Display metadata is absent on older servers. */
|
|
1791
|
+
title?: string;
|
|
1792
|
+
description?: string | null;
|
|
1793
|
+
/** Display order; ties are ordered by slug. */
|
|
1794
|
+
sort_order?: number;
|
|
1795
|
+
/** Protected system field rather than a customer-defined field. */
|
|
1796
|
+
is_system?: boolean;
|
|
1797
|
+
/** Archive state; absent on older servers. */
|
|
1798
|
+
is_archived?: boolean;
|
|
1763
1799
|
attribute_type: string;
|
|
1764
1800
|
is_required: boolean;
|
|
1765
1801
|
/** No two ACTIVE records may hold the same value. A collision returns 409. */
|
|
@@ -1772,6 +1808,24 @@ interface CustomObjectAttribute {
|
|
|
1772
1808
|
/** Type-specific configuration, e.g. the allowed options for a `select`. */
|
|
1773
1809
|
config: Record<string, unknown>;
|
|
1774
1810
|
}
|
|
1811
|
+
/** Schema creation requires objects:manage and current Admin access. */
|
|
1812
|
+
interface CreateCustomObjectAttribute {
|
|
1813
|
+
slug: string;
|
|
1814
|
+
title: string;
|
|
1815
|
+
attribute_type: "text" | "number" | "currency" | "date" | "timestamp" | "checkbox" | "select" | "status" | "email_address" | "phone_number" | "domain" | "location" | "personal_name" | "record_reference" | "rating" | "actor_reference";
|
|
1816
|
+
description?: string | null;
|
|
1817
|
+
is_required?: boolean;
|
|
1818
|
+
is_unique?: boolean;
|
|
1819
|
+
is_multiselect?: boolean;
|
|
1820
|
+
is_default_value_enabled?: boolean;
|
|
1821
|
+
default_value?: unknown;
|
|
1822
|
+
config?: Record<string, unknown>;
|
|
1823
|
+
sort_order?: number;
|
|
1824
|
+
}
|
|
1825
|
+
/** Omitted fields are preserved; explicit null can clear the configured default. */
|
|
1826
|
+
type UpdateCustomObjectAttribute = Partial<Omit<CreateCustomObjectAttribute, "slug" | "attribute_type">> & {
|
|
1827
|
+
is_archived?: boolean;
|
|
1828
|
+
};
|
|
1775
1829
|
/** One record, with its currently active attribute values. */
|
|
1776
1830
|
interface CustomObjectRecord {
|
|
1777
1831
|
id: string;
|
|
@@ -1802,6 +1856,29 @@ interface CustomObjectHistory {
|
|
|
1802
1856
|
record_id: string;
|
|
1803
1857
|
entries: CustomObjectHistoryEntry[];
|
|
1804
1858
|
}
|
|
1859
|
+
interface CustomObjectMutation {
|
|
1860
|
+
id: string;
|
|
1861
|
+
action: "created" | "updated" | "archived" | "restored";
|
|
1862
|
+
occurred_at: string;
|
|
1863
|
+
revision: number;
|
|
1864
|
+
actor_id: string | null;
|
|
1865
|
+
actor_type: "user" | "api" | "app" | "integration" | "system";
|
|
1866
|
+
source: string;
|
|
1867
|
+
app_id: string | null;
|
|
1868
|
+
changes: Record<string, {
|
|
1869
|
+
before_present: boolean;
|
|
1870
|
+
before: unknown;
|
|
1871
|
+
after_present: boolean;
|
|
1872
|
+
after: unknown;
|
|
1873
|
+
}>;
|
|
1874
|
+
was_archived: boolean;
|
|
1875
|
+
is_archived: boolean;
|
|
1876
|
+
}
|
|
1877
|
+
interface CustomObjectMutations {
|
|
1878
|
+
record_id: string;
|
|
1879
|
+
entries: CustomObjectMutation[];
|
|
1880
|
+
next_cursor: string | null;
|
|
1881
|
+
}
|
|
1805
1882
|
interface ListRecordsParams {
|
|
1806
1883
|
page?: number;
|
|
1807
1884
|
/** 1-200, default 50. */
|
|
@@ -1866,16 +1943,33 @@ interface ObjectPagination {
|
|
|
1866
1943
|
*/
|
|
1867
1944
|
declare const createObjectsClient: (apiKey: string, apiUrl?: string) => {
|
|
1868
1945
|
/** List the custom object types in your workspace. */
|
|
1869
|
-
list(
|
|
1946
|
+
list(params?: {
|
|
1947
|
+
include_archived?: boolean;
|
|
1948
|
+
}): Promise<{
|
|
1870
1949
|
data: CustomObject[];
|
|
1871
1950
|
}>;
|
|
1951
|
+
/** Create a native custom object. Requires objects:manage and Admin access. */
|
|
1952
|
+
create(input: CreateCustomObject): Promise<CustomObject>;
|
|
1953
|
+
/** Rename, archive or restore an object while preserving its slug and data. */
|
|
1954
|
+
update(objectSlug: string, input: UpdateCustomObject): Promise<CustomObject>;
|
|
1955
|
+
/** Archive the object without deleting records; restore with update({ is_archived: false }). */
|
|
1956
|
+
archive(objectSlug: string): Promise<CustomObject>;
|
|
1872
1957
|
/** Fetch one object type by slug. */
|
|
1873
1958
|
get(objectSlug: string): Promise<CustomObject>;
|
|
1874
1959
|
/** The object's attributes — the schema its records must satisfy. */
|
|
1875
|
-
listAttributes(objectSlug: string
|
|
1960
|
+
listAttributes(objectSlug: string, params?: {
|
|
1961
|
+
include_archived?: boolean;
|
|
1962
|
+
}): Promise<{
|
|
1876
1963
|
data: CustomObjectAttribute[];
|
|
1877
1964
|
}>;
|
|
1878
|
-
/**
|
|
1965
|
+
/** Create a field using the same schema rules as the customer UI. */
|
|
1966
|
+
createAttribute(objectSlug: string, input: CreateCustomObjectAttribute): Promise<CustomObjectAttribute>;
|
|
1967
|
+
/** Edit or restore a field; its type and slug are immutable. */
|
|
1968
|
+
updateAttribute(objectSlug: string, attributeSlug: string, input: UpdateCustomObjectAttribute): Promise<CustomObjectAttribute>;
|
|
1969
|
+
/** Archive without deleting values; restore with updateAttribute({ is_archived: false }). */
|
|
1970
|
+
archiveAttribute(objectSlug: string, attributeSlug: string): Promise<CustomObjectAttribute>;
|
|
1971
|
+
/** Paginated custom records or canonical deals with current values and revisions.
|
|
1972
|
+
* Deal totals and related references respect current record access. */
|
|
1879
1973
|
listRecords(objectSlug: string, params?: ListRecordsParams): Promise<{
|
|
1880
1974
|
data: CustomObjectRecord[];
|
|
1881
1975
|
pagination?: ObjectPagination;
|
|
@@ -1886,18 +1980,28 @@ declare const createObjectsClient: (apiKey: string, apiUrl?: string) => {
|
|
|
1886
1980
|
* unique attribute is a 409.
|
|
1887
1981
|
*/
|
|
1888
1982
|
createRecord(objectSlug: string, values: Record<string, unknown>): Promise<CustomObjectRecord>;
|
|
1889
|
-
/**
|
|
1983
|
+
/** Match a unique single-value key, creating or updating while preserving omitted fields. */
|
|
1984
|
+
upsertRecord(objectSlug: string, matchingAttribute: string, values: Record<string, unknown>, options?: {
|
|
1985
|
+
expectedRevision?: number;
|
|
1986
|
+
}): Promise<CustomObjectRecord>;
|
|
1987
|
+
/** Fetch one custom record, canonical contact/company, or deal by its stable graph8 ID.
|
|
1988
|
+
* Deals retain their UUIDs and expose company, primary-contact and contact_ids references only
|
|
1989
|
+
* when permitted. Generic deal mutations are not yet supported.
|
|
1990
|
+
*/
|
|
1890
1991
|
getRecord(objectSlug: string, recordId: string): Promise<CustomObjectRecord>;
|
|
1891
1992
|
/**
|
|
1892
1993
|
* Update a record. PARTIAL: only the attributes you send are touched, so
|
|
1893
1994
|
* required attributes you omit are left alone rather than reported missing.
|
|
1894
1995
|
* Sending an explicit `null` CLEARS that attribute.
|
|
1895
1996
|
*
|
|
1896
|
-
*
|
|
1897
|
-
*
|
|
1997
|
+
* Custom values retain generations through `history`. Canonical contacts and
|
|
1998
|
+
* companies require expectedRevision from a fresh read and expose recorded
|
|
1999
|
+
* mutations through `changes`. They do not yet support appendValues/removeValues.
|
|
1898
2000
|
*/
|
|
1899
2001
|
updateRecord(objectSlug: string, recordId: string, values: Record<string, unknown>, options?: {
|
|
1900
2002
|
expectedRevision?: number;
|
|
2003
|
+
appendValues?: Record<string, unknown[]>;
|
|
2004
|
+
removeValues?: Record<string, unknown[]>;
|
|
1901
2005
|
}): Promise<CustomObjectRecord>;
|
|
1902
2006
|
/**
|
|
1903
2007
|
* Archive a record. It leaves listings, stays readable by id, and keeps its
|
|
@@ -1911,6 +2015,284 @@ declare const createObjectsClient: (apiKey: string, apiUrl?: string) => {
|
|
|
1911
2015
|
* null is the value currently in force.
|
|
1912
2016
|
*/
|
|
1913
2017
|
history(objectSlug: string, recordId: string, limit?: number): Promise<CustomObjectHistory>;
|
|
2018
|
+
/** Recorded custom-record or canonical contact/company mutations. Pass next_cursor to continue.
|
|
2019
|
+
* Canonical history respects current access/privacy; archived records and older
|
|
2020
|
+
* unrecorded writes are not reconstructed. Store unavailability returns 503.
|
|
2021
|
+
*/
|
|
2022
|
+
changes(objectSlug: string, recordId: string, options?: {
|
|
2023
|
+
limit?: number;
|
|
2024
|
+
cursor?: string;
|
|
2025
|
+
}): Promise<CustomObjectMutations>;
|
|
2026
|
+
};
|
|
2027
|
+
|
|
2028
|
+
/**
|
|
2029
|
+
* Hosted app platform — deployments, domains, secrets, source and logs (M9 J14).
|
|
2030
|
+
*
|
|
2031
|
+
* WHAT WAS MISSING. `apps.ts` covered creating an app and reading its installs,
|
|
2032
|
+
* usage and limit. Everything that actually SHIPS one -- binding a source,
|
|
2033
|
+
* queueing a deployment, promoting it, attaching a hostname, reading why a build
|
|
2034
|
+
* failed -- had no client at all. That is why the build portal is read-only: not
|
|
2035
|
+
* because the routes are absent, but because nothing typed reached them.
|
|
2036
|
+
*
|
|
2037
|
+
* EVERY RESPONSE ON THIS SURFACE IS WRAPPED as `{data, pagination}`, and
|
|
2038
|
+
* `pagination` is always null here -- none of these routes paginate. The helpers
|
|
2039
|
+
* below unwrap `data` so callers work with the record, except where the list IS
|
|
2040
|
+
* the answer.
|
|
2041
|
+
*
|
|
2042
|
+
* DELIBERATELY ABSENT, and each for a reason:
|
|
2043
|
+
*
|
|
2044
|
+
* * `POST /apps/{id}/deployments/{id}/status` -- authenticated with the build
|
|
2045
|
+
* CONTROLLER credential, not a builder's API key. An SDK method for it would
|
|
2046
|
+
* imply a customer can move their own deployment through the state machine.
|
|
2047
|
+
* * `GET /app-platform/tls-authorize` -- Caddy's on-demand-TLS ask hook. Public,
|
|
2048
|
+
* unauthenticated, returns a bare 200 or 404 with no body. It is edge
|
|
2049
|
+
* plumbing, not a customer API.
|
|
2050
|
+
*/
|
|
2051
|
+
/** The six frozen values. Not widened to `string`: a client that switches on the
|
|
2052
|
+
* status should get a compile error when a new state is added. */
|
|
2053
|
+
type DeploymentStatus = "queued" | "building" | "promoting" | "deployed" | "failed" | "rolled_back";
|
|
2054
|
+
type DomainVerificationStatus = "pending" | "verified" | "failed" | "revoked";
|
|
2055
|
+
type SourceProvider = "github" | "gitlab" | "bitbucket";
|
|
2056
|
+
type SchemaVersionStatus = "draft" | "published" | "deprecated";
|
|
2057
|
+
interface Deployment {
|
|
2058
|
+
deployment_id: string;
|
|
2059
|
+
app_id: string;
|
|
2060
|
+
/** One of `DeploymentStatus`. Typed as the union, but the server sends a plain
|
|
2061
|
+
* string -- treat an unrecognised value as forward compatibility, not an error. */
|
|
2062
|
+
status: DeploymentStatus;
|
|
2063
|
+
source_ref: string | null;
|
|
2064
|
+
image_digest: string | null;
|
|
2065
|
+
schema_version_id: string | null;
|
|
2066
|
+
/** Sanitized at the WRITE. One line. The detail is in `logs()`. */
|
|
2067
|
+
last_error_sanitized: string | null;
|
|
2068
|
+
created_at: string | null;
|
|
2069
|
+
deployed_at: string | null;
|
|
2070
|
+
build_started_at: string | null;
|
|
2071
|
+
build_finished_at: string | null;
|
|
2072
|
+
/** Measured `building` -> `promoting`, NOT to `deployed`: `deployed` is reached
|
|
2073
|
+
* after traffic is taken, so measuring to it would count the promotion too. */
|
|
2074
|
+
build_seconds: number | null;
|
|
2075
|
+
}
|
|
2076
|
+
interface CreateDeploymentParams {
|
|
2077
|
+
/** A COMMIT-ish, never a branch name. A branch moves, so a deployment recorded
|
|
2078
|
+
* against one cannot answer "what is running right now" a week later. The
|
|
2079
|
+
* server enforces length only -- this convention is the caller's to keep. */
|
|
2080
|
+
source_ref: string;
|
|
2081
|
+
/** Pins the custom-object schema this build expects, so a rollback restores the
|
|
2082
|
+
* matching schema and not merely the matching image. */
|
|
2083
|
+
schema_version_id?: string;
|
|
2084
|
+
}
|
|
2085
|
+
interface AppDomain {
|
|
2086
|
+
domain_id: string;
|
|
2087
|
+
app_id: string;
|
|
2088
|
+
/** The canonical normalized form -- lowercased, trailing dot stripped, IDNA
|
|
2089
|
+
* encoded. NOT what you submitted. */
|
|
2090
|
+
hostname: string;
|
|
2091
|
+
status: DomainVerificationStatus;
|
|
2092
|
+
verification_token: string | null;
|
|
2093
|
+
created_at: string | null;
|
|
2094
|
+
verified_at: string | null;
|
|
2095
|
+
}
|
|
2096
|
+
interface DomainVerificationInstructions {
|
|
2097
|
+
domain: AppDomain;
|
|
2098
|
+
record_type: "TXT";
|
|
2099
|
+
record_name: string;
|
|
2100
|
+
record_value: string;
|
|
2101
|
+
}
|
|
2102
|
+
interface AppSecretMetadata {
|
|
2103
|
+
secret_key: string;
|
|
2104
|
+
/** A POINTER into your secret manager, never the secret. graph8 has no column
|
|
2105
|
+
* for a value and cannot grow one. */
|
|
2106
|
+
provider_ref: string | null;
|
|
2107
|
+
created_at: string | null;
|
|
2108
|
+
rotated_at: string | null;
|
|
2109
|
+
}
|
|
2110
|
+
interface AppSourceParams {
|
|
2111
|
+
repo_url: string;
|
|
2112
|
+
provider: SourceProvider;
|
|
2113
|
+
default_branch?: string;
|
|
2114
|
+
credential_ref?: string;
|
|
2115
|
+
}
|
|
2116
|
+
interface SchemaVersion {
|
|
2117
|
+
schema_version_id: string;
|
|
2118
|
+
app_id: string;
|
|
2119
|
+
version: number;
|
|
2120
|
+
digest: string;
|
|
2121
|
+
status: SchemaVersionStatus;
|
|
2122
|
+
manifest: Record<string, unknown>;
|
|
2123
|
+
created_at: string | null;
|
|
2124
|
+
published_at: string | null;
|
|
2125
|
+
deprecated_at: string | null;
|
|
2126
|
+
}
|
|
2127
|
+
interface ContainerLog {
|
|
2128
|
+
pod: string;
|
|
2129
|
+
container: string;
|
|
2130
|
+
/** `init` steps run to completion before the pod's containers start. A build is
|
|
2131
|
+
* four init steps (fetch, scan-source, build, scan-image) then one container
|
|
2132
|
+
* (push), so this is how you tell which step you are looking at. */
|
|
2133
|
+
kind: "init" | "container";
|
|
2134
|
+
text: string;
|
|
2135
|
+
/** The tail hit the per-container byte cap. Earlier output exists and was not
|
|
2136
|
+
* returned. */
|
|
2137
|
+
truncated: boolean;
|
|
2138
|
+
}
|
|
2139
|
+
interface AppLogs {
|
|
2140
|
+
app_id: string;
|
|
2141
|
+
/** Set for build logs; null for the running app's logs. */
|
|
2142
|
+
deployment_id: string | null;
|
|
2143
|
+
namespace: string;
|
|
2144
|
+
tail_lines: number;
|
|
2145
|
+
/**
|
|
2146
|
+
* Always true, and it means only that graph8's credential patterns ran.
|
|
2147
|
+
* It is NOT a claim the output is safe to publish: these are your own build and
|
|
2148
|
+
* application logs, and an application can print a secret in a shape no pattern
|
|
2149
|
+
* matches.
|
|
2150
|
+
*/
|
|
2151
|
+
redacted: boolean;
|
|
2152
|
+
containers: ContainerLog[];
|
|
2153
|
+
}
|
|
2154
|
+
/** Lines per container. The server refuses anything outside 1-2000 with a 422
|
|
2155
|
+
* rather than clamping, so the bound is worth knowing before you send it. */
|
|
2156
|
+
declare const MIN_TAIL_LINES = 1;
|
|
2157
|
+
declare const MAX_TAIL_LINES = 2000;
|
|
2158
|
+
declare const createAppPlatformClient: (apiKey: string, apiUrl?: string) => {
|
|
2159
|
+
/**
|
|
2160
|
+
* Bind the repository an app builds from.
|
|
2161
|
+
*
|
|
2162
|
+
* `repo_url` must be fetchable -- `https://`, `ssh://` or `git@`, with no
|
|
2163
|
+
* whitespace. A `file://` or bare path is refused with 422, because a build
|
|
2164
|
+
* that can read the builder's filesystem is a build that can read ours.
|
|
2165
|
+
*
|
|
2166
|
+
* `credential_ref` is a POINTER into your secret manager, not a token.
|
|
2167
|
+
*/
|
|
2168
|
+
setSource(appId: string, params: AppSourceParams): Promise<Record<string, unknown>>;
|
|
2169
|
+
/** Unbind the source. Returns the full app with every source field null. */
|
|
2170
|
+
clearSource(appId: string): Promise<Record<string, unknown>>;
|
|
2171
|
+
/** Every deployment for this app, newest first. Never 404s for an app with none. */
|
|
2172
|
+
listDeployments(appId: string): Promise<{
|
|
2173
|
+
data: Deployment[];
|
|
2174
|
+
}>;
|
|
2175
|
+
/**
|
|
2176
|
+
* Queue a deployment. Returns `201` with `status: "queued"` -- nothing builds
|
|
2177
|
+
* as a side effect of this call; the build controller picks it up.
|
|
2178
|
+
*
|
|
2179
|
+
* NOT idempotent: two identical calls create two deployments.
|
|
2180
|
+
*/
|
|
2181
|
+
deploy(appId: string, params: CreateDeploymentParams): Promise<Deployment>;
|
|
2182
|
+
/** Fetch one deployment. The polling endpoint for a build loop. */
|
|
2183
|
+
getDeployment(appId: string, deploymentId: string): Promise<Deployment>;
|
|
2184
|
+
/**
|
|
2185
|
+
* The deployment currently serving traffic, or `null`.
|
|
2186
|
+
*
|
|
2187
|
+
* `null` is a real answer with a 200, not a 404: "this app has never shipped"
|
|
2188
|
+
* is information, while a 404 would read as "no such app".
|
|
2189
|
+
*/
|
|
2190
|
+
activeDeployment(appId: string): Promise<Deployment | null>;
|
|
2191
|
+
/**
|
|
2192
|
+
* Promote a built deployment to serve traffic. Anything it displaces moves to
|
|
2193
|
+
* `rolled_back` in the same transaction, so there is never a moment with two
|
|
2194
|
+
* live deployments.
|
|
2195
|
+
*
|
|
2196
|
+
* `409` when the state machine forbids it -- a deployment cannot become
|
|
2197
|
+
* `deployed` without having been built, and a `failed` one cannot be revived.
|
|
2198
|
+
* A retry is a new deployment, not a resurrection.
|
|
2199
|
+
*/
|
|
2200
|
+
promote(appId: string, deploymentId: string, imageDigest: string): Promise<Deployment>;
|
|
2201
|
+
/** Roll back a deployment that is currently serving. Only a `deployed` one may be. */
|
|
2202
|
+
rollback(appId: string, deploymentId: string): Promise<Deployment>;
|
|
2203
|
+
/**
|
|
2204
|
+
* Why a build failed. Returns every step of the build pod in the order
|
|
2205
|
+
* Kubernetes runs them; a step that has not started yet is omitted rather
|
|
2206
|
+
* than returned empty.
|
|
2207
|
+
*
|
|
2208
|
+
* An empty `containers` list is not an error -- build pods are reaped an hour
|
|
2209
|
+
* after they finish, so logs for an older deployment are genuinely gone.
|
|
2210
|
+
* `last_error_sanitized` on the deployment is what survives.
|
|
2211
|
+
*
|
|
2212
|
+
* `503` means graph8 could not reach the cluster, which is deliberately
|
|
2213
|
+
* different from an empty `200`: one means we could not look, the other means
|
|
2214
|
+
* your build produced no output.
|
|
2215
|
+
*/
|
|
2216
|
+
deploymentLogs(appId: string, deploymentId: string, tailLines?: number): Promise<AppLogs>;
|
|
2217
|
+
/**
|
|
2218
|
+
* What the running app is printing. The app's own pods only -- the per-app
|
|
2219
|
+
* egress proxy shares the namespace and is deliberately excluded.
|
|
2220
|
+
*
|
|
2221
|
+
* Empty until a deployment reaches `deployed`.
|
|
2222
|
+
*/
|
|
2223
|
+
logs(appId: string, tailLines?: number): Promise<AppLogs>;
|
|
2224
|
+
/** Every hostname claimed for this app, whatever its verification state. */
|
|
2225
|
+
listDomains(appId: string): Promise<{
|
|
2226
|
+
data: AppDomain[];
|
|
2227
|
+
}>;
|
|
2228
|
+
/**
|
|
2229
|
+
* Claim a hostname and get the TXT record that proves you own it.
|
|
2230
|
+
*
|
|
2231
|
+
* Returns `201`, and the domain is NESTED at `data.domain` -- this is the one
|
|
2232
|
+
* route on the surface whose payload is not the record itself. Hostnames are
|
|
2233
|
+
* globally unique, so a host another app holds is refused.
|
|
2234
|
+
*/
|
|
2235
|
+
claimDomain(appId: string, hostname: string): Promise<DomainVerificationInstructions>;
|
|
2236
|
+
/**
|
|
2237
|
+
* Check DNS for the TXT record and advance the domain to `verified`.
|
|
2238
|
+
*
|
|
2239
|
+
* Idempotent: verifying an already-verified domain re-checks and stays
|
|
2240
|
+
* verified, so it is safe to re-run after a DNS change. Send no body -- the
|
|
2241
|
+
* record in DNS is the payload.
|
|
2242
|
+
*/
|
|
2243
|
+
verifyDomain(appId: string, hostname: string): Promise<AppDomain>;
|
|
2244
|
+
/**
|
|
2245
|
+
* Release a claimed hostname.
|
|
2246
|
+
*
|
|
2247
|
+
* A HARD delete. Hostnames are globally unique, so a row left behind in any
|
|
2248
|
+
* status keeps the host burned for every other builder. Releasing one you
|
|
2249
|
+
* already released is a `404`, because after the first call the claim
|
|
2250
|
+
* genuinely does not exist.
|
|
2251
|
+
*
|
|
2252
|
+
* Returns the NORMALIZED hostname, which may differ from what you passed.
|
|
2253
|
+
*/
|
|
2254
|
+
releaseDomain(appId: string, hostname: string): Promise<{
|
|
2255
|
+
hostname: string;
|
|
2256
|
+
released: boolean;
|
|
2257
|
+
}>;
|
|
2258
|
+
/**
|
|
2259
|
+
* Which secrets this app declares, and when each was last rotated.
|
|
2260
|
+
*
|
|
2261
|
+
* NEVER returns a value. graph8 stores a POINTER into your secret manager and
|
|
2262
|
+
* has no column for the secret itself.
|
|
2263
|
+
*/
|
|
2264
|
+
listSecrets(appId: string): Promise<{
|
|
2265
|
+
data: AppSecretMetadata[];
|
|
2266
|
+
}>;
|
|
2267
|
+
/**
|
|
2268
|
+
* Declare a secret, or rotate the pointer to it.
|
|
2269
|
+
*
|
|
2270
|
+
* `providerRef` is a REFERENCE, and the server rejects anything that looks
|
|
2271
|
+
* like a credential -- a value starting `bearer `, `sk-`, `ghp_`, `xox` and
|
|
2272
|
+
* friends is a 422. That refusal is the feature: it catches the mistake of
|
|
2273
|
+
* pasting the secret where its address belongs.
|
|
2274
|
+
*/
|
|
2275
|
+
putSecret(appId: string, secretKey: string, providerRef?: string): Promise<AppSecretMetadata>;
|
|
2276
|
+
/** Undeclare a secret. A key the app never declared is a 404, so a typo is
|
|
2277
|
+
* never reported as a successful removal. */
|
|
2278
|
+
deleteSecret(appId: string, secretKey: string): Promise<{
|
|
2279
|
+
secret_key: string;
|
|
2280
|
+
removed: boolean;
|
|
2281
|
+
}>;
|
|
2282
|
+
/**
|
|
2283
|
+
* Publish a custom-object schema version. Returns `201`.
|
|
2284
|
+
*
|
|
2285
|
+
* Takes only the `objects` list, not a whole `graph8.app.yaml`: the rest of
|
|
2286
|
+
* that file is app metadata the control plane already holds, and accepting it
|
|
2287
|
+
* here would create a second place for it to disagree.
|
|
2288
|
+
*/
|
|
2289
|
+
publishSchemaVersion(appId: string, objects: unknown[]): Promise<{
|
|
2290
|
+
version: SchemaVersion;
|
|
2291
|
+
}>;
|
|
2292
|
+
/** Every schema version this app has published. Empty array, never 404. */
|
|
2293
|
+
listSchemaVersions(appId: string): Promise<{
|
|
2294
|
+
data: SchemaVersion[];
|
|
2295
|
+
}>;
|
|
1914
2296
|
};
|
|
1915
2297
|
|
|
1916
2298
|
/**
|
|
@@ -2515,7 +2897,7 @@ declare const createContactsClient: (apiKey: string, apiUrl?: string) => {
|
|
|
2515
2897
|
* adds events. ``WebhookEvent`` also accepts any string so a newly-added
|
|
2516
2898
|
* backend event never breaks a client that hasn't upgraded.
|
|
2517
2899
|
*/
|
|
2518
|
-
declare const KNOWN_WEBHOOK_EVENTS: readonly ["campaign.created", "campaign.updated", "campaign.deleted", "campaign.launched", "campaign.paused", "campaign.completed", "campaign.status_changed", "campaign.content_ready", "document.generated", "document.failed", "intelligence.completed", "intelligence.failed", "company.enriched", "company_intelligence.completed", "audience.ready", "audience.failed", "sequence.draft_created", "sequence.started", "sequence.paused", "sequence.completed", "engagement.email_sent", "engagement.email_replied", "engagement.email_bounced", "engagement.email_skipped", "engagement.call_dispatched", "engagement.sms_sent", "engagement.sms_replied", "engagement.whatsapp_sent", "engagement.linkedin_connection_sent", "engagement.linkedin_message_sent", "engagement.linkedin_inmail_sent", "engagement.linkedin_reply_received", "engagement.linkedin_connection_accepted", "meeting.booked", "meeting.cancelled", "meeting.rescheduled"];
|
|
2900
|
+
declare const KNOWN_WEBHOOK_EVENTS: readonly ["campaign.created", "campaign.updated", "campaign.deleted", "campaign.launched", "campaign.paused", "campaign.completed", "campaign.status_changed", "campaign.content_ready", "document.generated", "document.failed", "intelligence.completed", "intelligence.failed", "company.enriched", "company_intelligence.completed", "audience.ready", "audience.failed", "sequence.draft_created", "sequence.started", "sequence.paused", "sequence.completed", "engagement.email_sent", "engagement.email_replied", "engagement.email_bounced", "engagement.email_skipped", "engagement.call_dispatched", "engagement.call_connected", "engagement.call_graded", "engagement.sms_sent", "engagement.sms_replied", "engagement.whatsapp_sent", "engagement.linkedin_connection_sent", "engagement.linkedin_message_sent", "engagement.linkedin_inmail_sent", "engagement.linkedin_reply_received", "engagement.linkedin_connection_accepted", "meeting.booked", "meeting.cancelled", "meeting.rescheduled", "deal.won", "crm.record.created", "crm.record.updated", "crm.record.archived", "crm.record.restored"];
|
|
2519
2901
|
type WebhookEvent = (typeof KNOWN_WEBHOOK_EVENTS)[number] | (string & {});
|
|
2520
2902
|
/** The decoded body graph8 delivers to a webhook endpoint. */
|
|
2521
2903
|
interface WebhookEventPayload {
|
|
@@ -2523,7 +2905,7 @@ interface WebhookEventPayload {
|
|
|
2523
2905
|
timestamp: string;
|
|
2524
2906
|
data: Record<string, unknown>;
|
|
2525
2907
|
org_id: string;
|
|
2526
|
-
/** Stable
|
|
2908
|
+
/** Stable event ID for consumer deduplication; delivery ID is in X-Studio-Delivery-Id. */
|
|
2527
2909
|
id?: string;
|
|
2528
2910
|
}
|
|
2529
2911
|
interface ConstructEventOptions {
|
|
@@ -2574,7 +2956,7 @@ declare const createWebhooksClient: (_apiKey: string, apiUrl?: string) => {
|
|
|
2574
2956
|
/** Base URL the webhook subscription API lives under. */
|
|
2575
2957
|
baseUrl: string;
|
|
2576
2958
|
/** Known event types (for autocomplete / validation). */
|
|
2577
|
-
knownEvents: readonly ["campaign.created", "campaign.updated", "campaign.deleted", "campaign.launched", "campaign.paused", "campaign.completed", "campaign.status_changed", "campaign.content_ready", "document.generated", "document.failed", "intelligence.completed", "intelligence.failed", "company.enriched", "company_intelligence.completed", "audience.ready", "audience.failed", "sequence.draft_created", "sequence.started", "sequence.paused", "sequence.completed", "engagement.email_sent", "engagement.email_replied", "engagement.email_bounced", "engagement.email_skipped", "engagement.call_dispatched", "engagement.sms_sent", "engagement.sms_replied", "engagement.whatsapp_sent", "engagement.linkedin_connection_sent", "engagement.linkedin_message_sent", "engagement.linkedin_inmail_sent", "engagement.linkedin_reply_received", "engagement.linkedin_connection_accepted", "meeting.booked", "meeting.cancelled", "meeting.rescheduled"];
|
|
2959
|
+
knownEvents: readonly ["campaign.created", "campaign.updated", "campaign.deleted", "campaign.launched", "campaign.paused", "campaign.completed", "campaign.status_changed", "campaign.content_ready", "document.generated", "document.failed", "intelligence.completed", "intelligence.failed", "company.enriched", "company_intelligence.completed", "audience.ready", "audience.failed", "sequence.draft_created", "sequence.started", "sequence.paused", "sequence.completed", "engagement.email_sent", "engagement.email_replied", "engagement.email_bounced", "engagement.email_skipped", "engagement.call_dispatched", "engagement.call_connected", "engagement.call_graded", "engagement.sms_sent", "engagement.sms_replied", "engagement.whatsapp_sent", "engagement.linkedin_connection_sent", "engagement.linkedin_message_sent", "engagement.linkedin_inmail_sent", "engagement.linkedin_reply_received", "engagement.linkedin_connection_accepted", "meeting.booked", "meeting.cancelled", "meeting.rescheduled", "deal.won", "crm.record.created", "crm.record.updated", "crm.record.archived", "crm.record.restored"];
|
|
2578
2960
|
/** Verify an incoming webhook's HMAC signature and return the parsed event. */
|
|
2579
2961
|
constructEvent(payload: string, signature: string, timestamp: string | number, secret: string, opts?: ConstructEventOptions): WebhookEventPayload;
|
|
2580
2962
|
};
|
|
@@ -3508,6 +3890,7 @@ declare class G8 {
|
|
|
3508
3890
|
/** @internal */ _tasks: ReturnType<typeof createTasksClient> | null;
|
|
3509
3891
|
/** @internal */ _fields: ReturnType<typeof createFieldsClient> | null;
|
|
3510
3892
|
/** @internal */ _apps: ReturnType<typeof createAppsClient> | null;
|
|
3893
|
+
/** @internal */ _appPlatform: ReturnType<typeof createAppPlatformClient> | null;
|
|
3511
3894
|
/** @internal */ _objects: ReturnType<typeof createObjectsClient> | null;
|
|
3512
3895
|
/** @internal */ _deals: ReturnType<typeof createDealsClient> | null;
|
|
3513
3896
|
/** @internal */ _inbox: ReturnType<typeof createInboxClient> | null;
|
|
@@ -3666,7 +4049,7 @@ declare class G8 {
|
|
|
3666
4049
|
}>;
|
|
3667
4050
|
listCallsForSdr(userEmail: string, extra?: {
|
|
3668
4051
|
limit?: number;
|
|
3669
|
-
date_from
|
|
4052
|
+
date_from? /** Audiences — sync audience lists to ad platforms (Meta, LinkedIn, Google, X) (requires API key). */: string;
|
|
3670
4053
|
date_to?: string;
|
|
3671
4054
|
}): Promise<{
|
|
3672
4055
|
data: Array<Record<string, unknown>>;
|
|
@@ -3676,7 +4059,7 @@ declare class G8 {
|
|
|
3676
4059
|
/** Webhook event listeners (requires API key). */
|
|
3677
4060
|
get webhooks(): {
|
|
3678
4061
|
baseUrl: string;
|
|
3679
|
-
knownEvents: readonly ["campaign.created", "campaign.updated", "campaign.deleted", "campaign.launched", "campaign.paused", "campaign.completed", "campaign.status_changed", "campaign.content_ready", "document.generated", "document.failed", "intelligence.completed", "intelligence.failed", "company.enriched", "company_intelligence.completed", "audience.ready", "audience.failed", "sequence.draft_created", "sequence.started", "sequence.paused", "sequence.completed", "engagement.email_sent", "engagement.email_replied", "engagement.email_bounced", "engagement.email_skipped", "engagement.call_dispatched", "engagement.sms_sent", "engagement.sms_replied", "engagement.whatsapp_sent", "engagement.linkedin_connection_sent", "engagement.linkedin_message_sent", "engagement.linkedin_inmail_sent", "engagement.linkedin_reply_received", "engagement.linkedin_connection_accepted", "meeting.booked", "meeting.cancelled", "meeting.rescheduled"];
|
|
4062
|
+
knownEvents: readonly ["campaign.created", "campaign.updated", "campaign.deleted", "campaign.launched", "campaign.paused", "campaign.completed", "campaign.status_changed", "campaign.content_ready", "document.generated", "document.failed", "intelligence.completed", "intelligence.failed", "company.enriched", "company_intelligence.completed", "audience.ready", "audience.failed", "sequence.draft_created", "sequence.started", "sequence.paused", "sequence.completed", "engagement.email_sent", "engagement.email_replied", "engagement.email_bounced", "engagement.email_skipped", "engagement.call_dispatched", "engagement.call_connected", "engagement.call_graded", "engagement.sms_sent", "engagement.sms_replied", "engagement.whatsapp_sent", "engagement.linkedin_connection_sent", "engagement.linkedin_message_sent", "engagement.linkedin_inmail_sent", "engagement.linkedin_reply_received", "engagement.linkedin_connection_accepted", "meeting.booked", "meeting.cancelled", "meeting.rescheduled", "deal.won", "crm.record.created", "crm.record.updated", "crm.record.archived", "crm.record.restored"];
|
|
3680
4063
|
constructEvent(payload: string, signature: string, timestamp: string | number, secret: string, opts?: ConstructEventOptions): WebhookEventPayload;
|
|
3681
4064
|
};
|
|
3682
4065
|
/** Contacts CRUD (requires API key). */
|
|
@@ -3807,27 +4190,91 @@ declare class G8 {
|
|
|
3807
4190
|
usage(appId: string, period?: string): Promise<AppUsageSummary>;
|
|
3808
4191
|
getLimit(appId: string): Promise<AppLimit | null>;
|
|
3809
4192
|
};
|
|
4193
|
+
/**
|
|
4194
|
+
* Ship a hosted app: bind a source, deploy, promote, attach a hostname, read
|
|
4195
|
+
* build logs (requires API key). PREVIEW.
|
|
4196
|
+
*
|
|
4197
|
+
* Separate from `apps` on purpose. `apps` is the app's IDENTITY -- create it,
|
|
4198
|
+
* see who installed it, what it cost. This is its LIFECYCLE, and the two have
|
|
4199
|
+
* different blast radii: a mistake here takes a customer's app down.
|
|
4200
|
+
*/
|
|
4201
|
+
get appPlatform(): {
|
|
4202
|
+
setSource(appId: string, params: AppSourceParams): Promise<Record<string, unknown>>;
|
|
4203
|
+
clearSource(appId: string): Promise<Record<string, unknown>>;
|
|
4204
|
+
listDeployments(appId: string): Promise<{
|
|
4205
|
+
data: Deployment[];
|
|
4206
|
+
}>;
|
|
4207
|
+
deploy(appId: string, params: CreateDeploymentParams): Promise<Deployment>;
|
|
4208
|
+
getDeployment(appId: string, deploymentId: string): Promise<Deployment>;
|
|
4209
|
+
activeDeployment(appId: string): Promise<Deployment | null>;
|
|
4210
|
+
promote(appId: string, deploymentId: string, imageDigest: string): Promise<Deployment>;
|
|
4211
|
+
rollback(appId: string, deploymentId: string): Promise<Deployment>;
|
|
4212
|
+
deploymentLogs(appId: string, deploymentId: string, tailLines?: number): Promise<AppLogs>;
|
|
4213
|
+
logs(appId: string, tailLines?: number): Promise<AppLogs>;
|
|
4214
|
+
listDomains(appId: string): Promise<{
|
|
4215
|
+
data: AppDomain[];
|
|
4216
|
+
}>;
|
|
4217
|
+
claimDomain(appId: string, hostname: string): Promise<DomainVerificationInstructions>;
|
|
4218
|
+
verifyDomain(appId: string, hostname: string): Promise<AppDomain>;
|
|
4219
|
+
releaseDomain(appId: string, hostname: string): Promise<{
|
|
4220
|
+
hostname: string;
|
|
4221
|
+
released: boolean;
|
|
4222
|
+
}>;
|
|
4223
|
+
listSecrets(appId: string): Promise<{
|
|
4224
|
+
data: AppSecretMetadata[];
|
|
4225
|
+
}>;
|
|
4226
|
+
putSecret(appId: string, secretKey: string, providerRef?: string): Promise<AppSecretMetadata>;
|
|
4227
|
+
deleteSecret(appId: string, secretKey: string): Promise<{
|
|
4228
|
+
secret_key: string;
|
|
4229
|
+
removed: boolean;
|
|
4230
|
+
}>;
|
|
4231
|
+
publishSchemaVersion(appId: string, objects: unknown[]): Promise<{
|
|
4232
|
+
version: SchemaVersion;
|
|
4233
|
+
}>;
|
|
4234
|
+
listSchemaVersions(appId: string): Promise<{
|
|
4235
|
+
data: SchemaVersion[];
|
|
4236
|
+
}>;
|
|
4237
|
+
};
|
|
3810
4238
|
/** Custom object types, their schema, and their records (requires API key). PREVIEW. */
|
|
3811
4239
|
get objects(): {
|
|
3812
|
-
list(
|
|
4240
|
+
list(params?: {
|
|
4241
|
+
include_archived?: boolean;
|
|
4242
|
+
}): Promise<{
|
|
3813
4243
|
data: CustomObject[];
|
|
3814
4244
|
}>;
|
|
4245
|
+
create(input: CreateCustomObject): Promise<CustomObject>;
|
|
4246
|
+
update(objectSlug: string, input: UpdateCustomObject): Promise<CustomObject>;
|
|
4247
|
+
archive(objectSlug: string): Promise<CustomObject>;
|
|
3815
4248
|
get(objectSlug: string): Promise<CustomObject>;
|
|
3816
|
-
listAttributes(objectSlug: string
|
|
4249
|
+
listAttributes(objectSlug: string, params?: {
|
|
4250
|
+
include_archived?: boolean;
|
|
4251
|
+
}): Promise<{
|
|
3817
4252
|
data: CustomObjectAttribute[];
|
|
3818
4253
|
}>;
|
|
4254
|
+
createAttribute(objectSlug: string, input: CreateCustomObjectAttribute): Promise<CustomObjectAttribute>;
|
|
4255
|
+
updateAttribute(objectSlug: string, attributeSlug: string, input: UpdateCustomObjectAttribute): Promise<CustomObjectAttribute>;
|
|
4256
|
+
archiveAttribute(objectSlug: string, attributeSlug: string): Promise<CustomObjectAttribute>;
|
|
3819
4257
|
listRecords(objectSlug: string, params?: ListRecordsParams): Promise<{
|
|
3820
4258
|
data: CustomObjectRecord[];
|
|
3821
4259
|
pagination?: ObjectPagination;
|
|
3822
4260
|
}>;
|
|
3823
4261
|
createRecord(objectSlug: string, values: Record<string, unknown>): Promise<CustomObjectRecord>;
|
|
4262
|
+
upsertRecord(objectSlug: string, matchingAttribute: string, values: Record<string, unknown>, options?: {
|
|
4263
|
+
expectedRevision?: number;
|
|
4264
|
+
}): Promise<CustomObjectRecord>;
|
|
3824
4265
|
getRecord(objectSlug: string, recordId: string): Promise<CustomObjectRecord>;
|
|
3825
4266
|
updateRecord(objectSlug: string, recordId: string, values: Record<string, unknown>, options?: {
|
|
3826
4267
|
expectedRevision?: number;
|
|
4268
|
+
appendValues?: Record<string, unknown[]>;
|
|
4269
|
+
removeValues?: Record<string, unknown[]>;
|
|
3827
4270
|
}): Promise<CustomObjectRecord>;
|
|
3828
4271
|
archiveRecord(objectSlug: string, recordId: string): Promise<CustomObjectRecord>;
|
|
3829
4272
|
restoreRecord(objectSlug: string, recordId: string): Promise<CustomObjectRecord>;
|
|
3830
4273
|
history(objectSlug: string, recordId: string, limit?: number): Promise<CustomObjectHistory>;
|
|
4274
|
+
changes(objectSlug: string, recordId: string, options?: {
|
|
4275
|
+
limit?: number;
|
|
4276
|
+
cursor?: string;
|
|
4277
|
+
}): Promise<CustomObjectMutations>;
|
|
3831
4278
|
};
|
|
3832
4279
|
/** Deals and pipelines (requires API key). */
|
|
3833
4280
|
get deals(): {
|
|
@@ -4124,7 +4571,8 @@ declare class G8 {
|
|
|
4124
4571
|
}>;
|
|
4125
4572
|
keywordContacts(keywordId: string, params?: {
|
|
4126
4573
|
limit?: number;
|
|
4127
|
-
date_from
|
|
4574
|
+
date_from
|
|
4575
|
+
/** @internal */ ? /** @internal */: string;
|
|
4128
4576
|
date_to?: string;
|
|
4129
4577
|
}): Promise<{
|
|
4130
4578
|
data: IntentContact[];
|
|
@@ -4198,7 +4646,7 @@ declare class G8 {
|
|
|
4198
4646
|
}>;
|
|
4199
4647
|
researchReports(params?: {
|
|
4200
4648
|
category?: string;
|
|
4201
|
-
limit
|
|
4649
|
+
limit? /** @internal */: number;
|
|
4202
4650
|
}): Promise<{
|
|
4203
4651
|
data: ResearchReport[];
|
|
4204
4652
|
}>;
|
|
@@ -4218,7 +4666,8 @@ declare class G8 {
|
|
|
4218
4666
|
description?: string;
|
|
4219
4667
|
firmographics?: Record<string, unknown>;
|
|
4220
4668
|
tech_stack?: Record<string, unknown>;
|
|
4221
|
-
buying_signals
|
|
4669
|
+
buying_signals
|
|
4670
|
+
/** @internal */ ? /** @internal */: unknown[];
|
|
4222
4671
|
estimated_market_size?: number;
|
|
4223
4672
|
}): Promise<{
|
|
4224
4673
|
data: ICP;
|
|
@@ -4234,7 +4683,10 @@ declare class G8 {
|
|
|
4234
4683
|
why_target?: string;
|
|
4235
4684
|
key_signals?: unknown[];
|
|
4236
4685
|
expected_receptivity?: string;
|
|
4237
|
-
campaign_approach
|
|
4686
|
+
campaign_approach? /**
|
|
4687
|
+
* Initialize the graph8 SDK. Must be called before any other method.
|
|
4688
|
+
* Safe to call on the server (SSR) - becomes a no-op for tracking.
|
|
4689
|
+
*/: string;
|
|
4238
4690
|
recommended_goal?: string;
|
|
4239
4691
|
source?: string;
|
|
4240
4692
|
}): Promise<{
|
|
@@ -4646,4 +5098,4 @@ interface Graph8ServiceClient {
|
|
|
4646
5098
|
*/
|
|
4647
5099
|
declare function createGraph8ServiceClient(config: Graph8ServiceClientConfig): Graph8ServiceClient;
|
|
4648
5100
|
|
|
4649
|
-
export { type AddToSequenceConfig, type AgencyClient, type AgencyInfo, type App, type AppCreateParams, type AppInstallation, type AppLimit, type AppRequest, type AppRequestOptions, type AppStatus, type AppTokenResponse, type AppUsageSummary, type AudienceSync, type AudienceSyncCreateParams, type AudienceSyncError, type AudienceSyncMode, type AudienceSyncPlatform, type AudienceSyncRun, type AudienceSyncUpdateParams, type Booking, type BookingRequest, type CalendarConfig, type CallGradingResult, type Campaign, type CampaignCreateConfig, type CampaignLaunchExecution, type CampaignLaunchResult, type ChatConfig, type Company, type CompanyColumn, type CompanyColumnCreateParams, type CompanyContact, type CompanyEnrichment, type CompanyListParams, type CompanyUpdateParams, type ConstructEventOptions, type Contact, type ContactColumn, type ContactColumnCreateParams, type ContactCreateParams, type ContactDeal, type ContactList, type ContactListParams, type ContactUpdateParams, type CopilotConfig, type CreatedField, type CustomObject, type CustomObjectAttribute, type CustomObjectHistory, type CustomObjectHistoryEntry, type CustomObjectRecord, DEFAULT_APP_API, type Deal, type DealCreateParams, type DealListParams, type DealUpdateParams, type DialerAgentSummary, type DialerAgentsListParams, type DialerAgentsListResult, type DialerNumberInfo, type DialerNumbersListResult, type DialerReportFilters, type DialerReportMetric, type DialerSessionCreateParams, type DialerSessionCreateResult, type DialerSessionResumeResult, type DialerSessionStatus, type DialerSessionStatusUpdateResult, type DialerSessionSummary, type DialerSessionsListParams, type DialerSessionsListResult, type DialerStatsParams, type DialerStatsResult, type EmailVerification, type EnrichLookupResult, type EvidenceKey, type Field, type FieldCreateParams, type FieldDeleteParams, type G8Config, G8Error, type G8PrivacyConfig, type GlobalContextDocument, type Graph8AppClient, type Graph8AppClientConfig, type Graph8ServiceClient, type Graph8ServiceClientConfig, type ICP, type IdentifyProperties, type InboxAssignResult, type InboxAssignee, type InboxChannel, type InboxContact, type InboxDraft, type InboxListParams, type InboxMessage, type InboxSendParams, type InboxSendResult, type InboxTag, type InboxTagResult, type InboxThread, type InstallStatus, type IntelligenceData, type IntentCompany, type IntentContact, type IntentKeyword, type IntentPage, type IntentSignals, type IntentStats, type IntentVisitor, KNOWN_WEBHOOK_EVENTS, type ListContact, type ListRecordsParams, type MarketplaceHiring, type MarketplaceOffer, type MarketplaceProfile, type MeetingAnalysis, type MeetingAttendee, type MeetingDetail, type MeetingListParams, type MeetingSummary, type MeetingTranscriptLine, type MissedCallback, type MissedCallbacksResult, type NodeTypeSchema, type Note, type ObjectPagination, type PaginatedResponse, type PaginationMeta$1 as PaginationMeta, type PersonEnrichment, type Persona, type Pipeline, type PipelineStage, type PipelineSuggestion, type QuotableProduct, type QuoteCreateParams, type QuoteDetail, type QuoteLineItem, type QuoteListParams, type QuoteSendParams, type QuoteSettings, type QuoteStatus, type QuoteSummary, type QuoteUpdateParams, type RequestOptions, type ResearchReport, type SearchCompanyItem, type SearchCondition, type SearchContactItem, type SearchFilter, type SearchOperator, type SearchParams, type SearchResults, type SearchSaveParams, type SearchSaveResult, type Sequence, type SequenceActionResult, type SequenceAnalytics, type SequenceChannelConfig, type SequenceContactItem, type SequenceContactsParams, type SequenceCreateParams, type SequenceCreateResult, type SequenceDetail, type SequenceKind, type SequenceListItem, type SequenceListParams, type SequencePreview, type SequencePreviewChannel, type SequencePreviewStep, type SequenceStepConfig, type SequenceStepInputType, type SequenceStepType, type SequenceStepUpdateParams, type SequenceUpdateParams, type SetFieldValueParams, type Skill, type SkillCreateAPIParams, type SkillCreateLLMParams, type SkillInputField, type SkillListParams, type SkillTemplate, type SkillType, type SkillUpdateAPIParams, type SkillUpdateLLMParams, type Snippet, type StageCreateParams, type StagePipeline, type StagePipelineCreateParams, type StagePipelineStage, type StagePipelineUpdateParams, type StageUpdateParams, type Task, type TaskCreateParams, type TaskListParams, type TaskUpdateParams, type TimeSlot, type TokenManager, type TrackProperties, type VisitorCompany, type VisitorScore, type VoicePagination, type WebhookEvent, type WebhookEventPayload, WebhookSignatureError, type Workflow, type WorkflowConfig, type WorkflowConnection, type WorkflowCreateParams, type WorkflowExecution, type WorkflowListParams, type WorkflowNode, type WorkflowUpdateParams, backoffDelayMs, constructEvent, createAppRequester, createGraph8AppClient, createGraph8ServiceClient, createTokenManager, exchangeBrowserToken, exchangeServiceToken, g8, isRetryableStatus, paginate, parseRetryAfter, request };
|
|
5101
|
+
export { type AddToSequenceConfig, type AgencyClient, type AgencyInfo, type App, type AppCreateParams, type AppDomain, type AppInstallation, type AppLimit, type AppLogs, type AppRequest, type AppRequestOptions, type AppSecretMetadata, type AppSourceParams, type AppStatus, type AppTokenResponse, type AppUsageSummary, type AudienceSync, type AudienceSyncCreateParams, type AudienceSyncError, type AudienceSyncMode, type AudienceSyncPlatform, type AudienceSyncRun, type AudienceSyncUpdateParams, type Booking, type BookingRequest, type CalendarConfig, type CallGradingResult, type Campaign, type CampaignCreateConfig, type CampaignLaunchExecution, type CampaignLaunchResult, type ChatConfig, type Company, type CompanyColumn, type CompanyColumnCreateParams, type CompanyContact, type CompanyEnrichment, type CompanyListParams, type CompanyUpdateParams, type ConstructEventOptions, type Contact, type ContactColumn, type ContactColumnCreateParams, type ContactCreateParams, type ContactDeal, type ContactList, type ContactListParams, type ContactUpdateParams, type ContainerLog, type CopilotConfig, type CreateCustomObject, type CreateCustomObjectAttribute, type CreateDeploymentParams, type CreatedField, type CustomObject, type CustomObjectAttribute, type CustomObjectHistory, type CustomObjectHistoryEntry, type CustomObjectIcon, type CustomObjectMutation, type CustomObjectMutations, type CustomObjectRecord, DEFAULT_APP_API, type Deal, type DealCreateParams, type DealListParams, type DealUpdateParams, type Deployment, type DeploymentStatus, type DialerAgentSummary, type DialerAgentsListParams, type DialerAgentsListResult, type DialerNumberInfo, type DialerNumbersListResult, type DialerReportFilters, type DialerReportMetric, type DialerSessionCreateParams, type DialerSessionCreateResult, type DialerSessionResumeResult, type DialerSessionStatus, type DialerSessionStatusUpdateResult, type DialerSessionSummary, type DialerSessionsListParams, type DialerSessionsListResult, type DialerStatsParams, type DialerStatsResult, type DomainVerificationInstructions, type DomainVerificationStatus, type EmailVerification, type EnrichLookupResult, type EvidenceKey, type Field, type FieldCreateParams, type FieldDeleteParams, type G8Config, G8Error, type G8PrivacyConfig, type GlobalContextDocument, type Graph8AppClient, type Graph8AppClientConfig, type Graph8ServiceClient, type Graph8ServiceClientConfig, type ICP, type IdentifyProperties, type InboxAssignResult, type InboxAssignee, type InboxChannel, type InboxContact, type InboxDraft, type InboxListParams, type InboxMessage, type InboxSendParams, type InboxSendResult, type InboxTag, type InboxTagResult, type InboxThread, type InstallStatus, type IntelligenceData, type IntentCompany, type IntentContact, type IntentKeyword, type IntentPage, type IntentSignals, type IntentStats, type IntentVisitor, KNOWN_WEBHOOK_EVENTS, type ListContact, type ListRecordsParams, MAX_TAIL_LINES, MIN_TAIL_LINES, type MarketplaceHiring, type MarketplaceOffer, type MarketplaceProfile, type MeetingAnalysis, type MeetingAttendee, type MeetingDetail, type MeetingListParams, type MeetingSummary, type MeetingTranscriptLine, type MissedCallback, type MissedCallbacksResult, type NodeTypeSchema, type Note, type ObjectPagination, type PaginatedResponse, type PaginationMeta$1 as PaginationMeta, type PersonEnrichment, type Persona, type Pipeline, type PipelineStage, type PipelineSuggestion, type QuotableProduct, type QuoteCreateParams, type QuoteDetail, type QuoteLineItem, type QuoteListParams, type QuoteSendParams, type QuoteSettings, type QuoteStatus, type QuoteSummary, type QuoteUpdateParams, type RequestOptions, type ResearchReport, type SchemaVersion, type SchemaVersionStatus, type SearchCompanyItem, type SearchCondition, type SearchContactItem, type SearchFilter, type SearchOperator, type SearchParams, type SearchResults, type SearchSaveParams, type SearchSaveResult, type Sequence, type SequenceActionResult, type SequenceAnalytics, type SequenceChannelConfig, type SequenceContactItem, type SequenceContactsParams, type SequenceCreateParams, type SequenceCreateResult, type SequenceDetail, type SequenceKind, type SequenceListItem, type SequenceListParams, type SequencePreview, type SequencePreviewChannel, type SequencePreviewStep, type SequenceStepConfig, type SequenceStepInputType, type SequenceStepType, type SequenceStepUpdateParams, type SequenceUpdateParams, type SetFieldValueParams, type Skill, type SkillCreateAPIParams, type SkillCreateLLMParams, type SkillInputField, type SkillListParams, type SkillTemplate, type SkillType, type SkillUpdateAPIParams, type SkillUpdateLLMParams, type Snippet, type SourceProvider, type StageCreateParams, type StagePipeline, type StagePipelineCreateParams, type StagePipelineStage, type StagePipelineUpdateParams, type StageUpdateParams, type Task, type TaskCreateParams, type TaskListParams, type TaskUpdateParams, type TimeSlot, type TokenManager, type TrackProperties, type UpdateCustomObject, type UpdateCustomObjectAttribute, type VisitorCompany, type VisitorScore, type VoicePagination, type WebhookEvent, type WebhookEventPayload, WebhookSignatureError, type Workflow, type WorkflowConfig, type WorkflowConnection, type WorkflowCreateParams, type WorkflowExecution, type WorkflowListParams, type WorkflowNode, type WorkflowUpdateParams, backoffDelayMs, constructEvent, createAppPlatformClient, createAppRequester, createGraph8AppClient, createGraph8ServiceClient, createTokenManager, exchangeBrowserToken, exchangeServiceToken, g8, isRetryableStatus, paginate, parseRetryAfter, request };
|