REST Resource: projects.locations.jobs

Ressource : Job

Description du job d'opérations de stockage par lot.

Représentation JSON
{
  "name": string,
  "description": string,
  "loggingConfig": {
    object (LoggingConfig)
  },
  "createTime": string,
  "scheduleTime": string,
  "completeTime": string,
  "counters": {
    object (Counters)
  },
  "errorSummaries": [
    {
      object (ErrorSummary)
    }
  ],
  "state": enum (State),

  // Union field source can be only one of the following:
  "bucketList": {
    object (BucketList)
  }
  // End of list of possible types for union field source.

  // Union field transformation can be only one of the following:
  "putObjectHold": {
    object (PutObjectHold)
  },
  "deleteObject": {
    object (DeleteObject)
  },
  "putMetadata": {
    object (PutMetadata)
  },
  "rewriteObject": {
    object (RewriteObject)
  }
  // End of list of possible types for union field transformation.
}
Champs
name

string

Identifiant. Nom de ressource du job.

Format : projects/{project}/locations/global/jobs/{jobId}.

Exemple : projects/123456/locations/global/jobs/job01.

jobId est unique dans un projet donné pour un emplacement donné. Si jobId n'est pas spécifié, un identifiant généré par le serveur est attribué.

description

string

Facultatif. Description du job fournie par l'utilisateur.

Longueur maximale : 1 024 octets lorsqu'il est encodé en Unicode.

loggingConfig

object (LoggingConfig)

Facultatif. Configuration de la journalisation.

createTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le job a été créé.

Utilise la norme RFC 3339, où le résultat généré se sert toujours du format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

scheduleTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le job a été planifié.

Utilise la norme RFC 3339, où le résultat généré se sert toujours du format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

completeTime

string (Timestamp format)

Uniquement en sortie. Heure à laquelle le job a été terminé.

Utilise la norme RFC 3339, où le résultat généré se sert toujours du format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" ou "2014-10-02T15:01:23+05:30".

counters

object (Counters)

Uniquement en sortie. Informations sur la progression du job.

errorSummaries[]

object (ErrorSummary)

Uniquement en sortie. Résume les erreurs rencontrées avec des exemples d'entrées de journaux d'erreurs.

state

enum (State)

Uniquement en sortie. État du job.

Champ d'union source. Spécifie les objets à transformer. source ne peut être qu'un des éléments suivants :
bucketList

object (BucketList)

Spécifie une liste de buckets et de leurs objets à transformer.

Champ d'union transformation. Opération à effectuer sur les objets. transformation ne peut être qu'un des éléments suivants :
putObjectHold

object (PutObjectHold)

Modifie l'état d'obligation de conservation d'un objet.

deleteObject

object (DeleteObject)

Supprimer des objets.

putMetadata

object (PutMetadata)

Met à jour les métadonnées de l'objet. Permet de mettre à jour les métadonnées à clés fixes et personnalisées. Exemple : Cache-Control, Content-Disposition, Content-Encoding, Content-Language, Content-Type, Custom-Time, et object retention.

rewriteObject

object (RewriteObject)

Réécrit l'objet et met à jour les métadonnées telles que la clé KMS.

BucketList

Fournit la liste des buckets et de leurs objets à transformer.

Représentation JSON
{
  "buckets": [
    {
      object (Bucket)
    }
  ]
}
Fields
buckets[]

object (Bucket)

Obligatoire. Liste des buckets et de leurs objets à transformer. Vous ne pouvez spécifier qu'un seul bucket par job. Si plusieurs buckets sont spécifiés, une erreur se produit.

Bucket

Décrit la configuration d'un seul bucket et de ses objets à transformer.

Représentation JSON
{
  "bucket": string,

  // Union field object_configuration can be only one of the following:
  "prefixList": {
    object (PrefixList)
  },
  "manifest": {
    object (Manifest)
  }
  // End of list of possible types for union field object_configuration.
}
Fields
bucket

string

Obligatoire. Nom de bucket pour les objets à transformer.

