About the Forge Rookies category

Welcome Forge Rookies

This area of the Developer Community forums is a great place for you to ask questions, share feedback and connect with other new to Forge developers.

I’m developing a Jira Forge app with a custom workflow validator. I am facing a persistent manifest schema validation error related to the `functions` section in my `manifest.yml`. Despite using Forge CLI version 12.6.0, the error message I get when running `forge lint` or deploying is:

**document should NOT have additional property ‘functions’
**
I have tried both `function` (singular) and `functions` (plural) keys in the manifest, but either approach triggers an error:

  • Using `functions` causes the above error.

  • Using `function` causes a similar error in other environments or contradicts the CLI documentation.

My current `manifest.yml` snippet looks like this:

modules:

jira:workflowValidator:

- key: my-first-forge-app-example-workflow-validator

  function: main

  name: My First Forge App

  description: A Jira workflow validator example.

  parameters:

    - key: requiredStatus

      type: string

      required: true

      description: Status that linked issues must have (e.g. Done)

function:

* key: main

  handler: index.run

app:

runtime:

name: nodejs22.x

memoryMB: 256

architecture: arm64

permissions:

scopes:

- read:jira-work

I have cleaned npm cache, reinstalled Forge CLI, updated to latest version 12.6.0, and run forge lint --fix but the error persists. Lint reports no errors, yet deployment or validation fails with the schema error above.

Could anyone clarify the correct schema expected for Forge CLI 12.6.0 and Jira workflow validators? Is there any manifest versioning or backward compatibility issue I should know? Any guidance or examples would be highly appreciated.

Thank you!

He @VemuluriSrikanth it looks like your manifest didn’t paste properly.

I’ve edited your post to put the whole file between two sets of ``` to make it a little easier to read however it’s not ideal as I still can’t see the indentations in your original manifest - and in the case of yml files indentation is important.

Forge lint fix can’t fix every error. If you google “yaml validator” you’ll find tools that will help you validate your yaml.

I think the issue is that you’ve added * key: main in the function definition instead of - key: main.

If you’re still stuck, I’d recommend taking a look at the example in the docs - https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-workflow-validator/#example-2, and sharing your manifest again to show the indenting correctly.

Hello mpaisley,

Thanks for the response it worked.