# Retrieve an application by ID. Retrieves an application for the provided application ID. The endpoint requires the `personio:recruiting:read` scope. > 📘 Note > > Currently, the Candidates and Applications API does not return custom attributes and tags. > Please consider this limitation when using the API. > 🚧 Warning > > This endpoint is in beta, and may be subject to change. > Please report any bugs to [Help & Feedback](https://support.personio.de/hc/en-us/articles/5659436229277-Help-Feedback) section. # OpenAPI definition ```json { "openapi": "3.0.3", "info": { "title": "Recruiting (Beta)", "description": "Collection of endpoints to manage recruiting applications.", "version": "2.0.0" }, "servers": [ { "url": "https://api.personio.de" } ], "security": [ { "BearerAuth": [] } ], "paths": { "/v2/recruiting/applications/{id}": { "get": { "summary": "Retrieve an application by ID.", "description": "Retrieves an application for the provided application ID.\nThe endpoint requires the `personio:recruiting:read` scope.\n\n> 📘 Note\n>\n> Currently, the Candidates and Applications API does not return custom attributes and tags.\n> Please consider this limitation when using the API.\n\n\n> 🚧 Warning\n>\n> This endpoint is in beta, and may be subject to change.\n> Please report any bugs to [Help & Feedback](https://support.personio.de/hc/en-us/articles/5659436229277-Help-Feedback) section.", "tags": [ "Applications" ], "parameters": [ { "description": "ID of application.", "in": "path", "name": "id", "schema": { "type": "string" }, "required": true, "example": "495039" }, { "description": "As this is a Beta endpoint, the Beta header must be provided with the value `true`.", "in": "header", "name": "Beta", "schema": { "type": "string", "example": "true" } } ], "x-path-examples": { "200 Retrieve application by ID": { "value": "/v2/recruiting/applications/495039" }, "404 Retrieve non-existing application": { "value": "/v2/recruiting/applications/id-that-does-not-exist" } }, "responses": { "200": { "description": "Successful response.", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/Application" }, "examples": { "200 Retrieve application by ID": { "$ref": "#/components/examples/ApplicationResponse" } } } } }, "404": { "description": "Application not found.", "content": { "application/problem+json": { "schema": { "$ref": "#/paths/~1v2~1recruiting~1jobs/get/responses/400/content/application~1problem%2Bjson/schema" }, "examples": { "404 Retrieve non-existing application": { "$ref": "#/components/examples/ResourceNotFound" } } } } } } } } }, "components": { "securitySchemes": { "BearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT" } }, "schemas": { "Application": { "description": "Recruiting application.", "type": "object", "required": [ "id", "company", "application_date", "current_stage", "created_at", "updated_at" ], "properties": { "id": { "description": "The unique identifier of an application.", "type": "string", "readOnly": true, "example": "9823749" }, "company": { "$ref": "#/components/schemas/CompanyRef" }, "candidate": { "$ref": "#/components/schemas/CandidateRef" }, "job": { "$ref": "#/components/schemas/JobRef" }, "current_stage": { "$ref": "#/components/schemas/Stage" }, "application_date": { "description": "Date when the application was submitted.", "readOnly": true, "type": "string", "format": "date" }, "channel": { "$ref": "#/components/schemas/Channel" }, "is_anonymized": { "description": "Flag indicating if the application is anonymized.", "type": "boolean", "example": false }, "hiring_team": { "description": "List of hiring team members assigned to the application.", "type": "array", "items": { "$ref": "#/components/schemas/HiringTeamMember" } }, "created_at": { "description": "Creation date of an application record in Personio (may differ from `application_date`).", "readOnly": true, "type": "object", "required": [ "date-time", "timezone" ], "properties": { "date-time": { "type": "string", "description": "Timestamp with UTC offset.", "format": "date-time" }, "timezone": { "type": "string", "description": "Provide a time zone ID that conforms to the [Time Zone Database](https://www.iana.org/time-zones).", "example": "Europe/Berlin" } } }, "updated_at": { "description": "Last modification date of an application.", "readOnly": true, "type": "object", "required": [ "date-time", "timezone" ], "properties": { "date-time": { "type": "string", "description": "Timestamp with UTC offset.", "format": "date-time" }, "timezone": { "type": "string", "description": "Provide a time zone ID that conforms to the [Time Zone Database](https://www.iana.org/time-zones).", "example": "Europe/Berlin" } } }, "_meta": { "$ref": "#/components/schemas/Job/properties/_meta" } } }, "Channel": { "description": "Application source Recruiting channel.", "type": "object", "required": [ "id", "name" ], "properties": { "id": { "type": "string", "description": "The unique identifier of a recruiting channel.", "example": "234098" }, "name": { "type": "string", "description": "The given name a recruiting channel.", "example": "LinkedIn" } } }, "Stage": { "description": "Recruiting pipeline stage for application.", "type": "object", "required": [ "kind", "type" ], "properties": { "kind": { "type": "string", "description": "Recruiting stage type.", "enum": [ "custom", "system" ], "example": "system" }, "type": { "type": "string", "description": "The type of a recruiting stage.", "enum": [ "new", "screening", "interviews", "offer", "hired", "talent pool", "other", "unassigned", "rejected", "withdrawn" ], "example": "screening" }, "name": { "description": "The name of a custom recruiting stage. Relevant only for custom stages.", "type": "string" }, "id": { "type": "string", "description": "The unique identifier of a custom recruiting stage. Relevant only for custom stages.", "example": "234098" } } }, "CandidateRef": { "description": "Recruiting candidate object (aka 'applicant').", "type": "object", "required": [ "id", "first_name", "last_name", "gender", "email" ], "properties": { "id": { "description": "The unique identifier of a candidate.", "type": "string", "readOnly": true, "example": "9823749" }, "first_name": { "description": "The Candidate's first name.", "type": "string", "example": "John" }, "last_name": { "description": "The Candidate's last name.", "type": "string", "example": "Doe" }, "gender": { "description": "The Candidate's gender.", "type": "string", "enum": [ "MALE", "FEMALE", "DIVERSE", "UNDEFINED" ] }, "email": { "description": "The Candidate's email.", "type": "string", "format": "email" }, "_meta": { "$ref": "#/components/schemas/Job/properties/_meta" } } }, "JobRef": { "description": "Recruiting job object.", "type": "object", "required": [ "id", "name" ], "properties": { "id": { "description": "The unique identifier of a Job.", "type": "string", "readOnly": true, "example": "9823749" }, "department": { "$ref": "#/components/schemas/DepartmentRef" }, "name": { "description": "Job title.", "readOnly": true, "type": "string", "example": "Software Developer" }, "category": { "description": "Job category.", "type": "string", "readOnly": true, "example": "Technology Position" }, "_meta": { "$ref": "#/components/schemas/Job/properties/_meta" } } }, "CompanyRef": { "description": "The company object.", "type": "object", "required": [ "id" ], "properties": { "id": { "description": "The unique identifier of a company.", "readOnly": true, "type": "string", "example": "324" }, "_meta": { "$ref": "#/components/schemas/Job/properties/_meta" } } }, "DepartmentRef": { "description": "The company department object.", "type": "object", "required": [ "id" ], "properties": { "id": { "description": "The unique identifier of a department.", "readOnly": true, "type": "string", "example": "324" }, "name": { "description": "The name of a department.", "readOnly": true, "type": "string", "example": "HR" }, "_meta": { "$ref": "#/components/schemas/Job/properties/_meta" } } }, "Job": { "description": "Recruiting job object.", "type": "object", "required": [ "id", "name", "company" ], "properties": { "id": { "description": "The unique identifier of a Job.", "type": "string", "readOnly": true, "example": "9823749" }, "department": { "$ref": "#/components/schemas/DepartmentRef" }, "company": { "$ref": "#/components/schemas/CompanyRef" }, "name": { "description": "Job title.", "readOnly": true, "type": "string", "example": "Software Developer" }, "category": { "$ref": "#/components/schemas/CategoryRef" }, "hiring_team": { "description": "List of hiring team members assigned to the job.", "type": "array", "items": { "$ref": "#/components/schemas/HiringTeamMember" } }, "created_at": { "description": "Creation date of a job.", "readOnly": true, "type": "object", "required": [ "date-time", "timezone" ], "properties": { "date-time": { "type": "string", "description": "Timestamp with UTC offset.", "format": "date-time" }, "timezone": { "type": "string", "description": "Provide a time zone ID that conforms to the [Time Zone Database](https://www.iana.org/time-zones).", "example": "Europe/Berlin" } } }, "updated_at": { "description": "Last modification date of a job.", "readOnly": true, "type": "object", "required": [ "date-time", "timezone" ], "properties": { "date-time": { "type": "string", "description": "Timestamp with UTC offset.", "format": "date-time" }, "timezone": { "type": "string", "description": "Provide a time zone ID that conforms to the [Time Zone Database](https://www.iana.org/time-zones).", "example": "Europe/Berlin" } } }, "_meta": { "description": "This object represents the metadata information for an object. It's a set of arbitrary key/value attributes such as `links`.", "type": "object", "readOnly": true, "properties": { "links": { "type": "object", "additionalProperties": { "description": "This objects represents a hyperlink.", "type": "object", "readOnly": true, "properties": { "href": { "type": "string", "format": "uri" } }, "additionalProperties": true }, "example": { "links": { "self": { "href": "https://api.personio.de/v2/person?cursor=" } } } } } } } }, "HiringTeamMember": { "description": "Hiring team member object.", "type": "object", "required": [ "person", "role" ], "properties": { "person": { "$ref": "#/components/schemas/PersonRef" }, "role": { "$ref": "#/components/schemas/RecruitingRoleRef" } } }, "PersonRef": { "description": "The person object.", "type": "object", "required": [ "id" ], "properties": { "id": { "description": "The unique identifier of a person.", "readOnly": true, "type": "string", "example": "324" }, "_meta": { "$ref": "#/components/schemas/Job/properties/_meta" } } }, "RecruitingRoleRef": { "description": "The recruiting role object.", "type": "object", "required": [ "name" ], "properties": { "name": { "description": "The name of a role.", "readOnly": true, "type": "string", "example": "HR manager" } } } }, "examples": { "ResourceNotFound": { "value": { "personio_trace_id": "aswo3f-a202lfso-312123sld-1230ddd", "timestamp": "2021-05-28T11:17:30+00:00", "errors": [ { "title": "Resource not found", "detail": "There is no resource for the specified ID.", "type": "https://developer.personio.de/v2.0/page/public-api-error-codes#common.resource_not_found" } ] } }, "ApplicationResponse": { "value": { "id": "495039", "company": { "id": "10567" }, "candidate": { "id": "3498579", "first_name": "John", "last_name": "Doe", "email": "john.doe@example.com" }, "job": { "id": "209321", "name": "Software Developer", "category": { "id": "3459833", "name": "Technology" }, "department": { "id": "321", "name": "IT" } }, "application_date": "2023-12-11", "hiring_team": [ { "person": { "id": "56789", "_meta": { "links": { "self": { "href": "https://api.personio.de/v2/persons/56789" } } } }, "role": { "name": "HR manager" } }, { "person": { "id": "67890", "_meta": { "links": { "self": { "href": "https://api.personio.de/v2/persons/67890" } } } }, "role": { "name": "Tech lead" } } ], "created_at": { "date-time": "2023-12-11T14:50:17Z", "timezone": "UTC" }, "updated_at": { "date-time": "2023-12-11T14:50:17Z", "timezone": "UTC" }, "_meta": { "links": { "self": { "href": "https://api.personio.de/v2/recruiting/applications/495039" } } } } } } } } ```