Skip to main content

LinkState

idstringrequired

A globally unique identifier for the link.

Example: 60d7c6c5-3984-42b9-a3c1-ae8a47a9bf55
namestringrequired

The logical name of the link in the blueprint. This is a combination of the logical names of the 2 resources that are linked. For example, if a link is between a VPC and a subnet, the link name would be "vpc::subnet".

Example: vpc::subnet
instanceIdstringrequired

The ID of the blueprint instance that the link belongs to.

Example: a97cf86f-2a5e-4614-984e-da480a0daa7a
statusintegerrequired

The high level status of the link.

The following high level status codes are supported:

  • Unknown (0) - The status used when we can't determine an accurate status for a link.
  • Creating (1) - The status used when an initial link deployment is currently in progress.
  • Created (2) - The status sed when a link has been deployed successfully.
  • Create Failed (3) - The status used when the first creation of a link has failed.
  • Create Rolling Back (4) - The status used when another change in the same blueprint has failed and the current link that was successfully created is being rolled back.
  • Create Rollback Failed (5) - The status used when another change in the same blueprint has failed and the current link that was successfully created could not be rolled back.
  • Create Rollback Complete (6) - The status used when another change in the same blueprint has failed and the current link that was successfully created has been rolled back.
  • Destroying (7) - The status used when a link is in the process of being destroyed.
  • Destroyed (8) - The status used when a link has been destroyed.
  • Destroy Failed (9) - The status used when the destruction of a link fails.
  • Destroy Rolling Back (10) - The status used when another change in the same blueprint has failed and the current link that was successfully destroyed is being rolled back.
  • Destroy Rollback Failed (11) - The status used when another change in the same blueprint has failed and the current link that was successfully destroyed could not be rolled back.
  • Destroy Rollback Complete (12) - The status used when another change in the same blueprint has failed and the current link that was successfully destroyed has been rolled back.
  • Updating (13) - The status used when a link is being updated.
  • Updated (14) - The status used when a link has been updated successfully.
  • Update Failed (15) - The status used when the update of a link fails.
  • Update Rolling Back (16) - The status used when another change in the same blueprint has failed and the current link that was successfully updated is being rolled back.
  • Update Rollback Failed (17) - The status used when another change in the same blueprint has failed and the current link that was successfully updated could not be rolled back.
  • Update Rollback Complete (18) - The status used when another change in the same blueprint has failed and the current link that was successfully updated has been rolled back.

Possible values: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]

Example: 2
preciseStatusintegerrequired

The precise status of the link.

The following precise status codes are supported:

  • Unknown (0) - The precise status used when we can't determine an accurate status for a link.
  • Updating Resource A (1) - The precise status used when the configuration for a link is being applied to resource A in the link.
  • Resource A Updated (2) - The precise status used when the configuration for a link has been applied to resource A in the link.
  • Resource A Update Failed (3) - The precise status used when the configuration for a link has failed to be applied to resource A in the link.
  • Resource A Update Rolling Back (4) - The precise status used when another change in the same blueprint has failed and the current link for which resource A was successfully updated is being rolled back.
  • Resource A Update Rollback Failed (5) - The precise status used when another change in the same blueprint has failed and the current link for which resource A was successfully updated could not be rolled back.
  • Resource A Update Rollback Complete (6) - The precise status used when another change in the same blueprint has failed and the current link for which resource A was successfully updated has been rolled back.
  • Updating Resource B (7) - The precise status used when the configuration for a link is being applied to resource B in the link.
  • Resource B Updated (8) - The precise status used when the configuration for a link has been applied to resource B in the link.
  • Resource B Update Failed (9) - The precise status used when the configuration for a link has failed to be applied to resource B in the link.
  • Resource B Update Rolling Back (10) - The precise status used when another change in the same blueprint has failed and the current link for which resource B was successfully updated is being rolled back.
  • Resource B Update Rollback Failed (11) - The precise status used when another change in the same blueprint has failed and the current link for which resource B was successfully updated could not be rolled back.
  • Resource B Update Rollback Complete (12) - The precise status used when another change in the same blueprint has failed and the current link for which resource B was successfully updated has been rolled back.
  • Updating Intermediary Resources (13) - The precise status used when intermediary resources are being created, updated or destroyed. This status is a high level of indication of progress, the status of each intermediary resource should be checked to determine the extract state of each intermediary resource in the link.
  • Intermediary Resources Updated (14) - The precise status used when all intermediary resources have been successfully updated, created or destroyed.
  • Intermediary Resource Update Failed (15) - The precise status used when an intermediary resource has failed to be updated, created or destroyed.
  • Intermediary Resource Update Rolling Back (16) - The precise status used when another change in the same blueprint has failed and the current link for which intermediary resources were successfully updated is being rolled back.
  • Intermediary Resource Update Rollback Failed (17) - The precise status used when another change in the same blueprint has failed and the current link for which intermediary resources were successfully updated failed to be rolled back.
  • Intermediary Resource UpdateRollback Complete (18) - The precise status used when another change in the same blueprint has failed and the current link for which intermediary resources were succesfully updated has been rolled back.

