---
id: action-specification-read
title: "Read an action specification"
description: "Read an action specification of a service or link."
sidebar_label: "Read an action specification"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "get api-method"
info_path: docs/api/nullplatform-api
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 action specification"}
>
</Heading>

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



Read an action specification of a service or link.

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

<ParamsDetails
  parameters={[{"schema":{"type":"string","format":"uuid"},"in":"query","name":"service_id","required":false,"description":"Service ID for dynamic additional properties"},{"schema":{"type":"string","format":"uuid"},"in":"query","name":"link_id","required":false,"description":"Link ID for dynamic additional properties"},{"schema":{"type":"integer"},"in":"query","name":"application_id","required":false,"description":"Application ID for dynamic additional properties"},{"schema":{"type":"integer"},"in":"query","name":"scope_id","required":false,"description":"Scope ID for dynamic additional properties"},{"schema":{"type":"string","pattern":"^(?:[a-zA-Z0-9_-]+:[a-zA-Z0-9_-]+(?:,[a-zA-Z0-9_-]+:[a-zA-Z0-9_-]+)*)?$"},"in":"query","name":"dimensions","required":false,"description":"Dimension key-value pairs used for dynamic additional properties"},{"schema":{"type":"string","format":"uuid"},"in":"query","name":"package_revision_id","required":false,"description":"Package revision to resolve the specification against. The response is the snapshot this revision pins instead of the live specification, and the request fails when the revision does not include the specification. Useful before an instance exists, for example to render a create form"},{"schema":{"title":"Id","type":"string","format":"uuid","description":"Unique identifier for the entity represented as a UUID"},"in":"path","name":"id","required":true}]}
>
  
</ParamsDetails>

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

