Provides methods for moderating Steam Workshop items in apps that require approval before new content is published.
See
IPublishedFileService and
ISteamRemoteStorage for the primary Workshop interfaces.
NOTE: This is a Service interface, methods in this interface should be called with the
input_json parameter.
For more info on how to use the Steamworks Web API please see the
Web API Overview.
GetAllApprovalRequests
GET https://partner.steam-api.com/IPublishedFileModerationService/GetAllApprovalRequests/v1/
| Name | Type | Required | Description |
| key | string | ✔ | Steamworks Web API publisher authentication key. |
| appid | uint32 | ✔ | App the items belong to |
| revision | IPublishedFileModerationService#EPublishedFileRevision | | (Optional) Return requests for the specified revision. Defaults to k_EPublishedFileRevision_ApprovedSnapshot. |
| start | uint32 | | (Optional) The start index of the query. Defaults to 0. |
| count | uint32 | | (Optional) Number of requests to return. Defaults to 100, maximum 1000. |
Gets all the pending approval requests for the given app, oldest first. Requests are returned whether or not they have been claimed by a moderator.
Each request in the response contains:
| Name | Type | Description |
| publishedfileid | uint64 | Item awaiting approval |
| revision | IPublishedFileModerationService#EPublishedFileRevision | Revision the request is for |
| timestamp_request | uint32 | Unix timestamp when approval was requested |
| timestamp_claimed | uint32 | Unix timestamp when a moderator claimed the request, if claimed |
NOTE: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
ProcessApprovalRequest
POST https://partner.steam-api.com/IPublishedFileModerationService/ProcessApprovalRequest/v1/
| Name | Type | Required | Description |
| key | string | ✔ | Steamworks Web API publisher authentication key. |
| publishedfileid | uint64 | ✔ | Item to approve or reject |
| appid | uint32 | ✔ | App the item belongs to |
| revision | IPublishedFileModerationService#EPublishedFileRevision | ✔ | Must be k_EPublishedFileRevision_ApprovedSnapshot. |
| change_number | uint64 | ✔ | Change number of the content being approved or rejected. Must match the item's latest change number. |
| approved | bool | ✔ | True to approve the content, false to reject it. |
Approves or rejects the latest content of an item that is awaiting moderation. Approved content becomes visible to users and is delivered to subscribers.
The change number guards against approving content you have not reviewed: if the item has been updated since you fetched it, the call fails and you should review the new version. The current change number is returned as
revision_change_number by
IPublishedFileService#GetDetails.
NOTE: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
Enums
These are enums which are defined for use with IPublishedFileModerationService. Values not listed are for internal use only.
EPublishedFileRevision
Revisions of a published file's content.
| Name | Value | Description |
| k_EPublishedFileRevision_Default | 0 | |
| k_EPublishedFileRevision_Latest | 1 | The most recent content, whether or not it has been approved. |
| k_EPublishedFileRevision_ApprovedSnapshot | 2 | The most recently approved content. |
| k_EPublishedFileRevision_RejectedSnapshot | 4 | The most recently rejected content. |