Prismatic offers a wide array of components to accomplish a variety of things, like serializing data formats, invoking REST endpoints, or interacting with commonly-used SaaS platforms like AWS, Slack, or Dropbox. The majority of your integration can likely be developed using these standard components.
For the portions of your integrations that are specific to your industry or product, we provide the ability to run custom code as part of your integration. You can deploy your own code in the form of reusable custom components or short code component steps.
Custom components are reusable portions of related code that can be utilized by several of your integrations. A component is developed as a node package, and is comprised of one or more actions that can be added to an integration.
For example, Progix Software might support a proprietary data format,
.rocket, for rocket schematics.
Progix might create a component with two actions:
- Serialize a
.rocketfile to JSON
- Deserialize a JSON file to
To create a custom component, we recommend working through the Your First Custom Component tutorial to observe how the Slack component functions. Then, reference Writing Custom Components to write your own component.
The Code Component
To see usage and a few use-cases for the code component, see Code Component Usage.
When Should I Use a Custom Component vs a Code Component?
Most platform-specific problems can be solved either way: with custom components or with the code component. When choosing which is right for your situation, consider four things: reusability, complexity, credentials and dependencies.
- Reusability: If you are writing code that could be reused in multiple integrations, you should write a custom component.
- Complexity: If your code is sufficiently complex that you would benefit from unit testing, strongly typed variables, etc., you should write a custom component.
- Credentials: If your code handles API keys or other credentials, you will need to use a custom component.
- Dependencies: If your code is dependent on non-standard npm packages, you will need to use a custom component.
If your code is integration-specific, not terribly complex, and not dependent on outside packages, a code component will be sufficient for you.