@graph8/sdk 0.303.0 → 0.357.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 +81 -0
- package/blocks/README.md +32 -0
- package/blocks/_foundation/README.md +78 -0
- package/blocks/_foundation/block.json +79 -0
- package/blocks/_foundation/components/api-error.tsx +62 -0
- package/blocks/_foundation/components/confirm-spend-dialog.tsx +142 -0
- package/blocks/_foundation/components/empty-state.tsx +24 -0
- package/blocks/_foundation/hooks/use-g8-mutation.ts +88 -0
- package/blocks/_foundation/hooks/use-g8-query.ts +87 -0
- package/blocks/_foundation/hooks/use-job-poll.ts +130 -0
- package/blocks/_foundation/hooks/use-paginated.ts +105 -0
- package/blocks/_foundation/lib/g8-client.ts +128 -0
- package/blocks/_foundation/recipes/verify-proxy-key.ts +18 -0
- package/blocks/_foundation/server/proxy.ts +233 -0
- package/blocks/_foundation/server/route.ts +30 -0
- package/blocks/agents/README.md +133 -0
- package/blocks/agents/block.json +223 -0
- package/blocks/agents/components/agent-builder.tsx +199 -0
- package/blocks/agents/components/agent-knowledge-panel.tsx +144 -0
- package/blocks/agents/components/agent-runs.tsx +175 -0
- package/blocks/agents/components/agent-skills-panel.tsx +126 -0
- package/blocks/agents/components/agent-test-console.tsx +175 -0
- package/blocks/agents/lib/agent-types.ts +114 -0
- package/blocks/agents/recipes/create-agent-and-attach-skill.ts +50 -0
- package/blocks/agents/recipes/run-and-follow-agent-run.ts +46 -0
- package/blocks/agents/recipes/test-agent-before-activating.ts +36 -0
- package/blocks/analytics/README.md +73 -0
- package/blocks/analytics/block.json +178 -0
- package/blocks/analytics/components/funnel-chart.tsx +79 -0
- package/blocks/analytics/components/kpi-tiles.tsx +74 -0
- package/blocks/analytics/components/leaderboard.tsx +86 -0
- package/blocks/analytics/components/report-builder.tsx +200 -0
- package/blocks/analytics/hooks/use-report.ts +26 -0
- package/blocks/analytics/lib/analytics-types.ts +108 -0
- package/blocks/analytics/lib/use-debounced.ts +16 -0
- package/blocks/analytics/recipes/01-weekly-outbound-report.ts +32 -0
- package/blocks/analytics/recipes/02-revenue-snapshot.ts +22 -0
- package/blocks/analytics/recipes/03-saved-report.ts +30 -0
- package/blocks/appointments/README.md +80 -0
- package/blocks/appointments/block.json +218 -0
- package/blocks/appointments/components/availability-editor.tsx +192 -0
- package/blocks/appointments/components/booking-page.tsx +154 -0
- package/blocks/appointments/components/event-type-editor.tsx +214 -0
- package/blocks/appointments/components/meeting-detail.tsx +147 -0
- package/blocks/appointments/components/meeting-list.tsx +148 -0
- package/blocks/appointments/hooks/use-available-slots.ts +29 -0
- package/blocks/appointments/hooks/use-schedules.ts +18 -0
- package/blocks/appointments/lib/appointments-types.ts +159 -0
- package/blocks/appointments/lib/idempotency.ts +30 -0
- package/blocks/appointments/recipes/01-create-event-type-and-hours.ts +27 -0
- package/blocks/appointments/recipes/02-find-slots-and-book.ts +34 -0
- package/blocks/appointments/recipes/03-bookings-digest.ts +22 -0
- package/blocks/appointments/recipes/04-calendar-invite.ts +21 -0
- package/blocks/block.schema.json +130 -0
- package/blocks/block.types.ts +109 -0
- package/blocks/campaigns/README.md +118 -0
- package/blocks/campaigns/block.json +361 -0
- package/blocks/campaigns/components/campaign-assets.tsx +180 -0
- package/blocks/campaigns/components/campaign-audience-step.tsx +91 -0
- package/blocks/campaigns/components/campaign-launch-step.tsx +147 -0
- package/blocks/campaigns/components/campaign-list.tsx +120 -0
- package/blocks/campaigns/components/campaign-metrics.tsx +93 -0
- package/blocks/campaigns/components/campaign-select.tsx +52 -0
- package/blocks/campaigns/components/campaign-sequence-step.tsx +158 -0
- package/blocks/campaigns/components/campaign-wizard.tsx +238 -0
- package/blocks/campaigns/components/form-field.tsx +29 -0
- package/blocks/campaigns/components/icp-editor.tsx +230 -0
- package/blocks/campaigns/components/persona-editor.tsx +210 -0
- package/blocks/campaigns/hooks/use-company-profile.ts +34 -0
- package/blocks/campaigns/lib/campaigns-utils.ts +155 -0
- package/blocks/campaigns/recipes/attach-audience-and-launch.ts +33 -0
- package/blocks/campaigns/recipes/campaign-report.ts +22 -0
- package/blocks/campaigns/recipes/generate-ideas-and-create-campaign.ts +51 -0
- package/blocks/campaigns/recipes/set-up-icp-and-personas.ts +37 -0
- package/blocks/coach/README.md +93 -0
- package/blocks/coach/block.json +125 -0
- package/blocks/coach/components/call-scorecard.tsx +126 -0
- package/blocks/coach/components/coaching-feed.tsx +140 -0
- package/blocks/coach/lib/coach-types.ts +116 -0
- package/blocks/coach/recipes/read-a-scorecard.ts +27 -0
- package/blocks/coach/recipes/weekly-coaching-digest.ts +53 -0
- package/blocks/copilot/README.md +99 -0
- package/blocks/copilot/block.json +151 -0
- package/blocks/copilot/components/copilot-memory.tsx +87 -0
- package/blocks/copilot/components/copilot-panel.tsx +189 -0
- package/blocks/copilot/components/copilot-team-chat.tsx +111 -0
- package/blocks/copilot/lib/copilot-types.ts +111 -0
- package/blocks/copilot/recipes/ask-the-copilot.ts +35 -0
- package/blocks/copilot/recipes/post-in-a-work-channel.ts +33 -0
- package/blocks/copilot/recipes/remember-and-recall.ts +19 -0
- package/blocks/crm/README.md +122 -0
- package/blocks/crm/block.json +378 -0
- package/blocks/crm/components/activity-timeline.tsx +99 -0
- package/blocks/crm/components/company-detail.tsx +118 -0
- package/blocks/crm/components/company-table.tsx +173 -0
- package/blocks/crm/components/contact-detail.tsx +135 -0
- package/blocks/crm/components/contact-table.tsx +217 -0
- package/blocks/crm/components/dedupe-review.tsx +164 -0
- package/blocks/crm/components/import-wizard.tsx +193 -0
- package/blocks/crm/components/notes-panel.tsx +112 -0
- package/blocks/crm/components/record-form.tsx +191 -0
- package/blocks/crm/components/task-list.tsx +107 -0
- package/blocks/crm/hooks/use-custom-fields.ts +18 -0
- package/blocks/crm/hooks/use-debounced.ts +13 -0
- package/blocks/crm/hooks/use-page-query.ts +52 -0
- package/blocks/crm/lib/crm-types.ts +136 -0
- package/blocks/crm/recipes/custom-fields-and-values.ts +28 -0
- package/blocks/crm/recipes/dedupe-and-merge.ts +30 -0
- package/blocks/crm/recipes/notes-tasks-and-activity.ts +23 -0
- package/blocks/crm/recipes/upsert-contact-with-company.ts +33 -0
- package/blocks/deals/README.md +78 -0
- package/blocks/deals/block.json +198 -0
- package/blocks/deals/components/deal-detail.tsx +134 -0
- package/blocks/deals/components/forecast-view.tsx +112 -0
- package/blocks/deals/components/pipeline-board.tsx +142 -0
- package/blocks/deals/components/stage-editor.tsx +96 -0
- package/blocks/deals/hooks/use-pipeline-deals.ts +67 -0
- package/blocks/deals/hooks/use-pipelines.ts +19 -0
- package/blocks/deals/lib/deals-types.ts +128 -0
- package/blocks/deals/recipes/01-create-deal-and-advance.ts +32 -0
- package/blocks/deals/recipes/02-pipeline-report.ts +35 -0
- package/blocks/deals/recipes/03-stale-deals-sweep.ts +20 -0
- package/blocks/dialer/README.md +114 -0
- package/blocks/dialer/block.json +260 -0
- package/blocks/dialer/components/call-log.tsx +78 -0
- package/blocks/dialer/components/call-queue.tsx +188 -0
- package/blocks/dialer/components/dialer-workspace.tsx +47 -0
- package/blocks/dialer/components/disposition-panel.tsx +75 -0
- package/blocks/dialer/components/live-calls-table.tsx +107 -0
- package/blocks/dialer/components/session-start-form.tsx +111 -0
- package/blocks/dialer/components/softphone.tsx +122 -0
- package/blocks/dialer/components/transcript-viewer.tsx +82 -0
- package/blocks/dialer/hooks/use-dialer-numbers.ts +19 -0
- package/blocks/dialer/hooks/use-dialer-session.ts +68 -0
- package/blocks/dialer/hooks/use-dispositions.ts +29 -0
- package/blocks/dialer/lib/dialer-types.ts +158 -0
- package/blocks/dialer/lib/softphone-transport.ts +67 -0
- package/blocks/dialer/lib/twilio-transport.ts +74 -0
- package/blocks/dialer/recipes/01-create-session-and-dial.ts +39 -0
- package/blocks/dialer/recipes/02-disposition-calls.ts +26 -0
- package/blocks/dialer/recipes/03-review-a-call.ts +23 -0
- package/blocks/enrichment/README.md +105 -0
- package/blocks/enrichment/block.json +204 -0
- package/blocks/enrichment/components/bulk-enrich-panel.tsx +205 -0
- package/blocks/enrichment/components/email-verify-badge.tsx +82 -0
- package/blocks/enrichment/components/enrich-button.tsx +136 -0
- package/blocks/enrichment/components/waterfall-config.tsx +127 -0
- package/blocks/enrichment/hooks/use-providers.ts +18 -0
- package/blocks/enrichment/lib/enrichment-types.ts +104 -0
- package/blocks/enrichment/recipes/bulk-enrich-and-poll.ts +41 -0
- package/blocks/enrichment/recipes/lookup-and-verify.ts +25 -0
- package/blocks/enrichment/recipes/waterfall-pipeline.ts +26 -0
- package/blocks/forms/README.md +112 -0
- package/blocks/forms/block.json +200 -0
- package/blocks/forms/components/form-builder.tsx +150 -0
- package/blocks/forms/components/form-embed.tsx +103 -0
- package/blocks/forms/components/form-mapping-editor.tsx +125 -0
- package/blocks/forms/components/site-audit-panel.tsx +73 -0
- package/blocks/forms/components/submissions-table.tsx +158 -0
- package/blocks/forms/lib/form-types.ts +127 -0
- package/blocks/forms/recipes/install-snippet-and-form.ts +21 -0
- package/blocks/forms/recipes/retry-failed-deliveries.ts +26 -0
- package/blocks/forms/recipes/route-form-to-list.ts +44 -0
- package/blocks/inbox/README.md +72 -0
- package/blocks/inbox/block.json +194 -0
- package/blocks/inbox/components/inbox-list.tsx +156 -0
- package/blocks/inbox/components/inbox-screen.tsx +49 -0
- package/blocks/inbox/components/reply-composer.tsx +183 -0
- package/blocks/inbox/components/tag-and-assign.tsx +189 -0
- package/blocks/inbox/components/thread-badge.tsx +17 -0
- package/blocks/inbox/components/thread-view.tsx +108 -0
- package/blocks/inbox/hooks/use-inbox-thread.ts +24 -0
- package/blocks/inbox/hooks/use-inbox-threads.ts +40 -0
- package/blocks/inbox/lib/idempotency.ts +30 -0
- package/blocks/inbox/lib/inbox-types.ts +100 -0
- package/blocks/inbox/recipes/01-triage-and-reply.ts +43 -0
- package/blocks/inbox/recipes/02-tag-and-assign.ts +31 -0
- package/blocks/inbox/recipes/03-hot-contacts-digest.ts +16 -0
- package/blocks/integrations/README.md +75 -0
- package/blocks/integrations/block.json +172 -0
- package/blocks/integrations/components/integration-list.tsx +165 -0
- package/blocks/integrations/components/sync-status.tsx +223 -0
- package/blocks/integrations/components/webhook-manager.tsx +300 -0
- package/blocks/integrations/lib/integrations-utils.ts +62 -0
- package/blocks/integrations/recipes/crm-sync-health.ts +19 -0
- package/blocks/integrations/recipes/push-contacts-to-crm.ts +20 -0
- package/blocks/integrations/recipes/register-webhook.ts +18 -0
- package/blocks/integrations/recipes/verify-webhook-route.ts +33 -0
- package/blocks/intent/README.md +57 -0
- package/blocks/intent/block.json +138 -0
- package/blocks/intent/components/account-intent-score.tsx +91 -0
- package/blocks/intent/components/intent-feed.tsx +215 -0
- package/blocks/intent/components/intent-keyword-manager.tsx +331 -0
- package/blocks/intent/hooks/use-account-intent.ts +46 -0
- package/blocks/intent/lib/intent-utils.ts +95 -0
- package/blocks/intent/recipes/rank-intent-accounts.ts +36 -0
- package/blocks/intent/recipes/track-competitor-domain.ts +23 -0
- package/blocks/intent/recipes/who-visited-url.ts +18 -0
- package/blocks/lifecycle/README.md +79 -0
- package/blocks/lifecycle/block.json +198 -0
- package/blocks/lifecycle/components/churn-list.tsx +92 -0
- package/blocks/lifecycle/components/customer-table.tsx +119 -0
- package/blocks/lifecycle/components/lead-queue.tsx +127 -0
- package/blocks/lifecycle/components/lifecycle-board.tsx +102 -0
- package/blocks/lifecycle/components/stage-move-dialog.tsx +75 -0
- package/blocks/lifecycle/hooks/use-debounced.ts +13 -0
- package/blocks/lifecycle/hooks/use-lifecycle-stages.ts +27 -0
- package/blocks/lifecycle/lib/lifecycle.ts +99 -0
- package/blocks/lifecycle/recipes/customer-brief.ts +23 -0
- package/blocks/lifecycle/recipes/move-company-stage.ts +17 -0
- package/blocks/lifecycle/recipes/read-lifecycle-board.ts +21 -0
- package/blocks/lifecycle/recipes/unlock-stage-contacts.ts +25 -0
- package/blocks/lists/README.md +96 -0
- package/blocks/lists/block.json +166 -0
- package/blocks/lists/components/add-to-list-button.tsx +111 -0
- package/blocks/lists/components/list-picker.tsx +94 -0
- package/blocks/lists/components/list-table.tsx +160 -0
- package/blocks/lists/components/suppression-manager.tsx +153 -0
- package/blocks/lists/recipes/create-list-and-add-contacts.ts +35 -0
- package/blocks/lists/recipes/refresh-and-check-lists.ts +21 -0
- package/blocks/lists/recipes/suppress-and-reinstate.ts +30 -0
- package/blocks/mailboxes/README.md +71 -0
- package/blocks/mailboxes/block.json +187 -0
- package/blocks/mailboxes/components/connect-mailbox.tsx +284 -0
- package/blocks/mailboxes/components/domain-purchase.tsx +271 -0
- package/blocks/mailboxes/components/mailbox-list.tsx +185 -0
- package/blocks/mailboxes/components/warmup-health.tsx +232 -0
- package/blocks/mailboxes/lib/mailboxes-utils.ts +69 -0
- package/blocks/mailboxes/recipes/buy-domain-and-mailboxes.ts +64 -0
- package/blocks/mailboxes/recipes/connect-imap-mailbox.ts +38 -0
- package/blocks/mailboxes/recipes/is-it-safe-to-send.ts +17 -0
- package/blocks/mailboxes/recipes/warmup-report.ts +31 -0
- package/blocks/newsletter/README.md +122 -0
- package/blocks/newsletter/block.json +224 -0
- package/blocks/newsletter/components/issue-form.tsx +124 -0
- package/blocks/newsletter/components/issue-scheduler.tsx +152 -0
- package/blocks/newsletter/components/newsletter-editor.tsx +131 -0
- package/blocks/newsletter/components/newsletter-stats.tsx +93 -0
- package/blocks/newsletter/components/subscriber-table.tsx +173 -0
- package/blocks/newsletter/lib/newsletter-types.ts +97 -0
- package/blocks/newsletter/recipes/create-newsletter-and-draft-issue.ts +27 -0
- package/blocks/newsletter/recipes/import-audience-and-send.ts +43 -0
- package/blocks/newsletter/recipes/issue-performance-report.ts +26 -0
- package/blocks/nurture/README.md +110 -0
- package/blocks/nurture/block.json +191 -0
- package/blocks/nurture/components/nurture-builder.tsx +114 -0
- package/blocks/nurture/components/nurture-enroll.tsx +107 -0
- package/blocks/nurture/components/nurture-form.tsx +120 -0
- package/blocks/nurture/components/nurture-stats.tsx +81 -0
- package/blocks/nurture/lib/nurture-types.ts +109 -0
- package/blocks/nurture/recipes/create-a-nurture.ts +34 -0
- package/blocks/nurture/recipes/enroll-contacts-and-launch.ts +24 -0
- package/blocks/nurture/recipes/nurture-health-check.ts +28 -0
- package/blocks/objects/README.md +120 -0
- package/blocks/objects/block.json +243 -0
- package/blocks/objects/components/attribute-field-input.tsx +82 -0
- package/blocks/objects/components/attribute-form-dialog.tsx +159 -0
- package/blocks/objects/components/object-not-found.tsx +34 -0
- package/blocks/objects/components/object-record-detail.tsx +143 -0
- package/blocks/objects/components/object-schema-editor.tsx +197 -0
- package/blocks/objects/components/object-table.tsx +130 -0
- package/blocks/objects/components/record-form-dialog.tsx +112 -0
- package/blocks/objects/components/record-roles-panel.tsx +106 -0
- package/blocks/objects/hooks/use-object-schema.ts +36 -0
- package/blocks/objects/lib/object-types.ts +214 -0
- package/blocks/objects/recipes/define-object-and-add-records.ts +24 -0
- package/blocks/objects/recipes/update-audit-and-archive-records.ts +39 -0
- package/blocks/objects/recipes/upsert-records-from-your-system.ts +30 -0
- package/blocks/pages/README.md +104 -0
- package/blocks/pages/block.json +223 -0
- package/blocks/pages/components/brand-kit-editor.tsx +152 -0
- package/blocks/pages/components/content-library.tsx +163 -0
- package/blocks/pages/components/page-editor.tsx +253 -0
- package/blocks/pages/components/page-list.tsx +159 -0
- package/blocks/pages/components/seo-report.tsx +159 -0
- package/blocks/pages/lib/studio.ts +77 -0
- package/blocks/pages/recipes/audit-site-seo.ts +28 -0
- package/blocks/pages/recipes/create-and-publish-page.ts +26 -0
- package/blocks/pages/recipes/edit-page-section.ts +25 -0
- package/blocks/pages/recipes/refresh-brand-kit.ts +22 -0
- package/blocks/quotes/README.md +79 -0
- package/blocks/quotes/block.json +183 -0
- package/blocks/quotes/components/product-picker.tsx +80 -0
- package/blocks/quotes/components/quote-builder.tsx +195 -0
- package/blocks/quotes/components/quote-list.tsx +79 -0
- package/blocks/quotes/components/quote-viewer.tsx +135 -0
- package/blocks/quotes/components/signature-status.tsx +77 -0
- package/blocks/quotes/hooks/use-debounced.ts +13 -0
- package/blocks/quotes/lib/quotes.ts +142 -0
- package/blocks/quotes/recipes/create-and-send-quote.ts +44 -0
- package/blocks/quotes/recipes/revise-sent-quote.ts +18 -0
- package/blocks/quotes/recipes/track-quote-signature.ts +22 -0
- package/blocks/radar/README.md +106 -0
- package/blocks/radar/block.json +189 -0
- package/blocks/radar/components/competitor-battle-card.tsx +53 -0
- package/blocks/radar/components/competitor-tracker.tsx +158 -0
- package/blocks/radar/components/radar-overview.tsx +67 -0
- package/blocks/radar/components/radar-report.tsx +86 -0
- package/blocks/radar/hooks/use-competitors.ts +23 -0
- package/blocks/radar/lib/radar-types.ts +124 -0
- package/blocks/radar/recipes/battle-card.ts +28 -0
- package/blocks/radar/recipes/deep-dive-report.ts +32 -0
- package/blocks/radar/recipes/marketing-snapshot.ts +18 -0
- package/blocks/radar/recipes/track-and-scan.ts +39 -0
- package/blocks/search/README.md +129 -0
- package/blocks/search/block.json +185 -0
- package/blocks/search/components/filter-builder.tsx +149 -0
- package/blocks/search/components/prospect-results.tsx +175 -0
- package/blocks/search/components/save-to-list-dialog.tsx +135 -0
- package/blocks/search/components/saved-searches.tsx +95 -0
- package/blocks/search/hooks/use-filter-options.ts +41 -0
- package/blocks/search/lib/search-types.ts +149 -0
- package/blocks/search/recipes/explore-filter-values.ts +27 -0
- package/blocks/search/recipes/saved-searches.ts +34 -0
- package/blocks/search/recipes/search-and-save-to-list.ts +37 -0
- package/blocks/sequencer/README.md +87 -0
- package/blocks/sequencer/block.json +214 -0
- package/blocks/sequencer/components/enroll-dialog.tsx +93 -0
- package/blocks/sequencer/components/sequence-builder.tsx +306 -0
- package/blocks/sequencer/components/sequence-list.tsx +200 -0
- package/blocks/sequencer/components/sequence-stats.tsx +256 -0
- package/blocks/sequencer/components/step-editor.tsx +213 -0
- package/blocks/sequencer/lib/sequencer-utils.ts +168 -0
- package/blocks/sequencer/recipes/create-multichannel-sequence.ts +51 -0
- package/blocks/sequencer/recipes/launch-and-enroll.ts +44 -0
- package/blocks/sequencer/recipes/pause-when-unsafe.ts +30 -0
- package/blocks/sequencer/recipes/sequence-report.ts +22 -0
- package/blocks/social-ads/README.md +128 -0
- package/blocks/social-ads/block.json +256 -0
- package/blocks/social-ads/components/ad-campaign-list.tsx +136 -0
- package/blocks/social-ads/components/audience-sync.tsx +150 -0
- package/blocks/social-ads/components/creative-gallery.tsx +121 -0
- package/blocks/social-ads/components/post-composer.tsx +122 -0
- package/blocks/social-ads/components/social-post-list.tsx +116 -0
- package/blocks/social-ads/hooks/use-social-accounts.ts +16 -0
- package/blocks/social-ads/lib/social-ads-types.ts +167 -0
- package/blocks/social-ads/recipes/creative-to-gallery.ts +41 -0
- package/blocks/social-ads/recipes/schedule-post.ts +51 -0
- package/blocks/social-ads/recipes/sync-audience-and-launch.ts +41 -0
- package/blocks/visitors/README.md +56 -0
- package/blocks/visitors/block.json +139 -0
- package/blocks/visitors/components/snippet-install.tsx +169 -0
- package/blocks/visitors/components/traffic-chart.tsx +156 -0
- package/blocks/visitors/components/visitor-company-card.tsx +92 -0
- package/blocks/visitors/components/visitor-feed.tsx +157 -0
- package/blocks/visitors/lib/visitors-utils.ts +78 -0
- package/blocks/visitors/recipes/check-snippet-installed.ts +24 -0
- package/blocks/visitors/recipes/recent-company-visits.ts +27 -0
- package/blocks/visitors/recipes/traffic-summary.ts +24 -0
- package/blocks/webchat/README.md +87 -0
- package/blocks/webchat/block.json +134 -0
- package/blocks/webchat/components/chat-widget-config.tsx +160 -0
- package/blocks/webchat/components/conversation-list.tsx +74 -0
- package/blocks/webchat/lib/webchat-types.ts +83 -0
- package/blocks/webchat/recipes/create-bot-and-style-widget.ts +24 -0
- package/blocks/webchat/recipes/list-chat-visitors.ts +24 -0
- package/blocks/workbench/README.md +135 -0
- package/blocks/workbench/block.json +259 -0
- package/blocks/workbench/components/column-recipe-editor.tsx +183 -0
- package/blocks/workbench/components/run-progress.tsx +132 -0
- package/blocks/workbench/components/workbench-add-rows.tsx +100 -0
- package/blocks/workbench/components/workbench-grid.tsx +159 -0
- package/blocks/workbench/components/workbench-row-actions.tsx +102 -0
- package/blocks/workbench/components/workbench-table-list.tsx +105 -0
- package/blocks/workbench/hooks/use-workbench-table.ts +30 -0
- package/blocks/workbench/lib/waterfall-presets.ts +119 -0
- package/blocks/workbench/lib/workbench-types.ts +191 -0
- package/blocks/workbench/recipes/build-enriched-table.ts +65 -0
- package/blocks/workbench/recipes/import-from-search.ts +42 -0
- package/blocks/workbench/recipes/scrape-into-table.ts +36 -0
- package/blocks/workbench/recipes/waterfall-column.ts +55 -0
- package/blocks/workflows/README.md +100 -0
- package/blocks/workflows/block.json +188 -0
- package/blocks/workflows/components/run-history.tsx +136 -0
- package/blocks/workflows/components/trigger-config.tsx +134 -0
- package/blocks/workflows/components/workflow-editor.tsx +142 -0
- package/blocks/workflows/components/workflow-list.tsx +153 -0
- package/blocks/workflows/hooks/use-workflow.ts +51 -0
- package/blocks/workflows/lib/graph.ts +187 -0
- package/blocks/workflows/recipes/create-workflow.ts +35 -0
- package/blocks/workflows/recipes/find-failed-runs.ts +15 -0
- package/blocks/workflows/recipes/run-workflow-and-wait.ts +32 -0
- package/blocks/workflows/recipes/set-trigger.ts +22 -0
- package/dist/cli.js +5330 -29
- package/dist/index.browser.js +7740 -0
- package/dist/index.browser.js.map +1 -0
- package/dist/index.browser.mjs +7717 -0
- package/dist/index.browser.mjs.map +1 -0
- package/dist/index.d.mts +2220 -23
- package/dist/index.d.ts +2220 -23
- package/dist/index.js +64 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +64 -3
- package/dist/index.mjs.map +1 -1
- package/dist/react.browser.js +7598 -0
- package/dist/react.browser.js.map +1 -0
- package/dist/react.browser.mjs +7568 -0
- package/dist/react.browser.mjs.map +1 -0
- package/dist/react.d.mts +2082 -20
- package/dist/react.d.ts +2082 -20
- package/dist/react.js +63 -2
- package/dist/react.js.map +1 -1
- package/dist/react.mjs +63 -2
- package/dist/react.mjs.map +1 -1
- package/dist/types/agentSetup.d.ts +6 -6
- package/dist/types/blocks/add.d.ts +53 -0
- package/dist/types/blocks/create.d.ts +46 -0
- package/dist/types/blocks/doctor.d.ts +26 -0
- package/dist/types/blocks/registry.d.ts +134 -0
- package/dist/types/cli.d.ts +16 -0
- package/dist/types/core.d.ts +1 -1
- package/dist/types/crypto-browser.d.ts +2 -0
- package/dist/types/crypto-node.d.ts +6 -0
- package/dist/types/react.d.ts +1 -1
- package/dist/types/version.d.ts +2 -2
- package/dist/types/webhooks.d.ts +2 -2
- package/dist/ui/index.d.mts +54 -0
- package/dist/ui/index.d.ts +54 -0
- package/dist/ui/index.js +105 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/index.mjs +44 -0
- package/dist/ui/index.mjs.map +1 -0
- package/dist/ui/lib/compose-refs.d.mts +19 -0
- package/dist/ui/lib/compose-refs.d.ts +19 -0
- package/dist/ui/lib/compose-refs.js +76 -0
- package/dist/ui/lib/compose-refs.js.map +1 -0
- package/dist/ui/lib/compose-refs.mjs +41 -0
- package/dist/ui/lib/compose-refs.mjs.map +1 -0
- package/dist/ui/lib/use-mobile.d.mts +4 -0
- package/dist/ui/lib/use-mobile.d.ts +4 -0
- package/dist/ui/lib/use-mobile.js +57 -0
- package/dist/ui/lib/use-mobile.js.map +1 -0
- package/dist/ui/lib/use-mobile.mjs +22 -0
- package/dist/ui/lib/use-mobile.mjs.map +1 -0
- package/dist/ui/lib/utils.d.mts +10 -0
- package/dist/ui/lib/utils.d.ts +10 -0
- package/dist/ui/lib/utils.js +33 -0
- package/dist/ui/lib/utils.js.map +1 -0
- package/dist/ui/lib/utils.mjs +9 -0
- package/dist/ui/lib/utils.mjs.map +1 -0
- package/dist/ui/primitives/alert-dialog.d.mts +22 -0
- package/dist/ui/primitives/alert-dialog.d.ts +22 -0
- package/dist/ui/primitives/alert-dialog.js +163 -0
- package/dist/ui/primitives/alert-dialog.js.map +1 -0
- package/dist/ui/primitives/alert-dialog.mjs +119 -0
- package/dist/ui/primitives/alert-dialog.mjs.map +1 -0
- package/dist/ui/primitives/avatar.d.mts +8 -0
- package/dist/ui/primitives/avatar.d.ts +8 -0
- package/dist/ui/primitives/avatar.js +91 -0
- package/dist/ui/primitives/avatar.js.map +1 -0
- package/dist/ui/primitives/avatar.mjs +55 -0
- package/dist/ui/primitives/avatar.mjs.map +1 -0
- package/dist/ui/primitives/breadcrumb.d.mts +13 -0
- package/dist/ui/primitives/breadcrumb.d.ts +13 -0
- package/dist/ui/primitives/breadcrumb.js +127 -0
- package/dist/ui/primitives/breadcrumb.js.map +1 -0
- package/dist/ui/primitives/breadcrumb.mjs +97 -0
- package/dist/ui/primitives/breadcrumb.mjs.map +1 -0
- package/dist/ui/primitives/button.d.mts +15 -0
- package/dist/ui/primitives/button.d.ts +15 -0
- package/dist/ui/primitives/button.js +91 -0
- package/dist/ui/primitives/button.js.map +1 -0
- package/dist/ui/primitives/button.mjs +56 -0
- package/dist/ui/primitives/button.mjs.map +1 -0
- package/dist/ui/primitives/card.d.mts +10 -0
- package/dist/ui/primitives/card.d.ts +10 -0
- package/dist/ui/primitives/card.js +101 -0
- package/dist/ui/primitives/card.js.map +1 -0
- package/dist/ui/primitives/card.mjs +62 -0
- package/dist/ui/primitives/card.mjs.map +1 -0
- package/dist/ui/primitives/carousel.d.mts +45 -0
- package/dist/ui/primitives/carousel.d.ts +45 -0
- package/dist/ui/primitives/carousel.js +300 -0
- package/dist/ui/primitives/carousel.js.map +1 -0
- package/dist/ui/primitives/carousel.mjs +261 -0
- package/dist/ui/primitives/carousel.mjs.map +1 -0
- package/dist/ui/primitives/chart.d.mts +68 -0
- package/dist/ui/primitives/chart.d.ts +68 -0
- package/dist/ui/primitives/chart.js +280 -0
- package/dist/ui/primitives/chart.js.map +1 -0
- package/dist/ui/primitives/chart.mjs +241 -0
- package/dist/ui/primitives/chart.mjs.map +1 -0
- package/dist/ui/primitives/collapsible.d.mts +8 -0
- package/dist/ui/primitives/collapsible.d.ts +8 -0
- package/dist/ui/primitives/collapsible.js +72 -0
- package/dist/ui/primitives/collapsible.js.map +1 -0
- package/dist/ui/primitives/collapsible.mjs +36 -0
- package/dist/ui/primitives/collapsible.mjs.map +1 -0
- package/dist/ui/primitives/context-menu.d.mts +29 -0
- package/dist/ui/primitives/context-menu.d.ts +29 -0
- package/dist/ui/primitives/context-menu.js +203 -0
- package/dist/ui/primitives/context-menu.js.map +1 -0
- package/dist/ui/primitives/context-menu.mjs +155 -0
- package/dist/ui/primitives/context-menu.mjs.map +1 -0
- package/dist/ui/primitives/dialog.d.mts +26 -0
- package/dist/ui/primitives/dialog.d.ts +26 -0
- package/dist/ui/primitives/dialog.js +192 -0
- package/dist/ui/primitives/dialog.js.map +1 -0
- package/dist/ui/primitives/dialog.mjs +148 -0
- package/dist/ui/primitives/dialog.mjs.map +1 -0
- package/dist/ui/primitives/drawer.d.mts +26 -0
- package/dist/ui/primitives/drawer.d.ts +26 -0
- package/dist/ui/primitives/drawer.js +146 -0
- package/dist/ui/primitives/drawer.js.map +1 -0
- package/dist/ui/primitives/drawer.mjs +103 -0
- package/dist/ui/primitives/drawer.mjs.map +1 -0
- package/dist/ui/primitives/input.d.mts +5 -0
- package/dist/ui/primitives/input.d.ts +5 -0
- package/dist/ui/primitives/input.js +46 -0
- package/dist/ui/primitives/input.js.map +1 -0
- package/dist/ui/primitives/input.mjs +22 -0
- package/dist/ui/primitives/input.mjs.map +1 -0
- package/dist/ui/primitives/item.d.mts +27 -0
- package/dist/ui/primitives/item.d.ts +27 -0
- package/dist/ui/primitives/item.js +221 -0
- package/dist/ui/primitives/item.js.map +1 -0
- package/dist/ui/primitives/item.mjs +188 -0
- package/dist/ui/primitives/item.mjs.map +1 -0
- package/dist/ui/primitives/kbd.d.mts +15 -0
- package/dist/ui/primitives/kbd.d.ts +15 -0
- package/dist/ui/primitives/kbd.js +45 -0
- package/dist/ui/primitives/kbd.js.map +1 -0
- package/dist/ui/primitives/kbd.mjs +21 -0
- package/dist/ui/primitives/kbd.mjs.map +1 -0
- package/dist/ui/primitives/label.d.mts +6 -0
- package/dist/ui/primitives/label.d.ts +6 -0
- package/dist/ui/primitives/label.js +55 -0
- package/dist/ui/primitives/label.js.map +1 -0
- package/dist/ui/primitives/label.mjs +21 -0
- package/dist/ui/primitives/label.mjs.map +1 -0
- package/dist/ui/primitives/resizable.d.mts +10 -0
- package/dist/ui/primitives/resizable.d.ts +10 -0
- package/dist/ui/primitives/resizable.js +68 -0
- package/dist/ui/primitives/resizable.js.map +1 -0
- package/dist/ui/primitives/resizable.mjs +42 -0
- package/dist/ui/primitives/resizable.mjs.map +1 -0
- package/dist/ui/primitives/save-status.d.mts +31 -0
- package/dist/ui/primitives/save-status.d.ts +31 -0
- package/dist/ui/primitives/save-status.js +150 -0
- package/dist/ui/primitives/save-status.js.map +1 -0
- package/dist/ui/primitives/save-status.mjs +126 -0
- package/dist/ui/primitives/save-status.mjs.map +1 -0
- package/dist/ui/primitives/separator.d.mts +6 -0
- package/dist/ui/primitives/separator.d.ts +6 -0
- package/dist/ui/primitives/separator.js +62 -0
- package/dist/ui/primitives/separator.js.map +1 -0
- package/dist/ui/primitives/separator.mjs +28 -0
- package/dist/ui/primitives/separator.mjs.map +1 -0
- package/dist/ui/primitives/sheet.d.mts +16 -0
- package/dist/ui/primitives/sheet.d.ts +16 -0
- package/dist/ui/primitives/sheet.js +170 -0
- package/dist/ui/primitives/sheet.js.map +1 -0
- package/dist/ui/primitives/sheet.mjs +129 -0
- package/dist/ui/primitives/sheet.mjs.map +1 -0
- package/dist/ui/primitives/sidebar.d.mts +74 -0
- package/dist/ui/primitives/sidebar.d.ts +74 -0
- package/dist/ui/primitives/sidebar.js +697 -0
- package/dist/ui/primitives/sidebar.js.map +1 -0
- package/dist/ui/primitives/sidebar.mjs +651 -0
- package/dist/ui/primitives/sidebar.mjs.map +1 -0
- package/dist/ui/primitives/skeleton.d.mts +5 -0
- package/dist/ui/primitives/skeleton.d.ts +5 -0
- package/dist/ui/primitives/skeleton.js +40 -0
- package/dist/ui/primitives/skeleton.js.map +1 -0
- package/dist/ui/primitives/skeleton.mjs +16 -0
- package/dist/ui/primitives/skeleton.mjs.map +1 -0
- package/dist/ui/primitives/slider.d.mts +20 -0
- package/dist/ui/primitives/slider.d.ts +20 -0
- package/dist/ui/primitives/slider.js +112 -0
- package/dist/ui/primitives/slider.js.map +1 -0
- package/dist/ui/primitives/slider.mjs +78 -0
- package/dist/ui/primitives/slider.mjs.map +1 -0
- package/dist/ui/primitives/sortable.d.mts +50 -0
- package/dist/ui/primitives/sortable.d.ts +50 -0
- package/dist/ui/primitives/sortable.js +456 -0
- package/dist/ui/primitives/sortable.js.map +1 -0
- package/dist/ui/primitives/sortable.mjs +435 -0
- package/dist/ui/primitives/sortable.mjs.map +1 -0
- package/dist/ui/primitives/switch.d.mts +6 -0
- package/dist/ui/primitives/switch.d.ts +6 -0
- package/dist/ui/primitives/switch.js +67 -0
- package/dist/ui/primitives/switch.js.map +1 -0
- package/dist/ui/primitives/switch.mjs +33 -0
- package/dist/ui/primitives/switch.mjs.map +1 -0
- package/dist/ui/primitives/table.d.mts +12 -0
- package/dist/ui/primitives/table.d.ts +12 -0
- package/dist/ui/primitives/table.js +130 -0
- package/dist/ui/primitives/table.js.map +1 -0
- package/dist/ui/primitives/table.mjs +89 -0
- package/dist/ui/primitives/table.mjs.map +1 -0
- package/dist/ui/primitives/tabs.d.mts +9 -0
- package/dist/ui/primitives/tabs.d.ts +9 -0
- package/dist/ui/primitives/tabs.js +86 -0
- package/dist/ui/primitives/tabs.js.map +1 -0
- package/dist/ui/primitives/tabs.mjs +49 -0
- package/dist/ui/primitives/tabs.mjs.map +1 -0
- package/dist/ui/primitives/textarea.d.mts +5 -0
- package/dist/ui/primitives/textarea.d.ts +5 -0
- package/dist/ui/primitives/textarea.js +43 -0
- package/dist/ui/primitives/textarea.js.map +1 -0
- package/dist/ui/primitives/textarea.mjs +19 -0
- package/dist/ui/primitives/textarea.mjs.map +1 -0
- package/dist/ui/primitives/tooltip.d.mts +9 -0
- package/dist/ui/primitives/tooltip.d.ts +9 -0
- package/dist/ui/primitives/tooltip.js +94 -0
- package/dist/ui/primitives/tooltip.js.map +1 -0
- package/dist/ui/primitives/tooltip.mjs +57 -0
- package/dist/ui/primitives/tooltip.mjs.map +1 -0
- package/docs/agents.md +72 -29
- package/docs/api/README.md +7 -3
- package/docs/api/appObjects.d.ts +3 -1
- package/docs/api/appObjects.md +2 -1
- package/docs/api/by-path.md +51 -0
- package/docs/api/dataPipelines.d.ts +149 -0
- package/docs/api/dataPipelines.md +232 -0
- package/docs/api/forms.d.ts +16 -0
- package/docs/api/forms.md +8 -0
- package/docs/api/objects.d.ts +705 -5
- package/docs/api/objects.md +1099 -14
- package/docs/api/ops.d.ts +1 -1
- package/docs/api/ops.md +1 -1
- package/docs/api/processLists.d.ts +247 -0
- package/docs/api/processLists.md +409 -0
- package/docs/api/quotes.d.ts +3 -1
- package/docs/api/quotes.md +7 -2
- package/docs/api/radar.d.ts +4 -0
- package/docs/api/radar.md +1 -0
- package/docs/api/reports.d.ts +476 -0
- package/docs/api/reports.md +539 -0
- package/docs/api/scheduleBuy.d.ts +12 -8
- package/docs/api/scheduleBuy.md +13 -10
- package/docs/api/seo.d.ts +406 -3
- package/docs/api/seo.md +505 -1
- package/docs/api/workspaceBackup.d.ts +324 -0
- package/docs/api/workspaceBackup.md +427 -0
- package/package.json +174 -5
- package/stacks/6sense.json +46 -0
- package/stacks/README.md +20 -0
- package/stacks/apollo.json +128 -0
- package/stacks/clay.json +59 -0
- package/stacks/gong.json +72 -0
- package/stacks/hubspot.json +162 -0
- package/stacks/intercom.json +53 -0
- package/stacks/mailchimp.json +71 -0
- package/stacks/outreach.json +86 -0
- package/stacks/salesforce.json +94 -0
- package/stacks/stack.schema.json +32 -0
- package/stacks/starter.json +22 -0
- package/styles/styles.css +2 -0
- package/styles/theme.css +181 -0
- package/styles/tokens.css +284 -0
- package/templates/next-app/README.md.tmpl +35 -0
- package/templates/next-app/_pages/redirect-page.tsx.tmpl +5 -0
- package/templates/next-app/_pages/route-page.tsx.tmpl +9 -0
- package/templates/next-app/app/globals.css.tmpl +8 -0
- package/templates/next-app/app/layout.tsx.tmpl +19 -0
- package/templates/next-app/components/app-shell.tsx.tmpl +34 -0
- package/templates/next-app/dot-env.local.example.tmpl +6 -0
- package/templates/next-app/dot-gitignore.tmpl +7 -0
- package/templates/next-app/lib/nav.ts.tmpl +2 -0
- package/templates/next-app/next.config.mjs.tmpl +4 -0
- package/templates/next-app/package.json.tmpl +25 -0
- package/templates/next-app/postcss.config.mjs.tmpl +4 -0
- package/templates/next-app/tsconfig.json.tmpl +21 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
3
|
+
import * as TooltipPrimitive from "@radix-ui/react-tooltip";
|
|
4
|
+
import { cn } from "../lib/utils.mjs";
|
|
5
|
+
function TooltipProvider({
|
|
6
|
+
delayDuration = 0,
|
|
7
|
+
...props
|
|
8
|
+
}) {
|
|
9
|
+
return /* @__PURE__ */ jsx(
|
|
10
|
+
TooltipPrimitive.Provider,
|
|
11
|
+
{
|
|
12
|
+
"data-slot": "tooltip-provider",
|
|
13
|
+
delayDuration,
|
|
14
|
+
...props
|
|
15
|
+
}
|
|
16
|
+
);
|
|
17
|
+
}
|
|
18
|
+
function Tooltip({
|
|
19
|
+
...props
|
|
20
|
+
}) {
|
|
21
|
+
return /* @__PURE__ */ jsx(TooltipProvider, { children: /* @__PURE__ */ jsx(TooltipPrimitive.Root, { "data-slot": "tooltip", ...props }) });
|
|
22
|
+
}
|
|
23
|
+
function TooltipTrigger({
|
|
24
|
+
...props
|
|
25
|
+
}) {
|
|
26
|
+
return /* @__PURE__ */ jsx(TooltipPrimitive.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
27
|
+
}
|
|
28
|
+
function TooltipContent({
|
|
29
|
+
className,
|
|
30
|
+
sideOffset = 0,
|
|
31
|
+
children,
|
|
32
|
+
...props
|
|
33
|
+
}) {
|
|
34
|
+
return /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
|
|
35
|
+
TooltipPrimitive.Content,
|
|
36
|
+
{
|
|
37
|
+
"data-slot": "tooltip-content",
|
|
38
|
+
sideOffset,
|
|
39
|
+
className: cn(
|
|
40
|
+
"bg-primary text-primary-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance",
|
|
41
|
+
className
|
|
42
|
+
),
|
|
43
|
+
...props,
|
|
44
|
+
children: [
|
|
45
|
+
children,
|
|
46
|
+
/* @__PURE__ */ jsx(TooltipPrimitive.Arrow, { className: "bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })
|
|
47
|
+
]
|
|
48
|
+
}
|
|
49
|
+
) });
|
|
50
|
+
}
|
|
51
|
+
export {
|
|
52
|
+
Tooltip,
|
|
53
|
+
TooltipContent,
|
|
54
|
+
TooltipProvider,
|
|
55
|
+
TooltipTrigger
|
|
56
|
+
};
|
|
57
|
+
//# sourceMappingURL=tooltip.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/ui/primitives/tooltip.tsx"],"sourcesContent":["/*\n * @graph8/sdk/ui — GENERATED FROM frontend/components/ui/tooltip.tsx. DO NOT EDIT.\n *\n * Edit the app source, then run: npm run generate:ui --prefix sdk/js\n * Hand edits are overwritten and will fail sdk/js/tests/ui/drift.test.ts.\n */\n\"use client\"\n\nimport * as React from \"react\"\nimport * as TooltipPrimitive from \"@radix-ui/react-tooltip\"\n\nimport { cn } from \"../lib/utils\"\n\nfunction TooltipProvider({\n delayDuration = 0,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Provider>) {\n return (\n <TooltipPrimitive.Provider\n data-slot=\"tooltip-provider\"\n delayDuration={delayDuration}\n {...props}\n />\n )\n}\n\nfunction Tooltip({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Root>) {\n return (\n <TooltipProvider>\n <TooltipPrimitive.Root data-slot=\"tooltip\" {...props} />\n </TooltipProvider>\n )\n}\n\nfunction TooltipTrigger({\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Trigger>) {\n return <TooltipPrimitive.Trigger data-slot=\"tooltip-trigger\" {...props} />\n}\n\nfunction TooltipContent({\n className,\n sideOffset = 0,\n children,\n ...props\n}: React.ComponentProps<typeof TooltipPrimitive.Content>) {\n return (\n <TooltipPrimitive.Portal>\n <TooltipPrimitive.Content\n data-slot=\"tooltip-content\"\n sideOffset={sideOffset}\n className={cn(\n \"bg-primary text-primary-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance\",\n className\n )}\n {...props}\n >\n {children}\n <TooltipPrimitive.Arrow className=\"bg-primary fill-primary z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]\" />\n </TooltipPrimitive.Content>\n </TooltipPrimitive.Portal>\n )\n}\n\nexport { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider }\n"],"mappings":";AAkBI,cAgCE,YAhCF;AATJ,YAAY,sBAAsB;AAElC,SAAS,UAAU;AAEnB,SAAS,gBAAgB;AAAA,EACvB,gBAAgB;AAAA,EAChB,GAAG;AACL,GAA2D;AACzD,SACE;AAAA,IAAC,iBAAiB;AAAA,IAAjB;AAAA,MACC,aAAU;AAAA,MACV;AAAA,MACC,GAAG;AAAA;AAAA,EACN;AAEJ;AAEA,SAAS,QAAQ;AAAA,EACf,GAAG;AACL,GAAuD;AACrD,SACE,oBAAC,mBACC,8BAAC,iBAAiB,MAAjB,EAAsB,aAAU,WAAW,GAAG,OAAO,GACxD;AAEJ;AAEA,SAAS,eAAe;AAAA,EACtB,GAAG;AACL,GAA0D;AACxD,SAAO,oBAAC,iBAAiB,SAAjB,EAAyB,aAAU,mBAAmB,GAAG,OAAO;AAC1E;AAEA,SAAS,eAAe;AAAA,EACtB;AAAA,EACA,aAAa;AAAA,EACb;AAAA,EACA,GAAG;AACL,GAA0D;AACxD,SACE,oBAAC,iBAAiB,QAAjB,EACC;AAAA,IAAC,iBAAiB;AAAA,IAAjB;AAAA,MACC,aAAU;AAAA,MACV;AAAA,MACA,WAAW;AAAA,QACT;AAAA,QACA;AAAA,MACF;AAAA,MACC,GAAG;AAAA,MAEH;AAAA;AAAA,QACD,oBAAC,iBAAiB,OAAjB,EAAuB,WAAU,gGAA+F;AAAA;AAAA;AAAA,EACnI,GACF;AAEJ;","names":[]}
|
package/docs/agents.md
CHANGED
|
@@ -9,8 +9,8 @@ grows every week and your training data is older than this file.
|
|
|
9
9
|
|
|
10
10
|
graph8 is a B2B go-to-market platform: CRM (contacts, companies, deals, custom objects), a 700M-person
|
|
11
11
|
data index with enrichment, intent signals, sequences and campaigns across email/SMS/LinkedIn/voice, a unified
|
|
12
|
-
inbox, meetings, workflows and more. This SDK reaches all of it: **
|
|
13
|
-
operations** in
|
|
12
|
+
inbox, meetings, workflows and more. This SDK reaches all of it: **3315 Developer API
|
|
13
|
+
operations** in 145 areas.
|
|
14
14
|
|
|
15
15
|
## 1. The short version
|
|
16
16
|
|
|
@@ -47,6 +47,7 @@ node_modules/@graph8/sdk/
|
|
|
47
47
|
docs/api/<ns>.d.ts that area's exact TypeScript types, self-contained (small: read it)
|
|
48
48
|
dist/types/<module>.d.ts one hand-written client's types, e.g. dist/types/contacts.d.ts
|
|
49
49
|
dist/index.d.ts the bundled types the compiler uses (large: search it, do not read it whole)
|
|
50
|
+
blocks/ stacks/ editable UI blocks to copy into an app (section 13)
|
|
50
51
|
```
|
|
51
52
|
|
|
52
53
|
Search the docs directly. Some good searches:
|
|
@@ -92,7 +93,7 @@ g8.init({ apiKey: process.env.G8_API_KEY! });
|
|
|
92
93
|
| | Hand-written clients | `g8.api` (generated) |
|
|
93
94
|
|---|---|---|
|
|
94
95
|
| Example | `g8.contacts.upsert({ list_id, work_email })` | `g8.api.assertUpsert.assertContact({ body: { list_id, work_email } })` |
|
|
95
|
-
| Coverage | 289 methods, reaching 258 operations | all
|
|
96
|
+
| Coverage | 289 methods, reaching 258 operations | all 3315 operations |
|
|
96
97
|
| Returns | the unwrapped value (usually `data`) | the full envelope; read `result.data` |
|
|
97
98
|
| Arguments | positional / friendly names | `{ path?, query?, headers?, body? }`, exactly as the contract names them |
|
|
98
99
|
| Reference | [sdk-clients.md](sdk-clients.md) | [api/README.md](api/README.md) |
|
|
@@ -141,7 +142,7 @@ Hand-written modules:
|
|
|
141
142
|
| [`g8.webhooks`](sdk-clients.md#g8-webhooks) | 1 | API key |
|
|
142
143
|
| [`g8.workflows`](sdk-clients.md#g8-workflows) | 21 | API key |
|
|
143
144
|
|
|
144
|
-
`g8.api` namespaces (operation counts): `accounts` (16), `adCampaigns` (19), `adCreatives` (40), `agency` (24), `agent` (8), `agents` (65), `aiInbox` (79), `analytics` (51), `apiKeys` (6), `appDeployments` (7), `appDomains` (5), `appLogs` (2), `appObjects` (10), `appPages` (16), `appPlatformTokens` (3), `appointments` (92), `apps` (22), `assertUpsert` (6), `audienceSyncs` (8), `brandKit` (30), `bugReports` (7), `calendarInvites` (3), `campaignWorkflows` (5), `campaigns` (29), `channels` (5), `cliCampaigns` (6), `cliPipelines` (12), `clickHouse` (2), `companies` (50), `companyIntelligence` (14), `contacts` (70), `content` (41), `contentGridSkills` (6), `copilot` (39), `crmSyncs` (6), `customerSuccess` (19), `deals` (48), `deliverability` (17), `desk` (71), `dialer` (46), `dialerAnalytics` (6), `documents` (35), `duplicates` (7), `eSign` (1), `eSignature` (7), `enrichment` (115), `events` (1), `fields` (8), `forms` (35), `gtmCampaigns` (22), `gtmContext` (51), `gtmDeliverability` (1), `gtmKnowledgeBase` (2), `gtmLaunchHelpers` (2), `gtmLibrary` (20), `health` (1), `imageLibrary` (14), `imports` (3), `inbox` (22), `install` (6), `installedApps` (4), `integrationStatus` (6), `integrations` (83), `intent` (16), `knowledge` (21), `knowledgeBase` (2), `landingPages` (59), `leads` (4), `library` (9), `linkedIn` (5), `linkedInOutreach` (20), `lists` (36), `logs` (1), `mailboxes` (38), `marketingIntelligence` (10), `marketplace` (142), `mcp` (1), `me` (1), `meetings` (17), `newsletter` (61), `notes` (19), `notifications` (2), `objects` (
|
|
145
|
+
`g8.api` namespaces (operation counts): `accounts` (16), `adCampaigns` (19), `adCreatives` (40), `agency` (24), `agent` (8), `agents` (65), `aiInbox` (79), `analytics` (51), `apiKeys` (6), `appDeployments` (7), `appDomains` (5), `appLogs` (2), `appObjects` (10), `appPages` (16), `appPlatformTokens` (3), `appointments` (92), `apps` (22), `assertUpsert` (6), `audienceSyncs` (8), `brandKit` (30), `bugReports` (7), `calendarInvites` (3), `campaignWorkflows` (5), `campaigns` (29), `channels` (5), `cliCampaigns` (6), `cliPipelines` (12), `clickHouse` (2), `companies` (50), `companyIntelligence` (14), `contacts` (70), `content` (41), `contentGridSkills` (6), `copilot` (39), `crmSyncs` (6), `customerSuccess` (19), `dataPipelines` (5), `deals` (48), `deliverability` (17), `desk` (71), `dialer` (46), `dialerAnalytics` (6), `documents` (35), `duplicates` (7), `eSign` (1), `eSignature` (7), `enrichment` (115), `events` (1), `fields` (8), `forms` (35), `gtmCampaigns` (22), `gtmContext` (51), `gtmDeliverability` (1), `gtmKnowledgeBase` (2), `gtmLaunchHelpers` (2), `gtmLibrary` (20), `health` (1), `imageLibrary` (14), `imports` (3), `inbox` (22), `install` (6), `installedApps` (4), `integrationStatus` (6), `integrations` (83), `intent` (16), `knowledge` (21), `knowledgeBase` (2), `landingPages` (59), `leads` (4), `library` (9), `linkedIn` (5), `linkedInOutreach` (20), `lists` (36), `logs` (1), `mailboxes` (38), `marketingIntelligence` (10), `marketplace` (142), `mcp` (1), `me` (1), `meetings` (17), `newsletter` (61), `notes` (19), `notifications` (2), `objects` (42), `openSearch` (4), `ops` (5), `orgGovernance` (17), `orgVideos` (6), `organizationSettings` (22), `phoneNumbers` (16), `processLists` (6), `profile` (14), `programmaticPages` (15), `providerDomains` (34), `providerUsage` (5), `public` (1), `publicCopilot` (1), `publicSignals` (1), `publicVisitors` (2), `quotes` (56), `radar` (42), `radarReports` (8), `recordRoles` (4), `reports` (7), `repos` (4), `research` (13), `revenue` (14), `revenueAnalytics` (6), `revenueLifecycle` (5), `revenueRecords` (15), `roles` (21), `salesCoach` (37), `sandbox` (9), `scans` (2), `scheduleBuy` (9), `scraping` (10), `sdrAnalytics` (5), `search` (19), `seo` (22), `sequenceLifecycle` (8), `sequences` (71), `settings` (18), `signals` (56), `signatures` (24), `skills` (12), `snippet` (3), `socialPublishing` (22), `studioDocuments` (9), `support` (1), `suppressions` (6), `surveys` (21), `tasks` (25), `teamMembers` (21), `teams` (35), `usage` (9), `visitors` (26), `voice` (187), `webAnalytics` (38), `webChat` (46), `webhooks` (8), `websiteEditor` (12), `work` (59), `workbench` (107), `workflows` (59), `workspaceBackup` (7).
|
|
145
146
|
|
|
146
147
|
## 5. How to find the right call
|
|
147
148
|
|
|
@@ -196,9 +197,9 @@ Every operation carries a tier:
|
|
|
196
197
|
|
|
197
198
|
| Tier | What it means | Count |
|
|
198
199
|
|---|---|---|
|
|
199
|
-
| `read` | reads data; safe to call and to retry |
|
|
200
|
-
| `write` | creates or changes records; the SDK sends an Idempotency-Key and retries transient failures |
|
|
201
|
-
| `destructive` | deletes or archives data; confirm with a human before calling |
|
|
200
|
+
| `read` | reads data; safe to call and to retry | 1540 |
|
|
201
|
+
| `write` | creates or changes records; the SDK sends an Idempotency-Key and retries transient failures | 836 |
|
|
202
|
+
| `destructive` | deletes or archives data; confirm with a human before calling | 305 |
|
|
202
203
|
| `billable` | spends credits; the SDK never blindly retries it; confirm cost before bulk use | 383 |
|
|
203
204
|
| `external` | reaches real people (sends email/SMS, places a call, launches a send); the SDK never blindly retries it; confirm with a human first | 251 |
|
|
204
205
|
|
|
@@ -342,34 +343,37 @@ if (contacts.length > 0) {
|
|
|
342
343
|
|
|
343
344
|
### Prospect in the graph8 index, then save the people you want
|
|
344
345
|
|
|
345
|
-
Building a list of new prospects. `
|
|
346
|
+
Building a list of new prospects. `search.contacts` queries graph8's contact index (not your CRM). It needs an active subscription and does not spend credits, but contact details come back LOCKED: a field whose value exists reads `"***"` and is named in `locked_fields`. Never import a search row directly. Save the matches into a list with `search.saveContacts`, which reveals them as real CRM contacts, then read the list. Enrich or enroll from the list afterwards.
|
|
346
347
|
|
|
347
348
|
```ts
|
|
348
349
|
import { g8 } from "@graph8/sdk";
|
|
349
350
|
|
|
350
351
|
g8.init({ apiKey: process.env.G8_API_KEY! });
|
|
351
352
|
|
|
352
|
-
const
|
|
353
|
-
[
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
);
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
353
|
+
const filters = [
|
|
354
|
+
{ field: "seniority_level", operator: "any_of" as const, value: ["VP", "Director"] },
|
|
355
|
+
{ field: "company_industry", operator: "contains" as const, value: ["SaaS"] },
|
|
356
|
+
];
|
|
357
|
+
|
|
358
|
+
// 1. Preview: free, masked. Use it to check the filters and the size before saving.
|
|
359
|
+
const preview = await g8.search.contacts({ filters, limit: 25 });
|
|
360
|
+
console.log(`${preview.pagination?.total ?? preview.data.length} matches`);
|
|
361
|
+
const withEmail = preview.data.filter((p) => p.locked_fields?.includes("work_email")).length;
|
|
362
|
+
console.log(`${withEmail} of the first ${preview.data.length} have a (locked) work email`);
|
|
363
|
+
|
|
364
|
+
// 2. Save: creates a list and reveals the contacts into your CRM. Confirm the size with a human first.
|
|
365
|
+
const saved = await g8.search.saveContacts({ filters, list_title: "Q4 SaaS VPs", max_results: 100 });
|
|
366
|
+
|
|
367
|
+
// 3. The save runs in the background and fills the list in batches: a first non-empty read can be partial.
|
|
368
|
+
// Read until the total stops changing (or reaches the cap), then use the list.
|
|
369
|
+
let page = await g8.lists.contacts(saved.list_id, 1, 50);
|
|
370
|
+
for (let attempt = 0, previous = -1; attempt < 20 && page.total < 100; attempt++) {
|
|
371
|
+
if (page.total > 0 && page.total === previous) break;
|
|
372
|
+
previous = page.total;
|
|
373
|
+
await new Promise((resolve) => setTimeout(resolve, 3000));
|
|
374
|
+
page = await g8.lists.contacts(saved.list_id, 1, 50);
|
|
372
375
|
}
|
|
376
|
+
for (const contact of page.data) console.log(contact.id, contact.work_email);
|
|
373
377
|
```
|
|
374
378
|
|
|
375
379
|
<a id="recipe-enrich"></a>
|
|
@@ -726,7 +730,10 @@ setTimeout(stop, 60_000);
|
|
|
726
730
|
`full_name`, `personal_emails`, `company`, ...) in bulk, use `g8.contacts.listDetailed(filters)` or
|
|
727
731
|
`g8.contacts.getMany(ids)` (100 per request), not a `get()` per contact.
|
|
728
732
|
- **The CRM and the data index are different things.** `g8.contacts.*` reads YOUR workspace;
|
|
729
|
-
`g8.enrich.search` searches graph8's 700M-person index
|
|
733
|
+
`g8.search.contacts` (and the older `g8.enrich.search`) searches graph8's 700M-person index. It needs an
|
|
734
|
+
active subscription and does not spend credits, but contact details come back **locked**: a value that
|
|
735
|
+
exists reads `"***"` and is named in `locked_fields`. Never import a search row. Save matches with
|
|
736
|
+
`g8.search.saveContacts` (that reveals them as CRM contacts), then read the list; enrich after that.
|
|
730
737
|
- **Ids have types.** Contact and list ids are numbers; deal, task, note, sequence and campaign ids are
|
|
731
738
|
strings. The types enforce this, so read them.
|
|
732
739
|
- **Parameter names differ per endpoint** (`limit` vs `take` vs `page_size`). Take them from the types or
|
|
@@ -747,3 +754,39 @@ setTimeout(stop, 60_000);
|
|
|
747
754
|
- **REST**: `https://be.graph8.com/api/v1/...` with `Authorization: Bearer <api key>`. Every route is in
|
|
748
755
|
[api/by-path.md](api/by-path.md).
|
|
749
756
|
- **Web docs**: https://docs.graph8.com (index for agents: https://docs.graph8.com/llms.txt).
|
|
757
|
+
|
|
758
|
+
## 13. Blocks and stacks
|
|
759
|
+
|
|
760
|
+
For a whole screen or app (a contacts table, a sequence builder, an inbox) do not hand-write every
|
|
761
|
+
component: this package ships **blocks**, editable source you copy into the customer's Next.js app.
|
|
762
|
+
|
|
763
|
+
```
|
|
764
|
+
node_modules/@graph8/sdk/
|
|
765
|
+
blocks/block.schema.json the block.json format (blocks/block.types.ts is the same as TypeScript)
|
|
766
|
+
blocks/_foundation/ block "foundation": hooks, browser client, API proxy route, shared components
|
|
767
|
+
blocks/<id>/block.json manifest: summary, operations, per-component tiers, scopes, prerequisites, defaults
|
|
768
|
+
blocks/<id>/README.md the flow: what happens in what order, which ids pass where
|
|
769
|
+
blocks/<id>/components/ React components, copied into the app and then yours to edit
|
|
770
|
+
blocks/<id>/hooks/ data hooks
|
|
771
|
+
blocks/<id>/recipes/ server-side SDK recipes
|
|
772
|
+
stacks/<id>.json a named, ordered set of blocks plus the navigation between their screens
|
|
773
|
+
```
|
|
774
|
+
|
|
775
|
+
- **Blocks are copied, not imported.** After copying, the code belongs to the app: change it freely.
|
|
776
|
+
Read a block's `README.md` and `block.json` before copying it.
|
|
777
|
+
- **Every block depends on `foundation`.** Its browser client calls the app's own `/api/g8/...` route,
|
|
778
|
+
which adds the server-side API key. Never put an API key in client code. The route refuses to run
|
|
779
|
+
until its `authorize` and `allowedPrefixes` are set (it is as powerful as the key), so ask the person how
|
|
780
|
+
their app knows who is signed in.
|
|
781
|
+
- **`block.json` is derived from the API contract and checked in CI**: `operations` are real operation ids,
|
|
782
|
+
each component's `tiers` are the tiers of its operations, `scopes` is the key scopes they need. Use them
|
|
783
|
+
to decide which screens need a confirmation (`billable`, `external`, `destructive`) and which key to
|
|
784
|
+
create. Where `defaults` says `askHuman: true`, ask the person before using the default.
|
|
785
|
+
- **Search the catalog** with `grep -h '"summary"' node_modules/@graph8/sdk/blocks/*/block.json`.
|
|
786
|
+
- **Start a whole app with one command**: `npx @graph8/sdk create <stack> <dir>` scaffolds a Next.js App Router +
|
|
787
|
+
TypeScript + Tailwind v4 app, installs the stack's blocks (the same code as `add`), puts every screen of
|
|
788
|
+
the stack in a sidebar with one route each, and installs dependencies (`--no-install`, `--dry-run`,
|
|
789
|
+
`--package-manager`, `--force`). Then set `G8_API_KEY` in `.env.local` and run
|
|
790
|
+
`npx @graph8/sdk doctor --stack <id>`. `stacks/<id>.json` has `status`: only `available` stacks (every block
|
|
791
|
+
shipped) can be created; a `planned` stack is refused with the list of missing blocks. `starter` is an
|
|
792
|
+
empty app (foundation only) you grow with `add`. Run `npx @graph8/sdk list` for the stacks and their status.
|
package/docs/api/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# `g8.api`: every Developer API operation
|
|
4
4
|
|
|
5
|
-
`g8.api` is generated from the published OpenAPI contract, so it covers all
|
|
5
|
+
`g8.api` is generated from the published OpenAPI contract, so it covers all 3315 operations across 145 namespaces (1540 read, 836 write, 305 destructive, 383 billable, 251 external).
|
|
6
6
|
|
|
7
7
|
- Found a REST path in a curl example or the web docs? Look it up in [by-path.md](by-path.md).
|
|
8
8
|
- Prefer a hand-written method where one exists: [../sdk-clients.md](../sdk-clients.md).
|
|
@@ -58,6 +58,7 @@
|
|
|
58
58
|
| `g8.api.copilot` | Copilot | 39 | none | [copilot.md](copilot.md) | [copilot.d.ts](copilot.d.ts) |
|
|
59
59
|
| `g8.api.crmSyncs` | CRM Syncs | 6 | none | [crmSyncs.md](crmSyncs.md) | [crmSyncs.d.ts](crmSyncs.d.ts) |
|
|
60
60
|
| `g8.api.customerSuccess` | Customer success | 19 | none | [customerSuccess.md](customerSuccess.md) | [customerSuccess.d.ts](customerSuccess.d.ts) |
|
|
61
|
+
| `g8.api.dataPipelines` | Data pipelines | 5 | none | [dataPipelines.md](dataPipelines.md) | [dataPipelines.d.ts](dataPipelines.d.ts) |
|
|
61
62
|
| `g8.api.deals` | Deals | 48 | 8 | [deals.md](deals.md) | [deals.d.ts](deals.d.ts) |
|
|
62
63
|
| `g8.api.deliverability` | Deliverability | 17 | none | [deliverability.md](deliverability.md) | [deliverability.d.ts](deliverability.d.ts) |
|
|
63
64
|
| `g8.api.desk` | Desk | 71 | none | [desk.md](desk.md) | [desk.d.ts](desk.d.ts) |
|
|
@@ -104,13 +105,14 @@
|
|
|
104
105
|
| `g8.api.newsletter` | Newsletter | 61 | 15 | [newsletter.md](newsletter.md) | [newsletter.d.ts](newsletter.d.ts) |
|
|
105
106
|
| `g8.api.notes` | Notes | 19 | 8 | [notes.md](notes.md) | [notes.d.ts](notes.d.ts) |
|
|
106
107
|
| `g8.api.notifications` | Notifications | 2 | none | [notifications.md](notifications.md) | [notifications.d.ts](notifications.d.ts) |
|
|
107
|
-
| `g8.api.objects` | Objects |
|
|
108
|
+
| `g8.api.objects` | Objects | 42 | 18 | [objects.md](objects.md) | [objects.d.ts](objects.d.ts) |
|
|
108
109
|
| `g8.api.openSearch` | OpenSearch | 4 | none | [openSearch.md](openSearch.md) | [openSearch.d.ts](openSearch.d.ts) |
|
|
109
110
|
| `g8.api.ops` | Ops (internal, cross-tenant, read-only) | 5 | none | [ops.md](ops.md) | [ops.d.ts](ops.d.ts) |
|
|
110
111
|
| `g8.api.orgGovernance` | Org Governance | 17 | none | [orgGovernance.md](orgGovernance.md) | [orgGovernance.d.ts](orgGovernance.d.ts) |
|
|
111
112
|
| `g8.api.orgVideos` | Org Videos | 6 | none | [orgVideos.md](orgVideos.md) | [orgVideos.d.ts](orgVideos.d.ts) |
|
|
112
113
|
| `g8.api.organizationSettings` | Organization Settings | 22 | none | [organizationSettings.md](organizationSettings.md) | [organizationSettings.d.ts](organizationSettings.d.ts) |
|
|
113
114
|
| `g8.api.phoneNumbers` | Phone Numbers | 16 | none | [phoneNumbers.md](phoneNumbers.md) | [phoneNumbers.d.ts](phoneNumbers.d.ts) |
|
|
115
|
+
| `g8.api.processLists` | Process Lists | 6 | none | [processLists.md](processLists.md) | [processLists.d.ts](processLists.d.ts) |
|
|
114
116
|
| `g8.api.profile` | Profile | 14 | none | [profile.md](profile.md) | [profile.d.ts](profile.d.ts) |
|
|
115
117
|
| `g8.api.programmaticPages` | Programmatic Pages | 15 | none | [programmaticPages.md](programmaticPages.md) | [programmaticPages.d.ts](programmaticPages.d.ts) |
|
|
116
118
|
| `g8.api.providerDomains` | Provider Domains | 34 | none | [providerDomains.md](providerDomains.md) | [providerDomains.d.ts](providerDomains.d.ts) |
|
|
@@ -123,6 +125,7 @@
|
|
|
123
125
|
| `g8.api.radar` | Radar | 42 | none | [radar.md](radar.md) | [radar.d.ts](radar.d.ts) |
|
|
124
126
|
| `g8.api.radarReports` | Radar Reports | 8 | none | [radarReports.md](radarReports.md) | [radarReports.d.ts](radarReports.d.ts) |
|
|
125
127
|
| `g8.api.recordRoles` | Record Roles | 4 | none | [recordRoles.md](recordRoles.md) | [recordRoles.d.ts](recordRoles.d.ts) |
|
|
128
|
+
| `g8.api.reports` | Reports | 7 | none | [reports.md](reports.md) | [reports.d.ts](reports.d.ts) |
|
|
126
129
|
| `g8.api.repos` | Repos | 4 | none | [repos.md](repos.md) | [repos.d.ts](repos.d.ts) |
|
|
127
130
|
| `g8.api.research` | Research | 13 | none | [research.md](research.md) | [research.d.ts](research.d.ts) |
|
|
128
131
|
| `g8.api.revenue` | Revenue | 14 | none | [revenue.md](revenue.md) | [revenue.d.ts](revenue.d.ts) |
|
|
@@ -137,7 +140,7 @@
|
|
|
137
140
|
| `g8.api.scraping` | Scraping | 10 | none | [scraping.md](scraping.md) | [scraping.d.ts](scraping.d.ts) |
|
|
138
141
|
| `g8.api.sdrAnalytics` | SDR Analytics | 5 | none | [sdrAnalytics.md](sdrAnalytics.md) | [sdrAnalytics.d.ts](sdrAnalytics.d.ts) |
|
|
139
142
|
| `g8.api.search` | Search | 19 | 4 | [search.md](search.md) | [search.d.ts](search.d.ts) |
|
|
140
|
-
| `g8.api.seo` | SEO |
|
|
143
|
+
| `g8.api.seo` | SEO | 22 | none | [seo.md](seo.md) | [seo.d.ts](seo.d.ts) |
|
|
141
144
|
| `g8.api.sequenceLifecycle` | Sequence Lifecycle | 8 | 6 | [sequenceLifecycle.md](sequenceLifecycle.md) | [sequenceLifecycle.d.ts](sequenceLifecycle.d.ts) |
|
|
142
145
|
| `g8.api.sequences` | Sequences | 71 | 6 | [sequences.md](sequences.md) | [sequences.d.ts](sequences.d.ts) |
|
|
143
146
|
| `g8.api.settings` | Settings | 18 | none | [settings.md](settings.md) | [settings.d.ts](settings.d.ts) |
|
|
@@ -163,3 +166,4 @@
|
|
|
163
166
|
| `g8.api.work` | Work | 59 | none | [work.md](work.md) | [work.d.ts](work.d.ts) |
|
|
164
167
|
| `g8.api.workbench` | Workbench | 107 | none | [workbench.md](workbench.md) | [workbench.d.ts](workbench.d.ts) |
|
|
165
168
|
| `g8.api.workflows` | Workflows | 59 | 21 | [workflows.md](workflows.md) | [workflows.d.ts](workflows.d.ts) |
|
|
169
|
+
| `g8.api.workspaceBackup` | Workspace backup | 7 | none | [workspaceBackup.md](workspaceBackup.md) | [workspaceBackup.d.ts](workspaceBackup.d.ts) |
|
package/docs/api/appObjects.d.ts
CHANGED
|
@@ -284,6 +284,8 @@ export interface AttributeDefinitionResponse {
|
|
|
284
284
|
sort_order?: number;
|
|
285
285
|
/** Customer-facing field label, distinct from its stable API slug. */
|
|
286
286
|
title: string;
|
|
287
|
+
/** Role ids that may see this field; null means every role. Owners and admins always see every field. A field hidden from the caller is absent from every response. Set it with PATCH on this attribute. */
|
|
288
|
+
visible_to_role_ids?: Array<string> | null;
|
|
287
289
|
}
|
|
288
290
|
|
|
289
291
|
/** One custom object type in the caller's workspace. */
|
|
@@ -369,7 +371,7 @@ export interface RecordHistoryResponse {
|
|
|
369
371
|
}
|
|
370
372
|
|
|
371
373
|
export interface RecordMutationEntry {
|
|
372
|
-
action: "created" | "updated" | "archived" | "restored";
|
|
374
|
+
action: "created" | "updated" | "archived" | "restored" | "recalculated";
|
|
373
375
|
actor_id: string | null;
|
|
374
376
|
actor_type: "user" | "api" | "app" | "integration" | "system";
|
|
375
377
|
app_id?: string | null;
|
package/docs/api/appObjects.md
CHANGED
|
@@ -319,6 +319,7 @@ Other envelope fields: `pagination` (PaginationMeta).
|
|
|
319
319
|
| `is_system` | `boolean` | no | Whether this field is protected as a system attribute. default `false` |
|
|
320
320
|
| `is_unique` | `boolean` | no | No two active records may hold the same value for this attribute. A collision is rejected with `409 duplicate_active_value`. default `false` |
|
|
321
321
|
| `sort_order` | `integer` | no | Configured display order; equal values are ordered by API slug. default `0` |
|
|
322
|
+
| `visible_to_role_ids` | `Array<string> \| null` | no | Role ids that may see this field; null means every role. Owners and admins always see every field. A field hidden from the caller is absent from every response. Set it with PATCH on this attribute. |
|
|
322
323
|
|
|
323
324
|
**Example**
|
|
324
325
|
|
|
@@ -555,7 +556,7 @@ One generation of one attribute's value. Values are TEMPORAL rather than mutable
|
|
|
555
556
|
|
|
556
557
|
| Field | Type | Required | Description |
|
|
557
558
|
|---|---|---|---|
|
|
558
|
-
| `action` | `"created" \| "updated" \| "archived" \| "restored"` | yes | |
|
|
559
|
+
| `action` | `"created" \| "updated" \| "archived" \| "restored" \| "recalculated"` | yes | |
|
|
559
560
|
| `actor_id` | `string \| null` | yes | |
|
|
560
561
|
| `actor_type` | `"user" \| "api" \| "app" \| "integration" \| "system"` | yes | |
|
|
561
562
|
| `changes` | `Record<string, RecordMutationValueChange>` | yes | |
|
package/docs/api/by-path.md
CHANGED
|
@@ -876,6 +876,11 @@ Every Developer API route, sorted by path, with the SDK call that reaches it. Th
|
|
|
876
876
|
| PATCH | `/api/v1/customer-success/transcripts/{transcript_id}/archive` | [`g8.api.customerSuccess.archiveTranscript`](customerSuccess.md#op-archivetranscript) | destructive |
|
|
877
877
|
| PATCH | `/api/v1/customer-success/transcripts/{transcript_id}/link` | [`g8.api.customerSuccess.linkTranscriptToAccount`](customerSuccess.md#op-linktranscripttoaccount) | write |
|
|
878
878
|
| PATCH | `/api/v1/customer-success/transcripts/{transcript_id}/unarchive` | [`g8.api.customerSuccess.unarchiveTranscript`](customerSuccess.md#op-unarchivetranscript) | write |
|
|
879
|
+
| GET | `/api/v1/data-pipelines/destinations` | [`g8.api.dataPipelines.listDestinations`](dataPipelines.md#op-listdestinations) | read |
|
|
880
|
+
| GET | `/api/v1/data-pipelines/functions` | [`g8.api.dataPipelines.listFunctions`](dataPipelines.md#op-listfunctions) | read |
|
|
881
|
+
| GET | `/api/v1/data-pipelines/streams/{stream_id}/events` | [`g8.api.dataPipelines.listStreamEvents`](dataPipelines.md#op-liststreamevents) | read |
|
|
882
|
+
| GET | `/api/v1/data-pipelines/syncs` | [`g8.api.dataPipelines.listSyncs`](dataPipelines.md#op-listsyncs) | read |
|
|
883
|
+
| GET | `/api/v1/data-pipelines/syncs/{sync_id}/tasks` | [`g8.api.dataPipelines.listSyncTasks`](dataPipelines.md#op-listsynctasks) | read |
|
|
879
884
|
| GET | `/api/v1/deals` | [`g8.api.deals.listDeals`](deals.md#op-listdeals) or `g8.deals.list()` | read |
|
|
880
885
|
| POST | `/api/v1/deals` | [`g8.api.deals.createDeal`](deals.md#op-createdeal) or `g8.deals.create()` | write |
|
|
881
886
|
| GET | `/api/v1/deals/analytics` | [`g8.api.deals.getDealAnalytics`](deals.md#op-getdealanalytics) | read |
|
|
@@ -2020,8 +2025,19 @@ Every Developer API route, sorted by path, with the SDK call that reaches it. Th
|
|
|
2020
2025
|
| PATCH | `/api/v1/objects/{object_slug}` | [`g8.api.objects.updateObject`](objects.md#op-updateobject) or `g8.objects.update()` | write |
|
|
2021
2026
|
| GET | `/api/v1/objects/{object_slug}/attributes` | [`g8.api.objects.listObjectAttributes`](objects.md#op-listobjectattributes) or `g8.objects.listAttributes()` | read |
|
|
2022
2027
|
| POST | `/api/v1/objects/{object_slug}/attributes` | [`g8.api.objects.createAttribute`](objects.md#op-createattribute) or `g8.objects.createAttribute()` | write |
|
|
2028
|
+
| POST | `/api/v1/objects/{object_slug}/attributes/formula/validate` | [`g8.api.objects.validateFormula`](objects.md#op-validateformula) | read |
|
|
2023
2029
|
| DELETE | `/api/v1/objects/{object_slug}/attributes/{attr_slug}` | [`g8.api.objects.archiveAttribute`](objects.md#op-archiveattribute) or `g8.objects.archiveAttribute()` | destructive |
|
|
2024
2030
|
| PATCH | `/api/v1/objects/{object_slug}/attributes/{attr_slug}` | [`g8.api.objects.updateAttribute`](objects.md#op-updateattribute) or `g8.objects.updateAttribute()` | write |
|
|
2031
|
+
| POST | `/api/v1/objects/{object_slug}/exports` | [`g8.api.objects.exportObjectRecords`](objects.md#op-exportobjectrecords) | write |
|
|
2032
|
+
| GET | `/api/v1/objects/{object_slug}/imports/csv/drafts` | [`g8.api.objects.listObjectCsvImports`](objects.md#op-listobjectcsvimports) | read |
|
|
2033
|
+
| POST | `/api/v1/objects/{object_slug}/imports/csv/drafts` | [`g8.api.objects.createObjectCsvImport`](objects.md#op-createobjectcsvimport) | write |
|
|
2034
|
+
| DELETE | `/api/v1/objects/{object_slug}/imports/csv/drafts/{draft_id}` | [`g8.api.objects.deleteObjectCsvImport`](objects.md#op-deleteobjectcsvimport) | destructive |
|
|
2035
|
+
| GET | `/api/v1/objects/{object_slug}/imports/csv/drafts/{draft_id}` | [`g8.api.objects.getObjectCsvImport`](objects.md#op-getobjectcsvimport) | read |
|
|
2036
|
+
| PUT | `/api/v1/objects/{object_slug}/imports/csv/drafts/{draft_id}` | [`g8.api.objects.updateObjectCsvImport`](objects.md#op-updateobjectcsvimport) | write |
|
|
2037
|
+
| POST | `/api/v1/objects/{object_slug}/imports/csv/drafts/{draft_id}/commit` | [`g8.api.objects.commitObjectCsvImport`](objects.md#op-commitobjectcsvimport) | write |
|
|
2038
|
+
| GET | `/api/v1/objects/{object_slug}/imports/csv/drafts/{draft_id}/errors` | [`g8.api.objects.downloadObjectCsvImportErrors`](objects.md#op-downloadobjectcsvimporterrors) | read |
|
|
2039
|
+
| POST | `/api/v1/objects/{object_slug}/imports/csv/drafts/{draft_id}/preview` | [`g8.api.objects.previewObjectCsvImport`](objects.md#op-previewobjectcsvimport) | write |
|
|
2040
|
+
| POST | `/api/v1/objects/{object_slug}/imports/csv/inspect` | [`g8.api.objects.inspectObjectCsvImport`](objects.md#op-inspectobjectcsvimport) | write |
|
|
2025
2041
|
| GET | `/api/v1/objects/{object_slug}/records` | [`g8.api.objects.listObjectRecords`](objects.md#op-listobjectrecords) or `g8.objects.listRecords()` | read |
|
|
2026
2042
|
| POST | `/api/v1/objects/{object_slug}/records` | [`g8.api.objects.createObjectRecord`](objects.md#op-createobjectrecord) or `g8.objects.createRecord()` | write |
|
|
2027
2043
|
| PATCH | `/api/v1/objects/{object_slug}/records/bulk` | [`g8.api.objects.bulkUpdateObjectRecords`](objects.md#op-bulkupdateobjectrecords) | write |
|
|
@@ -2037,6 +2053,13 @@ Every Developer API route, sorted by path, with the SDK call that reaches it. Th
|
|
|
2037
2053
|
| DELETE | `/api/v1/objects/{object_slug}/records/{record_id}/relationships/{relationship_id}` | [`g8.api.objects.deleteObjectRelationship`](objects.md#op-deleteobjectrelationship) | destructive |
|
|
2038
2054
|
| POST | `/api/v1/objects/{object_slug}/records/{record_id}/restore` | [`g8.api.objects.restoreObjectRecord`](objects.md#op-restoreobjectrecord) or `g8.objects.restoreRecord()` | write |
|
|
2039
2055
|
| GET | `/api/v1/objects/{object_slug}/relationships` | [`g8.api.objects.getObjectRelationshipDefinitions`](objects.md#op-getobjectrelationshipdefinitions) | read |
|
|
2056
|
+
| GET | `/api/v1/objects/{object_slug}/views` | [`g8.api.objects.listObjectViews`](objects.md#op-listobjectviews) | read |
|
|
2057
|
+
| POST | `/api/v1/objects/{object_slug}/views` | [`g8.api.objects.createObjectView`](objects.md#op-createobjectview) | write |
|
|
2058
|
+
| POST | `/api/v1/objects/{object_slug}/views/board/groups` | [`g8.api.objects.queryObjectBoardGroups`](objects.md#op-queryobjectboardgroups) | write |
|
|
2059
|
+
| POST | `/api/v1/objects/{object_slug}/views/board/records` | [`g8.api.objects.queryObjectBoardRecords`](objects.md#op-queryobjectboardrecords) | write |
|
|
2060
|
+
| PUT | `/api/v1/objects/{object_slug}/views/default` | [`g8.api.objects.setDefaultObjectView`](objects.md#op-setdefaultobjectview) | write |
|
|
2061
|
+
| DELETE | `/api/v1/objects/{object_slug}/views/{view_id}` | [`g8.api.objects.deleteObjectView`](objects.md#op-deleteobjectview) | destructive |
|
|
2062
|
+
| PUT | `/api/v1/objects/{object_slug}/views/{view_id}` | [`g8.api.objects.updateObjectView`](objects.md#op-updateobjectview) | write |
|
|
2040
2063
|
| POST | `/api/v1/opensearch/aggregate` | [`g8.api.openSearch.opensearchAggregate`](openSearch.md#op-opensearchaggregate) | write |
|
|
2041
2064
|
| POST | `/api/v1/opensearch/count` | [`g8.api.openSearch.opensearchCount`](openSearch.md#op-opensearchcount) | write |
|
|
2042
2065
|
| POST | `/api/v1/opensearch/resolve` | [`g8.api.openSearch.opensearchResolve`](openSearch.md#op-opensearchresolve) | write |
|
|
@@ -2153,6 +2176,12 @@ Every Developer API route, sorted by path, with the SDK call that reaches it. Th
|
|
|
2153
2176
|
| POST | `/api/v1/placement/tests` | [`g8.api.mailboxes.createPlacementTest`](mailboxes.md#op-createplacementtest) | billable |
|
|
2154
2177
|
| POST | `/api/v1/placement/tests/estimate` | [`g8.api.mailboxes.estimatePlacementTestCost`](mailboxes.md#op-estimateplacementtestcost) | read |
|
|
2155
2178
|
| GET | `/api/v1/placement/tests/{test_id}` | [`g8.api.mailboxes.getPlacementTest`](mailboxes.md#op-getplacementtest) | read |
|
|
2179
|
+
| GET | `/api/v1/process-lists` | [`g8.api.processLists.listProcessListsApi`](processLists.md#op-listprocesslistsapi) | read |
|
|
2180
|
+
| POST | `/api/v1/process-lists` | [`g8.api.processLists.createProcessListApi`](processLists.md#op-createprocesslistapi) | write |
|
|
2181
|
+
| DELETE | `/api/v1/process-lists/{slug}` | [`g8.api.processLists.archiveProcessListApi`](processLists.md#op-archiveprocesslistapi) | destructive |
|
|
2182
|
+
| GET | `/api/v1/process-lists/{slug}` | [`g8.api.processLists.getProcessListApi`](processLists.md#op-getprocesslistapi) | read |
|
|
2183
|
+
| PATCH | `/api/v1/process-lists/{slug}` | [`g8.api.processLists.updateProcessListApi`](processLists.md#op-updateprocesslistapi) | write |
|
|
2184
|
+
| POST | `/api/v1/process-lists/{slug}/entries` | [`g8.api.processLists.createProcessListEntryApi`](processLists.md#op-createprocesslistentryapi) | write |
|
|
2156
2185
|
| POST | `/api/v1/profile/avatar` | [`g8.api.profile.uploadProfileAvatar`](profile.md#op-uploadprofileavatar) | write |
|
|
2157
2186
|
| GET | `/api/v1/profile/deal-automations` | [`g8.api.profile.getDealAutomations`](profile.md#op-getdealautomations) | read |
|
|
2158
2187
|
| PUT | `/api/v1/profile/deal-automations` | [`g8.api.profile.updateDealAutomations`](profile.md#op-updatedealautomations) | write |
|
|
@@ -2316,6 +2345,13 @@ Every Developer API route, sorted by path, with the SDK call that reaches it. Th
|
|
|
2316
2345
|
| DELETE | `/api/v1/records/{entity_type}/{entity_id}/role-assignments/{role_slot}` | [`g8.api.recordRoles.clearRecordRole`](recordRoles.md#op-clearrecordrole) | destructive |
|
|
2317
2346
|
| GET | `/api/v1/records/{entity_type}/{entity_id}/role-history` | [`g8.api.recordRoles.getRecordRoleHistory`](recordRoles.md#op-getrecordrolehistory) | read |
|
|
2318
2347
|
| GET | `/api/v1/records/{entity_type}/{entity_id}/role-slots` | [`g8.api.recordRoles.getRecordRoleSlots`](recordRoles.md#op-getrecordroleslots) | read |
|
|
2348
|
+
| GET | `/api/v1/reports` | [`g8.api.reports.listObjectReportsApi`](reports.md#op-listobjectreportsapi) | read |
|
|
2349
|
+
| POST | `/api/v1/reports` | [`g8.api.reports.createObjectReportApi`](reports.md#op-createobjectreportapi) | write |
|
|
2350
|
+
| POST | `/api/v1/reports/preview` | [`g8.api.reports.previewObjectReportApi`](reports.md#op-previewobjectreportapi) | write |
|
|
2351
|
+
| DELETE | `/api/v1/reports/{report_id}` | [`g8.api.reports.archiveObjectReportApi`](reports.md#op-archiveobjectreportapi) | destructive |
|
|
2352
|
+
| GET | `/api/v1/reports/{report_id}` | [`g8.api.reports.getObjectReportApi`](reports.md#op-getobjectreportapi) | read |
|
|
2353
|
+
| PATCH | `/api/v1/reports/{report_id}` | [`g8.api.reports.updateObjectReportApi`](reports.md#op-updateobjectreportapi) | write |
|
|
2354
|
+
| POST | `/api/v1/reports/{report_id}/execute` | [`g8.api.reports.executeObjectReportApi`](reports.md#op-executeobjectreportapi) | write |
|
|
2319
2355
|
| GET | `/api/v1/repos` | [`g8.api.repos.listRepos`](repos.md#op-listrepos) | read |
|
|
2320
2356
|
| POST | `/api/v1/repos` | [`g8.api.repos.connectRepo`](repos.md#op-connectrepo) | write |
|
|
2321
2357
|
| DELETE | `/api/v1/repos/{repo_id}` | [`g8.api.repos.deleteRepo`](repos.md#op-deleterepo) | destructive |
|
|
@@ -2477,11 +2513,19 @@ Every Developer API route, sorted by path, with the SDK call that reaches it. Th
|
|
|
2477
2513
|
| GET | `/api/v1/seo/domains/tracked/{domain}/pages` | [`g8.api.seo.listSeoDomainPages`](seo.md#op-listseodomainpages) | read |
|
|
2478
2514
|
| GET | `/api/v1/seo/domains/{domain}/backlinks` | [`g8.api.seo.getSeoDomainBacklinks`](seo.md#op-getseodomainbacklinks) | billable |
|
|
2479
2515
|
| GET | `/api/v1/seo/domains/{domain}/overview` | [`g8.api.seo.getSeoDomainOverview`](seo.md#op-getseodomainoverview) | billable |
|
|
2516
|
+
| GET | `/api/v1/seo/fixes` | [`g8.api.seo.listSeoFixes`](seo.md#op-listseofixes) | read |
|
|
2517
|
+
| GET | `/api/v1/seo/fixes/agent-handoff` | [`g8.api.seo.getSeoAgentHandoff`](seo.md#op-getseoagenthandoff) | read |
|
|
2518
|
+
| POST | `/api/v1/seo/fixes/{fix_id}/claim` | [`g8.api.seo.claimSeoFix`](seo.md#op-claimseofix) | write |
|
|
2519
|
+
| POST | `/api/v1/seo/fixes/{fix_id}/complete` | [`g8.api.seo.completeSeoFix`](seo.md#op-completeseofix) | write |
|
|
2520
|
+
| GET | `/api/v1/seo/fixes/{fix_id}/pack` | [`g8.api.seo.getSeoFixPack`](seo.md#op-getseofixpack) | read |
|
|
2480
2521
|
| POST | `/api/v1/seo/keywords/research` | [`g8.api.seo.researchSeoKeywords`](seo.md#op-researchseokeywords) | billable |
|
|
2522
|
+
| GET | `/api/v1/seo/pages/360` | [`g8.api.seo.listSeoPages360`](seo.md#op-listseopages360) | read |
|
|
2523
|
+
| GET | `/api/v1/seo/pages/360/detail` | [`g8.api.seo.getSeoPage360`](seo.md#op-getseopage360) | read |
|
|
2481
2524
|
| GET | `/api/v1/seo/rank-tracking` | [`g8.api.seo.listSeoTrackedKeywords`](seo.md#op-listseotrackedkeywords) | read |
|
|
2482
2525
|
| POST | `/api/v1/seo/rank-tracking/keywords` | [`g8.api.seo.saveSeoTrackedKeywords`](seo.md#op-saveseotrackedkeywords) | write |
|
|
2483
2526
|
| POST | `/api/v1/seo/rank-tracking/keywords/remove` | [`g8.api.seo.removeSeoTrackedKeywords`](seo.md#op-removeseotrackedkeywords) | write |
|
|
2484
2527
|
| GET | `/api/v1/seo/rank-tracking/{keyword_id}/history` | [`g8.api.seo.getSeoRankHistory`](seo.md#op-getseorankhistory) | read |
|
|
2528
|
+
| GET | `/api/v1/seo/today` | [`g8.api.seo.getSeoToday`](seo.md#op-getseotoday) | read |
|
|
2485
2529
|
| GET | `/api/v1/sequence-jobs/{job_id}` | [`g8.api.sequences.getSequenceJob`](sequences.md#op-getsequencejob) | read |
|
|
2486
2530
|
| GET | `/api/v1/sequencer/agents/textual` | [`g8.api.sequences.listSequencerTextualAgents`](sequences.md#op-listsequencertextualagents) | read |
|
|
2487
2531
|
| GET | `/api/v1/sequencer/agents/voice` | [`g8.api.sequences.listSequencerVoiceAgents`](sequences.md#op-listsequencervoiceagents) | read |
|
|
@@ -3270,3 +3314,10 @@ Every Developer API route, sorted by path, with the SDK call that reaches it. Th
|
|
|
3270
3314
|
| GET | `/api/v1/workflows/{action_id}/runs/recent` | [`g8.api.workflows.listRecentWorkflowRuns`](workflows.md#op-listrecentworkflowruns) | read |
|
|
3271
3315
|
| POST | `/api/v1/workflows/{action_id}/trigger-reset` | [`g8.api.workflows.resetTriggerCursor`](workflows.md#op-resettriggercursor) or `g8.workflows.resetTrigger()` | external |
|
|
3272
3316
|
| GET | `/api/v1/workflows/{action_id}/trigger-status` | [`g8.api.workflows.getTriggerStatus`](workflows.md#op-gettriggerstatus) or `g8.workflows.getTriggerStatus()` | read |
|
|
3317
|
+
| GET | `/api/v1/workspace/backup` | [`g8.api.workspaceBackup.listWorkspaceBackupsApi`](workspaceBackup.md#op-listworkspacebackupsapi) | read |
|
|
3318
|
+
| POST | `/api/v1/workspace/backup` | [`g8.api.workspaceBackup.createWorkspaceBackupApi`](workspaceBackup.md#op-createworkspacebackupapi) | write |
|
|
3319
|
+
| GET | `/api/v1/workspace/backup/{backup_id}` | [`g8.api.workspaceBackup.getWorkspaceBackupApi`](workspaceBackup.md#op-getworkspacebackupapi) | read |
|
|
3320
|
+
| GET | `/api/v1/workspace/backup/{backup_id}/download` | [`g8.api.workspaceBackup.downloadWorkspaceBackupApi`](workspaceBackup.md#op-downloadworkspacebackupapi) | read |
|
|
3321
|
+
| GET | `/api/v1/workspace/restore` | [`g8.api.workspaceBackup.listWorkspaceRestoresApi`](workspaceBackup.md#op-listworkspacerestoresapi) | read |
|
|
3322
|
+
| POST | `/api/v1/workspace/restore` | [`g8.api.workspaceBackup.createWorkspaceRestoreApi`](workspaceBackup.md#op-createworkspacerestoreapi) | write |
|
|
3323
|
+
| GET | `/api/v1/workspace/restore/{restore_id}` | [`g8.api.workspaceBackup.getWorkspaceRestoreApi`](workspaceBackup.md#op-getworkspacerestoreapi) | read |
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/* Generated by sdk/js/scripts/generate-agent-docs.ts from developer-contract/openapi.json. Regenerated on every build. */
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Types for `g8.api.dataPipelines` (Data pipelines): 5 operations.
|
|
5
|
+
*
|
|
6
|
+
* For reading. In code, import from the package instead:
|
|
7
|
+
* import type { ApiInput, ApiOutput, G8Contract } from "@graph8/sdk";
|
|
8
|
+
* type In = ApiInput<"list_destinations_data_pipelines_destinations_get">;
|
|
9
|
+
*
|
|
10
|
+
* Reference with examples: dataPipelines.md
|
|
11
|
+
*/
|
|
12
|
+
/* eslint-disable */
|
|
13
|
+
|
|
14
|
+
/** `g8.api.dataPipelines.<member>` -> the operationId it calls. */
|
|
15
|
+
export interface DataPipelinesMembers {
|
|
16
|
+
listDestinations: "list_destinations_data_pipelines_destinations_get";
|
|
17
|
+
listFunctions: "list_functions_data_pipelines_functions_get";
|
|
18
|
+
listStreamEvents: "list_stream_events_data_pipelines_streams__stream_id__events_get";
|
|
19
|
+
listSyncTasks: "list_sync_tasks_data_pipelines_syncs__sync_id__tasks_get";
|
|
20
|
+
listSyncs: "list_syncs_data_pipelines_syncs_get";
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/** Input and output of every `g8.api.dataPipelines` operation, keyed by operationId. */
|
|
24
|
+
export interface DataPipelinesOperations {
|
|
25
|
+
/**
|
|
26
|
+
* GET /data-pipelines/destinations
|
|
27
|
+
* List Destinations
|
|
28
|
+
* tier: read · scope: integrations:read
|
|
29
|
+
*/
|
|
30
|
+
list_destinations_data_pipelines_destinations_get: {
|
|
31
|
+
input: {
|
|
32
|
+
headers?: {
|
|
33
|
+
"X-Target-Org-Id"?: string | null;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
output: ApiResponse_DataPipelineItems_;
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* GET /data-pipelines/functions
|
|
40
|
+
* List Functions
|
|
41
|
+
* tier: read · scope: integrations:read
|
|
42
|
+
*/
|
|
43
|
+
list_functions_data_pipelines_functions_get: {
|
|
44
|
+
input: {
|
|
45
|
+
headers?: {
|
|
46
|
+
"X-Target-Org-Id"?: string | null;
|
|
47
|
+
};
|
|
48
|
+
};
|
|
49
|
+
output: ApiResponse_DataPipelineItems_;
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* GET /data-pipelines/streams/{stream_id}/events
|
|
53
|
+
* List Stream Events
|
|
54
|
+
* tier: read · scope: integrations:read
|
|
55
|
+
*/
|
|
56
|
+
list_stream_events_data_pipelines_streams__stream_id__events_get: {
|
|
57
|
+
input: {
|
|
58
|
+
path: {
|
|
59
|
+
/** Stream id (from GET /streams). */
|
|
60
|
+
stream_id: string;
|
|
61
|
+
};
|
|
62
|
+
query?: {
|
|
63
|
+
/** Newest events to return, 1-200. */
|
|
64
|
+
limit?: number;
|
|
65
|
+
/** Only events at or after (ISO 8601). */
|
|
66
|
+
start?: string | null;
|
|
67
|
+
/** Only events before (ISO 8601). */
|
|
68
|
+
end?: string | null;
|
|
69
|
+
/** Only entries at this log level (e.g. error = rejected events). */
|
|
70
|
+
levels?: ("error" | "warn" | "info" | "debug") | null;
|
|
71
|
+
};
|
|
72
|
+
headers?: {
|
|
73
|
+
"X-Target-Org-Id"?: string | null;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
output: ApiResponse_DataPipelineItems_;
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* GET /data-pipelines/syncs/{sync_id}/tasks
|
|
80
|
+
* List Sync Tasks
|
|
81
|
+
* tier: read · scope: integrations:read
|
|
82
|
+
*/
|
|
83
|
+
list_sync_tasks_data_pipelines_syncs__sync_id__tasks_get: {
|
|
84
|
+
input: {
|
|
85
|
+
path: {
|
|
86
|
+
/** Sync id (from GET /data-pipelines/syncs). */
|
|
87
|
+
sync_id: string;
|
|
88
|
+
};
|
|
89
|
+
query?: {
|
|
90
|
+
/** Only runs in this status (e.g. SUCCESS, FAILED, RUNNING). */
|
|
91
|
+
status?: string | null;
|
|
92
|
+
/** Only runs started at or after (ISO 8601). */
|
|
93
|
+
started_after?: string | null;
|
|
94
|
+
/** Only runs started before (ISO 8601). */
|
|
95
|
+
started_before?: string | null;
|
|
96
|
+
};
|
|
97
|
+
headers?: {
|
|
98
|
+
"X-Target-Org-Id"?: string | null;
|
|
99
|
+
};
|
|
100
|
+
};
|
|
101
|
+
output: ApiResponse_DataPipelineItems_;
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* GET /data-pipelines/syncs
|
|
105
|
+
* List Syncs
|
|
106
|
+
* tier: read · scope: integrations:read
|
|
107
|
+
*/
|
|
108
|
+
list_syncs_data_pipelines_syncs_get: {
|
|
109
|
+
input: {
|
|
110
|
+
headers?: {
|
|
111
|
+
"X-Target-Org-Id"?: string | null;
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
output: ApiResponse_DataPipelineItems_;
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// 3 schemas referenced above (the same as G8Contract.<Name>).
|
|
119
|
+
|
|
120
|
+
export interface ApiResponse_DataPipelineItems_ {
|
|
121
|
+
data: DataPipelineItems;
|
|
122
|
+
pagination?: PaginationMeta | null;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/** A list of data-pipeline objects or log entries. */
|
|
126
|
+
export interface DataPipelineItems {
|
|
127
|
+
items?: Array<Record<string, unknown>>;
|
|
128
|
+
total?: number;
|
|
129
|
+
[key: string]: unknown;
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
export interface PaginationMeta {
|
|
133
|
+
/** Whether there are more pages */
|
|
134
|
+
has_next: boolean;
|
|
135
|
+
/** Items per page */
|
|
136
|
+
limit: number;
|
|
137
|
+
/** Opaque cursor for the next page; null when there are no more items. Pass it back as the `cursor` query param to fetch the following page without computing page numbers. */
|
|
138
|
+
next_cursor?: string | null;
|
|
139
|
+
/** Search endpoints only: plain-language notes about the result, e.g. that more records match than can be paged, or that a reversed `between` range was put in order. */
|
|
140
|
+
notes?: Array<string> | null;
|
|
141
|
+
/** Current page number (1-indexed) */
|
|
142
|
+
page: number;
|
|
143
|
+
/** Total number of items */
|
|
144
|
+
total: number;
|
|
145
|
+
/** Search endpoints only: how many records really match, when known. Can be larger than `total`, which is capped at the 10,000 results that can be paged. For company search this is a distinct-company estimate. Null when unknown; absent outside search. */
|
|
146
|
+
total_available?: number | null;
|
|
147
|
+
/** Search endpoints only: true when more records match than `total` shows (the result set is larger than the 10,000 results that can be paged). Absent outside search. */
|
|
148
|
+
total_is_lower_bound?: boolean | null;
|
|
149
|
+
}
|