Champ d'union object_configuration. Spécifie les objets à transformer. object_configuration ne peut être qu'un des éléments suivants :
prefixList

object (PrefixList)

Spécifie les objets correspondant à un ensemble de préfixes.

manifest

object (Manifest)

Spécifie les objets dans un fichier manifeste.

PrefixList

Décrit les préfixes des objets à transformer.

Représentation JSON
{
  "includedObjectPrefixes": [
    string
  ]
}
Champs
includedObjectPrefixes[]

string

Facultatif. Spécifiez un ou plusieurs préfixes d'objet. Exemple :

  • Pour ne faire correspondre qu'un objet, utilisez un seul préfixe, prefix1.

  • Pour faire correspondre plusieurs objets, utilisez des préfixes séparés par une virgule, prefix1,prefix2.

  • Pour faire correspondre tous les objets, utilisez un préfixe vide, ''.

Fichier manifeste

Décrit la liste des objets à transformer.

Représentation JSON
{
  "manifestLocation": string
}
Fields
manifestLocation

string

Obligatoire. Spécifiez l'emplacement du fichier manifeste, par exemple gs://bucket_name/path/object_name.csv. Le fichier manifeste est un fichier CSV importé dans Cloud Storage. Il contient un ou plusieurs objets que vous souhaitez traiter. Chaque ligne du fichier manifeste doit inclure le bucket et le nom (name) de l'objet. Vous pouvez éventuellement spécifier la generation de l'objet. Si vous ne spécifiez pas la generation, la version actuelle de l'objet est utilisée.

Le fichier doit inclure une ligne d'en-tête au format suivant : bucket,name,generation. La colonne generation est facultative. Par exemple :

bucket,name,generation
bucket_1,object_1,generation_1
bucket_1,object_2,generation_2
bucket_1,object_3,generation_3

Remarque : Le fichier manifeste ne doit spécifier que les objets du bucket fourni au job. Les lignes faisant référence à des objets dans d'autres buckets sont ignorées.

PutObjectHold

Décrit les options permettant de modifier l'obligation de conservation d'un objet.

Représentation JSON
{
  "temporaryHold": enum (HoldStatus),
  "eventBasedHold": enum (HoldStatus)
}
Fields
temporaryHold

enum (HoldStatus)

Obligatoire. Met à jour l'état d'obligation de préservation temporaire d'un objet. Lorsqu'une préservation temporaire est appliquée à un objet, celui-ci ne peut pas être supprimé ni remplacé.

eventBasedHold

enum (HoldStatus)

Obligatoire. Met à jour l'état des obligations de conservation basées sur des événements d'un objet. Lorsqu'une obligation de conservation basée sur des événements est définie pour un objet, celui-ci ne peut pas être supprimé ni remplacé. Réinitialise l'ancienneté de l'objet dans le bucket pour les besoins de la durée de conservation.

HoldStatus

Décrit l'état de l'obligation de conservation.

Enums
HOLD_STATUS_UNSPECIFIED Valeur par défaut. L'état d'obligation de conservation de l'objet n'est pas modifié.
SET Place l'obligation de conservation.
UNSET Lève l'obligation de conservation.

DeleteObject

Décrit les options permettant de supprimer un objet.

Représentation JSON
{
  "permanentObjectDeletionEnabled": boolean
}
Fields
permanentObjectDeletionEnabled

boolean

Obligatoire. Contrôle le comportement de suppression lorsque la gestion des versions est activée pour le bucket de l'objet. Si la valeur est "true", les objets actifs et obsolètes seront définitivement supprimés. Sinon, les objets actifs dans les buckets avec gestion des versions deviendront obsolètes, et les objets déjà obsolètes seront ignorés. Ce paramètre n'a aucune incidence sur la fonctionnalité de suppression réversible. Tous les objets supprimés par ce service peuvent être restaurés pendant la durée de conservation suivant la suppression réversible, si elle est activée. Si cette option est activée et que le fichier manifeste ne spécifie pas la génération d'un objet, un appel GetObjectMetadata est effectué pour déterminer la génération de l'objet actif.