<StatusCodes
  id={undefined}
  label={undefined}
  responses={{"2XX":{"description":"Object representing action specifications","content":{"application/json":{"schema":{"type":"object","properties":{"id":{"title":"Id","type":"string","format":"uuid","description":"Unique identifier for the entity represented as a UUID"},"name":{"type":"string","minLength":1,"not":{"enum":[null]},"description":"Name of the entity. Must be a non-empty string and not equal to null"},"slug":{"type":"string","minLength":1,"not":{"enum":[null]},"description":"Slug of the specification. Automatically generated from \"name\""},"created_at":{"type":"string","format":"date"},"updated_at":{"type":"string","format":"date"},"type":{"type":"string","enum":["create","update","delete","archive","unarchive","custom","diagnose"],"description":"Type of the action. Should be one of the specified values in the ActionType enumeration"},"parameters":{"title":"Attribute","type":"object","properties":{"schema":{"type":"object","default":{},"description":"Specification of the attribute schema. Must be a valid JSON Schema"},"values":{"type":"object","default":{},"description":"Values associated with the attribute. Must validate against provided schema"}},"required":["schema","values"],"propertyNames":{"enum":["schema","values"],"description":"Allowed property names"},"additionalProperties":false,"description":"Object representing an attribute with a schema and associated values"},"results":{"title":"Attribute","type":"object","properties":{"schema":{"type":"object","default":{},"description":"Specification of the attribute schema. Must be a valid JSON Schema"},"values":{"type":"object","default":{},"description":"Values associated with the attribute. Must validate against provided schema"}},"required":["schema","values"],"propertyNames":{"enum":["schema","values"],"description":"Allowed property names"},"additionalProperties":false,"description":"Object representing an attribute with a schema and associated values"},"service_specification_id":{"anyOf":[{"title":"Id","type":"string","format":"uuid","description":"Unique identifier for the entity represented as a UUID"},{"type":"null"},{"type":"string","pattern":"^(?:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12},\\s*)*[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"}],"description":"Unique identifier for the associated service specification"},"link_specification_id":{"anyOf":[{"title":"Id","type":"string","format":"uuid","description":"Unique identifier for the entity represented as a UUID"},{"type":"null"},{"type":"string","pattern":"^(?:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12},\\s*)*[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"}],"description":"Unique identifier for the associated link specification"},"retryable":{"type":"boolean","default":false,"description":"Indicates whether the action can be retried if the instance is in a failed state."},"parallelize":{"type":"boolean","default":false,"description":"Indicates whether multiple instances of this action can be executed in parallel. Only applicable to custom type actions."},"annotations":{"title":"Annotation","type":"object","properties":{"runs_over":{"type":"string","enum":["deployment","scope","instance"],"description":"Entity type over which the action applies"},"show_on":{"type":"array","items":{"type":"string","enum":["scope","performance","manage","deployment"],"description":"Place in nullplatform where the action will be able to be triggered"},"uniqueItems":true}},"additionalProperties":false,"description":"Object representing annotations with key-value pairs","default":{}},"external":{"title":"External","type":"object","nullable":true,"properties":{"action":{"type":"string","minLength":1,"description":"Action to send to the agent for resolving external data"},"output_schema":{"type":"object","description":"JSON Schema to validate the agent response against"}},"additionalProperties":false,"required":["action","output_schema"],"description":"Configuration for resolving external context data via the nullplatform agent"},"enabled_when":{"type":"string","default":"","description":"Condition that must be met for the action to run"},"icon":{"type":"string","pattern":"^([a-zA-Z0-9_-]+:[a-zA-Z0-9_-]+)?$","description":"Icon associated with the action. Format: 'icon-set:icon-variation'. Empty string to clear."},"enabled":{"type":"boolean","description":"Indicates if the action is enabled depending on enabled_when"},"external_resolution":{"type":"object","description":"Status of the external context resolution when the action specification was read","properties":{"status":{"type":"string","description":"Resolution outcome. One of: success, no_channel, agent_error, timeout, auth_error, service_unavailable, invalid_response"},"error":{"type":"string","description":"Human-readable error detail when status is not success"},"notification_id":{"type":"string","description":"ID of the notification sent to the agent. Present on error statuses to facilitate debugging"}},"required":["status"]}},"description":"Object representing action specifications","additionalProperties":false,"title":"ActionSpecification","example":{"name":"my-link-specification","type":"custom","parameters":{"schema":{"type":"object","properties":{"my_string_property":{"type":"string"},"my_number_property":{"type":"number","default":0}},"required":["my_string_property"]},"values":{}},"results":{"schema":{"type":"object","properties":{"my_string_property":{"type":"string"},"my_number_property":{"type":"number","default":0}},"required":["my_string_property"]},"values":{}},"service_specification_id":"134544a6-a089-43ba-9d52-5b6e6e4fa8d1","link_specification_id":"f3e8be90-0952-4506-bd54-c4e75a5a4393","retryable":true,"parallelize":true,"enabled_when":".service.dimensions.environment == \"development\"","annotations":{"runs_over":"scope","show_on":["scope","performance"]}}}}}},"4XX":{"description":"Format for representing errors during API interactions","content":{"application/json":{"schema":{"title":"Error","type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code indicating the error"},"code":{"type":"string","description":"Unique error code for reference and categorization"},"error":{"type":"string","description":"Short, human-readable error type or category"},"message":{"type":"string","description":"Detailed error message providing additional context"}},"description":"Format for representing errors during API interactions","required":["statusCode","error","message"]}}}},"5XX":{"description":"Format for representing errors during API interactions","content":{"application/json":{"schema":{"title":"Error","type":"object","properties":{"statusCode":{"type":"number","description":"HTTP status code indicating the error"},"code":{"type":"string","description":"Unique error code for reference and categorization"},"error":{"type":"string","description":"Short, human-readable error type or category"},"message":{"type":"string","description":"Detailed error message providing additional context"}},"description":"Format for representing errors during API interactions","required":["statusCode","error","message"]}}}}}}
>
  
</StatusCodes>


      