Skip to content

Commit

Permalink
add tribepad
Browse files Browse the repository at this point in the history
  • Loading branch information
dphuang2 committed Mar 28, 2024
1 parent e58e5f7 commit 7639e4c
Show file tree
Hide file tree
Showing 14 changed files with 31,671 additions and 0 deletions.
480 changes: 480 additions & 0 deletions sdks/db/cached-method-objects/from-custom-request_tribepad.com.yaml

Large diffs are not rendered by default.

1 change: 1 addition & 0 deletions sdks/db/category-cache.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -239,3 +239,4 @@ apis:
SmartRecruiters-undefined: HR Talent & Recruitment
TalentLyft-Customers: HR Talent & Recruitment
Radix-undefined: AI Tools
Tribepad-undefined: HR Talent & Recruitment
1 change: 1 addition & 0 deletions sdks/db/custom-request-last-fetched.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -220,3 +220,4 @@ lastUpdated:
smartrecruiters.com: 2024-03-28T00:27:18.977Z
talentlyft.com_Customers: 2024-03-28T16:28:09.264Z
radix.ai: 2024-03-28T16:46:20.311Z
tribepad.com: 2024-03-28T16:51:15.828Z
6,763 changes: 6,763 additions & 0 deletions sdks/db/custom-request-specs/tribepad.com.yaml

Large diffs are not rendered by default.

6,796 changes: 6,796 additions & 0 deletions sdks/db/fixed-specs-cache/tribepad-fixed-spec.yaml

Large diffs are not rendered by default.

9,790 changes: 9,790 additions & 0 deletions sdks/db/fixed-specs/tribepad-fixed-spec.yaml

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions sdks/db/generate-repository-description-cache/tribepad.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{
"Tribepad is the trusted tech ally to smart(er) recruiters everywhere, designed to help you fall back in love with recruiting. Our simple, flexible talent acquisition platform takes your recruitment headaches away - giving power to the people finders.\n\nCombining ATS, CRM, Video Interviewing, and Onboarding plus a strong integration ecosystem and a switched-on, passionate team cheering you on, our tech is a springboard for faster, fairer, better hiring. \n\nTrusted by organisations like the Tesco, NHS Professionals, KFC, Subway, Sodexo, G4S and Local Authorities across the UK, 25 million people in 16 languages use Tribepad. \n\nCast-iron security with G-Cloud 12 approved suppliers and data stored in ISO27001-compliant UK data centres.": "Tribepad: Your trusted tech ally for recruiting. Simple, flexible talent acquisition platform with ATS, CRM, Video Interviewing, and Onboarding. Used by organizations like Tesco, NHS, KFC. Cast-iron security with G-Cloud 12 approval. Tribepad's {language} SDK generated by Konfig (https://konfigthis.com/)."
}
6,764 changes: 6,764 additions & 0 deletions sdks/db/intermediate-fixed-specs/tribepad/openapi.yaml

Large diffs are not rendered by default.