PutMetadata

Décrit les options permettant de mettre à jour les métadonnées des objets.

Représentation JSON
{
  "customMetadata": {
    string: string,
    ...
  },
  "contentDisposition": string,
  "contentEncoding": string,
  "contentLanguage": string,
  "contentType": string,
  "cacheControl": string,
  "customTime": string
  "objectRetention": {
    object (ObjectRetention)
  }
}
Champs
customMetadata

map (key: string, value: string)

Facultatif. Met à jour les métadonnées personnalisées de l'objet. Cette opération ajoute ou définit des paires clé-valeur de métadonnées personnalisées individuelles. Les clés spécifiées avec des valeurs vides verront leurs valeurs effacées. Les clés de métadonnées personnalisées existantes non incluses dans la requête restent inchangées. Pour en savoir plus, consultez Métadonnées personnalisées.

Objet contenant une liste de paires "key": "value". Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" }.

contentDisposition

string

Facultatif. Met à jour des métadonnées Content-Disposition fixes de l'objet. Les valeurs non définies dans la requête sont ignorées. Pour effacer les métadonnées, définissez une valeur vide. Pour en savoir plus, consultez Content-Disposition.

contentEncoding

string

Facultatif. Met à jour les métadonnées Content-Encoding fixes de l'objet. Les valeurs non définies dans la requête sont ignorées. Pour effacer les métadonnées, définissez une valeur vide. Pour en savoir plus, consultez Content-Encoding.

contentLanguage

string

Facultatif. Met à jour les métadonnées de langue du contenu fixes de l'objet. Les valeurs des métadonnées doivent utiliser les codes de langue ISO 639-1. Les valeurs de métadonnées ne doivent pas dépasser 100 caractères. Les valeurs non définies dans la requête sont ignorées. Pour effacer les métadonnées, définissez une valeur vide. Pour en savoir plus, consultez Content-Language.

contentType

string

Facultatif. Met à jour des métadonnées Content-Type fixes de l'objet. Les valeurs non définies dans la requête sont ignorées. Pour effacer les métadonnées, définissez une valeur vide. Pour en savoir plus, consultez Content-Type.

cacheControl

string

Facultatif. Met à jour les métadonnées Cache-Control fixes de l'objet. Les valeurs non définies dans la requête sont ignorées. Pour effacer les métadonnées, définissez une valeur vide. De plus, la valeur de Custom-Time ne peut pas diminuer. Pour en savoir plus, consultez Cache-Control.

customTime

string

Facultatif. Met à jour les métadonnées de date personnalisée fixes de l'objet. Les valeurs non définies dans la requête sont ignorées. Pour effacer les métadonnées, définissez une valeur vide. Pour en savoir plus, consultez Custom-Time.

objectRetention

object (ObjectRetention)

Facultatif. Met à jour la configuration de conservation d'un objet. Les valeurs non définies sont ignorées. Pour effacer la conservation d'un objet, retentionMode doit être à l'état UNLOCKED et retainUntilTime doit être défini sur une chaîne vide. Il n'est pas possible d'effacer la conservation ni de réduire la valeur retainUntilTime d'un objet dont le mode de conservation est défini sur LOCKED. Pour en savoir plus, consultez retainUntilTime.

ObjectRetention

Décrit la configuration de conservation de l'objet.

Représentation JSON
{
  "retainUntilTime": string,
  "retentionMode": enum (RetentionMode)
}
Fields
retainUntilTime

string

Obligatoire. Délai d'expiration de la conservation de l'objet, pendant lequel l'objet est protégé contre la suppression ou l'écrasement. La date et l'heure doivent être spécifiées au format RFC 3339, par exemple YYYY-MM-DD'T'HH:MM:SS.SS'Z'. Pour effacer la conservation d'un objet, retentionMode doit être défini sur UNLOCKED et retainUntilTime doit être défini sur une chaîne vide.

retentionMode

enum (RetentionMode)

