# Administering SDK Job Metadata

You can review, create, and update SDK Job Metadata components from **Admin** > **Operations** > **SDK Job Metadata**. Access to this area is controlled by the [_Admin: Operations_ and _Admin: Jobs_ permissions.](/en/lr/23647/)

Every class implemented using the `Job` interface must be associated to the required `Jobmetadata` component, which is invoked when the job runs. The component can be managed via the UI or MDL. Learn more about the `Jobmetadata` component on the <a class="external-link " href="https://developer.veevavault.com/mdl/components/#MDL-Jobmetadata" target="_blank" rel="noopener">Developer Portal<i class="fa fa-external-link" aria-hidden="true"></i></a>.

When viewing SDK Job Metadata, you may see Vault-supplied SDK jobs which work to deliver various features and have _Standard_ set for the **Source**. These are read-only.

## How to Create SDK Job Metadata

To create SDK Job Metadata:

  1. Click **Create**.
  2. Enter a human-friendly **Label** for Vault users.
  3. Optional: Change the automatically generated **Name** if desired. All custom components end with `__c`.
  4. Select a **Status**. The configuration is not available for use unless the **Status** is _Active_.
  5. Define the number of job items to process in each task by setting **Chunk Size**. Minimum chunk is 1 and maximum is 500.
  6. Optional: Use **Single Instance States** to define a state or states as a single instance. Only one instance of a job is allowed to be in a single instance state at any given time. Use the dropdown to select one or more of the available states.
  7. Optional: Enter a **Description** of the job to display to Administrators in the UI.
  8. Select the **Job Code** this job will execute. Job processors are created by your organization and deployed to your Vault using the Vault Java SDK. You can view the details of the job processors currently deployed to your Vault from **Admin** > **Configuration** > **Job Processors**. Learn more about <a class="external-link " href="https://developer.veevavault.com/sdk/#Job_Service" target="_blank" rel="noopener">Vault Java SDK jobs in the Developer Portal<i class="fa fa-external-link" aria-hidden="true"></i></a>.
  9. Select a **Queue**, either the default _System_ queue or a [custom SDK job queue](/en/lr/67002/).
  10. Select a **[Timeout Duration][1]** in hours for when the running job will time out due to inactivity. 
  11.  Click **Save**.

### Custom Timeout Durations {#custom-timeout-duration}

Select a **Timeout Duration** for SDK Job Metadata to specify when the running job will time out due to inactivity. By default, the timeout duration is 23 hours for one-time jobs and 72 hours for recurring jobs. Adding a custom timeout duration is useful for jobs with high recurrence frequencies; for example, jobs that run every hour may need a shorter timeout duration because the default timeout duration of 72 hours may be too long. Also, a job with critical functionality that must run daily may need a shorter timeout period, such as 23 hours, to prevent the risk of the job attempting to run for up to 72 hours.

## How to Delete SDK Job Metadata

To delete SDK Job Metadata, select **Delete** from the gear icon's **All Actions** menu. Note that you cannot delete SDK Job Metadata if it is referenced by a custom SDK job queue.

[1]: #custom-timeout-duration