{
  "opencollection": "1.0.0",
  "info": {
    "name": "Asana Allocations Webhooks API",
    "version": "1.0"
  },
  "request": {
    "auth": {
      "type": "bearer",
      "token": "{{bearerToken}}"
    }
  },
  "items": [
    {
      "info": {
        "name": "Webhooks",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Asana Get multiple webhooks",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://app.asana.com/api/1.0/webhooks",
            "params": [
              {
                "name": "opt_pretty",
                "value": "true",
                "type": "query",
                "description": "Provides “pretty” output.\nProvides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."
              },
              {
                "name": "limit",
                "value": "50",
                "type": "query",
                "description": "Results per page.\nThe number of objects to return per page. The value must be between 1 and 100."
              },
              {
                "name": "offset",
                "value": "eyJ0eXAiOJiKV1iQLCJhbGciOiJIUzI1NiJ9",
                "type": "query",
                "description": "Offset token.\nAn offset to the next page returned by the API. A pagination request will return an offset token, which can be used as an input parameter to the next request. If an offset is not passed in, the API will return the first page of results.\n*Note: You can only pass in an offset that was returned to you via a previously paginated request.*"
              },
              {
                "name": "workspace",
                "value": "1331",
                "type": "query",
                "description": "The workspace to query for webhooks in."
              },
              {
                "name": "resource",
                "value": "51648",
                "type": "query",
                "description": "Only return webhooks for the given resource."
              },
              {
                "name": "opt_fields",
                "value": "active,created_at,delivery_retry_count,failure_deletion_timestamp,filters,filters.action,filters.fields,filters.resource_subtype,last_failure_at,last_failure_content,last_success_at,next_attempt_after,offset,path,resource,resource.name,target,uri",
                "type": "query",
                "description": "This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include."
              }
            ]
          },
          "docs": "Get the compact representation of all webhooks your app has registered for the authenticated user in the given workspace."
        },
        {
          "info": {
            "name": "Asana Establish a webhook",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "https://app.asana.com/api/1.0/webhooks",
            "params": [
              {
                "name": "opt_pretty",
                "value": "true",
                "type": "query",
                "description": "Provides “pretty” output.\nProvides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."
              },
              {
                "name": "opt_fields",
                "value": "active,created_at,delivery_retry_count,failure_deletion_timestamp,filters,filters.action,filters.fields,filters.resource_subtype,last_failure_at,last_failure_content,last_success_at,next_attempt_after,resource,resource.name,target",
                "type": "query",
                "description": "This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Establishing a webhook is a two-part process. First, a simple HTTP POST\nrequest initiates the creation similar to creating any other resource.\n\nNext, in the middle of this request comes the confirmation handshake.\nWhen a webhook is created, we will send a test POST to the target with an\n`X-Hook-Secret` header. The target must respond with a `200 OK` or `204\nNo Content` and a matching `X-Hook-Secret` header to confirm that this\nwebhook subscription is indeed expected. We strongly recommend storin"
        },
        {
          "info": {
            "name": "Asana Get a webhook",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "https://app.asana.com/api/1.0/webhooks/:webhook_gid",
            "params": [
              {
                "name": "webhook_gid",
                "value": "12345",
                "type": "path",
                "description": "Globally unique identifier for the webhook."
              },
              {
                "name": "opt_pretty",
                "value": "true",
                "type": "query",
                "description": "Provides “pretty” output.\nProvides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."
              },
              {
                "name": "opt_fields",
                "value": "active,created_at,delivery_retry_count,failure_deletion_timestamp,filters,filters.action,filters.fields,filters.resource_subtype,last_failure_at,last_failure_content,last_success_at,next_attempt_after,resource,resource.name,target",
                "type": "query",
                "description": "This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include."
              }
            ]
          },
          "docs": "Returns the full record for the given webhook."
        },
        {
          "info": {
            "name": "Asana Update a webhook",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "https://app.asana.com/api/1.0/webhooks/:webhook_gid",
            "params": [
              {
                "name": "webhook_gid",
                "value": "12345",
                "type": "path",
                "description": "Globally unique identifier for the webhook."
              },
              {
                "name": "opt_pretty",
                "value": "true",
                "type": "query",
                "description": "Provides “pretty” output.\nProvides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."
              },
              {
                "name": "opt_fields",
                "value": "active,created_at,delivery_retry_count,failure_deletion_timestamp,filters,filters.action,filters.fields,filters.resource_subtype,last_failure_at,last_failure_content,last_success_at,next_attempt_after,resource,resource.name,target",
                "type": "query",
                "description": "This endpoint returns a compact resource, which excludes some properties by default. To include those optional properties, set this query parameter to a comma-separated list of the properties you wish to include."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "An existing webhook's filters can be updated by making a PUT request on the URL for that webhook. Note that the webhook's previous `filters` array will be completely overwritten by the `filters` sent in the PUT request."
        },
        {
          "info": {
            "name": "Asana Delete a webhook",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "https://app.asana.com/api/1.0/webhooks/:webhook_gid",
            "params": [
              {
                "name": "webhook_gid",
                "value": "12345",
                "type": "path",
                "description": "Globally unique identifier for the webhook."
              },
              {
                "name": "opt_pretty",
                "value": "true",
                "type": "query",
                "description": "Provides “pretty” output.\nProvides the response in a “pretty” format. In the case of JSON this means doing proper line breaking and indentation to make it readable. This will take extra time and increase the response size so it is advisable only to use this during debugging."
              }
            ]
          },
          "docs": "This method *permanently* removes a webhook. Note that it may be possible to receive a request that was already in flight after deleting the webhook, but no further requests will be issued."
        }
      ]
    }
  ],
  "bundled": true
}