Obligatoire. Mode de conservation.

RetentionMode

Mode de conservation.

Enums
RETENTION_MODE_UNSPECIFIED Le mode de conservation n'est pas spécifié.
LOCKED Lorsque le mode de conservation est défini sur LOCKED, la valeur retainUntilTime ne peut pas être supprimée ni réduite.
UNLOCKED Lorsque le mode de conservation est défini sur UNLOCKED, la valeur retainUntilTime peut être supprimée ou modifiée.

RewriteObject

Décrit les options de réécriture d'objet.

Représentation JSON
{
  "kmsKey": string
}
Fields
kmsKey

string

Obligatoire. Nom de ressource de la clé Cloud KMS utilisée pour chiffrer l'objet. La clé Cloud KMS doit se trouver au même emplacement que l'objet. Pour en savoir plus, consultez Chiffrer un objet avec une clé Cloud KMS.

Format : projects/{project}/locations/{locationid}/keyRings/{keyring}/cryptoKeys/{key}

Exemple : projects/123456/locations/us-central1/keyRings/my-keyring/cryptoKeys/my-key. L'objet est réécrit et défini avec la clé KMS spécifiée.

LoggingConfig

Spécifie le comportement de Cloud Logging.

Représentation JSON
{
  "logActions": [
    enum (LoggableAction)
  ],
  "logActionStates": [
    enum (LoggableActionState)
  ]
}
Fields
logActions[]

enum (LoggableAction)

Obligatoire. Spécifie les actions à consigner.

logActionStates[]

enum (LoggableActionState)

Obligatoire. États dans lesquels les actions sont consignées. Si ce champ est vide, aucun journal n'est généré.

LoggableAction

Types d'actions pouvant être consignées.

Enums
LOGGABLE_ACTION_UNSPECIFIED Valeur incorrecte utilisée pour éviter l'autorisation d'une valeur par défaut.
TRANSFORM Action de transformation correspondante dans ce job.

LoggableActionState

Filtre des états d'action enregistrables.

Enums
LOGGABLE_ACTION_STATE_UNSPECIFIED Valeur incorrecte utilisée pour éviter l'autorisation d'une valeur par défaut.
SUCCEEDED L'opération LoggableAction a abouti. Les actions SUCCEEDED sont consignées en tant que [INFO][google.logging.type.LogSeverity.INFO].
FAILED LoggableAction s'est arrêtée avec une erreur. Les actions FAILED sont consignées en tant que [ERROR][google.logging.type.LogSeverity.ERROR].

Compteurs

Décrit la progression du job.

Représentation JSON
{
  "totalObjectCount": string,
  "succeededObjectCount": string,
  "failedObjectCount": string
}
Champs
totalObjectCount

string (int64 format)

Uniquement en sortie. Nombre d'objets listés.

succeededObjectCount

string (int64 format)

Uniquement en sortie. Nombre d'objets terminés.

failedObjectCount

string (int64 format)

Uniquement en sortie. Nombre d'objets ayant échoué.

ErrorSummary

Récapitulatif des erreurs par code d'erreur, ainsi que le nombre d'entrées de journaux d'erreur accompagné d'exemples.

Représentation JSON
{
  "errorCode": enum (Code),
  "errorCount": string,
  "errorLogEntries": [
    {
      object (ErrorLogEntry)
    }
  ]
}
Fields
errorCode

enum (Code)

Obligatoire. Code d'erreur canonique.

errorCount

string (int64 format)

Obligatoire. Nombre d'erreurs rencontrées par errorCode.

errorLogEntries[]

object (ErrorLogEntry)

Obligatoire. Exemples de journaux d'erreurs.

Code

Définit les codes d'erreur utilisés pour gérer les réponses de l'API gRPC.

Lorsque plusieurs codes d'erreur s'appliquent, renvoyez le code d'erreur le plus spécifique. Par exemple, préférez OUT_OF_RANGE à FAILED_PRECONDITION si les deux codes s'appliquent. De même, préférez NOT_FOUND ou ALREADY_EXISTS à FAILED_PRECONDITION.

