Get validated application update feed file

Summary

  • Source repository: jef-systems/jef-desktop-store-backend

  • Source SHA: e232be4906186f04feaa615c6305547117289c31

  • Source run id: 30188645608

  • Module: Desktop-store

  • Lambda function: jef-desktop-store-get-application-update-feed-file

  • HTTP method: GET

  • Invocation mode: sync

  • Package mode: no-package

  • API category: Desktop-store Complex Sync No Package GET APIs

  • API path: /desktop-store/complex-sync-no-packages/jef-desktop-store-updates/{application\_name}/{file\_name}

  • Endpoint URL: https://api.jefoffice.com/desktop-store/complex-sync-no-packages/jef-desktop-store-updates/{application\_name}/{file\_name}

  • Documentation scope: lambda-complex-sync-no-packages

Synchronous Lambda Complex Rule

This API is documented as a synchronous Lambda complex no-package API. API Gateway waits for the Lambda result and returns the final Lambda response.

Description

Serves only a release whose DynamoDB registration, update manifest, and immutable S3 metadata agree.

Payload Example

{
  "application_name": "jef-accounting",
  "file_name": "latest.yml"
}

Payload Schema

{
  "root": {
    "type": "M",
    "required": true,
    "attributes": {
      "application_name": {
        "type": "S",
        "required": true,
        "regex": "^jef-[a-z0-9]+(-[a-z0-9]+)*$"
      },
      "file_name": {
        "type": "S",
        "required": true,
        "regex": "^(latest[.]yml|update-manifest[.]json|[A-Za-z0-9 ._-]{1,180}[.]exe|[A-Za-z0-9 ._-]{1,180}[.]exe[.]blockmap)$"
      },
      "application_domain_id": {
        "type": "S",
        "required": false,
        "regex": "^[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}$"
      }
    }
  }
}

Response Schema

{
  "root": {
    "type": "M",
    "required": true,
    "attributes": {
      "is_accepted": {
        "type": "BOOL",
        "required": true
      },
      "is_valid": {
        "type": "BOOL",
        "required": true
      },
      "can_continue": {
        "type": "BOOL",
        "required": true
      },
      "message_type": {
        "type": "S",
        "required": true
      },
      "message": {
        "type": "S",
        "required": true
      },
      "next_action": {
        "type": "S",
        "required": true
      },
      "operation": {
        "type": "S",
        "required": true
      },
      "status_code": {
        "type": "N",
        "required": true,
        "integer": true
      },
      "failure_code": {
        "type": "S",
        "required": false
      },
      "failure_reason": {
        "type": "S",
        "required": false
      },
      "application_found": {
        "type": "BOOL",
        "required": false
      },
      "application_active": {
        "type": "BOOL",
        "required": false
      },
      "application_domain_found": {
        "type": "BOOL",
        "required": false
      },
      "application_domain_active": {
        "type": "BOOL",
        "required": false
      },
      "file_found": {
        "type": "BOOL",
        "required": false
      },
      "application_domain_id": {
        "type": "S",
        "required": false
      },
      "application_domain_name": {
        "type": "S",
        "required": false
      },
      "application_id": {
        "type": "S",
        "required": false
      },
      "application_name": {
        "type": "S",
        "required": false
      },
      "version": {
        "type": "S",
        "required": false
      },
      "file_name": {
        "type": "S",
        "required": false
      },
      "file_kind": {
        "type": "S",
        "required": false
      },
      "s3_bucket": {
        "type": "S",
        "required": false
      },
      "s3_key": {
        "type": "S",
        "required": false
      },
      "s3_uri": {
        "type": "S",
        "required": false
      },
      "size_bytes": {
        "type": "N",
        "required": false,
        "integer": true
      },
      "last_modified": {
        "type": "S",
        "required": false
      },
      "etag": {
        "type": "S",
        "required": false
      },
      "source": {
        "type": "S",
        "required": false
      },
      "expires_in": {
        "type": "N",
        "required": false,
        "integer": true
      },
      "redirect_url": {
        "type": "S",
        "required": false
      },
      "release_status": {
        "type": "S",
        "required": false
      },
      "manifest_contract_version": {
        "type": "S",
        "required": false
      },
      "source_sha": {
        "type": "S",
        "required": false
      },
      "release_date": {
        "type": "S",
        "required": false
      }
    }
  }
}

CMD curl

curl.exe -X GET "https://api.jefoffice.com/desktop-store/complex-sync-no-packages/jef-desktop-store-updates/{application_name}/{file_name}"

PowerShell curl

curl.exe -X GET "https://api.jefoffice.com/desktop-store/complex-sync-no-packages/jef-desktop-store-updates/{application_name}/{file_name}"