1. Introduction
Culinary Agents aims to make the application posting process simple from end-to-end. This includes providing the ability for partner platforms to automatically post applicant information (contact information, resume information, etc) from your web platform to CulinaryAgents.com. Outlined below are our specifications for submitting an application to a job on CulinaryAgents.com.
2. Transport
The CulinaryAgents Easy Apply Webhook makes an HTTPS POST to the endpoint. We do not deliver to non-HTTPS services.
3. Format
The POST request body will be delivered as JSON, as configured during setup. The request payload will be formatted as a JSON object.
The Content-Type request header will be set accordingly to application/json
4. Response
200 OK
400 Bad Request
412 Precondition Failed
5. Fields
response_id
job_id
first_name
last_name
phone_number *optional
resume
In form-data format, a file upload attachment as described in RFC2388, with generated unique filename added in the header.
Application Types
- application/pdf
- application/msword
- application/vnd.openxmlformats-officedocument.wordprocessingml.document
- application/octet-stream
6. Signatures
You may optionally enable signatures for network requests from Apply Webhook. After signatures are enabled, you must:
2. Check that the current time is within 60 seconds of the timestamp in the request.
6.1. Full Signature Headers Example in HTTP Request
POST {{ENDPOINT URL}}
Content-Type: application/json
X-CulinaryAgents-Signature: Jex58l1eXuqNoR7YiKeDQRhEW3frTIq3RmHpfyTtESI=
X-CulinaryAgents-Signature-Provider: {{PROVIDER NAME}}
X-CulinaryAgents-Signature-Timestamp: 2022-01-31T04:23:03.214Z
X-CulinaryAgents-Signature-Version: v1; sha256
* The {{ENDPOINT URL}} and {{PROVIDER NAME}} will be provided with secret key.
6.2. How to Setup Signature
X-CulinaryAgents-Signature: <signature>
<signature>: String of characters returned by signature algorithm.
Example: Jex58l1eXuqNoR7YiKeDQRhEW3frTIq3RmHpfyTtESI=
Below is the logic how to generate your signature:
1. Take the Apply Webhook payload.
{"response_id":"1", "job_id":"1234", "email":"[email protected]", "first_name":"Mary", "last_name":"Jane", "phone_number":"1-234-567-1234"}
2. Take the timestamp from X-CulinaryAgents-Signature-Timestamp.
2022-01-31T04:23:03.214Z
3. Concatenate timestamp and payload, separated by a dot (.). Note that the payload needs to be from the request body without altering it.
2022-01-31T04:23:03.214Z.{"response_id":"1", "job_id":"1234", "email":"[email protected]", "first_name":"Mary", "last_name":"Jane", "phone_number":"1-234-567-1234"}
4. Create a base64-encoded HMAC SHA256 hash out of timestamp.payload with your secret without breaking the encoded string into lines.
Secret Key(Will be provided): e1fb9132fd23caebcfda27c1b98f78cf2a6251a7c3b1bea29bfb9cc921155ab6
Generated Signature: Jex58l1eXuqNoR7YiKeDQRhEW3frTIq3RmHpfyTtESI=
5. This value should be added into X-CulinaryAgents-Signature in the header.
7. User Experience after Submission
The following are details of what happens after an application submission. If the email does not already have an account on CulinaryAgents.com, we will create an account and submit application, then return an application confirmation. If the email already exists on CulinaryAgents.com, we will submit the application and return an application confirmation.
7.1. Non-CA User
When an application is submitted and the email does not already exist as a CA user account, the following occurs:
2) Our system will send the user a confirmation email of successful submission.
3) The email will inform the user that they have the option to setup a password for the user account if they choose to manage the application or message the business.
7.2. Existing CA User
When an application is submitted and the email is already a CA user account, we simply perform step 2 from section 7.1





