---
id: entity-hook-request-read
title: "Read an entity hook request"
description: "Reads an entity hook request: one firing of an entity hook action for a specific entity."
sidebar_label: "Read an entity hook request"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "get api-method"
info_path: docs/api/entity-hook
custom_edit_url: null
---

import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import ParamsDetails from "@theme/ParamsDetails";
import RequestSchema from "@theme/RequestSchema";
import StatusCodes from "@theme/StatusCodes";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";
import Heading from "@theme/Heading";

<Heading
  as={"h1"}
  className={"openapi__heading"}
  children={"Read an entity hook request"}
>
</Heading>

<MethodEndpoint
  method={"get"}
  path={"/entity_hook/{id}"}
  context={"endpoint"}
>
  
</MethodEndpoint>



Reads an entity hook request: one firing of an entity hook action for a specific entity.

The `id` is the one you receive in the hook notification (`notification.id`), and the URL matches its `callback_url`.


<Heading
  id={"request"}
  as={"h2"}
  className={"openapi-tabs__heading"}
  children={"Request"}
>
</Heading>

<ParamsDetails
  parameters={[{"in":"path","name":"id","schema":{"type":"string","format":"uuid"},"required":true,"description":"The ID of the entity hook request.","example":"550e8400-e29b-41d4-a716-446655440000"}]}
>
  
</ParamsDetails>

<RequestSchema
  title={"Body"}
  body={undefined}
>
  
</RequestSchema>

<StatusCodes
  id={undefined}
  label={undefined}
  responses={{"200":{"description":"The entity hook request was found.","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"The ID of the entity hook request.","example":"550e8400-e29b-41d4-a716-446655440000"},"entity_hook_action_id":{"type":"string","format":"uuid","description":"The entity hook action this request was fired from.","example":"1180cd02-1c36-4274-8e7a-4483b87e8f2e"},"entity_name":{"type":"string","description":"The type of entity the hook fired for.","example":"application"},"entity_id":{"type":"string","description":"The ID of the entity the hook fired for.","example":"1234"},"entity_action":{"type":"string","description":"The action that fired the hook.","example":"application:create"},"nrn":{"type":"string","description":"The NRN of the entity the hook fired for.","example":"organization=1:account=2:namespace=3:application=4"},"type":{"type":"string","enum":["hook"],"description":"The type of entity hook.","example":"hook"},"when":{"type":"string","enum":["before","after"],"description":"Whether the hook runs before or after nullplatform's internal logic.","example":"before"},"on":{"type":"string","enum":["create","update","delete"],"description":"The lifecycle event that triggered the hook.","example":"create"},"status":{"type":"string","enum":["pending","success","failed","recoverable_failure","cancelled"],"description":"The current status of the hook. It stays `pending` until you respond to it.","example":"pending"},"messages":{"type":"array","description":"Messages reported by the hook handler.","items":{"type":"object","required":["level","message"],"properties":{"level":{"type":"string","enum":["info","warning","error"],"description":"The severity of the message.","example":"info"},"message":{"type":"string","description":"A message shown to developers about the hook's execution.","example":"Repository provisioned"},"timestamp":{"type":"integer","description":"When the message was produced, as a Unix timestamp in milliseconds.","example":1740406453123}},"title":"entityHookMessage"}},"callback_body":{"type":"object","additionalProperties":true,"nullable":true,"description":"The fields the hook handler handed back to the entity, or `null` if it sent none.","example":{"repository_url":"https://github.com/my-org/my-service"}},"created_at":{"type":"string","format":"date-time","description":"When the hook request was created.","example":"2025-02-13T14:20:43.088Z"}},"title":"entityHookRequest"}}}},"4XX":{"description":"Client error responses due to invalid input or missing parameters.","content":{"application/json":{"schema":{"type":"object","required":["statusCode","error","message"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code representing the specific client error (e.g., 400, 401, 403, 404).","example":400},"code":{"type":"string","description":"A machine-readable error code that categorizes the server failure.","example":"bad_request"},"error":{"type":"string","description":"A brief, human-readable description of the error type (e.g., \"Bad Request\", \"Unauthorized\").","example":"Bad Request"},"message":{"type":"string","description":"Additional details about the error.","example":"The request was malformed or contained invalid parameters."}}}}}},"5XX":{"description":"Server error responses indicating an issue on the API side.","content":{"application/json":{"schema":{"type":"object","required":["statusCode","error","message"],"properties":{"statusCode":{"type":"integer","description":"HTTP status code representing the specific server error (e.g., 500, 502, 503).","example":500},"code":{"type":"string","description":"A machine-readable error code that categorizes the server failure.","example":"internal_server_error"},"error":{"type":"string","description":"A brief, human-readable description of the error type (e.g., \"Internal Server Error\", \"Service Unavailable\").","example":"Internal Server Error"},"message":{"type":"string","description":"Additional details about the error.","example":"An unexpected error occurred. Please try again later."}}}}}}}}
>
  
</StatusCodes>


      