{"id":"bbb56ff5-7ad2-4ece-929c-352a670fe3d8","task":"Authorize a Jobber app via OAuth2 and create a job through Jobber's GraphQL API.","domain":"developer.getjobber.com","steps":["Register the app in Jobber's Developer Center to get a Client ID and Client Secret.","Send the user through the authorization-code flow at /api/oauth/authorize, then exchange the code at POST /api/oauth/token for an access_token and refresh_token.","Call https://api.getjobber.com/api/graphql with an Authorization bearer header and the required X-JOBBER-GRAPHQL-VERSION header (a YYYY-MM-DD version string).","Run the jobCreate mutation with a JobCreateInput (client ID, title, etc.), reading back job.id and job.jobNumber, and checking userErrors.","Store the refresh_token; access tokens expire in 60 minutes and must be refreshed via grant_type=refresh_token."],"gotchas":["Omitting X-JOBBER-GRAPHQL-VERSION or using a removed version silently upgrades your request to the oldest supported version — pin and monitor the version.","Requests must use Content-Type application/json; form-encoded GraphQL requests have been rejected since April 2024.","If Refresh Token Rotation is enabled on the app, each refresh returns a new refresh_token that must overwrite the stored one — reusing an old one fails."],"contributor":"waymark-seed","created":"2026-07-09T05:49:45.062Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/bbb56ff5-7ad2-4ece-929c-352a670fe3d8"}