Files
triggerdotdev--trigger.dev/docs/mint.json
T
Matt Aitken 9c6838e5c8 HTTP endpoints, HTTP triggers and new sidebar (#720)
* Setup basic storybook page

* storybook preview pages don’t have padding

* Added a storybook story for the side menu

* WIP on a new side menu component

* New variant for the side menu button style

* Side menu items can now recieve a badge ‘count’

* Storybook side menu update

* Added a new font size

* you can now set the spacing between an icon and the text

* Moving the error and count badge to the right side of the button

* Added a menu sub item button style

* added sub items to the menu and all the rest of the items

* Proper background class used

* Added a side menu header and main org header

* Removed the no-mobile blocker overlay so you can use the site on a phone

* Better section name

* Created a cusom popover trigger that can take anything as children. Also the popover titles can now take a variant

* Added a popover for the user avatar menu item

* Removed the tool tip

* Arrow Popover can no also go full width

* neater conditiona;

* Removed unnessary div. And error icon can display an error message

* menu item buttons can take a variant

* Added placeholder items for the org dropdown

* add a max height to the org menu popover and handle scrollbars

* Added a border if the menu scrolls when you have lots of project items

* warning badges display tooltips if you give them some error text

* Removed the sticky header so the scrollbar looks better

* Fixed a layout issue from removing the sticky header

* Better spacing between lists

* Popover can take any react component icon and an icon classname

* Side menu headers now have a dropdown by clicking the ellipsis icon

* Side menu items can take an icon colour

* Updated styling for the dropdown Popover menus

* Installed Tabler icons

* Updated some icons to use Tabler

* Started defining the HttpTrigger class

* RequestFilterSchema is part of core

* Use the RequestFilterSchema from core

* EventSpecificationExample now derived from schema

* Need to define the class like EventTrigger

* Catalog reference that uses the httpTrigger

* The logic for the httpTrigger is in the separate file, just call it from the client using defineHttpTrigger

* Basic HttpTrigger

* Import fixes

* Transforming httpTrigger to the format we want

* Initial httpTrigger types working

* Added HTTP generic type

* Added some notes

* Rejigged some things to support verifying payloads

* Use new security function for verifying

* Added truncating text support if side menu names get long

* Renamed some stuff

* Removed test copy

* HttpEndpoin that isn’t a trigger

* Renamed hostname to source

* Created HttpEndpoint as a top-level concept, it produces triggers using onRequest

* Started working on registration of the httpEndpoints

* Removed the new TriggerMetadata for now, http will use static

* Added PayloadType to EventRecord. Default is JSON.

* The payload from an HTTPEndpoint is now a Request

* Initial TriggerHttpEndpoint migrations

* Initial server side work

* Migration to add shortcode to RuntimeEnvironment

* Added TriggerHttpEndpointEnvironment table

* Made the httptrigger catalog example runnable

* Progress creating/updating httpEndpoints

* HTTPEndpointEnvironment updating now works

* Added a note about EventRecord HttpEndpoint relationship

* When creating environments, create a shortcode

* Fix for secret not being retrieved correctly

* Request filtering

* Add DOM types to Core

* Early work dealing with a webhook arriving

* Added some todo notes to discuss tomorrow

* Added relations to the endpoint so we can call the user’s server

* Basic handling of immediate responses

* The immediate responses are now going back to the webhook provider

* Handling is now generating events and responding where relevant. Not yet matching filters and doing verification

* Added source to TriggerHttpEndpointEnvironment

* The event filter is now optional

* The source is passed through from the httpEndpointEnv

* Added optional payloadType when ingesting an event

* Added tabler

* Updated @remix-run/testing usage for remix 2

* Fixed org menu header width and added org and project types

* Added custom icons for Runs and Endpoints

* Updated the menu icons

* storybook side menu shows static project and org data

* Updated side menu

* Plumbed in paths

* Updated eventFilter to deal with undefined/null payloads

* Started work on filtering, but it’s not working

* Strict null

* async filtering it working

* Added environment shortcodes to the seedCloud script

* Don’t pass the secret back, added a verifyPayload function that gets called before runs start

* Fix for skipping triggering runs

* The verify callback is now passed through to the trigger so it can be called

* If verifying fails, have a reason which we can show to the user

* Don’t verify if it’s a test run

* Fixed the log in the example code

* Added loader and action to storybook preview

* Fix for svg attribute name issues in EndpointIcon

* Started work on the side menu

* This logic has moved to a separate file, in a different branch

* Don’t get the environments when getting orgs

* Lots of fixes for the new SideMenu

* Refactored some org/project things to fit the new structure better

* Some progress restructuring the app for the new sidebar

* More changes to data loading

* Deleted some old pages. The redirecting is working if you’re on the root but logged in

* Basic styling for the account page. We need a back button

* Fixes for the integrations pages

* Breadcrumb implemented

* Add a border to the bottom of the breadcrumb

* Feedback is working, not in Storybook

* Removed expandSidebar from the Handle

* Org level breadcrumbs

* Getting the project in the org route now works properly

* orgslug route before using the presenter

* More UI improvements

* Removed commented out line

* Use presenters for org and root

* Removed forceActive

* Split the project selector and user menu out

* The side menu items have correct active states

* Fixed the scrolling

* Put the org name in

* Improved the admin features

* Created the HTTP Endpoints list page

* Work on the HTTP endpoint page

* WIP on the HTTP Endpoint page

* Fix for response filter not showing

* Change page URLs to “http-endpoints” (from httpendpoints)

* Slugify the HTTP endpoint id

* Added todos for EventRecord associations

* Removed the Job/Trigger tab for now

* First draft of the help panels

* Rejigged the HTTP endpoint page so it splits out the deployed and not deployed environments

* Removed irrelevant columns

* Added a link to the deployment guide

* Removed the background image from the frameworks pages

Also…
- reordered the frameworks so supported ones come first in the list
- added logos to 3 framework pages that were missing them
- removed lots of un-used imports

* Fixed an issue where the breadcrumb could be hidden on small screens so broken the pages

The breadcrumb is always visible now

* Renamed ‘Onboarding’ to ‘Framework setup’

* Added a new http-endpoint icon to the side menu

* Side menu now has a nice looking scrollbar

* Scrollbar on the usage and billing page updated to the nice style

* Icon and colour updates to the side bar menu items

* Small copy improvement

* Fixed bug with the height of the org menu dropdown

* Page breadcrumbs now don’t include duplicate path links

* renamed uiBorder to ui-border

* Remove the padding from the small menu item if it’s used as a button

* Made the paragraph text a bit smaller

* EventRecord has relationships with TriggerHttpEndpoint/TriggerHttpEndpointEnvironment

* Improved the presenter used by the side menu. Also added the HTTP Endpoint badge count to the sidebar

* The dropdown org menu has the same badge as the side menu

* Improved the Projects page

* Fixed button style miss-match in the jobs table dropdown

* Made the popover dialogs support Headers and improved the regenerate API key popover

* Made the active status of a job more subtle

* Allow the Job to have a link on its Trigger

* Simplified loader because we ditched the Jobs menu. Also showing no runs help panel now

* Fixed type errors

* Pages that are org level can scroll if the content gets too long

* Fixed a redirect bug so you now redirect to the org page

* Updated the shortcode migration, to add additional letters to the end

* Removed the nav bar from the welcome onboarding page

* Only show the countBadge if the number is > 0

* Jobs icon now has a default colour the same as the nav menu

* Capital I for integration

* Clone the request before calling verify

* Separate the checks out so they can be easily logged

* Make the failure reason optional

* Made the verification error look better, if it’s provided

* Working WhatsApp example

* Can set the immediateResponseFilter to null in an update

* Deal with a null immediateResponseFilter

* Cal.com webhook working

* Header height reduced slightly

* Fixed button padding

* Removed un-used imports

* http endpoint table displays a message if you have no entries in the table

* Removed some duplicate text and swapped primary buttons for secondary style

* All ‘HTTP Endpoints’ now ‘HTTP endpoints’

* You have to use a RequestFilter when using HTTP Trigger

* Synchronous eventDispatcher filtering again. Better content-type check

* Stripe example

* Side menu “Usage & Billing” is just “Usage” if self-hosting

* Fix for filtering not working

* Removed filter log

* Fix for jobs being optional and null

* Removed old nav bar from the invite page

* Deleted old nav bar component

* import cleanup

* NoTask message only displays if the run has status “SUCCESS”

* Added a global page loading indicator

* Added documentation buttons to the most important pages

* Added GitHub

* Use “verifyRequestSignature” helpr

* Removed todo

* Fixed the layout of the Rerun Job popover

* Jobs table has margin bottom so it sits off the bottom of the page

* Small improvement to the search bar layout on the integration page

* HTTP endpoint and Trigger concept docs

* Reference docs and JSDocs for HTTP endpoint

* SDK reference docs for HttpEndpoint

* Added an HttpTrigger SDK reference, which mainly just point you elsewhere

* Improved the copy in the help panels

* Removed unused code

* Improved HTTP endpoint comment about setting the secret

* Delete unused asyncFilter

* Fixed the delete modal not having a title

* Always try get the arrayBuffer for an HTTP request, catch and use undefined as the default

* Add extra method to invokeTrigger

* Use a transaction for the secret store

* verifyRequestSignature docs page and JSDocs

* Added verifyRequestSignature docs page to nav

* Warn if they use the same HttpEndpoint id twice

* Added another job using the same HttpEndpoint

* Renamed the api route to http-endpoints from httpendpoints

* Debug bar for VSCode is now in the commandCenter

---------

Co-authored-by: James Ritchie <james@jamesritchie.co.uk>
2023-11-06 15:32:40 +00:00

400 lines
12 KiB
JSON

{
"$schema": "https://mintlify.com/schema.json",
"name": "Trigger.dev",
"logo": {
"dark": "/logo/dark.png",
"light": "/logo/light.png",
"href": "https://trigger.dev"
},
"favicon": "/images/favicon.png",
"colors": {
"primary": "#818cf8",
"light": "#818cf8",
"dark": "#818cf8",
"anchors": {
"from": "#fff",
"to": "#eee"
}
},
"backgroundImage": "/images/docs-background.png",
"modeToggle": {
"default": "dark",
"isHidden": true
},
"feedback": {
"suggestEdit": true,
"raiseIssue": true,
"thumbsRating": true
},
"topbarCtaButton": {
"type": "github",
"url": "https://github.com/triggerdotdev/trigger.dev"
},
"topbarLinks": [
{
"name": "Community",
"url": "https://discord.gg/kA47vcd8P6"
}
],
"tabs": [
{
"name": "Integrations",
"url": "integrations"
},
{
"name": "Reference",
"url": "sdk"
},
{
"name": "Example Jobs",
"url": "examples"
}
],
"redirects": [
{
"source": "/documentation/quickstart",
"destination": "/documentation/quickstarts/introduction"
},
{
"source": "/documentation/guides/manual",
"destination": "/documentation/guides/manual/nextjs"
},
{
"source": "/documentation/concepts/limitations",
"destination": "/documentation/concepts/limits"
},
{
"source": "/documentation/guides/create-a-job",
"destination": "/documentation/guides/writing-jobs-step-by-step"
}
],
"navigation": [
{
"group": "Getting Started",
"pages": [
"documentation/introduction",
{
"group": "Quick Starts",
"pages": [
"documentation/quickstarts/introduction",
{
"group": "Frameworks",
"pages": [
"documentation/quickstarts/nextjs",
"documentation/quickstarts/express",
"documentation/quickstarts/remix",
"documentation/quickstarts/redwood",
"documentation/quickstarts/nestjs",
"documentation/quickstarts/astro",
"documentation/quickstarts/nuxt",
"documentation/quickstarts/sveltekit",
"documentation/quickstarts/fastify"
]
},
"documentation/quickstarts/supabase"
]
},
"documentation/guides/writing-jobs-step-by-step",
"documentation/guides/video-walkthrough"
]
},
{
"group": "Concepts",
"pages": [
"documentation/concepts/what-is-triggerdotdev",
"documentation/concepts/limits",
"documentation/concepts/projects",
"documentation/concepts/client-adaptors",
{
"group": "Jobs, Runs & Tasks",
"pages": [
"documentation/concepts/jobs",
"documentation/concepts/runs",
"documentation/concepts/tasks"
]
},
{
"group": "Triggers",
"pages": [
"documentation/concepts/triggers/introduction",
"documentation/concepts/triggers/invoke",
"documentation/concepts/triggers/events",
"documentation/concepts/triggers/scheduled",
"documentation/concepts/triggers/http",
"documentation/concepts/triggers/webhooks",
"documentation/concepts/triggers/dynamic"
]
},
"documentation/concepts/http-endpoints",
"documentation/concepts/resumability",
"documentation/concepts/delays",
"documentation/concepts/integrations",
"documentation/concepts/connect",
"documentation/concepts/environments-endpoints"
]
},
{
"group": "Guides",
"pages": [
{
"group": "Platforms",
"pages": [
"documentation/guides/platforms/nextjs",
"documentation/guides/platforms/express",
"documentation/guides/platforms/remix",
"documentation/guides/platforms/redwood",
"documentation/guides/platforms/astro",
"documentation/guides/platforms/nuxt",
"documentation/guides/platforms/sveltekit",
"documentation/guides/platforms/fastify"
]
},
"documentation/guides/cli",
{
"group": "Manual setup",
"pages": [
"documentation/guides/manual/nextjs",
"documentation/guides/manual/nestjs",
"documentation/guides/manual/express",
"documentation/guides/manual/remix",
"documentation/guides/manual/redwood",
"documentation/guides/manual/astro",
"documentation/guides/manual/nuxt",
"documentation/guides/manual/sveltekit",
"documentation/guides/manual/fastify"
]
},
"documentation/guides/running-jobs",
"documentation/guides/jobs/managing",
{
"group": "Using the Dashboard",
"pages": [
"documentation/guides/managing-jobs",
"documentation/guides/viewing-runs",
"documentation/guides/testing-jobs",
"documentation/guides/rerunning"
]
},
{
"group": "Using Integrations",
"pages": [
"documentation/guides/using-integrations",
"documentation/guides/using-integrations-apikeys",
"documentation/guides/using-integrations-oauth",
"documentation/guides/using-integrations-byo-auth"
]
},
{
"group": "React hooks",
"pages": [
"documentation/guides/react-hooks",
"documentation/guides/react-hooks-automatic",
"documentation/guides/react-hooks-statuses"
]
},
{
"group": "Deployment",
"pages": [
"documentation/guides/deployment",
"documentation/guides/deployment-setup",
"documentation/guides/deployment-manual",
"documentation/guides/deployment-automatic"
]
},
"documentation/guides/event-filter",
"documentation/guides/zod",
{
"group": "Self hosting",
"pages": [
"documentation/guides/self-hosting",
"documentation/guides/self-hosting/flyio",
"documentation/guides/self-hosting/render",
"documentation/guides/self-hosting/kubernetes",
"documentation/guides/self-hosting/supabase",
"documentation/guides/tunneling-platform"
]
},
"documentation/guides/contributing"
]
},
{
"group": "Community & Support",
"pages": [
"documentation/get-help",
"documentation/faq",
"documentation/changelog",
"documentation/roadmap"
]
},
{
"group": "Overview",
"pages": [
"integrations/introduction",
{
"group": "Create an Integration",
"pages": [
"integrations/create",
"integrations/create-setup",
"integrations/create-anatomy",
"integrations/create-oauth",
"integrations/create-client",
"integrations/create-tasks",
"integrations/create-triggers",
"integrations/create-testing",
"integrations/create-publishing"
]
}
]
},
{
"group": "Integrations",
"pages": [
{
"group": "Airtable",
"pages": ["integrations/apis/airtable", "integrations/apis/airtable-tasks"]
},
{
"group": "GitHub",
"pages": [
"integrations/apis/github",
"integrations/apis/github-triggers",
"integrations/apis/github-tasks"
]
},
"integrations/apis/linear",
{
"group": "OpenAI",
"pages": ["integrations/apis/openai", "integrations/apis/openai-tasks"]
},
{
"group": "Plain",
"pages": ["integrations/apis/plain", "integrations/apis/plain-tasks"]
},
"integrations/apis/replicate",
"integrations/apis/resend",
"integrations/apis/sendgrid",
{
"group": "Slack",
"pages": ["integrations/apis/slack", "integrations/apis/slack-tasks"]
},
"integrations/apis/stripe",
{
"group": "Supabase",
"pages": [
"integrations/apis/supabase/introduction",
"integrations/apis/supabase/management",
"integrations/apis/supabase/client"
]
},
"integrations/apis/typeform"
]
},
{
"group": "SDK",
"pages": [
"sdk/introduction",
{
"group": "TriggerClient",
"pages": [
"sdk/triggerclient/overview",
"sdk/triggerclient/constructor",
{
"group": "Instance methods",
"pages": [
"sdk/triggerclient/instancemethods/sendevent",
"sdk/triggerclient/instancemethods/getevent",
"sdk/triggerclient/instancemethods/cancel-event",
"sdk/triggerclient/instancemethods/cancel-runs-for-event",
"sdk/triggerclient/instancemethods/getruns",
"sdk/triggerclient/instancemethods/getrun",
"sdk/triggerclient/instancemethods/define-job",
"sdk/triggerclient/instancemethods/define-http-endpoint",
"sdk/triggerclient/instancemethods/define-dynamic-trigger",
"sdk/triggerclient/instancemethods/define-dynamic-schedule",
"sdk/triggerclient/instancemethods/define-auth-resolver"
]
}
]
},
"sdk/job",
{
"group": "IO",
"pages": [
"sdk/io/overview",
"sdk/io/runtask",
"sdk/io/wait",
"sdk/io/logger",
"sdk/io/sendevent",
"sdk/io/backgroundfetch",
"sdk/io/random",
"sdk/io/try",
"sdk/io/registerinterval",
"sdk/io/unregisterinterval",
"sdk/io/registercron",
"sdk/io/unregistercron",
"sdk/io/registertrigger"
]
},
"sdk/context",
"sdk/run-notification",
"sdk/invoke-trigger",
"sdk/eventtrigger",
"sdk/crontrigger",
"sdk/intervaltrigger",
"sdk/http-endpoint",
"sdk/http-trigger",
{
"group": "DynamicTrigger",
"pages": [
"sdk/dynamictrigger/overview",
"sdk/dynamictrigger/constructor",
{
"group": "Instance methods",
"pages": ["sdk/dynamictrigger/register", "sdk/dynamictrigger/unregister"]
}
]
},
{
"group": "DynamicSchedule",
"pages": [
"sdk/dynamicschedule/overview",
"sdk/dynamicschedule/constructor",
{
"group": "Instance methods",
"pages": ["sdk/dynamicschedule/register", "sdk/dynamicschedule/unregister"]
}
]
},
"sdk/connection-auth",
"sdk/istriggererror",
"sdk/redactstring",
"sdk/verify-request-signature"
]
},
{
"group": "React SDK",
"pages": [
"sdk/react/introduction",
"sdk/react/triggerprovider",
"sdk/react/useeventdetails",
"sdk/react/useeventrundetails",
"sdk/react/userundetails"
]
},
{
"group": "Overview",
"pages": ["examples/introduction"]
}
],
"footerSocials": {
"twitter": "https://twitter.com/triggerdotdev",
"github": "https://github.com/triggerdotdev",
"linkedin": "https://www.linkedin.com/company/triggerdotdev"
},
"analytics": {
"posthog": {
"apiKey": "phc_hwYmedO564b3Ik8nhA4Csrb5SueY0EwFJWCbseGwWW"
}
}
}