Actions6
Overview
This node integrates with the Contentdrips API to create custom graphics and carousels based on user-defined templates. It supports both asynchronous job-based generation (where a job ID is returned for later status checking) and synchronous one-step generation (which waits until the graphic or carousel is ready). Users can customize content updates either via form inputs or JSON, and optionally include branding information.
Common scenarios include:
- Automatically generating social media graphics or marketing materials from predefined templates.
- Creating multi-slide carousels for platforms like Instagram or LinkedIn with dynamic content.
- Automating design workflows where content changes frequently but the style remains consistent.
Practical example:
- A marketing team uses this node to generate daily promotional images by updating text and images dynamically, then posts them automatically.
- A content creator generates a carousel post with multiple slides, each slide customized with different headings, descriptions, and images.
Properties
| Name | Meaning |
|---|---|
| Template ID | The ID of the template to use for rendering the graphic or carousel. |
| Output Format | The format of the generated output file. Options: PNG, PDF. |
| Include Branding | Whether to include branding information in the output. |
| Branding | Collection of branding details to include if branding is enabled: Name, Handle (e.g., social media username), Bio/tagline, Website URL, Avatar image URL. |
| Content Updates Input | Method to provide content updates: Use Form (Easy) or Use JSON (Advanced). |
| Content Updates | When using form input mode, a collection of content updates specifying element type (Text Box or Image), label (element identifier), and new value. |
| Content Updates JSON | When using JSON input mode, a JSON array of objects each containing type, label, and value fields to update content elements. |
Additional properties relevant only for carousel operations (not requested here but present in code):
- Carousel Input mode (form or JSON)
- Intro Slide, Slides, Ending Slide collections or full Carousel JSON object.
Output
The node outputs JSON data representing the response from the Contentdrips API. Depending on the operation:
- For "Generate Graphic" and "Generate Carousel" operations, it returns a job object including a job ID that can be used to check status or retrieve results later.
- For synchronous generation operations ("generateGraphicSync", "generateCarouselSync"), it waits for the job to complete and returns the final result directly.
- For "Check Job Status", it returns the current status of the job.
- For "Get Job Result", it returns the completed job's result, which typically includes URLs or metadata about the generated graphic or carousel.
If an error occurs, the output JSON contains an error field with the error message.
The node does not output binary data directly; instead, it provides metadata and URLs to the generated content.
Dependencies
- Requires an API key credential for authenticating with the Contentdrips API.
- Uses the Contentdrips REST API endpoints for rendering graphics/carousels, checking job status, and retrieving results.
- No additional external dependencies beyond the Contentdrips API and n8n environment.
Troubleshooting
- Invalid Content Updates JSON: If the JSON provided for content updates is malformed or not an array, the node throws an error indicating invalid JSON. Ensure the JSON syntax is correct and matches the expected structure.
- No job ID returned from API: This error occurs if the API response does not include a job ID after starting a render job. Verify the template ID and API credentials are correct.
- Job timeout: When using synchronous generation, if the job does not complete within the configured wait time, an error is thrown. Increase the "Give Up After" timeout or check the API service status.
- API request errors: Network issues or invalid credentials will cause API request failures. Confirm API keys and network connectivity.
- Unknown operation: If an unsupported operation name is provided, the node throws an error. Use only supported operations listed in the node properties.
Links and References
- Contentdrips API Documentation (hypothetical link for reference)
- n8n documentation on Creating Custom Nodes
- JSON formatting tools for validating content updates JSON input