{
  "opencollection": "1.0.0",
  "info": {
    "name": "ChartHop access job-code API",
    "version": "V1.0.0"
  },
  "items": [
    {
      "info": {
        "name": "job-code",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Return all job codes in the organization paginated",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              },
              {
                "name": "from",
                "value": "",
                "type": "query",
                "description": "Job code id to start paginating from"
              },
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "Number of results to return"
              },
              {
                "name": "returnAccess",
                "value": "",
                "type": "query",
                "description": "Return access information -- pass a list of actions to check, for example: create,update,delete"
              },
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Data format to return fields in; default is json, can also use json-extended or json-readable"
              },
              {
                "name": "filterValues",
                "value": "",
                "type": "query",
                "description": "JSON map of field filters as {fieldId: value} to filter job codes. All filters are applied with AND logic. Field IDs must be ObjectIds of valid job code fields."
              },
              {
                "name": "includeFieldValues",
                "value": "",
                "type": "query",
                "description": "Whether to include fieldValues in the response (default: false)"
              }
            ]
          },
          "docs": "Return all job codes in the organization paginated"
        },
        {
          "info": {
            "name": "Create a job code",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              }
            ]
          },
          "docs": "Create a job code"
        },
        {
          "info": {
            "name": "Export job codes",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/export",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              }
            ]
          },
          "docs": "Export job codes"
        },
        {
          "info": {
            "name": "Import data from CSV file",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/import",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              },
              {
                "name": "skipErrors",
                "value": "",
                "type": "query",
                "description": "Whether to skip erroneous rows, or reject the entire upload if any are invalid (default)"
              }
            ]
          },
          "docs": "Import data from CSV file"
        },
        {
          "info": {
            "name": "Download a CSV template for a job code import",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/import/download-template",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              }
            ]
          },
          "docs": "Download a CSV template for a job code import"
        },
        {
          "info": {
            "name": "Return all job code linked field IDs",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/linked-fields",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              },
              {
                "name": "jobCodeId",
                "value": "",
                "type": "query",
                "description": "Job Code ID"
              },
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Data format to return fields in; default is json, can also use json-extended or json-readable"
              },
              {
                "name": "date",
                "value": "",
                "type": "query",
                "description": "Date to apply time tracked fields as of"
              }
            ]
          },
          "docs": "Return all job code linked field IDs"
        },
        {
          "info": {
            "name": "Start an async process that uses AI to suggest a JobCode for each job that does not yet have one. Poll GET /v1/org/{orgId}/process/{processId} for status; suggestions are written to process.results once status is DONE. Read-only — writes nothing to jobs.",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/match",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              }
            ]
          },
          "docs": "Start an async process that uses AI to suggest a JobCode for each job that does not yet have one. Poll GET /v1/org/{orgId}/process/{processId} for status; suggestions are written to process.results once status is DONE. Read-only — writes nothing to jobs."
        },
        {
          "info": {
            "name": "Mark a completed JobCodeMatchProcessor process as reset. Writes state.hasReset = true so the frontend can force the matcher UI to reset after the user applies changes, instead of redisplaying the matching table.",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/match/:processId/reset",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              },
              {
                "name": "processId",
                "value": "",
                "type": "path",
                "description": "JobCodeMatchProcessor process id"
              }
            ]
          },
          "docs": "Mark a completed JobCodeMatchProcessor process as reset. Writes state.hasReset = true so the frontend can force the matcher UI to reset after the user applies changes, instead of redisplaying the matching table."
        },
        {
          "info": {
            "name": "Return a particular job code by id",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/:jobCodeId",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              },
              {
                "name": "jobCodeId",
                "value": "",
                "type": "path",
                "description": "Job code id"
              },
              {
                "name": "format",
                "value": "",
                "type": "query",
                "description": "Data format to return fields in; default is json, can also use json-extended or json-readable"
              }
            ]
          },
          "docs": "Return a particular job code by id"
        },
        {
          "info": {
            "name": "Update an existing job code",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/:jobCodeId",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              },
              {
                "name": "jobCodeId",
                "value": "",
                "type": "path",
                "description": "Job code id"
              }
            ]
          },
          "docs": "Update an existing job code"
        },
        {
          "info": {
            "name": "Delete a job code",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/v1/org/:orgId/job-code/:jobCodeId",
            "params": [
              {
                "name": "orgId",
                "value": "",
                "type": "path",
                "description": "Org identifier (either id or slug)"
              },
              {
                "name": "jobCodeId",
                "value": "",
                "type": "path",
                "description": "Job code id"
              }
            ]
          },
          "docs": "Delete a job code"
        }
      ]
    }
  ],
  "bundled": true
}