API குறிப்பு

Packages

நிறுவப்பட்ட செயலிகளை பட்டியலிடவும், APK மெட்டாடேட்டாவைப் பார்க்கவும் மற்றும் டேக்களை நிர்வகிக்கவும்.

வகை வரையறைகள்

bash
type Package {
  id: ID!                    # package name e.g. "com.example.app"
  name: String!              # display name
  type: String!              # "user" | "system"
  version: String!           # "versionName (versionCode)"
  path: String!              # APK path
  size: Int!                 # bytes
  certs: [PackageCert!]!
  installedAt: String!       # ISO 8601
  updatedAt: String!
  tags: [Tag!]!
}

type PackageCert {
  issuer: String!
  subject: String!
  serialNumber: String!
  validFrom: String!
  validTo: String!
}

type PackageStatus {
  id: ID!                 # package name
  installed: Boolean!
  updatedAt: String       # ISO 8601, null when not installed
}

type PackageInstallPending {
  packageName: String!
  updatedAt: String!
  isNew: Boolean!
}

செயல்பாடுகள்

query

packages

நிறுவப்பட்ட தொகுப்புகளைத் தேடவும். அனைத்தையும் பட்டியலிட query-யை வெற்றாக விடவும்.

bash
query GetPackages($offset: Int!, $limit: Int!, $query: String!, $sortBy: FileSortBy!) {
  packages(offset: $offset, limit: $limit, query: $query, sortBy: $sortBy) {
    id name type version path size
    certs { issuer subject serialNumber validFrom validTo }
    installedAt updatedAt
    tags { id name }
  }
}
query

packageStatuses

தொகுப்பு பெயர்களின் பட்டியலுக்கான install state மற்றும் updatedAt timestamp-ஐத் தேடவும்.

bash
query GetPackageStatuses($ids: [ID!]!) {
  packageStatuses(ids: $ids) { id installed updatedAt }
}
query

packageCount

ஒரு query-யுடன் பொருந்தும் தொகுப்புகளை எண்ணவும்.

bash
query GetPackageCount($query: String!) {
  packageCount(query: $query)
}
mutation

installPackage

absolute கோப்பு பாதை மூலம் ஒரு APK-ஐ நிறுவி (அல்லது புதுப்பிக்கவும்). தொகுப்பு பெயர், கடைசி புதுப்பிப்பு நேரம், மற்றும் தொகுப்பு புதிதாக நிறுவப்பட்டதா என்பதை திருப்பி அனுப்புகிறது.

bash
mutation InstallPackage($path: String!) {
  installPackage(path: $path) { packageName updatedAt isNew }
}
mutation

uninstallPackages

ஒவ்வொரு தொகுப்பு ID-க்கும் கணினி நிறுவல் நீக்க வரியைத் தொடங்கவும். பயனர் சாதனத்தில் உறுதிப்படுத்த வேண்டும்.

bash
mutation UninstallPackages($ids: [ID!]!) {
  uninstallPackages(ids: $ids)
}