Asana Jobs API

Asana Jobs API is an application programming interface that allows developers to access and interact with job-related data and functionality within the Asana platform. This API enables users to programmatically create, retrieve, update, and delete job postings, as well as access information about job applicants, interviews, and job statuses.

OpenAPI Specification

asana-jobs-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Asana Allocations Jobs API
  description: The Asana Allocations API allows users to manage and allocate resources within their Asana project management system. An allocation object represents how much of a resource (e.g. person, team) is dedicated to a specific work object (e.g. project, portfolio) over a specific period of time. The effort value can be a percentage or number of hours.
  version: '1.0'
  termsOfService: https://asana.com/terms
  contact:
    name: Asana Support
    url: https://asana.com/support
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: https://app.asana.com/api/1.0
  description: Main endpoint.
security:
- personalAccessToken: []
- oauth2: []
tags:
- name: Jobs
  description: Track asynchronous operations like project or task duplication.
paths:
  /jobs/{job_gid}:
    parameters:
    - $ref: '#/components/parameters/job_path_gid'
    - $ref: '#/components/parameters/pretty'
    get:
      summary: Asana Get a job by id
      description: Returns the full record for a job.
      operationId: getJob
      tags:
      - Jobs
      parameters:
      - name: job_gid
        in: path
        required: true
        schema:
          type: string
        example: '12345'
      responses:
        '200':
          description: Successfully retrieved the record for a single job.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/JobResponse'
        '400':
          description: Bad request.
        '401':
          description: Unauthorized.
        '403':
          description: Forbidden.
        '404':
          description: Not found.
        '500':
          description: Internal server error.
components:
  parameters:
    pretty:
      name: opt_pretty
      in: query
      description: 'Provides “pretty” output.

        Provides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging.'
      required: false
      allowEmptyValue: true
      schema:
        type: boolean
      style: form
      example: true
    job_path_gid:
      name: job_gid
      in: path
      description: Globally unique identifier for the job.
      required: true
      schema:
        type: string
      example: '12345'
      x-env-variable: job
  schemas:
    JobResponse:
      type: object
      properties:
        gid:
          type: string
          readOnly: true
          example: '12345'
        resource_type:
          type: string
          readOnly: true
          example: job
        resource_subtype:
          type: string
          readOnly: true
          example: duplicate_task
        status:
          type: string
          readOnly: true
          enum:
          - not_started
          - in_progress
          - succeeded
          - failed
          example: in_progress
        new_project:
          type: object
          nullable: true
          properties:
            gid:
              type: string
            resource_type:
              type: string
            name:
              type: string
        new_task:
          type: object
          nullable: true
          properties:
            gid:
              type: string
            resource_type:
              type: string
            name:
              type: string
        new_project_template:
          type: object
          nullable: true
          properties:
            gid:
              type: string
            resource_type:
              type: string
            name:
              type: string
  securitySchemes:
    personalAccessToken:
      type: http
      description: A personal access token for the Asana API.
      scheme: bearer
    oauth2:
      type: oauth2
      description: OAuth 2.0 authorization code flow.
      flows:
        authorizationCode:
          authorizationUrl: https://app.asana.com/-/oauth_authorize
          tokenUrl: https://app.asana.com/-/oauth_token
          scopes:
            default: Provides access to all endpoints documented in the API reference.