Fieldguide webhooks API
Endpoints used to interact with Fieldguide Webhooks
Endpoints used to interact with Fieldguide Webhooks
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/fieldguide-webhooks-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Fieldguide Webhooks API
description: An API for interacting with the Fieldguide platform
version: v1
contact: {}
servers:
- url: https://api.fieldguide.io
description: Fieldguide API
security:
- bearer: []
tags:
- name: Webhooks
description: Endpoints used to interact with Fieldguide Webhooks
paths:
/v1/webhooks:
get:
operationId: list_webhooks_v1
parameters:
- name: page
required: false
in: query
schema:
type:
- number
- 'null'
default: 1
- name: per_page
required: false
in: query
schema:
type:
- number
- 'null'
default: 50
minimum: 1
maximum: 200
- name: sort_order
required: false
in: query
description: Sort order for paginated results. Use `desc` to reverse the default ascending order.
schema:
type: string
default: asc
enum:
- asc
- desc
responses:
'200':
description: The Webhooks accessible by the user
content:
application/json:
schema:
allOf:
- properties:
data:
type: array
items:
$ref: '#/components/schemas/WebhookRead'
- properties:
_links:
type: object
required:
- self
- first
- last
properties:
self:
type: object
description: The URL for the current page being fetched
properties:
href:
type: string
example: https://api.fieldguide.io/v1/example?page=2&per_page=50
first:
type: object
description: The URL for the first page of the set
properties:
href:
type: string
example: https://api.fieldguide.io/v1/example?page=1&per_page=50
last:
type: object
description: The URL for the last page of the set
properties:
href:
type: string
example: https://api.fieldguide.io/v1/example?page=10&per_page=50
previous:
type: object
description: The URL for the previous page in the set, if there is one
properties:
href:
type: string
example: https://api.fieldguide.io/v1/example?page=1&per_page=50
next:
type: object
description: The URL for the next page in the set, if there is one
properties:
href:
type: string
example: https://api.fieldguide.io/v1/example?page=3&per_page=50
'401':
description: Unauthorized
'403':
description: Forbidden (requires scopes `webhooks:read`)
'429':
description: Too many requests
summary: List available Fieldguide Webhook subscriptions for the current User
tags:
- Webhooks
x-required-scopes:
- webhooks:read
post:
callbacks:
onObjectAction:
'{$request.body#/url}':
post:
parameters:
- name: X-FG-Signature
in: header
description: HMAC-SHA256 hex-encoded signature hash of the request body with the webhook {$response.body#/secret}. Your server implementation should hash + encode the request body and compare the resulting signature with this header value to verify the webhook was sent from Fieldguide. See [webhooks.fyi](https://webhooks.fyi/security/hmac) for additional context.
required: true
schema:
type: string
- name: X-FG-Attempt
in: header
description: Denotes if this is the original notification (`1`) or a retry (`2+`)
required: true
schema:
type: number
requestBody:
required: true
description: Webhook event payload
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookPayload'
security: []
responses:
'200':
description: Your server implementation should return a 2xx status code if the webhook was received successfully
description: 'Note: Webhooks on a development domain (mockable.io, ngrok-free.app, on.aws, onrender.com, run.app, webhook.site) are automatically deleted when delivery returns a 404, 410, or 501 response. They are also deleted after retries are exhausted on a persistent connection error (timeout, DNS failure, connection refused, or a recognized persistent TLS certificate failure).'
operationId: create_webhook_v1
parameters: []
requestBody:
required: true
description: Input for Webhook to be created
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookCreate'
responses:
'201':
description: The newly created Webhook
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/WebhookReadWithSecret'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden (requires scopes `webhooks:write`)
'429':
description: Too many requests
summary: Create a new Webhook
tags:
- Webhooks
x-required-scopes:
- webhooks:write
/v1/webhooks/{uuid}:
delete:
operationId: delete_webhook_v1
parameters:
- name: uuid
required: true
in: path
description: The UUID of the Webhook to delete
schema:
format: uuid
type: string
responses:
'204':
description: No content. The Webhook was deleted successfully.
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden (requires scopes `webhooks:write`)
'404':
description: Resource not found
'429':
description: Too many requests
summary: Delete the specified Webhook
tags:
- Webhooks
x-required-scopes:
- webhooks:write
patch:
operationId: update_webhook_v1
parameters:
- name: uuid
required: true
in: path
description: The UUID of the Webhook to update
schema:
format: uuid
type: string
requestBody:
required: true
description: Input for Webhook to be updated
content:
application/json:
schema:
$ref: '#/components/schemas/WebhookUpdate'
responses:
'200':
description: The updated Webhook
content:
application/json:
schema:
properties:
data:
$ref: '#/components/schemas/WebhookRead'
'400':
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden (requires scopes `webhooks:write`)
'404':
description: Resource not found
'429':
description: Too many requests
summary: Update the specified Webhook
tags:
- Webhooks
x-required-scopes:
- webhooks:write
components:
schemas:
WebhookRead:
type: object
properties:
uuid:
type: string
format: uuid
example: d952a7a8-3f88-46d0-b4de-ec690d97105c
description: The unique ID for the webhook, referenced as `webhook_uuid` in webhook requests
description:
type: string
description: A human-readable description of the webhook's use
example: Firm internal systems
scopes:
type:
- array
- 'null'
description: One or more resources to fire webhooks for. Available resources include comments, companies, engagements, requests, users. If `null`, webhooks will fire for all resources.
example:
- requests
- users
items:
$ref: '#/components/schemas/WebhookResource'
url:
type: string
format: uri
example: https://company-xyz.com/my-webhook-endpoint
created_at:
format: date-time
type: string
example: '2023-01-01T12:30:00.000Z'
required:
- uuid
- description
- scopes
- url
- created_at
WebhookReadWithSecret:
type: object
properties:
uuid:
type: string
format: uuid
example: d952a7a8-3f88-46d0-b4de-ec690d97105c
description: The unique ID for the webhook, referenced as `webhook_uuid` in webhook requests
description:
type: string
description: A human-readable description of the webhook's use
example: Firm internal systems
scopes:
type:
- array
- 'null'
description: One or more resources to fire webhooks for. Available resources include comments, companies, engagements, requests, users. If `null`, webhooks will fire for all resources.
example:
- requests
- users
items:
$ref: '#/components/schemas/WebhookResource'
url:
type: string
format: uri
example: https://company-xyz.com/my-webhook-endpoint
created_at:
format: date-time
type: string
example: '2023-01-01T12:30:00.000Z'
secret:
type: string
example: trN7inAfsWlDy8VeqVB3
description: A 20-character secret used for HMAC signing
required:
- uuid
- description
- scopes
- url
- created_at
- secret
WebhookObjectType:
type: string
enum:
- comments
- companies
- engagements
- requests
- users
WebhookUpdate:
type: object
properties:
description:
type: string
example: Company XYZ Integration
scopes:
type:
- array
- 'null'
description: One or more resources to fire webhooks for. Available resources include comments, companies, engagements, requests, users. If `null`, webhooks will fire for all resources.
example:
- requests
- users
items:
$ref: '#/components/schemas/WebhookResource'
WebhookAction:
type: string
enum:
- created
- updated
- deleted
WebhookCreate:
type: object
properties:
description:
type: string
example: Company XYZ Integration
scopes:
type:
- array
- 'null'
description: One or more resources to fire webhooks for. Available resources include comments, companies, engagements, requests, users. If `null`, webhooks will fire for all resources.
example:
- requests
- users
items:
$ref: '#/components/schemas/WebhookResource'
url:
type: string
format: uri
example: https://company-xyz.com/my-webhook-endpoint
required:
- description
- url
WebhookPayload:
type: object
properties:
uuid:
type: string
format: uuid
description: The unique ID for the event
example: c7e4afd8-1b56-4621-83ad-86ec735fc23d
timestamp:
format: date-time
type: string
description: When the event occurred
example: '2023-01-01T12:30:00.000Z'
action:
allOf:
- $ref: '#/components/schemas/WebhookAction'
object_type:
allOf:
- $ref: '#/components/schemas/WebhookObjectType'
object_uuid:
type: string
format: uuid
description: The UUID of the specific object for the event
example: 80d6783f-575d-4433-9dd8-25b81b2bad85
metadata:
type: array
description: Array of metadata key-value pairs
example:
- key: company_uuid
value: d952a7a8-3f88-46d0-b4de-ec690d97105c
- key: engagement_uuid
value: 066a9ebd-07cf-458e-b506-dd66fab9cbcc
- key: webhook_uuid
value: 5c8d4284-84f0-427c-be10-e350f7093a48
- key: updated_property
value: status
items:
type: object
properties:
key:
type: string
value:
type: string
required:
- uuid
- timestamp
- action
- object_type
- object_uuid
- metadata
WebhookResource:
type: string
enum:
- comments
- companies
- engagements
- requests
- users
description: One or more resources to fire webhooks for. Available resources include comments, companies, engagements, requests, users. If `null`, webhooks will fire for all resources.
securitySchemes:
bearer:
scheme: bearer
bearerFormat: JWT
type: http
externalDocs:
description: Fieldguide API Documentation
url: https://fieldguide.io/developers