Enums
OK

Renvoyé lorsque l'opération se termine correctement.

HTTP Mapping: 200 OK

CANCELLED

L'opération a été annulée, généralement par l'appelant.

Mise en correspondance HTTP : 499 Le client a fermé la requête

UNKNOWN

Erreur inconnue. Par exemple, cette erreur peut s'afficher lorsqu'une valeur Status reçue d'un autre espace d'adressage appartient à un espace d'erreur inconnu dans cet espace d'adressage. De plus, les erreurs des API qui ne renvoient pas suffisamment d'informations sur les erreurs peuvent être converties dans cette erreur.

Mise en correspondance HTTP : 500 Erreur de serveur interne

INVALID_ARGUMENT

Le client a spécifié un argument non valide. Notez que cette erreur diffère de FAILED_PRECONDITION. INVALID_ARGUMENT indique les arguments problématiques quel que soit l'état du système (par exemple, un nom de fichier incorrect).

HTTP Mapping: 400 Bad Request

DEADLINE_EXCEEDED

Le délai a expiré avant que l'opération puisse se terminer. Pour les opérations qui modifient l'état du système, cette erreur peut être affichée même si l'opération s'est terminée avec succès. Par exemple, une réponse réussie d'un serveur aurait pu être retardée suffisamment longtemps pour que le délai expire.

HTTP Mapping: 504 Gateway Timeout

NOT_FOUND

Une entité demandée (fichier ou répertoire, par exemple) est introuvable.

Remarque pour les développeurs de serveurs : NOT_FOUND peut être utilisé si une requête est refusée pour toute une classe d'utilisateurs, telle que le déploiement progressif d'une fonctionnalité ou une liste d'autorisation non documentée. Si une requête est refusée pour certains utilisateurs appartenant à une classe d'utilisateurs, telle que le contrôle des accès basé sur l'utilisateur, PERMISSION_DENIED doit être utilisé.

HTTP Mapping: 404 Not Found

ALREADY_EXISTS

L'entité qu'un client a tenté de créer (par exemple, un fichier ou un répertoire) existe déjà.

HTTP Mapping: 409 Conflict

PERMISSION_DENIED

L'appelant n'a pas l'autorisation d'exécuter l'opération spécifiée. PERMISSION_DENIED ne doit pas être utilisé pour les rejets causés par l'épuisement d'une ressource (utilisez plutôt RESOURCE_EXHAUSTED pour ces erreurs). PERMISSION_DENIED ne doit pas être utilisé si l'appelant ne peut pas être identifié (utilisez plutôt UNAUTHENTICATED pour ces erreurs). Ce code d'erreur n'implique pas que la requête soit valide ni que l'entité demandée existe ou qu'elle réponde à d'autres prérequis.

Mise en correspondance HTTP : 403 Accès interdit

UNAUTHENTICATED

La requête ne dispose pas d'identifiants d'authentification valides pour l'opération.

Mise en correspondance HTTP : 401 Accès non autorisé

RESOURCE_EXHAUSTED

Certaines ressources ont été épuisées ; par exemple, un quota par utilisateur a été atteint ou le système de fichiers dans son intégralité manque d'espace.

Mise en correspondance HTTP : 429 Requêtes trop nombreuses

FAILED_PRECONDITION

L'opération a été rejetée car le système n'est pas dans un état requis pour exécuter l'opération. Par exemple, le répertoire à supprimer n'est pas vide, une opération rmdir est appliquée à un emplacement qui n'est pas un répertoire, etc.

