create_spreadsheet( $title, $rows ); if ( is_wp_error( $spreadsheet ) ) { return $spreadsheet; } return array( // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase -- as is on google client 'sheet_link' => $spreadsheet->spreadsheetUrl, // phpcs:ignore WordPress.NamingConventions.ValidVariableName.UsedPropertyNotSnakeCase -- as is on google client 'sheet_id' => $spreadsheet->spreadsheetId, ); } $request_path = sprintf( '/sites/%d/google-drive/sheets', $site_id ); $wpcom_request = Client::wpcom_json_api_request_as_user( $request_path, '2', array( 'method' => 'POST', 'headers' => array( 'content-type' => 'application/json', 'X-Forwarded-For' => ( new Visitor() )->get_ip( true ), ), ), array( 'title' => $title, 'rows' => $rows, ) ); $response_code = wp_remote_retrieve_response_code( $wpcom_request ); if ( 200 !== $response_code ) { return new \WP_Error( 'failed_to_fetch_data', esc_html__( 'Unable to fetch the requested data.', 'jetpack-forms' ), array( 'status' => $response_code ) ); } return json_decode( wp_remote_retrieve_body( $wpcom_request ), true ); } }