# Retrieve an agreement signing session. **GET /employers/{employer_id}/agreement-signing-sessions/{signing_session_id}** Fetch the current state of a initiated agreement signing session for an employer. Intended for polling — you can call this to determine whether an employer has completed the signing flow. ## Servers - https://payroll-api.getpenfold.dev/v4: https://payroll-api.getpenfold.dev/v4 () ## Authentication methods - O auth2 client credentials ## Parameters ### Path parameters - **employer_id** (string) - **signing_session_id** (string) ## Responses ### 200 Signing session retrieved successfully. #### Body: application/json (object) - **id** (string) The unique identifier for the signing session. - **return_url** (string) The URL the employer is redirected to once the signing session reaches a terminal state. - **expires_at** (string(date-time)) The date and time the signing session expires, in ISO 8601 format. Sessions that pass this time without reaching a terminal state are treated as Failed with `failure_code` `SessionExpired`. - **result** (string | null) The current state of the signing session. Possible values: - `Open`: the session has been created but not yet acted on by the employer. - `Success`: the employer accepted the agreement. - `Cancelled`: the employer cancelled the signing flow. - `Failed`: the session reached a terminal failure state. See `failure_code` for the specific reason. May be `null` if the session has not yet been initialised. - **failure_code** (string) The reason a session reached a `Failed` state. `null` unless `result` is `Failed`. - **completed_at** (string(date-time) | null) The date and time the session reached a terminal state (`Success` or `Cancelled`). `null` if the session is still `Open` or `Failed`. ### 401 Unauthorized, the request requires authentication, and the provided credentials are either missing or incorrect. #### Body: application/json (object) - **error** (string) A descriptive error message. ### 404 Signing session not found. The specified signing_session_id does not match an existing session for this employer and organisation. #### Body: application/json (object) - **error** (string) A descriptive error message. ### 405 Method not allowed #### Body: application/json (object) - **error** (string) A descriptive error message. [Powered by Bump.sh](https://bump.sh)