Les développeurs de services peuvent suivre les instructions ci-après pour choisir entre FAILED_PRECONDITION, ABORTED et UNAVAILABLE :

  • Utilisez UNAVAILABLE si le client peut retenter uniquement l'appel qui a échoué.
  • Utilisez ABORTED si le client doit effectuer une nouvelle tentative à un niveau supérieur (par exemple, lorsqu'un test-and-set spécifié par le client échoue, indiquant que le client doit redémarrer une séquence lecture-modification-écriture).
  • Utilisez FAILED_PRECONDITION si le client ne doit pas effectuer de nouvelle tentative tant que l'état du système n'a pas été explicitement corrigé. Par exemple, si une opération "rmdir" échoue parce que le répertoire n'est pas vide, FAILED_PRECONDITION doit être renvoyé puisque le client ne doit pas faire de nouvelle tentative tant que les fichiers n'ont pas été supprimés du répertoire.

HTTP Mapping: 400 Bad Request

ABORTED

L'opération a été annulée, généralement en raison d'un problème de simultanéité, tel qu'un échec de vérification du séquenceur ou un abandon de transaction.

Consultez les instructions ci-dessus pour choisir entre FAILED_PRECONDITION, ABORTED et UNAVAILABLE.

HTTP Mapping: 409 Conflict

OUT_OF_RANGE

L'opération a été tentée au-delà de la plage valide. Par exemple, recherche ou lecture après la fin de vie.

Contrairement à INVALID_ARGUMENT, cette erreur indique un problème pouvant être résolu si l'état du système change. Par exemple, un système de fichiers 32 bits générera INVALID_ARGUMENT s'il est invité à lire avec un décalage qui n'est pas compris dans la plage [0,2 ^ 32-1], mais générera OUT_OF_RANGE s'il est invité à lire avec un décalage qui dépasse la taille du fichier actuel.

Il existe des cas où FAILED_PRECONDITION et OUT_OF_RANGE se chevauchent. Nous vous recommandons d'utiliser OUT_OF_RANGE (l'erreur la plus spécifique) lorsque celle-ci s'applique afin que les appelants qui itèrent dans un espace puissent facilement rechercher une erreur OUT_OF_RANGE pour détecter le moment où ils ont terminé.

HTTP Mapping: 400 Bad Request

UNIMPLEMENTED

L'opération n'est pas implémentée ou n'est pas prise en charge/activée dans ce service.

Mise en correspondance HTTP : 501 Non implémenté

INTERNAL

Erreurs internes. Cela signifie que certains invariants attendus par le système sous-jacent n'ont pas été respectés. Ce code d'erreur est réservé aux erreurs graves.

Mise en correspondance HTTP : 500 Erreur de serveur interne

UNAVAILABLE

Le service est actuellement indisponible. Il s'agit probablement d'une condition temporaire qui peut être corrigée en réessayant après avoir laissé passer un intervalle entre les tentatives. Notez que relancer des opérations non idempotentes peut présenter des risques.

Consultez les instructions ci-dessus pour choisir entre FAILED_PRECONDITION, ABORTED et UNAVAILABLE.

Mise en correspondance HTTP : 503 Service non disponible

DATA_LOSS

Perte ou corruption de données irrécupérable.

HTTP Mapping: 500 Internal Server Error

ErrorLogEntry

Entrée décrivant une erreur qui s'est produite.

Représentation JSON
{
  "objectUri": string,
  "errorDetails": [
    string
  ]
}
Fields
objectUri

string

Obligatoire. Uniquement en sortie. URL de l'objet. Par exemple : gs://my_bucket/object.txt

errorDetails[]

string

Facultatif. Uniquement en sortie. Un maximum de cinq entrées de journal d'erreurs est enregistré par code d'erreur pour chaque job.

State

Décrit l'état d'un job.

Enums
STATE_UNSPECIFIED Valeur par défaut. Cette valeur n'est pas utilisée.
RUNNING En cours.
SUCCEEDED Opération réussie.
CANCELED Annulée par l'utilisateur.
FAILED Arrêtée en raison d'un échec irrécupérable.

Méthodes

cancel

Annule un job par lot dans un projet et un emplacement donnés.

create

Crée un job par lot dans un projet et un emplacement donnés.

delete

Supprime un job par lot dans un projet et un emplacement donnés.

get

Récupère un job par lot dans un projet et un emplacement donnés.

list

Liste tous les jobs par lot dans un projet et un emplacement donnés.