{
  "methodConfig": [
    {
      "name": [
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "CreateTopic"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "UpdateTopic"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "DeleteTopic"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "DetachSubscription"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "SetIamPolicy"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "TestIamPermissions"
        }
      ],
      "timeout": "60s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 1.3,
        "retryableStatusCodes": [
          "UNAVAILABLE"
        ]
      }
    },
    {
      "name": [
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "Publish"
        }
      ],
      "timeout": "60s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 4,
        "retryableStatusCodes": [
          "ABORTED",
          "CANCELLED",
          "INTERNAL",
          "RESOURCE_EXHAUSTED",
          "UNKNOWN",
          "UNAVAILABLE",
          "DEADLINE_EXCEEDED"
        ]
      }
    },
    {
      "name": [
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "GetTopic"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "ListTopics"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "ListTopicSubscriptions"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "ListTopicSnapshots"
        },
        {
          "service": "google.pubsub.v1.Publisher",
          "method": "GetIamPolicy"
        }
      ],
      "timeout": "60s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 1.3,
        "retryableStatusCodes": [
          "UNKNOWN",
          "ABORTED",
          "UNAVAILABLE"
        ]
      }
    },
    {
      "name": [
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "StreamingPull"
        }
      ],
      "timeout": "900s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 4,
        "retryableStatusCodes": [
          "DEADLINE_EXCEEDED",
          "RESOURCE_EXHAUSTED",
          "ABORTED",
          "INTERNAL",
          "UNAVAILABLE"
        ]
      }
    },
    {
      "name": [
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "Pull"
        }
      ],
      "timeout": "60s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 1.3,
        "retryableStatusCodes": [
          "UNKNOWN",
          "ABORTED",
          "UNAVAILABLE",
          "INTERNAL"
        ]
      }
    },
    {
      "name": [
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "CreateSubscription"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "GetSubscription"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "ListSubscriptions"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "ListSnapshots"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "GetSnapshot"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "Seek"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "GetIamPolicy"
        }
      ],
      "timeout": "60s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 1.3,
        "retryableStatusCodes": [
          "UNKNOWN",
          "ABORTED",
          "UNAVAILABLE"
        ]
      }
    },
    {
      "name": [
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "UpdateSubscription"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "DeleteSubscription"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "ModifyAckDeadline"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "ModifyPushConfig"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "CreateSnapshot"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "UpdateSnapshot"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "DeleteSnapshot"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "Acknowledge"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "SetIamPolicy"
        },
        {
          "service": "google.pubsub.v1.Subscriber",
          "method": "TestIamPermissions"
        }
      ],
      "timeout": "60s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 1.3,
        "retryableStatusCodes": [
          "UNAVAILABLE"
        ]
      }
    },
    {
      "name": [
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "CommitSchema"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "CreateSchema"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "DeleteSchema"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "DeleteSchemaRevision"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "GetSchema"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "ListSchemaRevisions"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "ListSchemas"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "RollbackSchema"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "ValidateSchema"
        },
        {
          "service": "google.pubsub.v1.SchemaService",
          "method": "ValidateMessage"
        }
     ],
      "timeout": "60s",
      "retryPolicy": {
        "maxAttempts": 5,
        "initialBackoff": "0.100s",
        "maxBackoff": "60s",
        "backoffMultiplier": 1.3,
        "retryableStatusCodes": [
          "UNAVAILABLE"
        ]
      }
    }
  ]
}
