Image diff status

Warning: The API documentation here is for Clanforge. If you’re using Multiplay Hosting, refer to the Multiplay Hosting API documentation.

Get the status of the image difference analysis with the provided <diffid>. You also must include the correct <accountserviceid>.

https://api.multiplay.co.uk/cfp/v1/imagediff/<diffid>/status

For example,

curl -X GET \
    -H "Authorization: Basic <CLANFORGE_CREDENTIALS>" \
    https://api.multiplay.co.uk/cfp/v1/imagediff/1234/status?accountserviceid=5678&diff_info=1

METHOD

GET

Request parameters

VARIABLEDESCRIPTIONOPTIONAL
accountserviceidThe <accountserviceid> parameter accepts an account service ID (ASID) associated with the specified resource. The credentials in the request header must have access to the ASID to perform the request.No
diffidThe <diffid> parameter accepts a difference analysis ID for which to return the status.No
diff_infoThe <diff_info> parameter accepts a boolean value.

If specified with a value of 1, the response will include additional information about <diffid>, including:

  • The game image
  • The game
  • The specific machine
  • If excluded or specified with a value of 0, no additional information about the difference analysis will be included in the response.

Yes

Response fields

FieldTypeDescriptionOptional
diffidintegerID of the diff jobNo
jobcreatedintegerUnix timestamp of when the job was createdNo
joberrorstringMessage indicating the job errorYes
jobetaintegerUnix timestamp representing the time at which the job is expected to completeYes
jobfailedintegerNumeric flag indicating whether the job has failedNo
jobprogressintegerPercentage between 0 and 100 indicating job progressNo
jobstartstringUnix timestamp of when the job was startedYes
jobstateidintegerJob state ID indicating the state of the jobYes
jobstatenamestringName of the job stateNo
jobupdatedintegerUnix timestamp of when the job was last updatedNo
gameobjectObject containing information about game used if diff_info=1No
machineobjectObject containing information about build box machine used if diff_info=1No
imageobjectObject containing information about image used if diff_info=1No
addedobjectMap of file paths to file objects being addedNo
modifiedobjectMap of file paths to file objects being modifiedNo
removedobjectMap of file paths to file objects being removedNo

Game Object

FieldTypeDescriptionOptional
gameidintegerID of the game used by this diffNo
namestringName of the game used by this diffNo

Machine Object

FieldTypeDescriptionOptional
machineidintegerID of the buildbox this diff was run onNo
namestringName of the buildbox this diff was run onNo

Image Object

FieldTypeDescriptionOptional
imageidintegerID of the image used by this diffNo
namestringName of the image used by this diffNo
gameversionidintegerID of the game version used by this diffNo

File Object

FieldTypeDescriptionOptional
filesizestringSize of file in bytesNo
crc32sumintegerA crc32 checksum of the fileNo

Example request

curl --location --request GET 'https://api.multiplay.co.uk/cfp/v1/imagediff/<diffid>/status?diff_info=1' \
--header 'Authorization: Basic YOUR_AUTH_CREDENTIALS'

Example response

{
    "imageversionid" : <imageversionid>,
    "jobcreated" : <jobcreated>,
    "joberror" : <joberror>,
    "jobeta" : <jobeta>,
    "jobfailed" : <jobfailed>,
    "jobprogress" : <jobprogress>,
    "jobstart" : <jobstart>,
    "jobstateid" : <jobstateid>,
    "jobstatename" : <jobstatename>,
    "jobupdated" : <jobupdated>,
    "added": {
        <filename>: {
            "size": <file>,
            "crc": <crc32sum>
        },
        ...
    },
    "modified": {
        <filepath>: {
            "size": <filesize>,
            "crc": <crc32sum>
        },
        ...
    },
    "removed": {
        <filepath>: {
            "size": <filesize>,
            "crc": <crc32sum>
        },
        ...
    },
    "image" : {
        "imageid" : <imageid>,
        "gameversionid" : <gameversionid>,
        "name" : <image_name>
    },
    "game" : {
        "gameid" : <gameid>,
        "name" : <game_name>
    },
    "machine : {
        "machineid" : <machineid>,
        "name" : <machine_name>
    }
}