Jobs /
Create cron job
Required permission
Project > Jobs > General > Create
Path parameters
projectId
string requiredID of the project
Request body
- {object}
name
string requiredThe name of the job.min length3max length52pattern^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$description
stringA description of the job.max length200pattern^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$billing
{object} requiredbuildPlan
stringThe ID of the build plan to use.pattern^[A-Za-z0-9-]+$deploymentPlan
string requiredThe ID of the deployment plan to use.pattern^[A-Za-z0-9-]+$gpu
{object}enabled
booleanconfiguration
{object}gpuType
string requiredtimesliced
booleanbackoffLimit
integer requiredThe number of attempts to rerun a job before it is marked as failed.runOnSourceChange
stringConfigure when the job should be run if the source image changes.one ofnever, cd-promote, alwaysactiveDeadlineSeconds
integerThe maximum amount of time, in seconds, for a job to run before it is marked as failed.min1deployment
(multiple options: oneOf)Where to deploy the job from.- {object}Deploy from version control
buildpack
{object}Allows for customization of buildpack runtimeconfigType
string requiredType of buildpack run configurationone ofdefault, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommandcustomProcess
stringCustom process which should be run. Required in case where `configType` is `customProcess`customEntrypoint
stringCustom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`customCommand
stringCustom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`docker
{object}Allows for customization of docker runtimeconfigType
string requiredType of entrypoint & command override configurationone ofdefault, customEntrypoint, customCommand, customEntrypointCustomCommandcustomEntrypoint
stringCustom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`customCommand
stringCustom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per container in MBone of1024, 2048, 5120, 10240, 20480, 30720, 40960, 51200, 61440, 81920, 102400, 122880, 153600, 204800min1024max204800shmSize
integerConfigures the amount of available memory-backed disk space available to /dev/shmone of64, 128, 256, 512, 1024, 2048, 5120, 10240min64max10240gpu
{object}enabled
booleanconfiguration
{object}gpuType
string requiredtimesliced
booleangracePeriodSeconds
integerThe maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.min15max600metadata
{object}Allow setting custom labels and annotations for workloads.labels
{object}Specify custom labels for the workload.annotations
{object}Specify custom annotations for the workload as string or object.vcs
{object} requiredprojectUrl
string requiredURL of the Git repo to build.pattern^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$projectType
string requiredThe VCS provider to use.one ofbitbucket, gitlab, github, self-hosted, azureselfHostedVcsId
stringIf projectType is self-hosted, the ID of the self-hosted vcs to use.pattern^([A-Za-z0-9-]+\/[A-Za-z0-9-]+)|([0-9a-f]{24})$accountLogin
stringBy default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.vcsLinkId
stringBy default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID.min length24max length24projectBranch
string requiredThe name of the branch to use.- {object}Deploy from an external image
buildpack
{object}Allows for customization of buildpack runtimeconfigType
string requiredType of buildpack run configurationone ofdefault, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommandcustomProcess
stringCustom process which should be run. Required in case where `configType` is `customProcess`customEntrypoint
stringCustom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`customCommand
stringCustom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`docker
{object}Allows for customization of docker runtimeconfigType
string requiredType of entrypoint & command override configurationone ofdefault, customEntrypoint, customCommand, customEntrypointCustomCommandcustomEntrypoint
stringCustom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`customCommand
stringCustom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per container in MBone of1024, 2048, 5120, 10240, 20480, 30720, 40960, 51200, 61440, 81920, 102400, 122880, 153600, 204800min1024max204800shmSize
integerConfigures the amount of available memory-backed disk space available to /dev/shmone of64, 128, 256, 512, 1024, 2048, 5120, 10240min64max10240gpu
{object}enabled
booleanconfiguration
{object}gpuType
string requiredtimesliced
booleangracePeriodSeconds
integerThe maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.min15max600metadata
{object}Allow setting custom labels and annotations for workloads.labels
{object}Specify custom labels for the workload.annotations
{object}Specify custom annotations for the workload as string or object.external
{object} requiredimagePath
string requiredImage to be deployed. When not deploying from Dockerhub the URL must be specified.pattern^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$credentials
stringID of the saved credentials to use to access this external image.pattern^[A-Za-z0-9-]+$- {object}Deploy from a Northflank build service
buildpack
{object}Allows for customization of buildpack runtimeconfigType
string requiredType of buildpack run configurationone ofdefault, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommandcustomProcess
stringCustom process which should be run. Required in case where `configType` is `customProcess`customEntrypoint
stringCustom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`customCommand
stringCustom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`docker
{object}Allows for customization of docker runtimeconfigType
string requiredType of entrypoint & command override configurationone ofdefault, customEntrypoint, customCommand, customEntrypointCustomCommandcustomEntrypoint
stringCustom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`customCommand
stringCustom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per container in MBone of1024, 2048, 5120, 10240, 20480, 30720, 40960, 51200, 61440, 81920, 102400, 122880, 153600, 204800min1024max204800shmSize
integerConfigures the amount of available memory-backed disk space available to /dev/shmone of64, 128, 256, 512, 1024, 2048, 5120, 10240min64max10240gpu
{object}enabled
booleanconfiguration
{object}gpuType
string requiredtimesliced
booleangracePeriodSeconds
integerThe maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.min15max600metadata
{object}Allow setting custom labels and annotations for workloads.labels
{object}Specify custom labels for the workload.annotations
{object}Specify custom annotations for the workload as string or object.internal
{object} requiredid
stringID of the build service to deploymin length3max length54pattern^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$branch
stringBranch to deploybuildSHA
(multiple options: oneOf)Commit SHA to deploy, or 'latest' to deploy the most recent commit- stringA commit sha.min length40max length40
- stringLatest commit.one oflatest
buildId
stringID of the build that should be deployed- {object}Choose later
disabledCI
booleanWhether CI should be disabled. Only relevant for jobs deploying directly from version control.buildConfiguration
{object}pathIgnoreRules
[array]An array of path ignore rules. A commit will only be built if a file has been changed that does not match any of the ignore rules. Path ignore rules follow `.gitignore` syntax.- stringA path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`.max length260
isAllowList
booleanIf `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`.ciIgnoreFlagsEnabled
booleanIf `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built.ciIgnoreFlags
[array]An array of commit ignore flags. If a commit message contains one or more of these flags, that commit will not be built. Defaults to `["[skip ci]", "[ci skip]", "[no ci]", "[skip nf]", "[nf skip]", "[northflank skip]", "[skip northflank]"]`- stringA commit ignore flag.max length72
dockerfileTarget
stringIf your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here.dockerCredentials
[array]- stringThe ID of the docker credentials to use.pattern^[A-Za-z0-9-]+$
includeGitFolder
booleanInclude .git folder inside the build contextfullGitClone
booleanInclude the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per build in MBone of16384, 32768, 65536, 131072, 262144, 524288min16384max65536buildSettings
(multiple options: oneOf)Build engine- {object}Build from a Dockerfile
storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per build in MBone of16384, 32768, 65536, 131072, 262144, 524288min16384max65536dockerfile
{object} requiredbuildEngine
stringBuild engine to use. Defaults to recommended build engine `kaniko`one ofkaniko, buildkitdockerFilePath
string requiredThe file path of the Dockerfile.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$dockerWorkDir
string requiredThe working directory of the Dockerfile.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$useCache
booleanShould intermediate image layers be cached?- {object}Build from a Buildpack
storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per build in MBone of16384, 32768, 65536, 131072, 262144, 524288min16384max65536buildpack
{object} requiredbuilder
stringBuildpack stack to use. Defaults to recommended stack `HEROKU_22`.one ofHEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_TINY, PAKETO_BASE, PAKETO_FULLbuildpackLocators
[array]Array of custom Buildpacks to use.- stringUrl or registry identifier of custom Buildpack.
buildContext
stringThe working directory to build in.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$useCache
booleanShould build dependencies be cached?runtimeEnvironment
{object}An object containing the runtime environment to set for the job. Keys may only contain letters, numbers, hyphens, forward slashes and dots.runtimeFiles
{object}Secret files as JSON object, encrypted at rest. File path must be absolutebuildArguments
{object}An object containing the build arguments to set for the job. Keys may only contain letters, numbers, hyphens, forward slashes and dots.buildFiles
{object}Secret files as JSON object, encrypted at rest. File path must be absolutehealthChecks
[array]An array of health checks.- {object}A health check object.
protocol
string requiredThe protocol to access the health check with.one ofHTTP, CMD, TCPtype
string requiredThe type of health check.one oflivenessProbe, readinessProbe, startupProbepath
stringThe path of the health check endpoint. Required when protocol is HTTP.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$cmd
stringThe command to run for the health check. Required when protocol is CMDport
integerPort number for the health check endpoint. Required when protocol is HTTP.min1initialDelaySeconds
integer requiredInitial delay, in seconds, before the health check is first run.min1max180periodSeconds
integer requiredThe time between each check, in seconds.min10max600timeoutSeconds
integer requiredThe time to wait for a response before marking the health check as a failure.min1max60failureThreshold
integer requiredThe maximum number of allowed failures.min1max255successThreshold
integerThe number of successes required to mark the health check as a success.min1max255schedule
string requiredThe cron timer scheduling when to run the job.pattern(@(annually|yearly|monthly|weekly|daily|hourly))|((((\d+,)+\d+|(\d+(\/|-)\d+)|\d+|\*) ?){5})suspended
booleanWhether the cron's automatic scheduling is suspendedconcurrencyPolicy
string requiredWhether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one.one ofallow, forbid, replace
OR
OR
OR
OR
OR
Response body
- {object}Response object.
data
{object} requiredResult data.name
string requiredThe name of the job.min length3max length52pattern^[a-zA-Z]((-|\s)?[a-zA-Z0-9]+((-|\s)[a-zA-Z0-9]+)*)?$description
stringA description of the job.max length200pattern^[a-zA-Z0-9.,?\s\\/'"()[\];`%^&*\-_:!]+$billing
{object} requiredbuildPlan
stringThe ID of the build plan to use.pattern^[A-Za-z0-9-]+$deploymentPlan
string requiredThe ID of the deployment plan to use.pattern^[A-Za-z0-9-]+$gpu
{object}enabled
booleanconfiguration
{object}gpuType
string requiredtimesliced
booleanbackoffLimit
integer requiredThe number of attempts to rerun a job before it is marked as failed.runOnSourceChange
stringConfigure when the job should be run if the source image changes.one ofnever, cd-promote, alwaysactiveDeadlineSeconds
integerThe maximum amount of time, in seconds, for a job to run before it is marked as failed.min1disabledCI
booleanWhether CI should be disabled. Only relevant for jobs deploying directly from version control.buildConfiguration
{object}pathIgnoreRules
[array]An array of path ignore rules. A commit will only be built if a file has been changed that does not match any of the ignore rules. Path ignore rules follow `.gitignore` syntax.- stringA path ignore rule, following `.gitignore` syntax. For example, `*.md` will ignore all files ending with `.md`.max length260
isAllowList
booleanIf `true`, the functionality of `pathIgnoreRules` will be inverted. A commit will only be built if a file has been changed that matches one or more of the rules in `pathIgnoreRules`.ciIgnoreFlagsEnabled
booleanIf `true`, enables commit ignore flags. If a commit message contains one or more of the flags in `ciIgnoreFlags`, that commit will not be built.ciIgnoreFlags
[array]An array of commit ignore flags. If a commit message contains one or more of these flags, that commit will not be built. Defaults to `["[skip ci]", "[ci skip]", "[no ci]", "[skip nf]", "[nf skip]", "[northflank skip]", "[skip northflank]"]`- stringA commit ignore flag.max length72
dockerfileTarget
stringIf your Dockerfile contains multiple build stages, you can specify the target stage by entering its name here.dockerCredentials
[array]- stringThe ID of the docker credentials to use.pattern^[A-Za-z0-9-]+$
includeGitFolder
booleanInclude .git folder inside the build contextfullGitClone
booleanInclude the entire git history as part of the .git folder. Only relevant if "includeGitFolder" is set.storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per build in MBone of16384, 32768, 65536, 131072, 262144, 524288min16384max65536runtimeEnvironment
{object}An object containing the runtime environment to set for the job. Keys may only contain letters, numbers, hyphens, forward slashes and dots.runtimeFiles
{object}Secret files as JSON object, encrypted at rest. File path must be absolutebuildArguments
{object}An object containing the build arguments to set for the job. Keys may only contain letters, numbers, hyphens, forward slashes and dots.buildFiles
{object}Secret files as JSON object, encrypted at rest. File path must be absolutehealthChecks
[array]An array of health checks.- {object}A health check object.
protocol
string requiredThe protocol to access the health check with.one ofHTTP, CMD, TCPtype
string requiredThe type of health check.one oflivenessProbe, readinessProbe, startupProbepath
stringThe path of the health check endpoint. Required when protocol is HTTP.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$cmd
stringThe command to run for the health check. Required when protocol is CMDport
integerPort number for the health check endpoint. Required when protocol is HTTP.min1initialDelaySeconds
integer requiredInitial delay, in seconds, before the health check is first run.min1max180periodSeconds
integer requiredThe time between each check, in seconds.min10max600timeoutSeconds
integer requiredThe time to wait for a response before marking the health check as a failure.min1max60failureThreshold
integer requiredThe maximum number of allowed failures.min1max255successThreshold
integerThe number of successes required to mark the health check as a success.min1max255schedule
string requiredThe cron timer scheduling when to run the job.suspended
booleanWhether the cron's automatic scheduling is suspendedconcurrencyPolicy
string requiredWhether this job should run when another instance of the job is already running. `allow` will enable multiple instances of this job to run. `forbid` will keep the current instance of the job running and stop a new instance from being run. `replace` will terminate any currently running instance of the job and start a new one.one ofallow, forbid, replacejobType
string requiredType of the job (manual or cron)one ofcronid
string requiredIdentifier for the jobappId
string requiredFull identifier used for job deploymentdeployment
{object}buildpack
{object}Allows for customization of buildpack runtimeconfigType
string requiredType of buildpack run configurationone ofdefault, customProcess, customCommand, customEntrypointCustomCommand, originalEntrypointCustomCommandcustomProcess
stringCustom process which should be run. Required in case where `configType` is `customProcess`customEntrypoint
stringCustom entrypoint which should be run. Required in case where `configType` is `customEntrypointCustomCommand`customCommand
stringCustom command which should be run. Required in case where `configType` is `customCommand`, `customEntrypointCustomCommand` or `originalEntrypointCustomCommand`docker
{object}Allows for customization of docker runtimeconfigType
string requiredType of entrypoint & command override configurationone ofdefault, customEntrypoint, customCommand, customEntrypointCustomCommandcustomEntrypoint
stringCustom entrypoint which should be used. Required in case where `configType` is `customEntrypoint` or `customEntrypointCustomCommand`customCommand
stringCustom command which should be used. Required in case where `configType` is `customCommand` or `customEntrypointCustomCommand`storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per container in MBone of1024, 2048, 5120, 10240, 20480, 30720, 40960, 51200, 61440, 81920, 102400, 122880, 153600, 204800min1024max204800shmSize
integerConfigures the amount of available memory-backed disk space available to /dev/shmone of64, 128, 256, 512, 1024, 2048, 5120, 10240min64max10240gpu
{object}enabled
booleanconfiguration
{object}gpuType
string requiredtimesliced
booleangracePeriodSeconds
integerThe maximum amount of time the process has to shut down after receiving a SIGTERM signal before it is forcefully shut down SIGKILL by the system.min15max600metadata
{object}Allow setting custom labels and annotations for workloads.labels
{object}Specify custom labels for the workload.annotations
{object}Specify custom annotations for the workload as string or object.vcs
{object}projectUrl
string requiredURL of the Git repo to build.pattern^(https:\/\/)?((www(\.[a-zA-Z0-9\-]{2,})+\.)?[a-zA-Z0-9\-]{2,})(\.([a-zA-Z0-9\-]{2,}))+(\/([a-zA-Z0-9\-._]{2,}))+?$projectType
string requiredThe VCS provider to use.one ofbitbucket, gitlab, github, self-hosted, azureselfHostedVcsId
stringIf projectType is self-hosted, the ID of the self-hosted vcs to use.pattern^([A-Za-z0-9-]+\/[A-Za-z0-9-]+)|([0-9a-f]{24})$accountLogin
stringBy default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `accountLogin` is provided, Northflank will instead use your linked account with that login name.vcsLinkId
stringBy default, if you have multiple version control accounts of the same provider linked, Northflank will pick a linked account that has access to the repository. If `vcsLinkId` is provided, Northflank will instead use your linked account with that ID.min length24max length24projectBranch
string requiredThe name of the branch to use.external
{object}imagePath
string requiredImage to be deployed. When not deploying from Dockerhub the URL must be specified.pattern^(?:(?:https?:\/\/)?([a-zA-Z0-9\-]+\.[a-zA-Z0-9\.\-]+)(\/v1)?)?(?:\/)?([a-zA-Z/-9\.\-_]+)(?:\:([a-zA-Z/-9\.\-_\:]+)|\@([a-zA-Z/-9\.\-_\:]+))$credentials
stringID of the saved credentials to use to access this external image.pattern^[A-Za-z0-9-]+$internal
{object}id
string requiredID of the build service to deploymin length3max length54pattern^[a-zA-Z](-?[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*)?$branch
stringBranch to deploybuildSHA
(multiple options: oneOf)Commit SHA to deploy, or 'latest' to deploy the most recent commit- stringA commit sha.min length40max length40
- stringLatest commit.one oflatest
buildId
stringID of the build that should be deployedimageUrl
stringImage registry url of the deployed image.buildSettings
(multiple options: oneOf)Build engine- {object}Build from a Dockerfile
storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per build in MBone of16384, 32768, 65536, 131072, 262144, 524288min16384max65536dockerfile
{object} requiredbuildEngine
stringBuild engine to use. Defaults to recommended build engine `kaniko`one ofkaniko, buildkitdockerFilePath
string requiredThe file path of the Dockerfile.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]+$dockerWorkDir
string requiredThe working directory of the Dockerfile.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$useCache
booleanShould intermediate image layers be cached?- {object}Build from a Buildpack
storage
{object}ephemeralStorage
{object}storageSize
integerEphemeral storage per build in MBone of16384, 32768, 65536, 131072, 262144, 524288min16384max65536buildpack
{object} requiredbuilder
stringBuildpack stack to use. Defaults to recommended stack `HEROKU_22`.one ofHEROKU_22, HEROKU_22_CLASSIC, HEROKU_20, HEROKU_18, GOOGLE_V1, CNB_ALPINE, CNB_BIONIC, PAKETO_TINY, PAKETO_BASE, PAKETO_FULLbuildpackLocators
[array]Array of custom Buildpacks to use.- stringUrl or registry identifier of custom Buildpack.
buildContext
stringThe working directory to build in.pattern^\/([a-zA-Z0-9-._]+\/)*[a-zA-Z0-9-._]*$useCache
booleanShould build dependencies be cached?status
{object} requiredDetails about the current job status.build
{object}Details about the status of the most recent build.status
string requiredThe current status of the build.one ofQUEUED, PENDING, STARTING, CLONING, BUILDING, UPLOADING, ABORTED, FAILURE, SUBMISSION_FAILURE, SUCCESS, CRASHEDlastTransitionTime
stringThe timestamp of when the build reached this status.cluster
{object} requiredCluster informationid
string requiredThe id of the cluster associated with this project.name
string requiredThe name of the cluster associated with this project.namespace
stringNamespace this resource is located within on the cluster.loadBalancers
[array]Load balancer DNS for the cluster.- string
createdAt
stringtime of creationupdatedAt
stringtime of update
OR
OR
POST /v1/projects/{projectId}/jobs/cron
Example request
curl --header "Content-Type: application/json" \
--header "Authorization: Bearer NORTHFLANK_API_TOKEN" \
--request POST \
--data '{"name":"Example Job","description":"A job description","tags":["my-tag"],"billing":{"buildPlan":"nf-compute-200-8","deploymentPlan":"nf-compute-20"},"backoffLimit":0,"runOnSourceChange":"never","activeDeadlineSeconds":600,"deployment":{"docker":{"configType":"default"},"storage":{"ephemeralStorage":{"storageSize":1024}},"vcs":{"projectUrl":"https://github.com/northflank/gatsby-with-northflank","projectType":"github","accountLogin":"github-user","projectBranch":"master"}},"buildConfiguration":{"pathIgnoreRules":["README.md"],"isAllowList":false,"ciIgnoreFlags":["[skip ci]"],"dockerCredentials":["example-docker-credential"],"storage":{"ephemeralStorage":{"storageSize":16384}}},"buildSettings":{"storage":{"ephemeralStorage":{"storageSize":16384}},"dockerfile":{"buildEngine":"kaniko","dockerFilePath":"/Dockerfile","dockerWorkDir":"/","useCache":false}},"runtimeEnvironment":{"variable1":"abcdef","variable2":"12345"},"runtimeFiles":{"/dir/fileName":{"data":"VGhpcyBpcyBhbiBleGFtcGxlIHdpdGggYSB0ZW1wbGF0ZWQgJHtOT0RFX0VOVn0gdmFyaWFibGU=","encoding":"utf-8"}},"buildArguments":{"variable1":"abcdef","variable2":"12345"},"buildFiles":{"/dir/fileName":{"data":"VGhpcyBpcyBhbiBleGFtcGxlIHdpdGggYSB0ZW1wbGF0ZWQgJHtOT0RFX0VOVn0gdmFyaWFibGU=","encoding":"utf-8"}},"healthChecks":[{"protocol":"HTTP","type":"readinessProbe","path":"/health-check","port":8080,"initialDelaySeconds":10,"periodSeconds":60,"timeoutSeconds":1,"failureThreshold":3,"successThreshold":1}],"schedule":"30 8 * * *","suspended":false,"concurrencyPolicy":"forbid"}' \
https://api.northflank.com/v1/projects/{projectId}/jobs/cron
Example response
200 OK
JSON
{
"data": {
"name": "Example Job",
"description": "A job description",
"tags": [
"my-tag"
],
"billing": {
"buildPlan": "nf-compute-200-8",
"deploymentPlan": "nf-compute-20"
},
"backoffLimit": 0,
"runOnSourceChange": "never",
"activeDeadlineSeconds": 600,
"buildConfiguration": {
"pathIgnoreRules": [
"README.md"
],
"isAllowList": false,
"ciIgnoreFlags": [
"[skip ci]"
],
"dockerCredentials": [
"example-docker-credential"
],
"storage": {
"ephemeralStorage": {
"storageSize": 16384
}
}
},
"runtimeEnvironment": {
"variable1": "abcdef",
"variable2": "12345"
},
"runtimeFiles": {
"/dir/fileName": {
"data": "VGhpcyBpcyBhbiBleGFtcGxlIHdpdGggYSB0ZW1wbGF0ZWQgJHtOT0RFX0VOVn0gdmFyaWFibGU=",
"encoding": "utf-8"
}
},
"buildArguments": {
"variable1": "abcdef",
"variable2": "12345"
},
"buildFiles": {
"/dir/fileName": {
"data": "VGhpcyBpcyBhbiBleGFtcGxlIHdpdGggYSB0ZW1wbGF0ZWQgJHtOT0RFX0VOVn0gdmFyaWFibGU=",
"encoding": "utf-8"
}
},
"healthChecks": [
{
"protocol": "HTTP",
"type": "readinessProbe",
"path": "/health-check",
"port": 8080,
"initialDelaySeconds": 10,
"periodSeconds": 60,
"timeoutSeconds": 1,
"failureThreshold": 3,
"successThreshold": 1
}
],
"schedule": "30 8 * * *",
"suspended": false,
"concurrencyPolicy": "forbid",
"jobType": "cron",
"id": "example-job",
"appId": "/example-user/default-project/example-job",
"deployment": {
"docker": {
"configType": "default"
},
"storage": {
"ephemeralStorage": {
"storageSize": 1024
}
},
"vcs": {
"projectUrl": "https://github.com/northflank/gatsby-with-northflank",
"projectType": "github",
"accountLogin": "github-user",
"projectBranch": "master"
},
"external": {
"imagePath": "nginx:latest",
"credentials": "example-credentials"
},
"internal": {
"id": "example-build-service",
"branch": "master",
"buildId": "premium-guide-6393"
}
},
"buildSettings": {
"storage": {
"ephemeralStorage": {
"storageSize": 16384
}
},
"dockerfile": {
"buildEngine": "kaniko",
"dockerFilePath": "/Dockerfile",
"dockerWorkDir": "/",
"useCache": false
}
},
"status": {
"build": {
"status": "SUCCESS",
"lastTransitionTime": "2021-11-29T11:47:16.624Z"
}
},
"cluster": {
"id": "nf-europe-west",
"name": "nf-europe-west",
"namespace": "ns-8zy2mcjh9zn2",
"loadBalancers": [
"lb.659200800000000000000000.northflank.com"
]
}
}
}