---
title: "Get the result of an asset creation or update."
method: GET
path: "/assets/v1/operations/{operationId}"
tags: ["Assets"]
---

# Get the result of an asset creation or update.

`GET /assets/v1/operations/{operationId}`

Get the result of an asset creation or update using the returned Operation ID. Requires **Read** for the API key permission and **asset:read** for OAuth 2.0 apps.

## Path parameters

- `operationId` string, required

## Response `200`

Operation result retrieved successfully.

- OCV1AssetsOperation — This resource represents a long-running operation that is the result of a network API call.
  - `path` string — The server-assigned resource path. The default format is `operations/{operation_id}`.
  - `done` boolean — If `false`, the operation is still in progress. If `true`, the operation is completed.
  - `error` OCV1AssetsStatus — The logical error model explaining the error status.
    - `code` integer — The HTTP status code.
    - `message` string — The error message.
  - `response` Asset — Represents an asset.
    - `assetType` string, enum — The asset type. Required for [Create Asset](#POST-v1-assets).
    - `assetId` integer — The unique identifier of the asset. Required for [Update Asset](#PATCH-v1-assets-_asset_).
    - `creationContext` CreationContext — The context of creation that is not part of the asset content, such as metadata and creator information. Required for [Create Asset](#POST-v1-assets).
      - `assetPrivacy` 'default' | 'restricted' | 'openUse' — The privacy setting of the asset. Requested asset privacy is only applicable to asset types that allow privacy override. For more details see [Asset Privacy](/projects/assets/privacy.md).
      - `creator` Creator — Represents a creator.
        - `userId` integer — The User ID the creator. Required if the asset is individual-user-owned.
        - `groupId` integer — The Group ID. Required if the asset is group-owned.
      - `expectedPrice` integer — Expected asset upload fee in Robux. When the actual price is more than expected, the operation fails with a 400 error.
    - `description` string — The description of the asset. Limit to 1000 characters. Required for [Create Asset](#POST-v1-assets).
    - `displayName` string — Display name of the asset. Required for [Create Asset](#POST-v1-assets).
    - `path` string — The returned resource path of the asset. Format: `assets/{assetId}`. Example: `assets/2205400862`.
    - `revisionId` string — Revision ID of the asset. Equivalent to `versionNumber`. Every change of the asset automatically commits a new version. The format is an integer string. Example: `1`.
    - `revisionCreateTime` string, date-time — The creation timestamp of the current revision.
    - `moderationResult` ModerationResult — The moderation result of the asset.
      - `moderationState` string — The moderation state of the asset. Can be `Reviewing`, `Rejected`, or `Approved`.
    - `icon` string — The resource path for the icon.
    - `previews` Preview[] — A list of previews, each with an asset path and alt text. Previews must be **Image** assets.
      - `asset` string — The preview asset path.
      - `altText` string — Alt text for the preview asset.
    - `state` 'Unspecified' | 'Active' | 'Archived' — Whether the asset is active or archived. Unspecified isn't used.
    - `socialLink` SocialLink — A social media link for the asset. Maximum of three per asset. Object name can be any of: <ul><li>`facebookSocialLink`</li><li>`twitterSocialLink`</li><li>`youtubeSocialLink`</li><li>`twitchSocialLink`</li><li>`discordSocialLink`</li><li>`githubSocialLink`</li><li>`robloxSocialLink`</li><li>`guildedSocialLink`</li><li>`devForumSocialLink`</li></ul>For syntax, see the sample request under [Update Asset](#PATCH-v1-assets-_assetId_).
      - `title` string — An optional title for the social media link. Not used on the Creator Hub.
      - `uri` string — The URI for the social media link. Must match the expected format for the type of link. For example, the title for a `twitchSocialLink` object must be of the format `https://twitch.tv/your-channel`.

## Other responses

- `400` — Invalid argument. Failed to parse the request or the file.
- `401` — The API key is not valid for this operation / You don't have the authorization.
- `500` — Server internal error / Unknown error.

---

[API](https://skmtc.net/roblox/apis/roblox-api.md) · [All operations](https://skmtc.net/roblox/apis/roblox-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/roblox/roblox-api/versions/756260310407/schema)
