Skip to content
← Back to documentation
Technical Reference

Magical API

Automate resume parsing, review, scoring, and LinkedIn profile/company data retrieval with Magical API.

CategoryHuman Resources
Authenticationcustom
Version0.2.0
Published scopes0 published scopes
Last updatedSeptember 19, 2026

Overview

Connect Magical API with Flows360

Automate resume parsing, review, scoring, and LinkedIn profile/company data retrieval with Magical API.

Use the Magical API connector to include its declared actions and events in Flows360 workflows without duplicating the integration logic inside each consuming system. This pinned connector version currently exposes 6 actions and no declared triggers.

Available actions

  • Parse Resume
  • Review Resume
  • Get Profile Data
  • Get Company Data
  • Score Resume
  • Custom API Call

Available triggers

  • No triggers are declared in this pinned package.

The capability list above is generated from the exact reviewed connector package so the public description stays aligned with the version Flows360 operates.

Technical guide

Technical reference

Package identity

  • Connector: Magical API
  • Package: @activepieces/piece-magical-api@0.2.0
  • Exact artifact digest: sha256:e0d3b103bfbee4a08a1e68fc7069350c670f057ad0d601088a1478f5e356d431
  • Runtime: Activepieces-compatible deterministic worker
  • Source: the exact reviewed Activepieces source

Authentication

SECRET TEXT. Connection values are tenant-specific and remain in the consuming Studio instance; CDK stores definitions and field metadata, not customer credential values.

Action contracts

  • Parse Resume (parse_resume), Extract structured data (name, email, experience, skills, etc.) from a resume file. Classification: read.
  • Review Resume (review_resume), Analyze parsed resume using predefined criteria. Classification: read.
  • Get Profile Data (get_profile_data), Given a LinkedIn profile username, retrieve comprehensive profile data. Classification: read.
  • Get Company Data (get_company_data), Given a company name, LinkedIn username, or website, fetch comprehensive company info. Classification: read.
  • Score Resume (score_resume), Scores a resume against a job description and provides a reason. Classification: read.
  • Custom API Call (custom_api_call), Make a custom API call to a specific endpoint Classification: read.

Trigger contracts

  • No trigger delivery contracts are declared.

Verification

Deterministic execution evidence is recorded for the pinned artifact, including 1 exercised action entrypoint and 0 exercised trigger entrypoints.

Capability summary

Authenticationcustom
Supported objects6
Supported actions6
TriggersNone published

Authentication

Authentication method: custom

Authentication profiles

connection · custom
  • Magical API Key Required · protected credential

Supported objects

ObjectReadWriteNotes
Parse Resume Yes No Extract structured data (name, email, experience, skills, etc.) from a resume file.
Review Resume Yes No Analyze parsed resume using predefined criteria.
Get Profile Data Yes No Given a LinkedIn profile username, retrieve comprehensive profile data.
Get Company Data Yes No Given a company name, LinkedIn username, or website, fetch comprehensive company info.
Score Resume Yes No Scores a resume against a job description and provides a reason.
Custom API Call Yes No Make a custom API call to a specific endpoint

Supported actions

Parse Resume · Read

Extract structured data (name, email, experience, skills, etc.) from a resume file.

parse_resume · Risk: low · Retry: safe

Inputs

  • url · string · Optional, Provide the direct link to a publicly accessible resume file (PDF, DOC, or DOCX)
  • request_id · string · Optional, If a previous run timed out, paste the Request ID here to get the result.
Review Resume · Read

Analyze parsed resume using predefined criteria.

review_resume · Risk: low · Retry: safe

Inputs

  • url · string · Optional, Provide a direct URL to a publicly accessible resume file (PDF, DOC, or DOCX).
  • request_id · string · Optional, If a previous run timed out, paste the Request ID here to get the result.
Get Profile Data · Read

Given a LinkedIn profile username, retrieve comprehensive profile data.

get_profile_data · Risk: low · Retry: safe

Inputs

  • profile_name · string · Optional, Provide the username from the LinkedIn profile URL (e.g., 'williamhgates').
  • request_id · string · Optional, If a previous run timed out, paste the Request ID here to get the result.
Get Company Data · Read

Given a company name, LinkedIn username, or website, fetch comprehensive company info.

get_company_data · Risk: low · Retry: safe

Inputs

  • company_name · string · Optional, Provide the company's legal name (e.g., 'Microsoft').
  • company_username · string · Optional, Provide the username from the company's LinkedIn URL (e.g., 'microsoft').
  • company_website · string · Optional, Provide the company's official website URL.
  • request_id · string · Optional, If a previous run timed out, paste the Request ID here to get the result.
Score Resume · Read

Scores a resume against a job description and provides a reason.

score_resume · Risk: low · Retry: safe

Inputs

  • url · string · Optional, Provide a direct URL to a publicly accessible resume file (PDF, DOC, or DOCX).
  • job_description · string · Optional, Provide the job description to score the resume against.
  • request_id · string · Optional, If a previous run timed out, paste the Request ID here to get the result.
Custom API Call · Read

Make a custom API call to a specific endpoint

custom_api_call · Risk: low · Retry: safe

Inputs

  • url · object · Required
  • method · string · Required
  • headers · object · Optional, Authorization headers are injected automatically from your connection.
  • queryParams · object · Optional, Appended to the URL as ?key=value.
  • body_type · string · Optional
  • body · object · Optional
  • response_is_binary · boolean · Optional, Enable for files like PDFs, images, etc.
  • failsafe · boolean · Optional, On a failed request, output the error instead of failing the step.
  • timeout · number · Optional, Seconds to wait for a response. Empty: up to the flow limit (10 min).
  • followRedirects · boolean · Optional, Follow 3xx redirects instead of returning them as the response.

Setup

Setup

  1. Add the Magical API connector to the workflow in the target Flows360 Studio instance.
  2. Create or select the tenant-specific connection required by the connector. Connection secrets remain in the Studio connection boundary and are not copied into CDK documentation.
  3. Provide the connection fields declared by the pinned package:
  • No provider credential fields are declared by the pinned package.
  1. Select the required action or trigger and complete its declared input fields. Required and optional inputs are defined by the exact package schema.
  2. Test the workflow in the appropriate environment before enabling production scheduling or event delivery.

Limitations

Limitations and operational notes

  • This content describes @activepieces/piece-magical-api@0.2.0; provider behaviour can change independently and should be revalidated when the provider or connector version changes.
  • Only the 6 actions and 0 triggers declared by this pinned package are represented here.
  • Tenant credentials and connection values are not stored in the public connector record.
  • Provider-side permissions, account entitlements, quotas and rate limits remain subject to the connected provider account and are not inferred when the package does not declare them.
  • Deterministic execution evidence is recorded for the pinned artifact, including 1 exercised action entrypoint and 0 exercised trigger entrypoints.

Troubleshooting

Why canu2019t the connector authenticate?

Check the tenant connection in Studio and confirm every required Magical API connection field is present. Re-authorise OAuth-based connections if the provider token or consent has expired. Do not place credential values in CDK content or logs.

Why is an action or trigger unavailable?

Confirm that the workflow is using @activepieces/piece-magical-api@0.2.0 and compare the requested capability with the declared action and trigger list for this version. A capability that is not declared by the pinned package should not be presented as supported.

What should I check after a provider-side change?

Revalidate authentication, required fields, action/trigger behaviour and provider documentation before publishing refreshed connector content or moving a new package version into production.