Possible values: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]

Example: 2
lastStatusUpdateTimestampintegernullable

The unix timestamp when the link deployment status was last updated.

Example: 1678901234
lastDeployedTimestampintegerrequired

The unix timestamp when the link was last deployed.

Example: 1678901234
lastDeployAttemptTimestampintegerrequired

The unix timestamp when an attempt was last made to deploy the link.

Example: 1678901234
intermediaryResourceStates object[]required

A list of intermediary resources that are created by a provider's implementation of a link.

  • Array [
  • idstringrequired

    The ID of the intermediary resource.

    Example: 60d7c6c5-3984-42b9-a3c1-ae8a47a9bf55
    instanceIdstringrequired

    The ID of the blueprint instance that the intermediary resource belongs to.

    Example: a97cf86f-2a5e-4614-984e-da480a0daa7a
    statusintegerrequired

    The high level status of the intermediary resource.

    See the status codes for the ResourceState schema definition for what each status means.

    Possible values: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

    Example: 2
    preciseStatusintegerrequired

    The precise status of the intermediary resource.

    See the precise status codes for the ResourceState schema definition for what each status means.

    Possible values: [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22]

    Example: 3
    lastDeployedTimestampintegerrequired

    The unix timestamp when the intermediary resource was last deployed.

    Example: 1678901234
    lastDeployAttemptTimestampintegerrequired

    The unix timestamp when the last attempt was made to deploy the intermediary resource.

    Example: 1678901234
    resourceSpecData objectrequired

    The resolved resource spec for the intermediary resource that is generated by a provider's implementation of a link based on link data derived from the two primary resources that are linked together and rules in the link implementation.

    failureReasonsstring[]nullable

    The reasons why the intermediary resource deployment has failed, if applicable.

  • ]
  • data objectrequired

    An object that holds the "raw" link data that is a projection of the data that is stored across the 2 resources that are linked together along with optional intermediary resources.

    failureReasonsstring[]required

    The reasons why the link deployment has failed, if applicable.

    durations objectnullable

    Duration information for the latest deployment of the link.

    resourceAUpdate objectnullable

    Duration information for the update of resource A in the link. This will only be present if the link has reached resource A updated status.

    totalDurationnumbernullable

    The duration in milliseconds for the link component change to reach the final status.

    Example: 20000
    attemptDurationsnumber[]

    The durations in milliseconds for each attempt to deploy the link component. Attempt durations are in order as per the "attempt" field in a status update event.

    resourceBUpdate objectnullable

    Duration information for the update of resource B in the link. This will only be present if the link has reached resource B updated status.

    totalDurationnumbernullable

    The duration in milliseconds for the link component change to reach the final status.

    Example: 20000
    attemptDurationsnumber[]

    The durations in milliseconds for each attempt to deploy the link component. Attempt durations are in order as per the "attempt" field in a status update event.

    intermediaryResources objectnullable

    Duration information for the update, creation or removal of intermediary resources in the link. This will only be present if the link has reached intermediary resources updated status.

    totalDurationnumbernullable

    The duration in milliseconds for the link component change to reach the final status.

    Example: 20000
    attemptDurationsnumber[]

    The durations in milliseconds for each attempt to deploy the link component. Attempt durations are in order as per the "attempt" field in a status update event.

    LinkState
    {
    "id": "60d7c6c5-3984-42b9-a3c1-ae8a47a9bf55",
    "name": "vpc::subnet",
    "instanceId": "a97cf86f-2a5e-4614-984e-da480a0daa7a",
    "status": 2,
    "preciseStatus": 2,
    "lastStatusUpdateTimestamp": 1678901234,
    "lastDeployedTimestamp": 1678901234,
    "lastDeployAttemptTimestamp": 1678901234,
    "intermediaryResourceStates": [
    {
    "id": "60d7c6c5-3984-42b9-a3c1-ae8a47a9bf55",
    "instanceId": "a97cf86f-2a5e-4614-984e-da480a0daa7a",
    "status": 2,
    "preciseStatus": 3,
    "lastDeployedTimestamp": 1678901234,
    "lastDeployAttemptTimestamp": 1678901234,
    "resourceSpecData": {
    "functionName": "my-lambda-function",
    "handler": "index.handler",
    "runtime": "nodejs20.x",
    "arn": "arn:aws:lambda:us-east-1:123456789012:function:my-lambda-function"
    },
    "failureReasons": [
    "The intermediary resource could not be created because the IAM role does not exist."
    ]
    }
    ],
    "data": {},
    "failureReasons": [
    "The link could not be created because the IAM role does not exist."
    ],
    "durations": {
    "resourceAUpdate": {
    "totalDuration": 20000,
    "attemptDurations": [
    20000
    ]
    },
    "resourceBUpdate": {
    "totalDuration": 20000,
    "attemptDurations": [
    20000
    ]
    },
    "intermediaryResources": {
    "totalDuration": 20000,
    "attemptDurations": [
    20000
    ]
    }
    }
    }