Help with deluge script

Help with deluge script

            Hi Community, this is my first Deluge script. I've pieced it together from reading various articles
I want to use it in a workflow to 
1 Convert a lead to a contact
2. Create a record in a custom module
Below is what I have got so far but it does not fire in the workflow trigger.
I am not sure what I have to change but a little guidance would very much be appreciated



void automation.Convert_insurance_referral()
{
    try
    {
        leadId = Lead_ID;

        if(leadId == null)
        {
            info "Error: input.id is null.";
            return;
        }

        // get lead record
        lead = zoho.crm.getRecordById("Leads", leadId);

        if(lead == null || lead.isEmpty())
        {
            info "Error: No Lead found for ID: " + leadId;
            return;
        }

        // convert lead
        convertMap = map();
        convertMap.put("overwrite", true);

        converted = zoho.crm.convertLead(leadId, convertMap);

        if(converted == null || converted.isEmpty())
        {
            info "Error: Lead conversion returned no response for Lead ID: " + leadId;
            return;
        }

        contactId = converted.get("Contacts");

        if(contactId == null)
        {
            info "Error: Lead was converted, but no Contact ID was returned. Response: " + converted.toString();
            return;
        }

        // create Initial Assessment record
        assessmentMap = map();

        contactLookup = map();
        contactLookup.put("id", contactId);

assessmentMap.put("Contact", contactId);
        assessmentMap.put("Contact", contactLookup);
        assessmentMap.put("Insurance_Provider", lead.get("Insurance_Provider"));
        assessmentMap.put("Case_ID", lead.get("Case_ID"));
        assessmentMap.put("Case_Handler", lead.get("Case_Handler"));
        assessmentMap.put("Approved_Treatments", lead.get("Approved_Treatments"));
        assessmentMap.put("Venue", lead.get("Venue"));
        assessmentMap.put("Assessment_Date", lead.get("Assessment_Date"));
        assessmentMap.put("Assessment_Status", lead.get("Assessment_Status"));
        assessmentMap.put("Assigned_Therapist", lead.get("Assigned_Therapist"));

        // mandatory field
        assignedTherapist = lead.get("Assigned_Therapist");
        if(assignedTherapist != null)
        {
            assessmentMap.put("Record_Name", assigned_Therapist);
        }
        else
        {
            assessmentMap.put("Record_Name", "Assessment for Contact " + contactId);
        }

        createResp = zoho.crm.createRecord("Initial_Assessments", assessmentMap);

        if(createResp == null || createResp.isEmpty())
        {
            info "Error: Initial_Assessments record creation returned no response.";
            return;
        }

        if(createResp.get("id") != null)
        {
            info "Success: Initial Assessment created. Record ID: " + createResp.get("id");
        }
        else
        {
            info "Warning: Record creation response did not include an ID. Response: " + createResp.toString();
        }
    }
    catch (e)
    {
        info "Exception occurred in Convert_insurance_referral: " + e.toString();
    }
}