17 changes: 17 additions & 0 deletions sdks/db/processed-custom-request-cache/tribepad.com.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
processed:
securitySchemes:
bearerAuth:
type: http
scheme: bearer
apiBaseUrl: https://{example.com}
apiVersion: 1.0.0
apiDescription: "# Tribepad developer docs\n\nBefore you get started you'll need to contact our Support Team and request access to our APIs. They'll need this info from you:\n\n- Application name\n- Redirect URIs if not using the client credentials grant type\n- IP addresses you will be using so they can be whitelisted\n \n\n## Our Philosophy\n\nOur APIs follow a restful approach and we aim to make working with them as easy as possible. All requests and responses to or from our API will be in `JSON`.\n\n## We're here to help!\n\nAny questions about our APIs just pop an email over to [[email protected]](mailto:[email protected]) and we'll be happy to help you out.\n\n# Authentication\n\nTribepad APIs are secured using the oauth2 protocol. At the moment, we support the following grant types:\n\n- Authorization code\n- Authorization code with PKCE\n- Client credentials\n- Refresh token\n \n\n## Which Grant Type to Choose\n\nA grant type is a method of acquiring an access token. Deciding which grant type to implement depends on the type of integration you'll be building, and the experience you want for your users.\n\n<img src=\"https://files.readme.io/0d0e473-Authorization_Flow.drawio_1.png\" width=\"521\" height=\"493\">\n\nGrant Type Decision Tree\n\n> &lt;h3 &gt;🚧&lt;/h3&gt;&lt;p &gt;Heads up. Some API endpoints will only work using the Authorization access token as they require access to the under laying user. Don&amp;#x27;t worry though, these endpoints will be clearly labelled.&lt;/p&gt; \n \n\n## Authorization Code\n\nIf you’ve ever signed into a web app using your Facebook or Google account, then this grant type is sure to be familiar to you.\n\n## Step 1\n\nThe client will redirect the user to our application\_`(/v2/api/oauth/authorize)`\_with the following parameters in the query string.\n\n| Field | Value |\n| --- | --- |\n| client_id | your provided client ID |\n| redirect_uri | the client redirect URI. This parameter is optional, but if not sent the user will be redirected to a pre-registered redirect URI |\n| response_type | code |\n| scope | a space delimited list of requested scopes |\n| state | a\_[CSRF](https://en.wikipedia.org/wiki/Cross-site_request_forgery)\_token. This parameter is optional but highly recommended. You should store the value of the CSRF token in the user’s session to be validated when they return |\n\nIf the user approves the authorization request, they'll be redirected back to the specified redirect uri with the following parameters in the query string.\n\n| Field | Value |\n| --- | --- |\n| code | the authorization code |\n| state | the state parameter sent in the original request. You should compare this value with the value stored in the user’s session to ensure the authorization code obtained is in response to requests made by this client rather than another client application |\n\n#### Example Call\n\nRequestResponse\n\n```\n$_SESSION['state'] = $state = bin2hex(random_bytes(40)); //mysecretstate for example\n \n$query = http_build_query([\n 'client_id' => 'client-id',\n 'redirect_uri' => 'https://third-party-app.com/callback',\n 'response_type' => 'code',\n 'scope' => '',\n 'state' => $state,\n]);\n \nredirect('https://my-ats.com/v2/api/oauth/authorize?' . $query);\n\n```\n\n## Step 2\n\nIf the state parameter matches, then the consumer should issue a POST request to our application\_`(/v2/api/oauth/token)`\_to request an access token. The request should include the following fields.\n\n| Field | Value |\n| --- | --- |\n| grant_type | authorization_code |\n| client_id | your provided client ID |\n| client_secret | your provided client secret |\n| redirect_uri | the same redirect URI the user was redirect back to specified in step 1 |\n| code | the authorization code from the query string |\n\n#### Example Call\n\nRequestResponse\n\n```\n$state = $_SESSION['state'] ?? '';\n\nif (strlen($state) > 0 && $state !== $_GET['state']) {\n throw new InvalidArgumentException('Invalid state provided.');\n}\n\n$client = new \\GuzzleHttp\\Client();\n\n$response = $client->request('POST', 'https://my-ats.com/v2/api/oauth/token', [\n 'headers' => [\n 'accept' => 'application/json',\n ],\n 'form_params' => [\n 'grant_type' => 'authorization_code',\n 'client_id' => 'client-id',\n 'client_secret' => 'client-secret',\n 'redirect_uri' => 'https://third-party-app.com/callback',\n 'code' => $_GET['code'],\n ],\n]);\n\n$result = json_decode($response->getBody(), true);\n \nreturn $result['access_token'];\n\n```"
apiTitle: V2
endpoints: 30
sdkMethods: 30
schemas: 0
parameters: 72
originalCustomRequest:
lambda: true
customRequestSpecFilename: tribepad.com.yaml
difficultyScore: 48
231 changes: 231 additions & 0 deletions sdks/db/progress/tribepad-progress.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,231 @@
examples: {}
examples_2: {}
examples_3:
/v2/api/v1/options/business-region:
get:
'200':
application/json: {}
/v2/oauth/token:
post:
'200':
application/json: {}
ignoreObjectsWithNoProperties: true
ignorePotentialIncorrectType: true
operationIds:
/v2/api/v1/applications:
get: Applications_getList
/v2/api/v1/applications/{application_id}:
get: Applications_get
/v2/api/v1/applications/{application_id}/files:
get: Applications_listFiles
/v2/api/v1/applications/{application_id}/files/contract:
get: Applications_getApplicationContract
/v2/api/v1/applications/{application_id}/files/cv:
get: Applications_getCvFile
/v2/api/v1/applications/{application_id}/files/integrations:
get: Applications_getIntegrationFiles
/v2/api/v1/applications/{application_id}/files/onboarding:
get: Applications_getOnboardingFiles
/v2/api/v1/applications/{application_id}/files/profile:
get: Applications_getProfileFiles
/v2/api/v1/data-security/preference:
get: RegisterAndApply_dataSecurityPreferencesList
/v2/api/v1/job/options/business-unit:
get: Options_getBusinessUnit
/v2/api/v1/jobs/search:
get: Job_searchJobs
/v2/api/v1/jobs/{job_id}:
get: Job_getDetails
/v2/api/v1/options/all:
get: Options_listValues
/v2/api/v1/options/anonymous-policies:
get: Options_getAnonymousPolicies
/v2/api/v1/options/application/status:
get: Options_getApplicationStatus
/v2/api/v1/options/business-region:
get: Options_getBusinessRegion
/v2/api/v1/options/business-unit:
get: Options_getBusinessUnit
/v2/api/v1/options/country:
get: Options_getCountryList
/v2/api/v1/options/currency:
get: Options_getCurrencyOptions
/v2/api/v1/options/job/category:
get: Options_getJobCategories
/v2/api/v1/options/job/custom-fields:
get: Options_getJobCustomFields
/v2/api/v1/options/job/type:
get: Options_getJobTypes
/v2/api/v1/options/mapping:
get: Options_getMapping
/v2/api/v1/options/piwik:
get: Options_getJobPiwik
/v2/api/v1/options/region:
get: Options_getRegion
/v2/api/v1/options/reject-reason:
get: Options_getRejectReason
/v2/api/v1/options/salary-frequency:
get: Options_getSalaryFrequency
/v2/api/v1/options/withdraw-reason:
get: Options_getWithdrawReason
/v2/api/v1/register-and-apply:
post: RegisterAndApply_candidateApplicationCreate
/v2/oauth/token:
post: Authentication_requestToken
operationTags: {}
renameTags: {}
requestSchemaNames:
/v2/api/v1/register-and-apply:
post:
multipart/form-data: RegisterAndApplyCandidateApplicationCreateRequest
/v2/oauth/token:
post:
multipart/form-data: AuthenticationRequestTokenRequest
responseDescriptions: {}
responseSchemaNames:
/v2/api/v1/applications:
get:
'200':
application/json: ApplicationsGetListResponse
/v2/api/v1/applications/{application_id}:
get:
'200':
application/json: ApplicationsGetResponse
/v2/api/v1/applications/{application_id}/files:
get:
'200':
application/json: ApplicationsListFilesResponse
/v2/api/v1/applications/{application_id}/files/contract:
get:
'200':
application/json: ApplicationsGetApplicationContractResponse
/v2/api/v1/applications/{application_id}/files/cv:
get:
'200':
application/json: ApplicationsGetCvFileResponse
/v2/api/v1/applications/{application_id}/files/integrations:
get:
'200':
application/json: ApplicationsGetIntegrationFilesResponse
/v2/api/v1/applications/{application_id}/files/onboarding:
get:
'200':
application/json: ApplicationsGetOnboardingFilesResponse
/v2/api/v1/applications/{application_id}/files/profile:
get:
'200':
application/json: ApplicationsGetProfileFilesResponse
/v2/api/v1/data-security/preference:
get:
'200':
application/json: RegisterAndApplyDataSecurityPreferencesListResponse
/v2/api/v1/job/options/business-unit:
get:
'200':
text/plain: OptionsGetBusinessUnit200Response
/v2/api/v1/jobs/search:
get:
'200':
application/json: JobSearchJobsResponse
/v2/api/v1/jobs/{job_id}:
get:
'200':
text/plain: JobGetDetailsResponse
/v2/api/v1/options/all:
get:
'200':
application/json: OptionsListValuesResponse
/v2/api/v1/options/anonymous-policies:
get:
'200':
text/plain: OptionsGetAnonymousPoliciesResponse
/v2/api/v1/options/application/status:
get:
'200':
text/plain: OptionsGetApplicationStatusResponse
/v2/api/v1/options/business-region:
get:
'200':
application/json: OptionsGetBusinessRegionResponse
/v2/api/v1/options/business-unit:
get:
'200':
text/plain: OptionsGetBusinessUnitResponse
/v2/api/v1/options/country:
get:
'200':
text/plain: OptionsGetCountryListResponse
/v2/api/v1/options/currency:
get:
'200':
text/plain: OptionsGetCurrencyOptionsResponse
/v2/api/v1/options/job/category:
get:
'200':
text/plain: OptionsGetJobCategoriesResponse
/v2/api/v1/options/job/custom-fields:
get:
'200':
text/plain: OptionsGetJobCustomFieldsResponse
/v2/api/v1/options/job/type:
get:
'200':
text/plain: OptionsGetJobTypesResponse
/v2/api/v1/options/mapping:
get:
'200':
text/plain: OptionsGetMappingResponse
/v2/api/v1/options/piwik:
get:
'200':
text/plain: OptionsGetJobPiwikResponse
/v2/api/v1/options/region:
get:
'200':
text/plain: OptionsGetRegionResponse
/v2/api/v1/options/reject-reason:
get:
'200':
text/plain: OptionsGetRejectReasonResponse
/v2/api/v1/options/salary-frequency:
get:
'200':
text/plain: OptionsGetSalaryFrequencyResponse
/v2/api/v1/options/withdraw-reason:
get:
'200':
text/plain: OptionsGetWithdrawReasonResponse
/v2/api/v1/register-and-apply:
post:
'200':
application/json: RegisterAndApplyCandidateApplicationCreateResponse
/v2/oauth/token:
post:
'200':
application/json: AuthenticationRequestTokenResponse
securityParameters:
filter[category]:
query: false
filter[evergreen]:
query: false
filter[id]:
query: false
filter[job_type]:
query: false
filter[keywords]:
query: false
filter[location]:
query: false
filter[location_country]:
query: false
filter[location_range]:
query: false
filter[salary_range_from]:
query: false
filter[salary_range_to]:
query: false
sort:
query: false
validServerUrls:
https://{example.com}:
url: https://{example.com}
Loading

0 comments on commit 7639e4c

Please sign in to comment.